ipyaudio 0.1.10__py3-none-any.whl → 0.1.11__py3-none-any.whl

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 (30) hide show
  1. ipyaudio/_frontend.py +1 -1
  2. ipyaudio/_version.py +1 -1
  3. ipyaudio/labextension/package.json +1 -1
  4. ipyaudio/labextension/static/424.ca45437f3ff02b14458c.js +1 -0
  5. ipyaudio/nbextension/index.js +1 -1
  6. ipyaudio/nbextension/index.js.map +1 -1
  7. ipyaudio/recorder.py +8 -5
  8. ipyaudio/widget.py +5 -1
  9. {ipyaudio-0.1.10.data → ipyaudio-0.1.11.data}/data/share/jupyter/labextensions/ipyaudio/package.json +1 -1
  10. ipyaudio-0.1.11.data/data/share/jupyter/labextensions/ipyaudio/static/424.ca45437f3ff02b14458c.js +1 -0
  11. {ipyaudio-0.1.10.data → ipyaudio-0.1.11.data}/data/share/jupyter/nbextensions/ipyaudio/index.js +1 -1
  12. ipyaudio-0.1.11.data/data/share/jupyter/nbextensions/ipyaudio/index.js.map +1 -0
  13. {ipyaudio-0.1.10.dist-info → ipyaudio-0.1.11.dist-info}/METADATA +1 -1
  14. {ipyaudio-0.1.10.dist-info → ipyaudio-0.1.11.dist-info}/RECORD +27 -27
  15. ipyaudio/labextension/static/424.910b8d45703bec0b9704.js +0 -1
  16. ipyaudio-0.1.10.data/data/share/jupyter/labextensions/ipyaudio/static/424.910b8d45703bec0b9704.js +0 -1
  17. ipyaudio-0.1.10.data/data/share/jupyter/nbextensions/ipyaudio/index.js.map +0 -1
  18. {ipyaudio-0.1.10.data → ipyaudio-0.1.11.data}/data/etc/jupyter/nbconfig/notebook.d/ipyaudio.json +0 -0
  19. {ipyaudio-0.1.10.data → ipyaudio-0.1.11.data}/data/share/jupyter/labextensions/ipyaudio/install.json +0 -0
  20. {ipyaudio-0.1.10.data → ipyaudio-0.1.11.data}/data/share/jupyter/labextensions/ipyaudio/static/122.3700f0454aee82938e32.js +0 -0
  21. {ipyaudio-0.1.10.data → ipyaudio-0.1.11.data}/data/share/jupyter/labextensions/ipyaudio/static/509.a9d6860fe38ae60aa71f.js +0 -0
  22. {ipyaudio-0.1.10.data → ipyaudio-0.1.11.data}/data/share/jupyter/labextensions/ipyaudio/static/570.97f2a8196b7f1703e636.js +0 -0
  23. {ipyaudio-0.1.10.data → ipyaudio-0.1.11.data}/data/share/jupyter/labextensions/ipyaudio/static/570.97f2a8196b7f1703e636.js.LICENSE.txt +0 -0
  24. {ipyaudio-0.1.10.data → ipyaudio-0.1.11.data}/data/share/jupyter/labextensions/ipyaudio/static/58.0e2f3d700c41688625fe.js +0 -0
  25. {ipyaudio-0.1.10.data → ipyaudio-0.1.11.data}/data/share/jupyter/labextensions/ipyaudio/static/style.js +0 -0
  26. {ipyaudio-0.1.10.data → ipyaudio-0.1.11.data}/data/share/jupyter/labextensions/ipyaudio/static/third-party-licenses.json +0 -0
  27. {ipyaudio-0.1.10.data → ipyaudio-0.1.11.data}/data/share/jupyter/nbextensions/ipyaudio/extension.js +0 -0
  28. {ipyaudio-0.1.10.data → ipyaudio-0.1.11.data}/data/share/jupyter/nbextensions/ipyaudio/index.js.LICENSE.txt +0 -0
  29. {ipyaudio-0.1.10.dist-info → ipyaudio-0.1.11.dist-info}/WHEEL +0 -0
  30. {ipyaudio-0.1.10.dist-info → ipyaudio-0.1.11.dist-info}/licenses/LICENSE.txt +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","mappings":"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AAG,CAAC,QAAQ,QAAQ,OAAO,GAAG,CAAC,QAAQ,OAAO,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,OAAO,QAAQ,GAAG,CAAC,QAAQ,OAAO,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,OAAO,QAAQ,QAAQ,GAAG,CAAC,OAAO,QAAQ,QAAQ,GAAG,CAAC,MAAM,QAAQ,QAAQ,GAAG,CAAC,OAAO,QAAQ,QAAQ,GAAG,CAAC,OAAO,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,OAAO,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,MAAM,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,OAAO,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,OAAO,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,MAAM,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,OAAO,QAAQ,QAAQ,GAAG,CAAC,QAAQ,OAAO,QAAQ,GAAG,CAAC,OAAO,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,OAAO,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,OAAO,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,OAAO,QAAQ,MAAM,GAAG,CAAC,OAAO,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,OAAO,GAAG,CAAC,QAAQ,OAAO,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,OAAO,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,OAAO,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,MAAM,QAAQ,GAAG,CAAC,OAAO,QAAQ,QAAQ,GAAG,CAAC,QAAQ,OAAO,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,OAAO,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,OAAO,GAAG,CAAC,OAAO,QAAQ,QAAQ,GAAG,CAAC,MAAM,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,OAAO,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,OAAO,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,OAAO,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,OAAO,OAAO,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,OAAO,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,OAAO,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,OAAO,OAAO,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,OAAO,OAAO,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,OAAO,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,OAAO,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,MAAM,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,OAAO,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,OAAO,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,OAAO,GAAG,CAAC,OAAO,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,OAAO,OAAO,QAAQ,GAAG,CAAC,QAAQ,OAAO,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,OAAO,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,GAAG,CAAC,QAAQ,QAAQ,QAAQ,G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","sources":["webpack://ipyaudio/./node_modules/lodash/_stackSet.js","webpack://ipyaudio/./node_modules/wavesurfer.js/dist/wavesurfer.cjs","webpack://ipyaudio/./node_modules/lodash/_listCacheGet.js","webpack://ipyaudio/./node_modules/jupyter-dataserializers/src/ndarray.ts","webpack://ipyaudio/./node_modules/style-loader/dist/runtime/insertStyleElement.js","webpack://ipyaudio/./node_modules/lodash/_mapCacheHas.js","webpack://ipyaudio/./node_modules/lodash/_hashSet.js","webpack://ipyaudio/./node_modules/pako/lib/deflate.js","webpack://ipyaudio/./node_modules/lodash/_apply.js","webpack://ipyaudio/./node_modules/lodash/_overArg.js","webpack://ipyaudio/./node_modules/lodash/_getRawTag.js","webpack://ipyaudio/./node_modules/lodash/_createBaseFor.js","webpack://ipyaudio/./node_modules/wavesurfer.js/dist/plugins/hover.cjs","webpack://ipyaudio/./node_modules/lodash/_getValue.js","webpack://ipyaudio/./node_modules/style-loader/dist/runtime/styleTagTransform.js","webpack://ipyaudio/./node_modules/jupyter-dataserializers/src/compression.ts","webpack://ipyaudio/./node_modules/lodash/_listCacheHas.js","webpack://ipyaudio/./node_modules/bootstrap/dist/css/bootstrap.min.css","webpack://ipyaudio/./node_modules/lodash/isBuffer.js","webpack://ipyaudio/./node_modules/css-loader/dist/runtime/api.js","webpack://ipyaudio/./node_modules/lodash/_isMasked.js","webpack://ipyaudio/./node_modules/wavesurfer.js/dist/plugins/timeline.cjs","webpack://ipyaudio/./node_modules/lodash/_listCacheSet.js","webpack://ipyaudio/./node_modules/lodash/isPlainObject.js","webpack://ipyaudio/./css/widget.css?2598","webpack://ipyaudio/./node_modules/lodash/_toSource.js","webpack://ipyaudio/./node_modules/lodash/_stackHas.js","webpack://ipyaudio/./node_modules/lodash/_baseFor.js","webpack://ipyaudio/./node_modules/pako/lib/zlib/constants.js","webpack://ipyaudio/./node_modules/lodash/identity.js","webpack://ipyaudio/./node_modules/lodash/isArrayLikeObject.js","webpack://ipyaudio/./node_modules/lodash/_cloneArrayBuffer.js","webpack://ipyaudio/./node_modules/lodash/isArray.js","webpack://ipyaudio/external amd \"@jupyter-widgets/base\"","webpack://ipyaudio/./node_modules/lodash/stubFalse.js","webpack://ipyaudio/./node_modules/lodash/_baseIsNative.js","webpack://ipyaudio/./node_modules/pako/lib/zlib/inflate.js","webpack://ipyaudio/./node_modules/lodash/_baseUnary.js","webpack://ipyaudio/./node_modules/pako/lib/zlib/trees.js","webpack://ipyaudio/./node_modules/lodash/isArguments.js","webpack://ipyaudio/./node_modules/pako/lib/utils/common.js","webpack://ipyaudio/./node_modules/lodash/_objectToString.js","webpack://ipyaudio/./node_modules/lodash/_isIndex.js","webpack://ipyaudio/./node_modules/lodash/isObjectLike.js","webpack://ipyaudio/./node_modules/lodash/toPlainObject.js","webpack://ipyaudio/./node_modules/lodash/_freeGlobal.js","webpack://ipyaudio/./node_modules/lodash/_baseIsArguments.js","webpack://ipyaudio/./node_modules/ndarray/ndarray.js","webpack://ipyaudio/./node_modules/pako/lib/zlib/inftrees.js","webpack://ipyaudio/./node_modules/pako/lib/zlib/deflate.js","webpack://ipyaudio/./node_modules/lodash/_cloneBuffer.js","webpack://ipyaudio/./node_modules/lodash/_defineProperty.js","webpack://ipyaudio/./node_modules/pako/lib/inflate.js","webpack://ipyaudio/./node_modules/lodash/_MapCache.js","webpack://ipyaudio/./node_modules/lodash/_baseRest.js","webpack://ipyaudio/./node_modules/lodash/_Hash.js","webpack://ipyaudio/./src/player.ts","webpack://ipyaudio/./node_modules/css-loader/dist/runtime/getUrl.js","webpack://ipyaudio/./node_modules/pako/index.js","webpack://ipyaudio/./node_modules/lodash/_stackDelete.js","webpack://ipyaudio/./node_modules/lodash/_cloneTypedArray.js","webpack://ipyaudio/./node_modules/wavesurfer.js/dist/plugins/zoom.cjs","webpack://ipyaudio/./src/wavesurfer/pcm_player.ts","webpack://ipyaudio/./node_modules/lodash/_coreJsData.js","webpack://ipyaudio/./node_modules/lodash/_baseCreate.js","webpack://ipyaudio/./node_modules/lodash/_getNative.js","webpack://ipyaudio/./node_modules/lodash/_initCloneObject.js","webpack://ipyaudio/./node_modules/jupyter-dataserializers/src/common.ts","webpack://ipyaudio/./src/extension.ts","webpack://ipyaudio/./node_modules/lodash/_listCacheClear.js","webpack://ipyaudio/./node_modules/lodash/_baseMerge.js","webpack://ipyaudio/./node_modules/lodash/_nativeKeysIn.js","webpack://ipyaudio/./src/wavesurfer/player.ts","webpack://ipyaudio/./node_modules/lodash/_assocIndexOf.js","webpack://ipyaudio/./css/widget.css","webpack://ipyaudio/./node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js","webpack://ipyaudio/./node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js","webpack://ipyaudio/./src/wavesurfer/utils.ts","webpack://ipyaudio/./node_modules/lodash/_mapCacheSet.js","webpack://ipyaudio/./node_modules/lodash/_ListCache.js","webpack://ipyaudio/./node_modules/lodash/_baseIsTypedArray.js","webpack://ipyaudio/./node_modules/lodash/_baseTimes.js","webpack://ipyaudio/./node_modules/lodash/_getPrototype.js","webpack://ipyaudio/./node_modules/css-loader/dist/runtime/sourceMaps.js","webpack://ipyaudio/./node_modules/lodash/isObject.js","webpack://ipyaudio/./node_modules/lodash/_Map.js","webpack://ipyaudio/./src/version.ts","webpack://ipyaudio/./node_modules/lodash/_overRest.js","webpack://ipyaudio/./src/recorder.ts","webpack://ipyaudio/./node_modules/lodash/_isIterateeCall.js","webpack://ipyaudio/./node_modules/lodash/_nativeCreate.js","webpack://ipyaudio/./node_modules/jupyter-dataserializers/src/index.ts","webpack://ipyaudio/./node_modules/lodash/_isPrototype.js","webpack://ipyaudio/./node_modules/pako/lib/zlib/messages.js","webpack://ipyaudio/./node_modules/lodash/isArrayLike.js","webpack://ipyaudio/./node_modules/lodash/_baseMergeDeep.js","webpack://ipyaudio/./node_modules/bootstrap/dist/css/bootstrap.min.css?6452","webpack://ipyaudio/./node_modules/lodash/_setToString.js","webpack://ipyaudio/./node_modules/pako/lib/zlib/inffast.js","webpack://ipyaudio/./node_modules/lodash/_Stack.js","webpack://ipyaudio/./node_modules/lodash/_createAssigner.js","webpack://ipyaudio/./node_modules/lodash/_stackGet.js","webpack://ipyaudio/./node_modules/lodash/_baseGetTag.js","webpack://ipyaudio/./node_modules/lodash/_assignValue.js","webpack://ipyaudio/./node_modules/lodash/_Symbol.js","webpack://ipyaudio/./node_modules/pako/lib/utils/strings.js","webpack://ipyaudio/./node_modules/lodash/_mapCacheGet.js","webpack://ipyaudio/./node_modules/lodash/_hashClear.js","webpack://ipyaudio/./node_modules/pako/lib/zlib/adler32.js","webpack://ipyaudio/./node_modules/lodash/_getMapData.js","webpack://ipyaudio/./node_modules/lodash/_safeGet.js","webpack://ipyaudio/./node_modules/lodash/_arrayLikeKeys.js","webpack://ipyaudio/./node_modules/lodash/isLength.js","webpack://ipyaudio/./node_modules/lodash/_hashGet.js","webpack://ipyaudio/./node_modules/pako/lib/zlib/gzheader.js","webpack://ipyaudio/./node_modules/pako/lib/zlib/zstream.js","webpack://ipyaudio/./node_modules/lodash/keysIn.js","webpack://ipyaudio/./node_modules/lodash/merge.js","webpack://ipyaudio/./node_modules/style-loader/dist/runtime/insertBySelector.js","webpack://ipyaudio/./node_modules/lodash/constant.js","webpack://ipyaudio/./node_modules/jupyter-dataserializers/src/union.ts","webpack://ipyaudio/./node_modules/lodash/_hashHas.js","webpack://ipyaudio/./node_modules/style-loader/dist/runtime/styleDomAPI.js","webpack://ipyaudio/./node_modules/lodash/_baseSetToString.js","webpack://ipyaudio/./node_modules/iota-array/iota.js","webpack://ipyaudio/./node_modules/lodash/_copyObject.js","webpack://ipyaudio/./node_modules/lodash/isFunction.js","webpack://ipyaudio/./src/index.ts","webpack://ipyaudio/./node_modules/lodash/_baseKeysIn.js","webpack://ipyaudio/./node_modules/lodash/_mapCacheClear.js","webpack://ipyaudio/./node_modules/lodash/_nodeUtil.js","webpack://ipyaudio/./node_modules/lodash/eq.js","webpack://ipyaudio/./node_modules/wavesurfer.js/dist/plugins/record.cjs","webpack://ipyaudio/./node_modules/lodash/_listCacheDelete.js","webpack://ipyaudio/./node_modules/wavesurfer.js/dist/plugins/spectrogram.cjs","webpack://ipyaudio/./node_modules/lodash/_stackClear.js","webpack://ipyaudio/./node_modules/wavesurfer.js/dist/plugins/minimap.cjs","webpack://ipyaudio/./node_modules/is-buffer/index.js","webpack://ipyaudio/./src/wavesurfer/recorder.ts","webpack://ipyaudio/./node_modules/pako/lib/zlib/crc32.js","webpack://ipyaudio/./node_modules/lodash/_copyArray.js","webpack://ipyaudio/./node_modules/jupyter-dataserializers/src/util.ts","webpack://ipyaudio/./node_modules/lodash/_root.js","webpack://ipyaudio/./node_modules/lodash/isTypedArray.js","webpack://ipyaudio/./node_modules/lodash/_Uint8Array.js","webpack://ipyaudio/./node_modules/lodash/_assignMergeValue.js","webpack://ipyaudio/./node_modules/lodash/_baseAssignValue.js","webpack://ipyaudio/./node_modules/lodash/_shortOut.js","webpack://ipyaudio/./node_modules/lodash/_hashDelete.js","webpack://ipyaudio/./node_modules/lodash/_isKeyable.js","webpack://ipyaudio/./node_modules/lodash/_mapCacheDelete.js","webpack://ipyaudio/webpack/bootstrap","webpack://ipyaudio/webpack/runtime/compat get default export","webpack://ipyaudio/webpack/runtime/define property getters","webpack://ipyaudio/webpack/runtime/global","webpack://ipyaudio/webpack/runtime/hasOwnProperty shorthand","webpack://ipyaudio/webpack/runtime/make namespace object","webpack://ipyaudio/webpack/runtime/node module decorator","webpack://ipyaudio/webpack/runtime/jsonp chunk loading","webpack://ipyaudio/webpack/runtime/nonce","webpack://ipyaudio/webpack/startup"],"sourcesContent":["var ListCache = require('./_ListCache'),\n Map = require('./_Map'),\n MapCache = require('./_MapCache');\n\n/** Used as the size to enable large array optimizations. */\nvar LARGE_ARRAY_SIZE = 200;\n\n/**\n * Sets the stack `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Stack\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the stack cache instance.\n */\nfunction stackSet(key, value) {\n var data = this.__data__;\n if (data instanceof ListCache) {\n var pairs = data.__data__;\n if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {\n pairs.push([key, value]);\n this.size = ++data.size;\n return this;\n }\n data = this.__data__ = new MapCache(pairs);\n }\n data.set(key, value);\n this.size = data.size;\n return this;\n}\n\nmodule.exports = stackSet;\n","\"use strict\";function t(t,e,i,s){return new(i||(i=Promise))((function(n,r){function o(t){try{h(s.next(t))}catch(t){r(t)}}function a(t){try{h(s.throw(t))}catch(t){r(t)}}function h(t){var e;t.done?n(t.value):(e=t.value,e instanceof i?e:new i((function(t){t(e)}))).then(o,a)}h((s=s.apply(t,e||[])).next())}))}\"function\"==typeof SuppressedError&&SuppressedError;class e{constructor(){this.listeners={}}on(t,e,i){if(this.listeners[t]||(this.listeners[t]=new Set),this.listeners[t].add(e),null==i?void 0:i.once){const i=()=>{this.un(t,i),this.un(t,e)};return this.on(t,i),i}return()=>this.un(t,e)}un(t,e){var i;null===(i=this.listeners[t])||void 0===i||i.delete(e)}once(t,e){return this.on(t,e,{once:!0})}unAll(){this.listeners={}}emit(t,...e){this.listeners[t]&&this.listeners[t].forEach((t=>t(...e)))}}const i={decode:function(e,i){return t(this,void 0,void 0,(function*(){const t=new AudioContext({sampleRate:i});return t.decodeAudioData(e).finally((()=>t.close()))}))},createBuffer:function(t,e){return\"number\"==typeof t[0]&&(t=[t]),function(t){const e=t[0];if(e.some((t=>t>1||t<-1))){const i=e.length;let s=0;for(let t=0;t<i;t++){const i=Math.abs(e[t]);i>s&&(s=i)}for(const e of t)for(let t=0;t<i;t++)e[t]/=s}}(t),{duration:e,length:t[0].length,sampleRate:t[0].length/e,numberOfChannels:t.length,getChannelData:e=>null==t?void 0:t[e],copyFromChannel:AudioBuffer.prototype.copyFromChannel,copyToChannel:AudioBuffer.prototype.copyToChannel}}};function s(t,e){const i=e.xmlns?document.createElementNS(e.xmlns,t):document.createElement(t);for(const[t,n]of Object.entries(e))if(\"children\"===t)for(const[t,n]of Object.entries(e))\"string\"==typeof n?i.appendChild(document.createTextNode(n)):i.appendChild(s(t,n));else\"style\"===t?Object.assign(i.style,n):\"textContent\"===t?i.textContent=n:i.setAttribute(t,n.toString());return i}function n(t,e,i){const n=s(t,e||{});return null==i||i.appendChild(n),n}var r=Object.freeze({__proto__:null,createElement:n,default:n});const o={fetchBlob:function(e,i,s){return t(this,void 0,void 0,(function*(){const n=yield fetch(e,s);if(n.status>=400)throw new Error(`Failed to fetch ${e}: ${n.status} (${n.statusText})`);return function(e,i){t(this,void 0,void 0,(function*(){if(!e.body||!e.headers)return;const s=e.body.getReader(),n=Number(e.headers.get(\"Content-Length\"))||0;let r=0;const o=e=>t(this,void 0,void 0,(function*(){r+=(null==e?void 0:e.length)||0;const t=Math.round(r/n*100);i(t)})),a=()=>t(this,void 0,void 0,(function*(){let t;try{t=yield s.read()}catch(t){return}t.done||(o(t.value),yield a())}));a()}))}(n.clone(),i),n.blob()}))}};class a extends e{constructor(t){super(),this.isExternalMedia=!1,t.media?(this.media=t.media,this.isExternalMedia=!0):this.media=document.createElement(\"audio\"),t.mediaControls&&(this.media.controls=!0),t.autoplay&&(this.media.autoplay=!0),null!=t.playbackRate&&this.onMediaEvent(\"canplay\",(()=>{null!=t.playbackRate&&(this.media.playbackRate=t.playbackRate)}),{once:!0})}onMediaEvent(t,e,i){return this.media.addEventListener(t,e,i),()=>this.media.removeEventListener(t,e,i)}getSrc(){return this.media.currentSrc||this.media.src||\"\"}revokeSrc(){const t=this.getSrc();t.startsWith(\"blob:\")&&URL.revokeObjectURL(t)}canPlayType(t){return\"\"!==this.media.canPlayType(t)}setSrc(t,e){const i=this.getSrc();if(t&&i===t)return;this.revokeSrc();const s=e instanceof Blob&&(this.canPlayType(e.type)||!t)?URL.createObjectURL(e):t;i&&(this.media.src=\"\");try{this.media.src=s}catch(e){this.media.src=t}}destroy(){this.isExternalMedia||(this.media.pause(),this.media.remove(),this.revokeSrc(),this.media.src=\"\",this.media.load())}setMediaElement(t){this.media=t}play(){return t(this,void 0,void 0,(function*(){return this.media.play()}))}pause(){this.media.pause()}isPlaying(){return!this.media.paused&&!this.media.ended}setTime(t){this.media.currentTime=Math.max(0,Math.min(t,this.getDuration()))}getDuration(){return this.media.duration}getCurrentTime(){return this.media.currentTime}getVolume(){return this.media.volume}setVolume(t){this.media.volume=t}getMuted(){return this.media.muted}setMuted(t){this.media.muted=t}getPlaybackRate(){return this.media.playbackRate}isSeeking(){return this.media.seeking}setPlaybackRate(t,e){null!=e&&(this.media.preservesPitch=e),this.media.playbackRate=t}getMediaElement(){return this.media}setSinkId(t){return this.media.setSinkId(t)}}class h extends e{constructor(t,e){super(),this.timeouts=[],this.isScrollable=!1,this.audioData=null,this.resizeObserver=null,this.lastContainerWidth=0,this.isDragging=!1,this.subscriptions=[],this.unsubscribeOnScroll=[],this.subscriptions=[],this.options=t;const i=this.parentFromOptionsContainer(t.container);this.parent=i;const[s,n]=this.initHtml();i.appendChild(s),this.container=s,this.scrollContainer=n.querySelector(\".scroll\"),this.wrapper=n.querySelector(\".wrapper\"),this.canvasWrapper=n.querySelector(\".canvases\"),this.progressWrapper=n.querySelector(\".progress\"),this.cursor=n.querySelector(\".cursor\"),e&&n.appendChild(e),this.initEvents()}parentFromOptionsContainer(t){let e;if(\"string\"==typeof t?e=document.querySelector(t):t instanceof HTMLElement&&(e=t),!e)throw new Error(\"Container not found\");return e}initEvents(){const t=t=>{const e=this.wrapper.getBoundingClientRect(),i=t.clientX-e.left,s=t.clientY-e.top;return[i/e.width,s/e.height]};if(this.wrapper.addEventListener(\"click\",(e=>{const[i,s]=t(e);this.emit(\"click\",i,s)})),this.wrapper.addEventListener(\"dblclick\",(e=>{const[i,s]=t(e);this.emit(\"dblclick\",i,s)})),!0!==this.options.dragToSeek&&\"object\"!=typeof this.options.dragToSeek||this.initDrag(),this.scrollContainer.addEventListener(\"scroll\",(()=>{const{scrollLeft:t,scrollWidth:e,clientWidth:i}=this.scrollContainer,s=t/e,n=(t+i)/e;this.emit(\"scroll\",s,n,t,t+i)})),\"function\"==typeof ResizeObserver){const t=this.createDelay(100);this.resizeObserver=new ResizeObserver((()=>{t().then((()=>this.onContainerResize())).catch((()=>{}))})),this.resizeObserver.observe(this.scrollContainer)}}onContainerResize(){const t=this.parent.clientWidth;t===this.lastContainerWidth&&\"auto\"!==this.options.height||(this.lastContainerWidth=t,this.reRender())}initDrag(){this.subscriptions.push(function(t,e,i,s,n=3,r=0,o=100){if(!t)return()=>{};const a=matchMedia(\"(pointer: coarse)\").matches;let h=()=>{};const l=l=>{if(l.button!==r)return;l.preventDefault(),l.stopPropagation();let d=l.clientX,c=l.clientY,u=!1;const p=Date.now(),m=s=>{if(s.preventDefault(),s.stopPropagation(),a&&Date.now()-p<o)return;const r=s.clientX,h=s.clientY,l=r-d,m=h-c;if(u||Math.abs(l)>n||Math.abs(m)>n){const s=t.getBoundingClientRect(),{left:n,top:o}=s;u||(null==i||i(d-n,c-o),u=!0),e(l,m,r-n,h-o),d=r,c=h}},f=e=>{if(u){const i=e.clientX,n=e.clientY,r=t.getBoundingClientRect(),{left:o,top:a}=r;null==s||s(i-o,n-a)}h()},g=t=>{t.relatedTarget&&t.relatedTarget!==document.documentElement||f(t)},v=t=>{u&&(t.stopPropagation(),t.preventDefault())},b=t=>{u&&t.preventDefault()};document.addEventListener(\"pointermove\",m),document.addEventListener(\"pointerup\",f),document.addEventListener(\"pointerout\",g),document.addEventListener(\"pointercancel\",g),document.addEventListener(\"touchmove\",b,{passive:!1}),document.addEventListener(\"click\",v,{capture:!0}),h=()=>{document.removeEventListener(\"pointermove\",m),document.removeEventListener(\"pointerup\",f),document.removeEventListener(\"pointerout\",g),document.removeEventListener(\"pointercancel\",g),document.removeEventListener(\"touchmove\",b),setTimeout((()=>{document.removeEventListener(\"click\",v,{capture:!0})}),10)}};return t.addEventListener(\"pointerdown\",l),()=>{h(),t.removeEventListener(\"pointerdown\",l)}}(this.wrapper,((t,e,i)=>{this.emit(\"drag\",Math.max(0,Math.min(1,i/this.wrapper.getBoundingClientRect().width)))}),(t=>{this.isDragging=!0,this.emit(\"dragstart\",Math.max(0,Math.min(1,t/this.wrapper.getBoundingClientRect().width)))}),(t=>{this.isDragging=!1,this.emit(\"dragend\",Math.max(0,Math.min(1,t/this.wrapper.getBoundingClientRect().width)))})))}getHeight(t,e){var i;const s=(null===(i=this.audioData)||void 0===i?void 0:i.numberOfChannels)||1;if(null==t)return 128;if(!isNaN(Number(t)))return Number(t);if(\"auto\"===t){const t=this.parent.clientHeight||128;return(null==e?void 0:e.every((t=>!t.overlay)))?t/s:t}return 128}initHtml(){const t=document.createElement(\"div\"),e=t.attachShadow({mode:\"open\"}),i=this.options.cspNonce&&\"string\"==typeof this.options.cspNonce?this.options.cspNonce.replace(/\"/g,\"\"):\"\";return e.innerHTML=`\\n <style${i?` nonce=\"${i}\"`:\"\"}>\\n :host {\\n user-select: none;\\n min-width: 1px;\\n }\\n :host audio {\\n display: block;\\n width: 100%;\\n }\\n :host .scroll {\\n overflow-x: auto;\\n overflow-y: hidden;\\n width: 100%;\\n position: relative;\\n }\\n :host .noScrollbar {\\n scrollbar-color: transparent;\\n scrollbar-width: none;\\n }\\n :host .noScrollbar::-webkit-scrollbar {\\n display: none;\\n -webkit-appearance: none;\\n }\\n :host .wrapper {\\n position: relative;\\n overflow: visible;\\n z-index: 2;\\n }\\n :host .canvases {\\n min-height: ${this.getHeight(this.options.height,this.options.splitChannels)}px;\\n }\\n :host .canvases > div {\\n position: relative;\\n }\\n :host canvas {\\n display: block;\\n position: absolute;\\n top: 0;\\n image-rendering: pixelated;\\n }\\n :host .progress {\\n pointer-events: none;\\n position: absolute;\\n z-index: 2;\\n top: 0;\\n left: 0;\\n width: 0;\\n height: 100%;\\n overflow: hidden;\\n }\\n :host .progress > div {\\n position: relative;\\n }\\n :host .cursor {\\n pointer-events: none;\\n position: absolute;\\n z-index: 5;\\n top: 0;\\n left: 0;\\n height: 100%;\\n border-radius: 2px;\\n }\\n </style>\\n\\n <div class=\"scroll\" part=\"scroll\">\\n <div class=\"wrapper\" part=\"wrapper\">\\n <div class=\"canvases\" part=\"canvases\"></div>\\n <div class=\"progress\" part=\"progress\"></div>\\n <div class=\"cursor\" part=\"cursor\"></div>\\n </div>\\n </div>\\n `,[t,e]}setOptions(t){if(this.options.container!==t.container){const e=this.parentFromOptionsContainer(t.container);e.appendChild(this.container),this.parent=e}!0!==t.dragToSeek&&\"object\"!=typeof this.options.dragToSeek||this.initDrag(),this.options=t,this.reRender()}getWrapper(){return this.wrapper}getWidth(){return this.scrollContainer.clientWidth}getScroll(){return this.scrollContainer.scrollLeft}setScroll(t){this.scrollContainer.scrollLeft=t}setScrollPercentage(t){const{scrollWidth:e}=this.scrollContainer,i=e*t;this.setScroll(i)}destroy(){var t,e;this.subscriptions.forEach((t=>t())),this.container.remove(),null===(t=this.resizeObserver)||void 0===t||t.disconnect(),null===(e=this.unsubscribeOnScroll)||void 0===e||e.forEach((t=>t())),this.unsubscribeOnScroll=[]}createDelay(t=10){let e,i;const s=()=>{e&&clearTimeout(e),i&&i()};return this.timeouts.push(s),()=>new Promise(((n,r)=>{s(),i=r,e=setTimeout((()=>{e=void 0,i=void 0,n()}),t)}))}convertColorValues(t){if(!Array.isArray(t))return t||\"\";if(t.length<2)return t[0]||\"\";const e=document.createElement(\"canvas\"),i=e.getContext(\"2d\"),s=e.height*(window.devicePixelRatio||1),n=i.createLinearGradient(0,0,0,s),r=1/(t.length-1);return t.forEach(((t,e)=>{const i=e*r;n.addColorStop(i,t)})),n}getPixelRatio(){return Math.max(1,window.devicePixelRatio||1)}renderBarWaveform(t,e,i,s){const n=t[0],r=t[1]||t[0],o=n.length,{width:a,height:h}=i.canvas,l=h/2,d=this.getPixelRatio(),c=e.barWidth?e.barWidth*d:1,u=e.barGap?e.barGap*d:e.barWidth?c/2:0,p=e.barRadius||0,m=a/(c+u)/o,f=p&&\"roundRect\"in i?\"roundRect\":\"rect\";i.beginPath();let g=0,v=0,b=0;for(let t=0;t<=o;t++){const o=Math.round(t*m);if(o>g){const t=Math.round(v*l*s),n=t+Math.round(b*l*s)||1;let r=l-t;\"top\"===e.barAlign?r=0:\"bottom\"===e.barAlign&&(r=h-n),i[f](g*(c+u),r,c,n,p),g=o,v=0,b=0}const a=Math.abs(n[t]||0),d=Math.abs(r[t]||0);a>v&&(v=a),d>b&&(b=d)}i.fill(),i.closePath()}renderLineWaveform(t,e,i,s){const n=e=>{const n=t[e]||t[0],r=n.length,{height:o}=i.canvas,a=o/2,h=i.canvas.width/r;i.moveTo(0,a);let l=0,d=0;for(let t=0;t<=r;t++){const r=Math.round(t*h);if(r>l){const t=a+(Math.round(d*a*s)||1)*(0===e?-1:1);i.lineTo(l,t),l=r,d=0}const o=Math.abs(n[t]||0);o>d&&(d=o)}i.lineTo(l,a)};i.beginPath(),n(0),n(1),i.fill(),i.closePath()}renderWaveform(t,e,i){if(i.fillStyle=this.convertColorValues(e.waveColor),e.renderFunction)return void e.renderFunction(t,i);let s=e.barHeight||1;if(e.normalize){const e=Array.from(t[0]).reduce(((t,e)=>Math.max(t,Math.abs(e))),0);s=e?1/e:1}e.barWidth||e.barGap||e.barAlign?this.renderBarWaveform(t,e,i,s):this.renderLineWaveform(t,e,i,s)}renderSingleCanvas(t,e,i,s,n,r,o){const a=this.getPixelRatio(),h=document.createElement(\"canvas\");h.width=Math.round(i*a),h.height=Math.round(s*a),h.style.width=`${i}px`,h.style.height=`${s}px`,h.style.left=`${Math.round(n)}px`,r.appendChild(h);const l=h.getContext(\"2d\");if(this.renderWaveform(t,e,l),h.width>0&&h.height>0){const t=h.cloneNode(),i=t.getContext(\"2d\");i.drawImage(h,0,0),i.globalCompositeOperation=\"source-in\",i.fillStyle=this.convertColorValues(e.progressColor),i.fillRect(0,0,h.width,h.height),o.appendChild(t)}}renderMultiCanvas(t,e,i,s,n,r){const o=this.getPixelRatio(),{clientWidth:a}=this.scrollContainer,l=i/o;let d=Math.min(h.MAX_CANVAS_WIDTH,a,l),c={};if(0===d)return;if(e.barWidth||e.barGap){const t=e.barWidth||.5,i=t+(e.barGap||t/2);d%i!=0&&(d=Math.floor(d/i)*i)}const u=i=>{if(i<0||i>=p)return;if(c[i])return;c[i]=!0;const o=i*d,a=Math.min(l-o,d);if(a<=0)return;const h=t.map((t=>{const e=Math.floor(o/l*t.length),i=Math.floor((o+a)/l*t.length);return t.slice(e,i)}));this.renderSingleCanvas(h,e,a,s,o,n,r)},p=Math.ceil(l/d);if(!this.isScrollable){for(let t=0;t<p;t++)u(t);return}const m=this.scrollContainer.scrollLeft/l,f=Math.floor(m*p);if(u(f-1),u(f),u(f+1),p>1){const t=this.on(\"scroll\",(()=>{const{scrollLeft:t}=this.scrollContainer,e=Math.floor(t/l*p);Object.keys(c).length>h.MAX_NODES&&(n.innerHTML=\"\",r.innerHTML=\"\",c={}),u(e-1),u(e),u(e+1)}));this.unsubscribeOnScroll.push(t)}}renderChannel(t,e,i,s){var{overlay:n}=e,r=function(t,e){var i={};for(var s in t)Object.prototype.hasOwnProperty.call(t,s)&&e.indexOf(s)<0&&(i[s]=t[s]);if(null!=t&&\"function\"==typeof Object.getOwnPropertySymbols){var n=0;for(s=Object.getOwnPropertySymbols(t);n<s.length;n++)e.indexOf(s[n])<0&&Object.prototype.propertyIsEnumerable.call(t,s[n])&&(i[s[n]]=t[s[n]])}return i}(e,[\"overlay\"]);const o=document.createElement(\"div\"),a=this.getHeight(r.height,r.splitChannels);o.style.height=`${a}px`,n&&s>0&&(o.style.marginTop=`-${a}px`),this.canvasWrapper.style.minHeight=`${a}px`,this.canvasWrapper.appendChild(o);const h=o.cloneNode();this.progressWrapper.appendChild(h),this.renderMultiCanvas(t,r,i,a,o,h)}render(e){return t(this,void 0,void 0,(function*(){var t;this.timeouts.forEach((t=>t())),this.timeouts=[],this.canvasWrapper.innerHTML=\"\",this.progressWrapper.innerHTML=\"\",null!=this.options.width&&(this.scrollContainer.style.width=\"number\"==typeof this.options.width?`${this.options.width}px`:this.options.width);const i=this.getPixelRatio(),s=this.scrollContainer.clientWidth,n=Math.ceil(e.duration*(this.options.minPxPerSec||0));this.isScrollable=n>s;const r=this.options.fillParent&&!this.isScrollable,o=(r?s:n)*i;if(this.wrapper.style.width=r?\"100%\":`${n}px`,this.scrollContainer.style.overflowX=this.isScrollable?\"auto\":\"hidden\",this.scrollContainer.classList.toggle(\"noScrollbar\",!!this.options.hideScrollbar),this.cursor.style.backgroundColor=`${this.options.cursorColor||this.options.progressColor}`,this.cursor.style.width=`${this.options.cursorWidth}px`,this.audioData=e,this.emit(\"render\"),this.options.splitChannels)for(let i=0;i<e.numberOfChannels;i++){const s=Object.assign(Object.assign({},this.options),null===(t=this.options.splitChannels)||void 0===t?void 0:t[i]);this.renderChannel([e.getChannelData(i)],s,o,i)}else{const t=[e.getChannelData(0)];e.numberOfChannels>1&&t.push(e.getChannelData(1)),this.renderChannel(t,this.options,o,0)}Promise.resolve().then((()=>this.emit(\"rendered\")))}))}reRender(){if(this.unsubscribeOnScroll.forEach((t=>t())),this.unsubscribeOnScroll=[],!this.audioData)return;const{scrollWidth:t}=this.scrollContainer,{right:e}=this.progressWrapper.getBoundingClientRect();if(this.render(this.audioData),this.isScrollable&&t!==this.scrollContainer.scrollWidth){const{right:t}=this.progressWrapper.getBoundingClientRect();let i=t-e;i*=2,i=i<0?Math.floor(i):Math.ceil(i),i/=2,this.scrollContainer.scrollLeft+=i}}zoom(t){this.options.minPxPerSec=t,this.reRender()}scrollIntoView(t,e=!1){const{scrollLeft:i,scrollWidth:s,clientWidth:n}=this.scrollContainer,r=t*s,o=i,a=i+n,h=n/2;if(this.isDragging){const t=30;r+t>a?this.scrollContainer.scrollLeft+=t:r-t<o&&(this.scrollContainer.scrollLeft-=t)}else{(r<o||r>a)&&(this.scrollContainer.scrollLeft=r-(this.options.autoCenter?h:0));const t=r-i-h;e&&this.options.autoCenter&&t>0&&(this.scrollContainer.scrollLeft+=Math.min(t,10))}{const t=this.scrollContainer.scrollLeft,e=t/s,i=(t+n)/s;this.emit(\"scroll\",e,i,t,t+n)}}renderProgress(t,e){if(isNaN(t))return;const i=100*t;this.canvasWrapper.style.clipPath=`polygon(${i}% 0, 100% 0, 100% 100%, ${i}% 100%)`,this.progressWrapper.style.width=`${i}%`,this.cursor.style.left=`${i}%`,this.cursor.style.transform=`translateX(-${100===Math.round(i)?this.options.cursorWidth:0}px)`,this.isScrollable&&this.options.autoScroll&&this.scrollIntoView(t,e)}exportImage(e,i,s){return t(this,void 0,void 0,(function*(){const t=this.canvasWrapper.querySelectorAll(\"canvas\");if(!t.length)throw new Error(\"No waveform data\");if(\"dataURL\"===s){const s=Array.from(t).map((t=>t.toDataURL(e,i)));return Promise.resolve(s)}return Promise.all(Array.from(t).map((t=>new Promise(((s,n)=>{t.toBlob((t=>{t?s(t):n(new Error(\"Could not export image\"))}),e,i)})))))}))}}h.MAX_CANVAS_WIDTH=8e3,h.MAX_NODES=10;class l extends e{constructor(){super(...arguments),this.unsubscribe=()=>{}}start(){this.unsubscribe=this.on(\"tick\",(()=>{requestAnimationFrame((()=>{this.emit(\"tick\")}))})),this.emit(\"tick\")}stop(){this.unsubscribe()}destroy(){this.unsubscribe()}}class d extends e{constructor(t=new AudioContext){super(),this.bufferNode=null,this.playStartTime=0,this.playedDuration=0,this._muted=!1,this._playbackRate=1,this._duration=void 0,this.buffer=null,this.currentSrc=\"\",this.paused=!0,this.crossOrigin=null,this.seeking=!1,this.autoplay=!1,this.addEventListener=this.on,this.removeEventListener=this.un,this.audioContext=t,this.gainNode=this.audioContext.createGain(),this.gainNode.connect(this.audioContext.destination)}load(){return t(this,void 0,void 0,(function*(){}))}get src(){return this.currentSrc}set src(t){if(this.currentSrc=t,this._duration=void 0,!t)return this.buffer=null,void this.emit(\"emptied\");fetch(t).then((e=>{if(e.status>=400)throw new Error(`Failed to fetch ${t}: ${e.status} (${e.statusText})`);return e.arrayBuffer()})).then((e=>this.currentSrc!==t?null:this.audioContext.decodeAudioData(e))).then((e=>{this.currentSrc===t&&(this.buffer=e,this.emit(\"loadedmetadata\"),this.emit(\"canplay\"),this.autoplay&&this.play())}))}_play(){var t;if(!this.paused)return;this.paused=!1,null===(t=this.bufferNode)||void 0===t||t.disconnect(),this.bufferNode=this.audioContext.createBufferSource(),this.buffer&&(this.bufferNode.buffer=this.buffer),this.bufferNode.playbackRate.value=this._playbackRate,this.bufferNode.connect(this.gainNode);let e=this.playedDuration*this._playbackRate;(e>=this.duration||e<0)&&(e=0,this.playedDuration=0),this.bufferNode.start(this.audioContext.currentTime,e),this.playStartTime=this.audioContext.currentTime,this.bufferNode.onended=()=>{this.currentTime>=this.duration&&(this.pause(),this.emit(\"ended\"))}}_pause(){var t;this.paused=!0,null===(t=this.bufferNode)||void 0===t||t.stop(),this.playedDuration+=this.audioContext.currentTime-this.playStartTime}play(){return t(this,void 0,void 0,(function*(){this.paused&&(this._play(),this.emit(\"play\"))}))}pause(){this.paused||(this._pause(),this.emit(\"pause\"))}stopAt(t){const e=t-this.currentTime,i=this.bufferNode;null==i||i.stop(this.audioContext.currentTime+e),null==i||i.addEventListener(\"ended\",(()=>{i===this.bufferNode&&(this.bufferNode=null,this.pause())}),{once:!0})}setSinkId(e){return t(this,void 0,void 0,(function*(){return this.audioContext.setSinkId(e)}))}get playbackRate(){return this._playbackRate}set playbackRate(t){this._playbackRate=t,this.bufferNode&&(this.bufferNode.playbackRate.value=t)}get currentTime(){return(this.paused?this.playedDuration:this.playedDuration+(this.audioContext.currentTime-this.playStartTime))*this._playbackRate}set currentTime(t){const e=!this.paused;e&&this._pause(),this.playedDuration=t/this._playbackRate,e&&this._play(),this.emit(\"seeking\"),this.emit(\"timeupdate\")}get duration(){var t,e;return null!==(t=this._duration)&&void 0!==t?t:(null===(e=this.buffer)||void 0===e?void 0:e.duration)||0}set duration(t){this._duration=t}get volume(){return this.gainNode.gain.value}set volume(t){this.gainNode.gain.value=t,this.emit(\"volumechange\")}get muted(){return this._muted}set muted(t){this._muted!==t&&(this._muted=t,this._muted?this.gainNode.disconnect():this.gainNode.connect(this.audioContext.destination))}canPlayType(t){return/^(audio|video)\\//.test(t)}getGainNode(){return this.gainNode}getChannelData(){const t=[];if(!this.buffer)return t;const e=this.buffer.numberOfChannels;for(let i=0;i<e;i++)t.push(this.buffer.getChannelData(i));return t}}const c={waveColor:\"#999\",progressColor:\"#555\",cursorWidth:1,minPxPerSec:0,fillParent:!0,interact:!0,dragToSeek:!1,autoScroll:!0,autoCenter:!0,sampleRate:8e3};class u extends a{static create(t){return new u(t)}constructor(t){const e=t.media||(\"WebAudio\"===t.backend?new d:void 0);super({media:e,mediaControls:t.mediaControls,autoplay:t.autoplay,playbackRate:t.audioRate}),this.plugins=[],this.decodedData=null,this.stopAtPosition=null,this.subscriptions=[],this.mediaSubscriptions=[],this.abortController=null,this.options=Object.assign({},c,t),this.timer=new l;const i=e?void 0:this.getMediaElement();this.renderer=new h(this.options,i),this.initPlayerEvents(),this.initRendererEvents(),this.initTimerEvents(),this.initPlugins();const s=this.options.url||this.getSrc()||\"\";Promise.resolve().then((()=>{this.emit(\"init\");const{peaks:t,duration:e}=this.options;(s||t&&e)&&this.load(s,t,e).catch((()=>null))}))}updateProgress(t=this.getCurrentTime()){return this.renderer.renderProgress(t/this.getDuration(),this.isPlaying()),t}initTimerEvents(){this.subscriptions.push(this.timer.on(\"tick\",(()=>{if(!this.isSeeking()){const t=this.updateProgress();this.emit(\"timeupdate\",t),this.emit(\"audioprocess\",t),null!=this.stopAtPosition&&this.isPlaying()&&t>=this.stopAtPosition&&this.pause()}})))}initPlayerEvents(){this.isPlaying()&&(this.emit(\"play\"),this.timer.start()),this.mediaSubscriptions.push(this.onMediaEvent(\"timeupdate\",(()=>{const t=this.updateProgress();this.emit(\"timeupdate\",t)})),this.onMediaEvent(\"play\",(()=>{this.emit(\"play\"),this.timer.start()})),this.onMediaEvent(\"pause\",(()=>{this.emit(\"pause\"),this.timer.stop(),this.stopAtPosition=null})),this.onMediaEvent(\"emptied\",(()=>{this.timer.stop(),this.stopAtPosition=null})),this.onMediaEvent(\"ended\",(()=>{this.emit(\"timeupdate\",this.getDuration()),this.emit(\"finish\"),this.stopAtPosition=null})),this.onMediaEvent(\"seeking\",(()=>{this.emit(\"seeking\",this.getCurrentTime())})),this.onMediaEvent(\"error\",(()=>{var t;this.emit(\"error\",null!==(t=this.getMediaElement().error)&&void 0!==t?t:new Error(\"Media error\")),this.stopAtPosition=null})))}initRendererEvents(){this.subscriptions.push(this.renderer.on(\"click\",((t,e)=>{this.options.interact&&(this.seekTo(t),this.emit(\"interaction\",t*this.getDuration()),this.emit(\"click\",t,e))})),this.renderer.on(\"dblclick\",((t,e)=>{this.emit(\"dblclick\",t,e)})),this.renderer.on(\"scroll\",((t,e,i,s)=>{const n=this.getDuration();this.emit(\"scroll\",t*n,e*n,i,s)})),this.renderer.on(\"render\",(()=>{this.emit(\"redraw\")})),this.renderer.on(\"rendered\",(()=>{this.emit(\"redrawcomplete\")})),this.renderer.on(\"dragstart\",(t=>{this.emit(\"dragstart\",t)})),this.renderer.on(\"dragend\",(t=>{this.emit(\"dragend\",t)})));{let t;this.subscriptions.push(this.renderer.on(\"drag\",(e=>{if(!this.options.interact)return;let i;this.renderer.renderProgress(e),clearTimeout(t),this.isPlaying()?i=0:!0===this.options.dragToSeek?i=200:\"object\"==typeof this.options.dragToSeek&&void 0!==this.options.dragToSeek&&(i=this.options.dragToSeek.debounceTime),t=setTimeout((()=>{this.seekTo(e)}),i),this.emit(\"interaction\",e*this.getDuration()),this.emit(\"drag\",e)})))}}initPlugins(){var t;(null===(t=this.options.plugins)||void 0===t?void 0:t.length)&&this.options.plugins.forEach((t=>{this.registerPlugin(t)}))}unsubscribePlayerEvents(){this.mediaSubscriptions.forEach((t=>t())),this.mediaSubscriptions=[]}setOptions(t){this.options=Object.assign({},this.options,t),t.duration&&!t.peaks&&(this.decodedData=i.createBuffer(this.exportPeaks(),t.duration)),t.peaks&&t.duration&&(this.decodedData=i.createBuffer(t.peaks,t.duration)),this.renderer.setOptions(this.options),t.audioRate&&this.setPlaybackRate(t.audioRate),null!=t.mediaControls&&(this.getMediaElement().controls=t.mediaControls)}registerPlugin(t){return t._init(this),this.plugins.push(t),this.subscriptions.push(t.once(\"destroy\",(()=>{this.plugins=this.plugins.filter((e=>e!==t))}))),t}getWrapper(){return this.renderer.getWrapper()}getWidth(){return this.renderer.getWidth()}getScroll(){return this.renderer.getScroll()}setScroll(t){return this.renderer.setScroll(t)}setScrollTime(t){const e=t/this.getDuration();this.renderer.setScrollPercentage(e)}getActivePlugins(){return this.plugins}loadAudio(e,s,n,r){return t(this,void 0,void 0,(function*(){var t;if(this.emit(\"load\",e),!this.options.media&&this.isPlaying()&&this.pause(),this.decodedData=null,this.stopAtPosition=null,!s&&!n){const i=this.options.fetchParams||{};window.AbortController&&!i.signal&&(this.abortController=new AbortController,i.signal=null===(t=this.abortController)||void 0===t?void 0:t.signal);const n=t=>this.emit(\"loading\",t);s=yield o.fetchBlob(e,n,i);const r=this.options.blobMimeType;r&&(s=new Blob([s],{type:r}))}this.setSrc(e,s);const a=yield new Promise((t=>{const e=r||this.getDuration();e?t(e):this.mediaSubscriptions.push(this.onMediaEvent(\"loadedmetadata\",(()=>t(this.getDuration())),{once:!0}))}));if(!e&&!s){const t=this.getMediaElement();t instanceof d&&(t.duration=a)}if(n)this.decodedData=i.createBuffer(n,a||0);else if(s){const t=yield s.arrayBuffer();this.decodedData=yield i.decode(t,this.options.sampleRate)}this.decodedData&&(this.emit(\"decode\",this.getDuration()),this.renderer.render(this.decodedData)),this.emit(\"ready\",this.getDuration())}))}load(e,i,s){return t(this,void 0,void 0,(function*(){try{return yield this.loadAudio(e,void 0,i,s)}catch(t){throw this.emit(\"error\",t),t}}))}loadBlob(e,i,s){return t(this,void 0,void 0,(function*(){try{return yield this.loadAudio(\"\",e,i,s)}catch(t){throw this.emit(\"error\",t),t}}))}zoom(t){if(!this.decodedData)throw new Error(\"No audio loaded\");this.renderer.zoom(t),this.emit(\"zoom\",t)}getDecodedData(){return this.decodedData}exportPeaks({channels:t=2,maxLength:e=8e3,precision:i=1e4}={}){if(!this.decodedData)throw new Error(\"The audio has not been decoded yet\");const s=Math.min(t,this.decodedData.numberOfChannels),n=[];for(let t=0;t<s;t++){const s=this.decodedData.getChannelData(t),r=[],o=s.length/e;for(let t=0;t<e;t++){const e=s.slice(Math.floor(t*o),Math.ceil((t+1)*o));let n=0;for(let t=0;t<e.length;t++){const i=e[t];Math.abs(i)>Math.abs(n)&&(n=i)}r.push(Math.round(n*i)/i)}n.push(r)}return n}getDuration(){let t=super.getDuration()||0;return 0!==t&&t!==1/0||!this.decodedData||(t=this.decodedData.duration),t}toggleInteraction(t){this.options.interact=t}setTime(t){this.stopAtPosition=null,super.setTime(t),this.updateProgress(t),this.emit(\"timeupdate\",t)}seekTo(t){const e=this.getDuration()*t;this.setTime(e)}play(e,i){const s=Object.create(null,{play:{get:()=>super.play}});return t(this,void 0,void 0,(function*(){null!=e&&this.setTime(e);const t=yield s.play.call(this);return null!=i&&(this.media instanceof d?this.media.stopAt(i):this.stopAtPosition=i),t}))}playPause(){return t(this,void 0,void 0,(function*(){return this.isPlaying()?this.pause():this.play()}))}stop(){this.pause(),this.setTime(0)}skip(t){this.setTime(this.getCurrentTime()+t)}empty(){this.load(\"\",[[0]],.001)}setMediaElement(t){this.unsubscribePlayerEvents(),super.setMediaElement(t),this.initPlayerEvents()}exportImage(){return t(this,arguments,void 0,(function*(t=\"image/png\",e=1,i=\"dataURL\"){return this.renderer.exportImage(t,e,i)}))}destroy(){var t;this.emit(\"destroy\"),null===(t=this.abortController)||void 0===t||t.abort(),this.plugins.forEach((t=>t.destroy())),this.subscriptions.forEach((t=>t())),this.unsubscribePlayerEvents(),this.timer.destroy(),this.renderer.destroy(),super.destroy()}}u.BasePlugin=class extends e{constructor(t){super(),this.subscriptions=[],this.options=t}onInit(){}_init(t){this.wavesurfer=t,this.onInit()}destroy(){this.emit(\"destroy\"),this.subscriptions.forEach((t=>t()))}},u.dom=r,module.exports=u;\n","var assocIndexOf = require('./_assocIndexOf');\n\n/**\n * Gets the list cache value for `key`.\n *\n * @private\n * @name get\n * @memberOf ListCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction listCacheGet(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n return index < 0 ? undefined : data[index][1];\n}\n\nmodule.exports = listCacheGet;\n","// Copyright (c) Jupyter Development Team.\r\n// Distributed under the terms of the Modified BSD License.\r\n\r\nimport {\r\n WidgetModel, IWidgetManager, unpack_models\r\n} from '@jupyter-widgets/base';\r\n\r\nimport {\r\n arraysEqual\r\n} from './util';\r\n\r\nimport {\r\n compress, decompress\r\n} from './compression';\r\n\r\nimport ndarray = require('ndarray');\r\n\r\n\r\nexport\r\ntype TypedArray = ndarray.TypedArray;\r\nexport\r\ntype TypedArrayConstructor = Int8ArrayConstructor | Uint8ArrayConstructor | Int16ArrayConstructor | Uint16ArrayConstructor | Int32ArrayConstructor | Uint32ArrayConstructor | Uint8ClampedArrayConstructor | Float32ArrayConstructor | Float64ArrayConstructor;\r\n\r\nexport\r\ninterface IArrayLookup {\r\n int8: Int8Array,\r\n int16: Int16Array,\r\n int32: Int32Array,\r\n uint8: Uint8Array,\r\n uint16: Uint16Array,\r\n uint32: Uint32Array,\r\n float32: Float32Array,\r\n float64: Float64Array\r\n};\r\n\r\n/**\r\n * The serialized representation of a received array\r\n */\r\nexport\r\ninterface IReceivedSerializedArray {\r\n shape: number[];\r\n dtype: keyof IArrayLookup;\r\n buffer: DataView;\r\n}\r\n\r\n/**\r\n * The serialized representation of a received, compressed array\r\n */\r\nexport\r\ninterface IReceivedCompressedSerializedArray {\r\n shape: number[];\r\n dtype: keyof IArrayLookup;\r\n buffer?: DataView;\r\n compressed_buffer?: DataView;\r\n}\r\n\r\n/**\r\n * The serialized representation of an array for sending\r\n */\r\nexport\r\ninterface ISendSerializedArray {\r\n shape: number[];\r\n dtype: keyof IArrayLookup;\r\n buffer: TypedArray | DataView;\r\n}\r\n\r\n/**\r\n * The serialized representation of a compressed array for sending\r\n */\r\nexport\r\ninterface ISendCompressedSerializedArray {\r\n shape: number[];\r\n dtype: keyof IArrayLookup;\r\n buffer?: TypedArray | DataView;\r\n compressed_buffer?: TypedArray | DataView;\r\n}\r\n\r\nexport type SendSerializedArray = ISendSerializedArray | ISendCompressedSerializedArray;\r\n\r\n\r\nexport\r\nfunction ensureSerializableDtype(dtype: ndarray.DataType): keyof IArrayLookup {\r\n if (dtype === 'array' || (dtype as string) === 'buffer' || dtype === 'generic' ||\r\n dtype === \"bigint64\" || dtype === \"biguint64\") {\r\n throw new Error(`Cannot serialize ndarray with dtype: ${dtype}.`);\r\n } else if (dtype === 'uint8_clamped') {\r\n dtype = 'uint8';\r\n }\r\n return dtype;\r\n}\r\n\r\n\r\n/**\r\n * Deserialize from JSON to an ndarray object.\r\n *\r\n * @param obj The deserialized JSON to convert\r\n * @param manager The owning widget manager\r\n *\r\n * @returns A new ndarray object.\r\n */\r\nexport\r\nfunction JSONToArray(obj: IReceivedSerializedArray | null, manager?: IWidgetManager): ndarray.NdArray | null {\r\n if (obj === null) {\r\n return null;\r\n }\r\n // obj is {shape: list, dtype: string, array: DataView}\r\n // return an ndarray object\r\n return ndarray(new typesToArray[obj.dtype](obj.buffer.buffer), obj.shape);\r\n}\r\n\r\n\r\n/**\r\n * Serialize to JSON from an ndarray object.\r\n *\r\n * @param obj The ndarray object to convert\r\n * @param manager The owning widget model\r\n *\r\n * @returns The JSON object representing the ndarray.\r\n */\r\nexport\r\nfunction arrayToJSON(obj: ndarray.NdArray | null, widget?: WidgetModel): ISendSerializedArray | null {\r\n if (obj === null) {\r\n return null;\r\n }\r\n let dtype = ensureSerializableDtype(obj.dtype);\r\n // serialize to {shape: list, dtype: string, array: buffer}\r\n return { shape: obj.shape, dtype, buffer: obj.data as TypedArray };\r\n}\r\n\r\n/**\r\n * Serializers for to/from ndarrays\r\n */\r\nexport\r\nconst array_serialization = { deserialize: JSONToArray, serialize: arrayToJSON };\r\n\r\nexport\r\nconst typesToArray = {\r\n int8: Int8Array,\r\n int16: Int16Array,\r\n int32: Int32Array,\r\n uint8: Uint8Array,\r\n uint8_clamped: Uint8ClampedArray,\r\n uint16: Uint16Array,\r\n uint32: Uint32Array,\r\n float32: Float32Array,\r\n float64: Float64Array\r\n}\r\n\r\n\r\nexport function compressedJSONToArray(\r\n obj: IReceivedCompressedSerializedArray | null,\r\n manager?: IWidgetManager\r\n): ndarray.NdArray | null {\r\n if (obj === null) {\r\n return null;\r\n }\r\n let buffer: ArrayBuffer;\r\n if (obj.compressed_buffer !== undefined) {\r\n buffer = decompress(obj.compressed_buffer.buffer);\r\n } else {\r\n buffer = obj.buffer!.buffer;\r\n }\r\n // obj is {shape: list, dtype: string, array: DataView}\r\n // return an ndarray object\r\n return ndarray(new typesToArray[obj.dtype](buffer), obj.shape);\r\n}\r\n\r\nexport function arrayToCompressedJSON(\r\n obj: ndarray.NdArray | null,\r\n widget?: WidgetModel\r\n): SendSerializedArray | null {\r\n if (obj === null) {\r\n return null;\r\n }\r\n let dtype = ensureSerializableDtype(obj.dtype);\r\n const level = widget ? widget.get('compression_level') as number | undefined : 0;\r\n if (level !== undefined && level > 0) {\r\n const compressed_buffer = compress(\r\n (obj.data as TypedArray).buffer,\r\n level\r\n );\r\n // serialize to {shape: list, dtype: string, array: buffer}\r\n return { shape: obj.shape, dtype, compressed_buffer };\r\n }\r\n // serialize to {shape: list, dtype: string, array: buffer}\r\n return { shape: obj.shape, dtype, buffer: obj.data as TypedArray };\r\n\r\n}\r\n\r\nexport\r\nconst compressed_array_serialization = {\r\n deserialize: compressedJSONToArray,\r\n serialize: arrayToCompressedJSON\r\n};\r\n\r\n\r\nexport\r\nfunction typedArrayToType(array: TypedArray): keyof IArrayLookup {\r\n if (array instanceof Int8Array) {\r\n return 'int8';\r\n } else if (array instanceof Int16Array) {\r\n return 'int16';\r\n } else if (array instanceof Int32Array) {\r\n return 'int32';\r\n } else if (array instanceof Uint8Array) {\r\n return 'uint8';\r\n } else if (array instanceof Uint8ClampedArray) {\r\n return 'uint8';\r\n } else if (array instanceof Uint16Array) {\r\n return 'uint16';\r\n } else if (array instanceof Uint32Array) {\r\n return 'uint32';\r\n } else if (array instanceof Float32Array) {\r\n return 'float32';\r\n } else if (array instanceof Float64Array) {\r\n return 'float64';\r\n } else {\r\n throw new Error(`Unknown TypedArray type: ${array}`);\r\n }\r\n};\r\n\r\n\r\n\r\n/**\r\n * Deserialize from JSON to a typed array. Discards shape information.\r\n *\r\n * @param obj The deserialized JSON to convert\r\n * @param manager The owning widget manager\r\n *\r\n * @returns A new typed array.\r\n */\r\nexport\r\nfunction JSONToTypedArray(obj: IReceivedSerializedArray | null, manager?: IWidgetManager): TypedArray | null {\r\n if (obj === null) {\r\n return null;\r\n }\r\n // obj is {shape: list, dtype: string, array: DataView}\r\n return new typesToArray[obj.dtype](obj.buffer.buffer);\r\n}\r\n\r\n\r\n/**\r\n * Serialize to JSON from a typed array.\r\n *\r\n * @param obj The typed array to convert\r\n * @param manager The owning widget model\r\n *\r\n * @returns The JSON object representing the typed array.\r\n */\r\nexport\r\nfunction typedArrayToJSON(obj: TypedArray | null, widget?: WidgetModel): ISendSerializedArray | null {\r\n if (obj === null) {\r\n return null;\r\n }\r\n // serialize to {shape: list, dtype: string, array: buffer}\r\n return { shape: [obj.length], dtype: typedArrayToType(obj), buffer: obj };\r\n}\r\n\r\n\r\n/**\r\n * Serializers for to/from 1D typed array\r\n */\r\nexport\r\nconst typedarray_serialization = { deserialize: JSONToTypedArray, serialize: typedArrayToJSON };\r\n\r\n\r\n\r\nexport\r\ninterface ISimpleObject {\r\n array: TypedArray;\r\n shape: number[];\r\n}\r\n\r\n\r\n/**\r\n * Deserialize from JSON to a simple object with shape and typed array.\r\n *\r\n * @param obj The deserialized JSON to convert\r\n * @param manager The owning widget manager\r\n *\r\n * @returns A new object containg the data.\r\n */\r\nexport\r\nfunction JSONToSimple(obj: IReceivedSerializedArray | null, manager?: IWidgetManager): ISimpleObject | null {\r\n if (obj === null) {\r\n return null;\r\n }\r\n // obj is {shape: list, dtype: string, array: DataView}\r\n return { array: new typesToArray[obj.dtype](obj.buffer.buffer), shape: obj.shape};\r\n}\r\n\r\n\r\n/**\r\n * Serialize to JSON from a simple object.\r\n *\r\n * @param obj The simple object to convert\r\n * @param manager The owning widget model\r\n *\r\n * @returns The JSON object representing the simple object.\r\n */\r\nexport\r\nfunction simpleToJSON(obj: ISimpleObject | null, widget?: WidgetModel): ISendSerializedArray | null {\r\n if (obj === null) {\r\n return null;\r\n }\r\n // serialize to {shape: list, dtype: string, array: buffer}\r\n return { shape: obj.shape, dtype: typedArrayToType(obj.array), buffer: obj.array };\r\n}\r\n\r\n\r\n/**\r\n * Serializers for to/from 1D simple object containing array and metadata.\r\n */\r\nexport\r\nconst simplearray_serialization = { deserialize: JSONToSimple, serialize: simpleToJSON };\r\n\r\n\r\n/**\r\n * Factory for serialziers to/from a typed array with fixed shape.\r\n */\r\nexport function fixed_shape_serialization(shape: number[]) {\r\n\r\n let fixedLength = 1;\r\n for (let dim of shape) {\r\n fixedLength *= dim;\r\n }\r\n\r\n function JSONToFixedShape(obj: IReceivedSerializedArray | null, manager?: IWidgetManager): TypedArray | null {\r\n if (obj === null) {\r\n return null;\r\n }\r\n if (!arraysEqual(obj.shape, shape)) {\r\n throw new Error(`Incoming data unexpected shape: ${obj.shape}, expected ${shape}`);\r\n }\r\n // obj is {shape: list, dtype: string, array: DataView}\r\n return new typesToArray[obj.dtype](obj.buffer.buffer);\r\n }\r\n\r\n function fixedShapeToJSON(obj: TypedArray | null, widget?: WidgetModel): ISendSerializedArray | null {\r\n if (obj === null) {\r\n return null;\r\n }\r\n if (obj.length !== fixedLength) {\r\n throw new Error(\r\n `Data has wrong size for fixed shape serialization! Expected ${\r\n fixedLength\r\n } elements, got ${obj.length}.`);\r\n }\r\n // serialize to {shape: list, dtype: string, array: buffer}\r\n return { shape, dtype: typedArrayToType(obj), buffer: obj };\r\n }\r\n return { deserialize: JSONToFixedShape, serialize: fixedShapeToJSON };\r\n}\r\n","\"use strict\";\n\n/* istanbul ignore next */\nfunction insertStyleElement(options) {\n var element = document.createElement(\"style\");\n options.setAttributes(element, options.attributes);\n options.insert(element, options.options);\n return element;\n}\nmodule.exports = insertStyleElement;","var getMapData = require('./_getMapData');\n\n/**\n * Checks if a map value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf MapCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction mapCacheHas(key) {\n return getMapData(this, key).has(key);\n}\n\nmodule.exports = mapCacheHas;\n","var nativeCreate = require('./_nativeCreate');\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\nfunction hashSet(key, value) {\n var data = this.__data__;\n this.size += this.has(key) ? 0 : 1;\n data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n return this;\n}\n\nmodule.exports = hashSet;\n","'use strict';\n\n\nconst zlib_deflate = require('./zlib/deflate');\nconst utils = require('./utils/common');\nconst strings = require('./utils/strings');\nconst msg = require('./zlib/messages');\nconst ZStream = require('./zlib/zstream');\n\nconst toString = Object.prototype.toString;\n\n/* Public constants ==========================================================*/\n/* ===========================================================================*/\n\nconst {\n Z_NO_FLUSH, Z_SYNC_FLUSH, Z_FULL_FLUSH, Z_FINISH,\n Z_OK, Z_STREAM_END,\n Z_DEFAULT_COMPRESSION,\n Z_DEFAULT_STRATEGY,\n Z_DEFLATED\n} = require('./zlib/constants');\n\n/* ===========================================================================*/\n\n\n/**\n * class Deflate\n *\n * Generic JS-style wrapper for zlib calls. If you don't need\n * streaming behaviour - use more simple functions: [[deflate]],\n * [[deflateRaw]] and [[gzip]].\n **/\n\n/* internal\n * Deflate.chunks -> Array\n *\n * Chunks of output data, if [[Deflate#onData]] not overridden.\n **/\n\n/**\n * Deflate.result -> Uint8Array\n *\n * Compressed result, generated by default [[Deflate#onData]]\n * and [[Deflate#onEnd]] handlers. Filled after you push last chunk\n * (call [[Deflate#push]] with `Z_FINISH` / `true` param).\n **/\n\n/**\n * Deflate.err -> Number\n *\n * Error code after deflate finished. 0 (Z_OK) on success.\n * You will not need it in real life, because deflate errors\n * are possible only on wrong options or bad `onData` / `onEnd`\n * custom handlers.\n **/\n\n/**\n * Deflate.msg -> String\n *\n * Error message, if [[Deflate.err]] != 0\n **/\n\n\n/**\n * new Deflate(options)\n * - options (Object): zlib deflate options.\n *\n * Creates new deflator instance with specified params. Throws exception\n * on bad params. Supported options:\n *\n * - `level`\n * - `windowBits`\n * - `memLevel`\n * - `strategy`\n * - `dictionary`\n *\n * [http://zlib.net/manual.html#Advanced](http://zlib.net/manual.html#Advanced)\n * for more information on these.\n *\n * Additional options, for internal needs:\n *\n * - `chunkSize` - size of generated data chunks (16K by default)\n * - `raw` (Boolean) - do raw deflate\n * - `gzip` (Boolean) - create gzip wrapper\n * - `header` (Object) - custom header for gzip\n * - `text` (Boolean) - true if compressed data believed to be text\n * - `time` (Number) - modification time, unix timestamp\n * - `os` (Number) - operation system code\n * - `extra` (Array) - array of bytes with extra data (max 65536)\n * - `name` (String) - file name (binary string)\n * - `comment` (String) - comment (binary string)\n * - `hcrc` (Boolean) - true if header crc should be added\n *\n * ##### Example:\n *\n * ```javascript\n * const pako = require('pako')\n * , chunk1 = new Uint8Array([1,2,3,4,5,6,7,8,9])\n * , chunk2 = new Uint8Array([10,11,12,13,14,15,16,17,18,19]);\n *\n * const deflate = new pako.Deflate({ level: 3});\n *\n * deflate.push(chunk1, false);\n * deflate.push(chunk2, true); // true -> last chunk\n *\n * if (deflate.err) { throw new Error(deflate.err); }\n *\n * console.log(deflate.result);\n * ```\n **/\nfunction Deflate(options) {\n this.options = utils.assign({\n level: Z_DEFAULT_COMPRESSION,\n method: Z_DEFLATED,\n chunkSize: 16384,\n windowBits: 15,\n memLevel: 8,\n strategy: Z_DEFAULT_STRATEGY\n }, options || {});\n\n let opt = this.options;\n\n if (opt.raw && (opt.windowBits > 0)) {\n opt.windowBits = -opt.windowBits;\n }\n\n else if (opt.gzip && (opt.windowBits > 0) && (opt.windowBits < 16)) {\n opt.windowBits += 16;\n }\n\n this.err = 0; // error code, if happens (0 = Z_OK)\n this.msg = ''; // error message\n this.ended = false; // used to avoid multiple onEnd() calls\n this.chunks = []; // chunks of compressed data\n\n this.strm = new ZStream();\n this.strm.avail_out = 0;\n\n let status = zlib_deflate.deflateInit2(\n this.strm,\n opt.level,\n opt.method,\n opt.windowBits,\n opt.memLevel,\n opt.strategy\n );\n\n if (status !== Z_OK) {\n throw new Error(msg[status]);\n }\n\n if (opt.header) {\n zlib_deflate.deflateSetHeader(this.strm, opt.header);\n }\n\n if (opt.dictionary) {\n let dict;\n // Convert data if needed\n if (typeof opt.dictionary === 'string') {\n // If we need to compress text, change encoding to utf8.\n dict = strings.string2buf(opt.dictionary);\n } else if (toString.call(opt.dictionary) === '[object ArrayBuffer]') {\n dict = new Uint8Array(opt.dictionary);\n } else {\n dict = opt.dictionary;\n }\n\n status = zlib_deflate.deflateSetDictionary(this.strm, dict);\n\n if (status !== Z_OK) {\n throw new Error(msg[status]);\n }\n\n this._dict_set = true;\n }\n}\n\n/**\n * Deflate#push(data[, flush_mode]) -> Boolean\n * - data (Uint8Array|ArrayBuffer|String): input data. Strings will be\n * converted to utf8 byte sequence.\n * - flush_mode (Number|Boolean): 0..6 for corresponding Z_NO_FLUSH..Z_TREE modes.\n * See constants. Skipped or `false` means Z_NO_FLUSH, `true` means Z_FINISH.\n *\n * Sends input data to deflate pipe, generating [[Deflate#onData]] calls with\n * new compressed chunks. Returns `true` on success. The last data block must\n * have `flush_mode` Z_FINISH (or `true`). That will flush internal pending\n * buffers and call [[Deflate#onEnd]].\n *\n * On fail call [[Deflate#onEnd]] with error code and return false.\n *\n * ##### Example\n *\n * ```javascript\n * push(chunk, false); // push one of data chunks\n * ...\n * push(chunk, true); // push last chunk\n * ```\n **/\nDeflate.prototype.push = function (data, flush_mode) {\n const strm = this.strm;\n const chunkSize = this.options.chunkSize;\n let status, _flush_mode;\n\n if (this.ended) { return false; }\n\n if (flush_mode === ~~flush_mode) _flush_mode = flush_mode;\n else _flush_mode = flush_mode === true ? Z_FINISH : Z_NO_FLUSH;\n\n // Convert data if needed\n if (typeof data === 'string') {\n // If we need to compress text, change encoding to utf8.\n strm.input = strings.string2buf(data);\n } else if (toString.call(data) === '[object ArrayBuffer]') {\n strm.input = new Uint8Array(data);\n } else {\n strm.input = data;\n }\n\n strm.next_in = 0;\n strm.avail_in = strm.input.length;\n\n for (;;) {\n if (strm.avail_out === 0) {\n strm.output = new Uint8Array(chunkSize);\n strm.next_out = 0;\n strm.avail_out = chunkSize;\n }\n\n // Make sure avail_out > 6 to avoid repeating markers\n if ((_flush_mode === Z_SYNC_FLUSH || _flush_mode === Z_FULL_FLUSH) && strm.avail_out <= 6) {\n this.onData(strm.output.subarray(0, strm.next_out));\n strm.avail_out = 0;\n continue;\n }\n\n status = zlib_deflate.deflate(strm, _flush_mode);\n\n // Ended => flush and finish\n if (status === Z_STREAM_END) {\n if (strm.next_out > 0) {\n this.onData(strm.output.subarray(0, strm.next_out));\n }\n status = zlib_deflate.deflateEnd(this.strm);\n this.onEnd(status);\n this.ended = true;\n return status === Z_OK;\n }\n\n // Flush if out buffer full\n if (strm.avail_out === 0) {\n this.onData(strm.output);\n continue;\n }\n\n // Flush if requested and has data\n if (_flush_mode > 0 && strm.next_out > 0) {\n this.onData(strm.output.subarray(0, strm.next_out));\n strm.avail_out = 0;\n continue;\n }\n\n if (strm.avail_in === 0) break;\n }\n\n return true;\n};\n\n\n/**\n * Deflate#onData(chunk) -> Void\n * - chunk (Uint8Array): output data.\n *\n * By default, stores data blocks in `chunks[]` property and glue\n * those in `onEnd`. Override this handler, if you need another behaviour.\n **/\nDeflate.prototype.onData = function (chunk) {\n this.chunks.push(chunk);\n};\n\n\n/**\n * Deflate#onEnd(status) -> Void\n * - status (Number): deflate status. 0 (Z_OK) on success,\n * other if not.\n *\n * Called once after you tell deflate that the input stream is\n * complete (Z_FINISH). By default - join collected chunks,\n * free memory and fill `results` / `err` properties.\n **/\nDeflate.prototype.onEnd = function (status) {\n // On success - join\n if (status === Z_OK) {\n this.result = utils.flattenChunks(this.chunks);\n }\n this.chunks = [];\n this.err = status;\n this.msg = this.strm.msg;\n};\n\n\n/**\n * deflate(data[, options]) -> Uint8Array\n * - data (Uint8Array|ArrayBuffer|String): input data to compress.\n * - options (Object): zlib deflate options.\n *\n * Compress `data` with deflate algorithm and `options`.\n *\n * Supported options are:\n *\n * - level\n * - windowBits\n * - memLevel\n * - strategy\n * - dictionary\n *\n * [http://zlib.net/manual.html#Advanced](http://zlib.net/manual.html#Advanced)\n * for more information on these.\n *\n * Sugar (options):\n *\n * - `raw` (Boolean) - say that we work with raw stream, if you don't wish to specify\n * negative windowBits implicitly.\n *\n * ##### Example:\n *\n * ```javascript\n * const pako = require('pako')\n * const data = new Uint8Array([1,2,3,4,5,6,7,8,9]);\n *\n * console.log(pako.deflate(data));\n * ```\n **/\nfunction deflate(input, options) {\n const deflator = new Deflate(options);\n\n deflator.push(input, true);\n\n // That will never happens, if you don't cheat with options :)\n if (deflator.err) { throw deflator.msg || msg[deflator.err]; }\n\n return deflator.result;\n}\n\n\n/**\n * deflateRaw(data[, options]) -> Uint8Array\n * - data (Uint8Array|ArrayBuffer|String): input data to compress.\n * - options (Object): zlib deflate options.\n *\n * The same as [[deflate]], but creates raw data, without wrapper\n * (header and adler32 crc).\n **/\nfunction deflateRaw(input, options) {\n options = options || {};\n options.raw = true;\n return deflate(input, options);\n}\n\n\n/**\n * gzip(data[, options]) -> Uint8Array\n * - data (Uint8Array|ArrayBuffer|String): input data to compress.\n * - options (Object): zlib deflate options.\n *\n * The same as [[deflate]], but create gzip wrapper instead of\n * deflate one.\n **/\nfunction gzip(input, options) {\n options = options || {};\n options.gzip = true;\n return deflate(input, options);\n}\n\n\nmodule.exports.Deflate = Deflate;\nmodule.exports.deflate = deflate;\nmodule.exports.deflateRaw = deflateRaw;\nmodule.exports.gzip = gzip;\nmodule.exports.constants = require('./zlib/constants');\n","/**\n * A faster alternative to `Function#apply`, this function invokes `func`\n * with the `this` binding of `thisArg` and the arguments of `args`.\n *\n * @private\n * @param {Function} func The function to invoke.\n * @param {*} thisArg The `this` binding of `func`.\n * @param {Array} args The arguments to invoke `func` with.\n * @returns {*} Returns the result of `func`.\n */\nfunction apply(func, thisArg, args) {\n switch (args.length) {\n case 0: return func.call(thisArg);\n case 1: return func.call(thisArg, args[0]);\n case 2: return func.call(thisArg, args[0], args[1]);\n case 3: return func.call(thisArg, args[0], args[1], args[2]);\n }\n return func.apply(thisArg, args);\n}\n\nmodule.exports = apply;\n","/**\n * Creates a unary function that invokes `func` with its argument transformed.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {Function} transform The argument transform.\n * @returns {Function} Returns the new function.\n */\nfunction overArg(func, transform) {\n return function(arg) {\n return func(transform(arg));\n };\n}\n\nmodule.exports = overArg;\n","var Symbol = require('./_Symbol');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n}\n\nmodule.exports = getRawTag;\n","/**\n * Creates a base function for methods like `_.forIn` and `_.forOwn`.\n *\n * @private\n * @param {boolean} [fromRight] Specify iterating from right to left.\n * @returns {Function} Returns the new base function.\n */\nfunction createBaseFor(fromRight) {\n return function(object, iteratee, keysFunc) {\n var index = -1,\n iterable = Object(object),\n props = keysFunc(object),\n length = props.length;\n\n while (length--) {\n var key = props[fromRight ? length : ++index];\n if (iteratee(iterable[key], key, iterable) === false) {\n break;\n }\n }\n return object;\n };\n}\n\nmodule.exports = createBaseFor;\n","\"use strict\";class t{constructor(){this.listeners={}}on(t,e,s){if(this.listeners[t]||(this.listeners[t]=new Set),this.listeners[t].add(e),null==s?void 0:s.once){const s=()=>{this.un(t,s),this.un(t,e)};return this.on(t,s),s}return()=>this.un(t,e)}un(t,e){var s;null===(s=this.listeners[t])||void 0===s||s.delete(e)}once(t,e){return this.on(t,e,{once:!0})}unAll(){this.listeners={}}emit(t,...e){this.listeners[t]&&this.listeners[t].forEach((t=>t(...e)))}}class e extends t{constructor(t){super(),this.subscriptions=[],this.options=t}onInit(){}_init(t){this.wavesurfer=t,this.onInit()}destroy(){this.emit(\"destroy\"),this.subscriptions.forEach((t=>t()))}}function s(t,e){const i=e.xmlns?document.createElementNS(e.xmlns,t):document.createElement(t);for(const[t,n]of Object.entries(e))if(\"children\"===t)for(const[t,n]of Object.entries(e))\"string\"==typeof n?i.appendChild(document.createTextNode(n)):i.appendChild(s(t,n));else\"style\"===t?Object.assign(i.style,n):\"textContent\"===t?i.textContent=n:i.setAttribute(t,n.toString());return i}function i(t,e,i){const n=s(t,e||{});return null==i||i.appendChild(n),n}const n={lineWidth:1,labelSize:11,formatTimeCallback:t=>`${Math.floor(t/60)}:${`0${Math.floor(t)%60}`.slice(-2)}`};class r extends e{constructor(t){super(t||{}),this.unsubscribe=()=>{},this.onPointerMove=t=>{if(!this.wavesurfer)return;const e=this.wavesurfer.getWrapper().getBoundingClientRect(),{width:s}=e,i=t.clientX-e.left,n=Math.min(1,Math.max(0,i/s)),r=Math.min(s-this.options.lineWidth-1,i);this.wrapper.style.transform=`translateX(${r}px)`,this.wrapper.style.opacity=\"1\";const o=this.wavesurfer.getDuration()||0;this.label.textContent=this.options.formatTimeCallback(o*n);const a=this.label.offsetWidth;this.label.style.transform=r+a>s?`translateX(-${a+this.options.lineWidth}px)`:\"\",this.emit(\"hover\",n)},this.onPointerLeave=()=>{this.wrapper.style.opacity=\"0\"},this.options=Object.assign({},n,t),this.wrapper=i(\"div\",{part:\"hover\"}),this.label=i(\"span\",{part:\"hover-label\"},this.wrapper)}static create(t){return new r(t)}addUnits(t){return`${t}${\"number\"==typeof t?\"px\":\"\"}`}onInit(){if(!this.wavesurfer)throw Error(\"WaveSurfer is not initialized\");const t=this.wavesurfer.options,e=this.options.lineColor||t.cursorColor||t.progressColor;Object.assign(this.wrapper.style,{position:\"absolute\",zIndex:10,left:0,top:0,height:\"100%\",pointerEvents:\"none\",borderLeft:`${this.addUnits(this.options.lineWidth)} solid ${e}`,opacity:\"0\",transition:\"opacity .1s ease-in\"}),Object.assign(this.label.style,{display:\"block\",backgroundColor:this.options.labelBackground,color:this.options.labelColor,fontSize:`${this.addUnits(this.options.labelSize)}`,transition:\"transform .1s ease-in\",padding:\"2px 3px\"});const s=this.wavesurfer.getWrapper();s.appendChild(this.wrapper),s.addEventListener(\"pointermove\",this.onPointerMove),s.addEventListener(\"pointerleave\",this.onPointerLeave),s.addEventListener(\"wheel\",this.onPointerMove),this.unsubscribe=()=>{s.removeEventListener(\"pointermove\",this.onPointerMove),s.removeEventListener(\"pointerleave\",this.onPointerLeave),s.removeEventListener(\"wheel\",this.onPointerLeave)}}destroy(){super.destroy(),this.unsubscribe(),this.wrapper.remove()}}module.exports=r;\n","/**\n * Gets the value at `key` of `object`.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction getValue(object, key) {\n return object == null ? undefined : object[key];\n}\n\nmodule.exports = getValue;\n","\"use strict\";\n\n/* istanbul ignore next */\nfunction styleTagTransform(css, styleElement) {\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = css;\n } else {\n while (styleElement.firstChild) {\n styleElement.removeChild(styleElement.firstChild);\n }\n styleElement.appendChild(document.createTextNode(css));\n }\n}\nmodule.exports = styleTagTransform;","// Copyright (c) Jupyter Development Team.\r\n// Distributed under the terms of the Modified BSD License.\r\n\r\nimport pako = require('pako');\r\n\r\n/**\r\n * Compress the buffer using zlib compression.\r\n */\r\nexport function compress(buffer: ArrayBuffer, level: number): Uint8Array {\r\n return pako.deflate(new Uint8Array(buffer), {level: level as pako.DeflateOptions['level']});\r\n}\r\n\r\n/**\r\n * Decompress a zlib compressed buffer.\r\n */\r\nexport function decompress(buffer: ArrayBuffer): ArrayBuffer {\r\n return pako.inflate(new Uint8Array(buffer)).buffer;\r\n}\r\n","var assocIndexOf = require('./_assocIndexOf');\n\n/**\n * Checks if a list cache value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf ListCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction listCacheHas(key) {\n return assocIndexOf(this.__data__, key) > -1;\n}\n\nmodule.exports = listCacheHas;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../css-loader/dist/runtime/api.js\";\nimport ___CSS_LOADER_GET_URL_IMPORT___ from \"../../../css-loader/dist/runtime/getUrl.js\";\nvar ___CSS_LOADER_URL_IMPORT_0___ = new URL(\"data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27%3e%3cpath fill=%27none%27 stroke=%27%23343a40%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 stroke-width=%272%27 d=%27m2 5 6 6 6-6%27/%3e%3c/svg%3e\", import.meta.url);\nvar ___CSS_LOADER_URL_IMPORT_1___ = new URL(\"data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27%3e%3cpath fill=%27none%27 stroke=%27%23dee2e6%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 stroke-width=%272%27 d=%27m2 5 6 6 6-6%27/%3e%3c/svg%3e\", import.meta.url);\nvar ___CSS_LOADER_URL_IMPORT_2___ = new URL(\"data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 20 20%27%3e%3cpath fill=%27none%27 stroke=%27%23fff%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 stroke-width=%273%27 d=%27m6 10 3 3 6-6%27/%3e%3c/svg%3e\", import.meta.url);\nvar ___CSS_LOADER_URL_IMPORT_3___ = new URL(\"data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%27-4 -4 8 8%27%3e%3ccircle r=%272%27 fill=%27%23fff%27/%3e%3c/svg%3e\", import.meta.url);\nvar ___CSS_LOADER_URL_IMPORT_4___ = new URL(\"data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 20 20%27%3e%3cpath fill=%27none%27 stroke=%27%23fff%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27 stroke-width=%273%27 d=%27M6 10h8%27/%3e%3c/svg%3e\", import.meta.url);\nvar ___CSS_LOADER_URL_IMPORT_5___ = new URL(\"data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%27-4 -4 8 8%27%3e%3ccircle r=%273%27 fill=%27rgba%280, 0, 0, 0.25%29%27/%3e%3c/svg%3e\", import.meta.url);\nvar ___CSS_LOADER_URL_IMPORT_6___ = new URL(\"data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%27-4 -4 8 8%27%3e%3ccircle r=%273%27 fill=%27%2386b7fe%27/%3e%3c/svg%3e\", import.meta.url);\nvar ___CSS_LOADER_URL_IMPORT_7___ = new URL(\"data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%27-4 -4 8 8%27%3e%3ccircle r=%273%27 fill=%27%23fff%27/%3e%3c/svg%3e\", import.meta.url);\nvar ___CSS_LOADER_URL_IMPORT_8___ = new URL(\"data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%27-4 -4 8 8%27%3e%3ccircle r=%273%27 fill=%27rgba%28255, 255, 255, 0.25%29%27/%3e%3c/svg%3e\", import.meta.url);\nvar ___CSS_LOADER_URL_IMPORT_9___ = new URL(\"data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 8 8%27%3e%3cpath fill=%27%23198754%27 d=%27M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z%27/%3e%3c/svg%3e\", import.meta.url);\nvar ___CSS_LOADER_URL_IMPORT_10___ = new URL(\"data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 12 12%27 width=%2712%27 height=%2712%27 fill=%27none%27 stroke=%27%23dc3545%27%3e%3ccircle cx=%276%27 cy=%276%27 r=%274.5%27/%3e%3cpath stroke-linejoin=%27round%27 d=%27M5.8 3.6h.4L6 6.5z%27/%3e%3ccircle cx=%276%27 cy=%278.2%27 r=%27.6%27 fill=%27%23dc3545%27 stroke=%27none%27/%3e%3c/svg%3e\", import.meta.url);\nvar ___CSS_LOADER_URL_IMPORT_11___ = new URL(\"data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 30 30%27%3e%3cpath stroke=%27rgba%2833, 37, 41, 0.75%29%27 stroke-linecap=%27round%27 stroke-miterlimit=%2710%27 stroke-width=%272%27 d=%27M4 7h22M4 15h22M4 23h22%27/%3e%3c/svg%3e\", import.meta.url);\nvar ___CSS_LOADER_URL_IMPORT_12___ = new URL(\"data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 30 30%27%3e%3cpath stroke=%27rgba%28255, 255, 255, 0.55%29%27 stroke-linecap=%27round%27 stroke-miterlimit=%2710%27 stroke-width=%272%27 d=%27M4 7h22M4 15h22M4 23h22%27/%3e%3c/svg%3e\", import.meta.url);\nvar ___CSS_LOADER_URL_IMPORT_13___ = new URL(\"data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27none%27 stroke=%27%23212529%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27%3e%3cpath d=%27M2 5L8 11L14 5%27/%3e%3c/svg%3e\", import.meta.url);\nvar ___CSS_LOADER_URL_IMPORT_14___ = new URL(\"data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27none%27 stroke=%27%23052c65%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27%3e%3cpath d=%27M2 5L8 11L14 5%27/%3e%3c/svg%3e\", import.meta.url);\nvar ___CSS_LOADER_URL_IMPORT_15___ = new URL(\"data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27%236ea8fe%27%3e%3cpath fill-rule=%27evenodd%27 d=%27M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z%27/%3e%3c/svg%3e\", import.meta.url);\nvar ___CSS_LOADER_URL_IMPORT_16___ = new URL(\"data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27%23000%27%3e%3cpath d=%27M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z%27/%3e%3c/svg%3e\", import.meta.url);\nvar ___CSS_LOADER_URL_IMPORT_17___ = new URL(\"data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27%23fff%27%3e%3cpath d=%27M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z%27/%3e%3c/svg%3e\", import.meta.url);\nvar ___CSS_LOADER_URL_IMPORT_18___ = new URL(\"data:image/svg+xml,%3csvg xmlns=%27http://www.w3.org/2000/svg%27 viewBox=%270 0 16 16%27 fill=%27%23fff%27%3e%3cpath d=%27M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z%27/%3e%3c/svg%3e\", import.meta.url);\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\nvar ___CSS_LOADER_URL_REPLACEMENT_0___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_0___);\nvar ___CSS_LOADER_URL_REPLACEMENT_1___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_1___);\nvar ___CSS_LOADER_URL_REPLACEMENT_2___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_2___);\nvar ___CSS_LOADER_URL_REPLACEMENT_3___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_3___);\nvar ___CSS_LOADER_URL_REPLACEMENT_4___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_4___);\nvar ___CSS_LOADER_URL_REPLACEMENT_5___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_5___);\nvar ___CSS_LOADER_URL_REPLACEMENT_6___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_6___);\nvar ___CSS_LOADER_URL_REPLACEMENT_7___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_7___);\nvar ___CSS_LOADER_URL_REPLACEMENT_8___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_8___);\nvar ___CSS_LOADER_URL_REPLACEMENT_9___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_9___);\nvar ___CSS_LOADER_URL_REPLACEMENT_10___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_10___);\nvar ___CSS_LOADER_URL_REPLACEMENT_11___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_11___);\nvar ___CSS_LOADER_URL_REPLACEMENT_12___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_12___);\nvar ___CSS_LOADER_URL_REPLACEMENT_13___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_13___);\nvar ___CSS_LOADER_URL_REPLACEMENT_14___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_14___);\nvar ___CSS_LOADER_URL_REPLACEMENT_15___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_15___);\nvar ___CSS_LOADER_URL_REPLACEMENT_16___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_16___);\nvar ___CSS_LOADER_URL_REPLACEMENT_17___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_17___);\nvar ___CSS_LOADER_URL_REPLACEMENT_18___ = ___CSS_LOADER_GET_URL_IMPORT___(___CSS_LOADER_URL_IMPORT_18___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `@charset \"UTF-8\";/*!\n * Bootstrap v5.3.3 (https://getbootstrap.com/)\n * Copyright 2011-2024 The Bootstrap Authors\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n */:root,[data-bs-theme=light]{--bs-blue:#0d6efd;--bs-indigo:#6610f2;--bs-purple:#6f42c1;--bs-pink:#d63384;--bs-red:#dc3545;--bs-orange:#fd7e14;--bs-yellow:#ffc107;--bs-green:#198754;--bs-teal:#20c997;--bs-cyan:#0dcaf0;--bs-black:#000;--bs-white:#fff;--bs-gray:#6c757d;--bs-gray-dark:#343a40;--bs-gray-100:#f8f9fa;--bs-gray-200:#e9ecef;--bs-gray-300:#dee2e6;--bs-gray-400:#ced4da;--bs-gray-500:#adb5bd;--bs-gray-600:#6c757d;--bs-gray-700:#495057;--bs-gray-800:#343a40;--bs-gray-900:#212529;--bs-primary:#0d6efd;--bs-secondary:#6c757d;--bs-success:#198754;--bs-info:#0dcaf0;--bs-warning:#ffc107;--bs-danger:#dc3545;--bs-light:#f8f9fa;--bs-dark:#212529;--bs-primary-rgb:13,110,253;--bs-secondary-rgb:108,117,125;--bs-success-rgb:25,135,84;--bs-info-rgb:13,202,240;--bs-warning-rgb:255,193,7;--bs-danger-rgb:220,53,69;--bs-light-rgb:248,249,250;--bs-dark-rgb:33,37,41;--bs-primary-text-emphasis:#052c65;--bs-secondary-text-emphasis:#2b2f32;--bs-success-text-emphasis:#0a3622;--bs-info-text-emphasis:#055160;--bs-warning-text-emphasis:#664d03;--bs-danger-text-emphasis:#58151c;--bs-light-text-emphasis:#495057;--bs-dark-text-emphasis:#495057;--bs-primary-bg-subtle:#cfe2ff;--bs-secondary-bg-subtle:#e2e3e5;--bs-success-bg-subtle:#d1e7dd;--bs-info-bg-subtle:#cff4fc;--bs-warning-bg-subtle:#fff3cd;--bs-danger-bg-subtle:#f8d7da;--bs-light-bg-subtle:#fcfcfd;--bs-dark-bg-subtle:#ced4da;--bs-primary-border-subtle:#9ec5fe;--bs-secondary-border-subtle:#c4c8cb;--bs-success-border-subtle:#a3cfbb;--bs-info-border-subtle:#9eeaf9;--bs-warning-border-subtle:#ffe69c;--bs-danger-border-subtle:#f1aeb5;--bs-light-border-subtle:#e9ecef;--bs-dark-border-subtle:#adb5bd;--bs-white-rgb:255,255,255;--bs-black-rgb:0,0,0;--bs-font-sans-serif:system-ui,-apple-system,\"Segoe UI\",Roboto,\"Helvetica Neue\",\"Noto Sans\",\"Liberation Sans\",Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",\"Segoe UI Symbol\",\"Noto Color Emoji\";--bs-font-monospace:SFMono-Regular,Menlo,Monaco,Consolas,\"Liberation Mono\",\"Courier New\",monospace;--bs-gradient:linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));--bs-body-font-family:var(--bs-font-sans-serif);--bs-body-font-size:1rem;--bs-body-font-weight:400;--bs-body-line-height:1.5;--bs-body-color:#212529;--bs-body-color-rgb:33,37,41;--bs-body-bg:#fff;--bs-body-bg-rgb:255,255,255;--bs-emphasis-color:#000;--bs-emphasis-color-rgb:0,0,0;--bs-secondary-color:rgba(33, 37, 41, 0.75);--bs-secondary-color-rgb:33,37,41;--bs-secondary-bg:#e9ecef;--bs-secondary-bg-rgb:233,236,239;--bs-tertiary-color:rgba(33, 37, 41, 0.5);--bs-tertiary-color-rgb:33,37,41;--bs-tertiary-bg:#f8f9fa;--bs-tertiary-bg-rgb:248,249,250;--bs-heading-color:inherit;--bs-link-color:#0d6efd;--bs-link-color-rgb:13,110,253;--bs-link-decoration:underline;--bs-link-hover-color:#0a58ca;--bs-link-hover-color-rgb:10,88,202;--bs-code-color:#d63384;--bs-highlight-color:#212529;--bs-highlight-bg:#fff3cd;--bs-border-width:1px;--bs-border-style:solid;--bs-border-color:#dee2e6;--bs-border-color-translucent:rgba(0, 0, 0, 0.175);--bs-border-radius:0.375rem;--bs-border-radius-sm:0.25rem;--bs-border-radius-lg:0.5rem;--bs-border-radius-xl:1rem;--bs-border-radius-xxl:2rem;--bs-border-radius-2xl:var(--bs-border-radius-xxl);--bs-border-radius-pill:50rem;--bs-box-shadow:0 0.5rem 1rem rgba(0, 0, 0, 0.15);--bs-box-shadow-sm:0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);--bs-box-shadow-lg:0 1rem 3rem rgba(0, 0, 0, 0.175);--bs-box-shadow-inset:inset 0 1px 2px rgba(0, 0, 0, 0.075);--bs-focus-ring-width:0.25rem;--bs-focus-ring-opacity:0.25;--bs-focus-ring-color:rgba(13, 110, 253, 0.25);--bs-form-valid-color:#198754;--bs-form-valid-border-color:#198754;--bs-form-invalid-color:#dc3545;--bs-form-invalid-border-color:#dc3545}[data-bs-theme=dark]{color-scheme:dark;--bs-body-color:#dee2e6;--bs-body-color-rgb:222,226,230;--bs-body-bg:#212529;--bs-body-bg-rgb:33,37,41;--bs-emphasis-color:#fff;--bs-emphasis-color-rgb:255,255,255;--bs-secondary-color:rgba(222, 226, 230, 0.75);--bs-secondary-color-rgb:222,226,230;--bs-secondary-bg:#343a40;--bs-secondary-bg-rgb:52,58,64;--bs-tertiary-color:rgba(222, 226, 230, 0.5);--bs-tertiary-color-rgb:222,226,230;--bs-tertiary-bg:#2b3035;--bs-tertiary-bg-rgb:43,48,53;--bs-primary-text-emphasis:#6ea8fe;--bs-secondary-text-emphasis:#a7acb1;--bs-success-text-emphasis:#75b798;--bs-info-text-emphasis:#6edff6;--bs-warning-text-emphasis:#ffda6a;--bs-danger-text-emphasis:#ea868f;--bs-light-text-emphasis:#f8f9fa;--bs-dark-text-emphasis:#dee2e6;--bs-primary-bg-subtle:#031633;--bs-secondary-bg-subtle:#161719;--bs-success-bg-subtle:#051b11;--bs-info-bg-subtle:#032830;--bs-warning-bg-subtle:#332701;--bs-danger-bg-subtle:#2c0b0e;--bs-light-bg-subtle:#343a40;--bs-dark-bg-subtle:#1a1d20;--bs-primary-border-subtle:#084298;--bs-secondary-border-subtle:#41464b;--bs-success-border-subtle:#0f5132;--bs-info-border-subtle:#087990;--bs-warning-border-subtle:#997404;--bs-danger-border-subtle:#842029;--bs-light-border-subtle:#495057;--bs-dark-border-subtle:#343a40;--bs-heading-color:inherit;--bs-link-color:#6ea8fe;--bs-link-hover-color:#8bb9fe;--bs-link-color-rgb:110,168,254;--bs-link-hover-color-rgb:139,185,254;--bs-code-color:#e685b5;--bs-highlight-color:#dee2e6;--bs-highlight-bg:#664d03;--bs-border-color:#495057;--bs-border-color-translucent:rgba(255, 255, 255, 0.15);--bs-form-valid-color:#75b798;--bs-form-valid-border-color:#75b798;--bs-form-invalid-color:#ea868f;--bs-form-invalid-border-color:#ea868f}*,::after,::before{box-sizing:border-box}@media (prefers-reduced-motion:no-preference){:root{scroll-behavior:smooth}}body{margin:0;font-family:var(--bs-body-font-family);font-size:var(--bs-body-font-size);font-weight:var(--bs-body-font-weight);line-height:var(--bs-body-line-height);color:var(--bs-body-color);text-align:var(--bs-body-text-align);background-color:var(--bs-body-bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}hr{margin:1rem 0;color:inherit;border:0;border-top:var(--bs-border-width) solid;opacity:.25}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem;font-weight:500;line-height:1.2;color:var(--bs-heading-color)}.h1,h1{font-size:calc(1.375rem + 1.5vw)}@media (min-width:1200px){.h1,h1{font-size:2.5rem}}.h2,h2{font-size:calc(1.325rem + .9vw)}@media (min-width:1200px){.h2,h2{font-size:2rem}}.h3,h3{font-size:calc(1.3rem + .6vw)}@media (min-width:1200px){.h3,h3{font-size:1.75rem}}.h4,h4{font-size:calc(1.275rem + .3vw)}@media (min-width:1200px){.h4,h4{font-size:1.5rem}}.h5,h5{font-size:1.25rem}.h6,h6{font-size:1rem}p{margin-top:0;margin-bottom:1rem}abbr[title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}ol,ul{padding-left:2rem}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}.small,small{font-size:.875em}.mark,mark{padding:.1875em;color:var(--bs-highlight-color);background-color:var(--bs-highlight-bg)}sub,sup{position:relative;font-size:.75em;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:rgba(var(--bs-link-color-rgb),var(--bs-link-opacity,1));text-decoration:underline}a:hover{--bs-link-color-rgb:var(--bs-link-hover-color-rgb)}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none}code,kbd,pre,samp{font-family:var(--bs-font-monospace);font-size:1em}pre{display:block;margin-top:0;margin-bottom:1rem;overflow:auto;font-size:.875em}pre code{font-size:inherit;color:inherit;word-break:normal}code{font-size:.875em;color:var(--bs-code-color);word-wrap:break-word}a>code{color:inherit}kbd{padding:.1875rem .375rem;font-size:.875em;color:var(--bs-body-bg);background-color:var(--bs-body-color);border-radius:.25rem}kbd kbd{padding:0;font-size:1em}figure{margin:0 0 1rem}img,svg{vertical-align:middle}table{caption-side:bottom;border-collapse:collapse}caption{padding-top:.5rem;padding-bottom:.5rem;color:var(--bs-secondary-color);text-align:left}th{text-align:inherit;text-align:-webkit-match-parent}tbody,td,tfoot,th,thead,tr{border-color:inherit;border-style:solid;border-width:0}label{display:inline-block}button{border-radius:0}button:focus:not(:focus-visible){outline:0}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,select{text-transform:none}[role=button]{cursor:pointer}select{word-wrap:normal}select:disabled{opacity:1}[list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator{display:none!important}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}::-moz-focus-inner{padding:0;border-style:none}textarea{resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{float:left;width:100%;padding:0;margin-bottom:.5rem;font-size:calc(1.275rem + .3vw);line-height:inherit}@media (min-width:1200px){legend{font-size:1.5rem}}legend+*{clear:left}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-fields-wrapper,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-text,::-webkit-datetime-edit-year-field{padding:0}::-webkit-inner-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}::file-selector-button{font:inherit;-webkit-appearance:button}output{display:inline-block}iframe{border:0}summary{display:list-item;cursor:pointer}progress{vertical-align:baseline}[hidden]{display:none!important}.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:calc(1.625rem + 4.5vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-1{font-size:5rem}}.display-2{font-size:calc(1.575rem + 3.9vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-2{font-size:4.5rem}}.display-3{font-size:calc(1.525rem + 3.3vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-3{font-size:4rem}}.display-4{font-size:calc(1.475rem + 2.7vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-4{font-size:3.5rem}}.display-5{font-size:calc(1.425rem + 2.1vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-5{font-size:3rem}}.display-6{font-size:calc(1.375rem + 1.5vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-6{font-size:2.5rem}}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:.875em;text-transform:uppercase}.blockquote{margin-bottom:1rem;font-size:1.25rem}.blockquote>:last-child{margin-bottom:0}.blockquote-footer{margin-top:-1rem;margin-bottom:1rem;font-size:.875em;color:#6c757d}.blockquote-footer::before{content:\"— \"}.img-fluid{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:var(--bs-body-bg);border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius);max-width:100%;height:auto}.figure{display:inline-block}.figure-img{margin-bottom:.5rem;line-height:1}.figure-caption{font-size:.875em;color:var(--bs-secondary-color)}.container,.container-fluid,.container-lg,.container-md,.container-sm,.container-xl,.container-xxl{--bs-gutter-x:1.5rem;--bs-gutter-y:0;width:100%;padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5);margin-right:auto;margin-left:auto}@media (min-width:576px){.container,.container-sm{max-width:540px}}@media (min-width:768px){.container,.container-md,.container-sm{max-width:720px}}@media (min-width:992px){.container,.container-lg,.container-md,.container-sm{max-width:960px}}@media (min-width:1200px){.container,.container-lg,.container-md,.container-sm,.container-xl{max-width:1140px}}@media (min-width:1400px){.container,.container-lg,.container-md,.container-sm,.container-xl,.container-xxl{max-width:1320px}}:root{--bs-breakpoint-xs:0;--bs-breakpoint-sm:576px;--bs-breakpoint-md:768px;--bs-breakpoint-lg:992px;--bs-breakpoint-xl:1200px;--bs-breakpoint-xxl:1400px}.row{--bs-gutter-x:1.5rem;--bs-gutter-y:0;display:flex;flex-wrap:wrap;margin-top:calc(-1 * var(--bs-gutter-y));margin-right:calc(-.5 * var(--bs-gutter-x));margin-left:calc(-.5 * var(--bs-gutter-x))}.row>*{flex-shrink:0;width:100%;max-width:100%;padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5);margin-top:var(--bs-gutter-y)}.col{flex:1 0 0%}.row-cols-auto>*{flex:0 0 auto;width:auto}.row-cols-1>*{flex:0 0 auto;width:100%}.row-cols-2>*{flex:0 0 auto;width:50%}.row-cols-3>*{flex:0 0 auto;width:33.33333333%}.row-cols-4>*{flex:0 0 auto;width:25%}.row-cols-5>*{flex:0 0 auto;width:20%}.row-cols-6>*{flex:0 0 auto;width:16.66666667%}.col-auto{flex:0 0 auto;width:auto}.col-1{flex:0 0 auto;width:8.33333333%}.col-2{flex:0 0 auto;width:16.66666667%}.col-3{flex:0 0 auto;width:25%}.col-4{flex:0 0 auto;width:33.33333333%}.col-5{flex:0 0 auto;width:41.66666667%}.col-6{flex:0 0 auto;width:50%}.col-7{flex:0 0 auto;width:58.33333333%}.col-8{flex:0 0 auto;width:66.66666667%}.col-9{flex:0 0 auto;width:75%}.col-10{flex:0 0 auto;width:83.33333333%}.col-11{flex:0 0 auto;width:91.66666667%}.col-12{flex:0 0 auto;width:100%}.offset-1{margin-left:8.33333333%}.offset-2{margin-left:16.66666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.33333333%}.offset-5{margin-left:41.66666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.33333333%}.offset-8{margin-left:66.66666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.33333333%}.offset-11{margin-left:91.66666667%}.g-0,.gx-0{--bs-gutter-x:0}.g-0,.gy-0{--bs-gutter-y:0}.g-1,.gx-1{--bs-gutter-x:0.25rem}.g-1,.gy-1{--bs-gutter-y:0.25rem}.g-2,.gx-2{--bs-gutter-x:0.5rem}.g-2,.gy-2{--bs-gutter-y:0.5rem}.g-3,.gx-3{--bs-gutter-x:1rem}.g-3,.gy-3{--bs-gutter-y:1rem}.g-4,.gx-4{--bs-gutter-x:1.5rem}.g-4,.gy-4{--bs-gutter-y:1.5rem}.g-5,.gx-5{--bs-gutter-x:3rem}.g-5,.gy-5{--bs-gutter-y:3rem}@media (min-width:576px){.col-sm{flex:1 0 0%}.row-cols-sm-auto>*{flex:0 0 auto;width:auto}.row-cols-sm-1>*{flex:0 0 auto;width:100%}.row-cols-sm-2>*{flex:0 0 auto;width:50%}.row-cols-sm-3>*{flex:0 0 auto;width:33.33333333%}.row-cols-sm-4>*{flex:0 0 auto;width:25%}.row-cols-sm-5>*{flex:0 0 auto;width:20%}.row-cols-sm-6>*{flex:0 0 auto;width:16.66666667%}.col-sm-auto{flex:0 0 auto;width:auto}.col-sm-1{flex:0 0 auto;width:8.33333333%}.col-sm-2{flex:0 0 auto;width:16.66666667%}.col-sm-3{flex:0 0 auto;width:25%}.col-sm-4{flex:0 0 auto;width:33.33333333%}.col-sm-5{flex:0 0 auto;width:41.66666667%}.col-sm-6{flex:0 0 auto;width:50%}.col-sm-7{flex:0 0 auto;width:58.33333333%}.col-sm-8{flex:0 0 auto;width:66.66666667%}.col-sm-9{flex:0 0 auto;width:75%}.col-sm-10{flex:0 0 auto;width:83.33333333%}.col-sm-11{flex:0 0 auto;width:91.66666667%}.col-sm-12{flex:0 0 auto;width:100%}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.33333333%}.offset-sm-2{margin-left:16.66666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.33333333%}.offset-sm-5{margin-left:41.66666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.33333333%}.offset-sm-8{margin-left:66.66666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.33333333%}.offset-sm-11{margin-left:91.66666667%}.g-sm-0,.gx-sm-0{--bs-gutter-x:0}.g-sm-0,.gy-sm-0{--bs-gutter-y:0}.g-sm-1,.gx-sm-1{--bs-gutter-x:0.25rem}.g-sm-1,.gy-sm-1{--bs-gutter-y:0.25rem}.g-sm-2,.gx-sm-2{--bs-gutter-x:0.5rem}.g-sm-2,.gy-sm-2{--bs-gutter-y:0.5rem}.g-sm-3,.gx-sm-3{--bs-gutter-x:1rem}.g-sm-3,.gy-sm-3{--bs-gutter-y:1rem}.g-sm-4,.gx-sm-4{--bs-gutter-x:1.5rem}.g-sm-4,.gy-sm-4{--bs-gutter-y:1.5rem}.g-sm-5,.gx-sm-5{--bs-gutter-x:3rem}.g-sm-5,.gy-sm-5{--bs-gutter-y:3rem}}@media (min-width:768px){.col-md{flex:1 0 0%}.row-cols-md-auto>*{flex:0 0 auto;width:auto}.row-cols-md-1>*{flex:0 0 auto;width:100%}.row-cols-md-2>*{flex:0 0 auto;width:50%}.row-cols-md-3>*{flex:0 0 auto;width:33.33333333%}.row-cols-md-4>*{flex:0 0 auto;width:25%}.row-cols-md-5>*{flex:0 0 auto;width:20%}.row-cols-md-6>*{flex:0 0 auto;width:16.66666667%}.col-md-auto{flex:0 0 auto;width:auto}.col-md-1{flex:0 0 auto;width:8.33333333%}.col-md-2{flex:0 0 auto;width:16.66666667%}.col-md-3{flex:0 0 auto;width:25%}.col-md-4{flex:0 0 auto;width:33.33333333%}.col-md-5{flex:0 0 auto;width:41.66666667%}.col-md-6{flex:0 0 auto;width:50%}.col-md-7{flex:0 0 auto;width:58.33333333%}.col-md-8{flex:0 0 auto;width:66.66666667%}.col-md-9{flex:0 0 auto;width:75%}.col-md-10{flex:0 0 auto;width:83.33333333%}.col-md-11{flex:0 0 auto;width:91.66666667%}.col-md-12{flex:0 0 auto;width:100%}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.33333333%}.offset-md-2{margin-left:16.66666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.33333333%}.offset-md-5{margin-left:41.66666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.33333333%}.offset-md-8{margin-left:66.66666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.33333333%}.offset-md-11{margin-left:91.66666667%}.g-md-0,.gx-md-0{--bs-gutter-x:0}.g-md-0,.gy-md-0{--bs-gutter-y:0}.g-md-1,.gx-md-1{--bs-gutter-x:0.25rem}.g-md-1,.gy-md-1{--bs-gutter-y:0.25rem}.g-md-2,.gx-md-2{--bs-gutter-x:0.5rem}.g-md-2,.gy-md-2{--bs-gutter-y:0.5rem}.g-md-3,.gx-md-3{--bs-gutter-x:1rem}.g-md-3,.gy-md-3{--bs-gutter-y:1rem}.g-md-4,.gx-md-4{--bs-gutter-x:1.5rem}.g-md-4,.gy-md-4{--bs-gutter-y:1.5rem}.g-md-5,.gx-md-5{--bs-gutter-x:3rem}.g-md-5,.gy-md-5{--bs-gutter-y:3rem}}@media (min-width:992px){.col-lg{flex:1 0 0%}.row-cols-lg-auto>*{flex:0 0 auto;width:auto}.row-cols-lg-1>*{flex:0 0 auto;width:100%}.row-cols-lg-2>*{flex:0 0 auto;width:50%}.row-cols-lg-3>*{flex:0 0 auto;width:33.33333333%}.row-cols-lg-4>*{flex:0 0 auto;width:25%}.row-cols-lg-5>*{flex:0 0 auto;width:20%}.row-cols-lg-6>*{flex:0 0 auto;width:16.66666667%}.col-lg-auto{flex:0 0 auto;width:auto}.col-lg-1{flex:0 0 auto;width:8.33333333%}.col-lg-2{flex:0 0 auto;width:16.66666667%}.col-lg-3{flex:0 0 auto;width:25%}.col-lg-4{flex:0 0 auto;width:33.33333333%}.col-lg-5{flex:0 0 auto;width:41.66666667%}.col-lg-6{flex:0 0 auto;width:50%}.col-lg-7{flex:0 0 auto;width:58.33333333%}.col-lg-8{flex:0 0 auto;width:66.66666667%}.col-lg-9{flex:0 0 auto;width:75%}.col-lg-10{flex:0 0 auto;width:83.33333333%}.col-lg-11{flex:0 0 auto;width:91.66666667%}.col-lg-12{flex:0 0 auto;width:100%}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.33333333%}.offset-lg-2{margin-left:16.66666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.33333333%}.offset-lg-5{margin-left:41.66666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.33333333%}.offset-lg-8{margin-left:66.66666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.33333333%}.offset-lg-11{margin-left:91.66666667%}.g-lg-0,.gx-lg-0{--bs-gutter-x:0}.g-lg-0,.gy-lg-0{--bs-gutter-y:0}.g-lg-1,.gx-lg-1{--bs-gutter-x:0.25rem}.g-lg-1,.gy-lg-1{--bs-gutter-y:0.25rem}.g-lg-2,.gx-lg-2{--bs-gutter-x:0.5rem}.g-lg-2,.gy-lg-2{--bs-gutter-y:0.5rem}.g-lg-3,.gx-lg-3{--bs-gutter-x:1rem}.g-lg-3,.gy-lg-3{--bs-gutter-y:1rem}.g-lg-4,.gx-lg-4{--bs-gutter-x:1.5rem}.g-lg-4,.gy-lg-4{--bs-gutter-y:1.5rem}.g-lg-5,.gx-lg-5{--bs-gutter-x:3rem}.g-lg-5,.gy-lg-5{--bs-gutter-y:3rem}}@media (min-width:1200px){.col-xl{flex:1 0 0%}.row-cols-xl-auto>*{flex:0 0 auto;width:auto}.row-cols-xl-1>*{flex:0 0 auto;width:100%}.row-cols-xl-2>*{flex:0 0 auto;width:50%}.row-cols-xl-3>*{flex:0 0 auto;width:33.33333333%}.row-cols-xl-4>*{flex:0 0 auto;width:25%}.row-cols-xl-5>*{flex:0 0 auto;width:20%}.row-cols-xl-6>*{flex:0 0 auto;width:16.66666667%}.col-xl-auto{flex:0 0 auto;width:auto}.col-xl-1{flex:0 0 auto;width:8.33333333%}.col-xl-2{flex:0 0 auto;width:16.66666667%}.col-xl-3{flex:0 0 auto;width:25%}.col-xl-4{flex:0 0 auto;width:33.33333333%}.col-xl-5{flex:0 0 auto;width:41.66666667%}.col-xl-6{flex:0 0 auto;width:50%}.col-xl-7{flex:0 0 auto;width:58.33333333%}.col-xl-8{flex:0 0 auto;width:66.66666667%}.col-xl-9{flex:0 0 auto;width:75%}.col-xl-10{flex:0 0 auto;width:83.33333333%}.col-xl-11{flex:0 0 auto;width:91.66666667%}.col-xl-12{flex:0 0 auto;width:100%}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.33333333%}.offset-xl-2{margin-left:16.66666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.33333333%}.offset-xl-5{margin-left:41.66666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.33333333%}.offset-xl-8{margin-left:66.66666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.33333333%}.offset-xl-11{margin-left:91.66666667%}.g-xl-0,.gx-xl-0{--bs-gutter-x:0}.g-xl-0,.gy-xl-0{--bs-gutter-y:0}.g-xl-1,.gx-xl-1{--bs-gutter-x:0.25rem}.g-xl-1,.gy-xl-1{--bs-gutter-y:0.25rem}.g-xl-2,.gx-xl-2{--bs-gutter-x:0.5rem}.g-xl-2,.gy-xl-2{--bs-gutter-y:0.5rem}.g-xl-3,.gx-xl-3{--bs-gutter-x:1rem}.g-xl-3,.gy-xl-3{--bs-gutter-y:1rem}.g-xl-4,.gx-xl-4{--bs-gutter-x:1.5rem}.g-xl-4,.gy-xl-4{--bs-gutter-y:1.5rem}.g-xl-5,.gx-xl-5{--bs-gutter-x:3rem}.g-xl-5,.gy-xl-5{--bs-gutter-y:3rem}}@media (min-width:1400px){.col-xxl{flex:1 0 0%}.row-cols-xxl-auto>*{flex:0 0 auto;width:auto}.row-cols-xxl-1>*{flex:0 0 auto;width:100%}.row-cols-xxl-2>*{flex:0 0 auto;width:50%}.row-cols-xxl-3>*{flex:0 0 auto;width:33.33333333%}.row-cols-xxl-4>*{flex:0 0 auto;width:25%}.row-cols-xxl-5>*{flex:0 0 auto;width:20%}.row-cols-xxl-6>*{flex:0 0 auto;width:16.66666667%}.col-xxl-auto{flex:0 0 auto;width:auto}.col-xxl-1{flex:0 0 auto;width:8.33333333%}.col-xxl-2{flex:0 0 auto;width:16.66666667%}.col-xxl-3{flex:0 0 auto;width:25%}.col-xxl-4{flex:0 0 auto;width:33.33333333%}.col-xxl-5{flex:0 0 auto;width:41.66666667%}.col-xxl-6{flex:0 0 auto;width:50%}.col-xxl-7{flex:0 0 auto;width:58.33333333%}.col-xxl-8{flex:0 0 auto;width:66.66666667%}.col-xxl-9{flex:0 0 auto;width:75%}.col-xxl-10{flex:0 0 auto;width:83.33333333%}.col-xxl-11{flex:0 0 auto;width:91.66666667%}.col-xxl-12{flex:0 0 auto;width:100%}.offset-xxl-0{margin-left:0}.offset-xxl-1{margin-left:8.33333333%}.offset-xxl-2{margin-left:16.66666667%}.offset-xxl-3{margin-left:25%}.offset-xxl-4{margin-left:33.33333333%}.offset-xxl-5{margin-left:41.66666667%}.offset-xxl-6{margin-left:50%}.offset-xxl-7{margin-left:58.33333333%}.offset-xxl-8{margin-left:66.66666667%}.offset-xxl-9{margin-left:75%}.offset-xxl-10{margin-left:83.33333333%}.offset-xxl-11{margin-left:91.66666667%}.g-xxl-0,.gx-xxl-0{--bs-gutter-x:0}.g-xxl-0,.gy-xxl-0{--bs-gutter-y:0}.g-xxl-1,.gx-xxl-1{--bs-gutter-x:0.25rem}.g-xxl-1,.gy-xxl-1{--bs-gutter-y:0.25rem}.g-xxl-2,.gx-xxl-2{--bs-gutter-x:0.5rem}.g-xxl-2,.gy-xxl-2{--bs-gutter-y:0.5rem}.g-xxl-3,.gx-xxl-3{--bs-gutter-x:1rem}.g-xxl-3,.gy-xxl-3{--bs-gutter-y:1rem}.g-xxl-4,.gx-xxl-4{--bs-gutter-x:1.5rem}.g-xxl-4,.gy-xxl-4{--bs-gutter-y:1.5rem}.g-xxl-5,.gx-xxl-5{--bs-gutter-x:3rem}.g-xxl-5,.gy-xxl-5{--bs-gutter-y:3rem}}.table{--bs-table-color-type:initial;--bs-table-bg-type:initial;--bs-table-color-state:initial;--bs-table-bg-state:initial;--bs-table-color:var(--bs-emphasis-color);--bs-table-bg:var(--bs-body-bg);--bs-table-border-color:var(--bs-border-color);--bs-table-accent-bg:transparent;--bs-table-striped-color:var(--bs-emphasis-color);--bs-table-striped-bg:rgba(var(--bs-emphasis-color-rgb), 0.05);--bs-table-active-color:var(--bs-emphasis-color);--bs-table-active-bg:rgba(var(--bs-emphasis-color-rgb), 0.1);--bs-table-hover-color:var(--bs-emphasis-color);--bs-table-hover-bg:rgba(var(--bs-emphasis-color-rgb), 0.075);width:100%;margin-bottom:1rem;vertical-align:top;border-color:var(--bs-table-border-color)}.table>:not(caption)>*>*{padding:.5rem .5rem;color:var(--bs-table-color-state,var(--bs-table-color-type,var(--bs-table-color)));background-color:var(--bs-table-bg);border-bottom-width:var(--bs-border-width);box-shadow:inset 0 0 0 9999px var(--bs-table-bg-state,var(--bs-table-bg-type,var(--bs-table-accent-bg)))}.table>tbody{vertical-align:inherit}.table>thead{vertical-align:bottom}.table-group-divider{border-top:calc(var(--bs-border-width) * 2) solid currentcolor}.caption-top{caption-side:top}.table-sm>:not(caption)>*>*{padding:.25rem .25rem}.table-bordered>:not(caption)>*{border-width:var(--bs-border-width) 0}.table-bordered>:not(caption)>*>*{border-width:0 var(--bs-border-width)}.table-borderless>:not(caption)>*>*{border-bottom-width:0}.table-borderless>:not(:first-child){border-top-width:0}.table-striped>tbody>tr:nth-of-type(odd)>*{--bs-table-color-type:var(--bs-table-striped-color);--bs-table-bg-type:var(--bs-table-striped-bg)}.table-striped-columns>:not(caption)>tr>:nth-child(2n){--bs-table-color-type:var(--bs-table-striped-color);--bs-table-bg-type:var(--bs-table-striped-bg)}.table-active{--bs-table-color-state:var(--bs-table-active-color);--bs-table-bg-state:var(--bs-table-active-bg)}.table-hover>tbody>tr:hover>*{--bs-table-color-state:var(--bs-table-hover-color);--bs-table-bg-state:var(--bs-table-hover-bg)}.table-primary{--bs-table-color:#000;--bs-table-bg:#cfe2ff;--bs-table-border-color:#a6b5cc;--bs-table-striped-bg:#c5d7f2;--bs-table-striped-color:#000;--bs-table-active-bg:#bacbe6;--bs-table-active-color:#000;--bs-table-hover-bg:#bfd1ec;--bs-table-hover-color:#000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-secondary{--bs-table-color:#000;--bs-table-bg:#e2e3e5;--bs-table-border-color:#b5b6b7;--bs-table-striped-bg:#d7d8da;--bs-table-striped-color:#000;--bs-table-active-bg:#cbccce;--bs-table-active-color:#000;--bs-table-hover-bg:#d1d2d4;--bs-table-hover-color:#000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-success{--bs-table-color:#000;--bs-table-bg:#d1e7dd;--bs-table-border-color:#a7b9b1;--bs-table-striped-bg:#c7dbd2;--bs-table-striped-color:#000;--bs-table-active-bg:#bcd0c7;--bs-table-active-color:#000;--bs-table-hover-bg:#c1d6cc;--bs-table-hover-color:#000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-info{--bs-table-color:#000;--bs-table-bg:#cff4fc;--bs-table-border-color:#a6c3ca;--bs-table-striped-bg:#c5e8ef;--bs-table-striped-color:#000;--bs-table-active-bg:#badce3;--bs-table-active-color:#000;--bs-table-hover-bg:#bfe2e9;--bs-table-hover-color:#000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-warning{--bs-table-color:#000;--bs-table-bg:#fff3cd;--bs-table-border-color:#ccc2a4;--bs-table-striped-bg:#f2e7c3;--bs-table-striped-color:#000;--bs-table-active-bg:#e6dbb9;--bs-table-active-color:#000;--bs-table-hover-bg:#ece1be;--bs-table-hover-color:#000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-danger{--bs-table-color:#000;--bs-table-bg:#f8d7da;--bs-table-border-color:#c6acae;--bs-table-striped-bg:#eccccf;--bs-table-striped-color:#000;--bs-table-active-bg:#dfc2c4;--bs-table-active-color:#000;--bs-table-hover-bg:#e5c7ca;--bs-table-hover-color:#000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-light{--bs-table-color:#000;--bs-table-bg:#f8f9fa;--bs-table-border-color:#c6c7c8;--bs-table-striped-bg:#ecedee;--bs-table-striped-color:#000;--bs-table-active-bg:#dfe0e1;--bs-table-active-color:#000;--bs-table-hover-bg:#e5e6e7;--bs-table-hover-color:#000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-dark{--bs-table-color:#fff;--bs-table-bg:#212529;--bs-table-border-color:#4d5154;--bs-table-striped-bg:#2c3034;--bs-table-striped-color:#fff;--bs-table-active-bg:#373b3e;--bs-table-active-color:#fff;--bs-table-hover-bg:#323539;--bs-table-hover-color:#fff;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}@media (max-width:575.98px){.table-responsive-sm{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:767.98px){.table-responsive-md{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:991.98px){.table-responsive-lg{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:1199.98px){.table-responsive-xl{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:1399.98px){.table-responsive-xxl{overflow-x:auto;-webkit-overflow-scrolling:touch}}.form-label{margin-bottom:.5rem}.col-form-label{padding-top:calc(.375rem + var(--bs-border-width));padding-bottom:calc(.375rem + var(--bs-border-width));margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + var(--bs-border-width));padding-bottom:calc(.5rem + var(--bs-border-width));font-size:1.25rem}.col-form-label-sm{padding-top:calc(.25rem + var(--bs-border-width));padding-bottom:calc(.25rem + var(--bs-border-width));font-size:.875rem}.form-text{margin-top:.25rem;font-size:.875em;color:var(--bs-secondary-color)}.form-control{display:block;width:100%;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:var(--bs-body-color);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--bs-body-bg);background-clip:padding-box;border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius);transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control{transition:none}}.form-control[type=file]{overflow:hidden}.form-control[type=file]:not(:disabled):not([readonly]){cursor:pointer}.form-control:focus{color:var(--bs-body-color);background-color:var(--bs-body-bg);border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.form-control::-webkit-date-and-time-value{min-width:85px;height:1.5em;margin:0}.form-control::-webkit-datetime-edit{display:block;padding:0}.form-control::-moz-placeholder{color:var(--bs-secondary-color);opacity:1}.form-control::placeholder{color:var(--bs-secondary-color);opacity:1}.form-control:disabled{background-color:var(--bs-secondary-bg);opacity:1}.form-control::-webkit-file-upload-button{padding:.375rem .75rem;margin:-.375rem -.75rem;-webkit-margin-end:.75rem;margin-inline-end:.75rem;color:var(--bs-body-color);background-color:var(--bs-tertiary-bg);pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:var(--bs-border-width);border-radius:0;-webkit-transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}.form-control::file-selector-button{padding:.375rem .75rem;margin:-.375rem -.75rem;-webkit-margin-end:.75rem;margin-inline-end:.75rem;color:var(--bs-body-color);background-color:var(--bs-tertiary-bg);pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:var(--bs-border-width);border-radius:0;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control::-webkit-file-upload-button{-webkit-transition:none;transition:none}.form-control::file-selector-button{transition:none}}.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button{background-color:var(--bs-secondary-bg)}.form-control:hover:not(:disabled):not([readonly])::file-selector-button{background-color:var(--bs-secondary-bg)}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;line-height:1.5;color:var(--bs-body-color);background-color:transparent;border:solid transparent;border-width:var(--bs-border-width) 0}.form-control-plaintext:focus{outline:0}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-right:0;padding-left:0}.form-control-sm{min-height:calc(1.5em + .5rem + calc(var(--bs-border-width) * 2));padding:.25rem .5rem;font-size:.875rem;border-radius:var(--bs-border-radius-sm)}.form-control-sm::-webkit-file-upload-button{padding:.25rem .5rem;margin:-.25rem -.5rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem}.form-control-sm::file-selector-button{padding:.25rem .5rem;margin:-.25rem -.5rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem}.form-control-lg{min-height:calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));padding:.5rem 1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}.form-control-lg::-webkit-file-upload-button{padding:.5rem 1rem;margin:-.5rem -1rem;-webkit-margin-end:1rem;margin-inline-end:1rem}.form-control-lg::file-selector-button{padding:.5rem 1rem;margin:-.5rem -1rem;-webkit-margin-end:1rem;margin-inline-end:1rem}textarea.form-control{min-height:calc(1.5em + .75rem + calc(var(--bs-border-width) * 2))}textarea.form-control-sm{min-height:calc(1.5em + .5rem + calc(var(--bs-border-width) * 2))}textarea.form-control-lg{min-height:calc(1.5em + 1rem + calc(var(--bs-border-width) * 2))}.form-control-color{width:3rem;height:calc(1.5em + .75rem + calc(var(--bs-border-width) * 2));padding:.375rem}.form-control-color:not(:disabled):not([readonly]){cursor:pointer}.form-control-color::-moz-color-swatch{border:0!important;border-radius:var(--bs-border-radius)}.form-control-color::-webkit-color-swatch{border:0!important;border-radius:var(--bs-border-radius)}.form-control-color.form-control-sm{height:calc(1.5em + .5rem + calc(var(--bs-border-width) * 2))}.form-control-color.form-control-lg{height:calc(1.5em + 1rem + calc(var(--bs-border-width) * 2))}.form-select{--bs-form-select-bg-img:url(${___CSS_LOADER_URL_REPLACEMENT_0___});display:block;width:100%;padding:.375rem 2.25rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:var(--bs-body-color);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--bs-body-bg);background-image:var(--bs-form-select-bg-img),var(--bs-form-select-bg-icon,none);background-repeat:no-repeat;background-position:right .75rem center;background-size:16px 12px;border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius);transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-select{transition:none}}.form-select:focus{border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.form-select[multiple],.form-select[size]:not([size=\"1\"]){padding-right:.75rem;background-image:none}.form-select:disabled{background-color:var(--bs-secondary-bg)}.form-select:-moz-focusring{color:transparent;text-shadow:0 0 0 var(--bs-body-color)}.form-select-sm{padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:.875rem;border-radius:var(--bs-border-radius-sm)}.form-select-lg{padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}[data-bs-theme=dark] .form-select{--bs-form-select-bg-img:url(${___CSS_LOADER_URL_REPLACEMENT_1___})}.form-check{display:block;min-height:1.5rem;padding-left:1.5em;margin-bottom:.125rem}.form-check .form-check-input{float:left;margin-left:-1.5em}.form-check-reverse{padding-right:1.5em;padding-left:0;text-align:right}.form-check-reverse .form-check-input{float:right;margin-right:-1.5em;margin-left:0}.form-check-input{--bs-form-check-bg:var(--bs-body-bg);flex-shrink:0;width:1em;height:1em;margin-top:.25em;vertical-align:top;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--bs-form-check-bg);background-image:var(--bs-form-check-bg-image);background-repeat:no-repeat;background-position:center;background-size:contain;border:var(--bs-border-width) solid var(--bs-border-color);-webkit-print-color-adjust:exact;color-adjust:exact;print-color-adjust:exact}.form-check-input[type=checkbox]{border-radius:.25em}.form-check-input[type=radio]{border-radius:50%}.form-check-input:active{filter:brightness(90%)}.form-check-input:focus{border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.form-check-input:checked{background-color:#0d6efd;border-color:#0d6efd}.form-check-input:checked[type=checkbox]{--bs-form-check-bg-image:url(${___CSS_LOADER_URL_REPLACEMENT_2___})}.form-check-input:checked[type=radio]{--bs-form-check-bg-image:url(${___CSS_LOADER_URL_REPLACEMENT_3___})}.form-check-input[type=checkbox]:indeterminate{background-color:#0d6efd;border-color:#0d6efd;--bs-form-check-bg-image:url(${___CSS_LOADER_URL_REPLACEMENT_4___})}.form-check-input:disabled{pointer-events:none;filter:none;opacity:.5}.form-check-input:disabled~.form-check-label,.form-check-input[disabled]~.form-check-label{cursor:default;opacity:.5}.form-switch{padding-left:2.5em}.form-switch .form-check-input{--bs-form-switch-bg:url(${___CSS_LOADER_URL_REPLACEMENT_5___});width:2em;margin-left:-2.5em;background-image:var(--bs-form-switch-bg);background-position:left center;border-radius:2em;transition:background-position .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-switch .form-check-input{transition:none}}.form-switch .form-check-input:focus{--bs-form-switch-bg:url(${___CSS_LOADER_URL_REPLACEMENT_6___})}.form-switch .form-check-input:checked{background-position:right center;--bs-form-switch-bg:url(${___CSS_LOADER_URL_REPLACEMENT_7___})}.form-switch.form-check-reverse{padding-right:2.5em;padding-left:0}.form-switch.form-check-reverse .form-check-input{margin-right:-2.5em;margin-left:0}.form-check-inline{display:inline-block;margin-right:1rem}.btn-check{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.btn-check:disabled+.btn,.btn-check[disabled]+.btn{pointer-events:none;filter:none;opacity:.65}[data-bs-theme=dark] .form-switch .form-check-input:not(:checked):not(:focus){--bs-form-switch-bg:url(${___CSS_LOADER_URL_REPLACEMENT_8___})}.form-range{width:100%;height:1.5rem;padding:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:transparent}.form-range:focus{outline:0}.form-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(13,110,253,.25)}.form-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(13,110,253,.25)}.form-range::-moz-focus-outer{border:0}.form-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;-webkit-appearance:none;appearance:none;background-color:#0d6efd;border:0;border-radius:1rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.form-range::-webkit-slider-thumb:active{background-color:#b6d4fe}.form-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:var(--bs-secondary-bg);border-color:transparent;border-radius:1rem}.form-range::-moz-range-thumb{width:1rem;height:1rem;-moz-appearance:none;appearance:none;background-color:#0d6efd;border:0;border-radius:1rem;-moz-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-range::-moz-range-thumb{-moz-transition:none;transition:none}}.form-range::-moz-range-thumb:active{background-color:#b6d4fe}.form-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:var(--bs-secondary-bg);border-color:transparent;border-radius:1rem}.form-range:disabled{pointer-events:none}.form-range:disabled::-webkit-slider-thumb{background-color:var(--bs-secondary-color)}.form-range:disabled::-moz-range-thumb{background-color:var(--bs-secondary-color)}.form-floating{position:relative}.form-floating>.form-control,.form-floating>.form-control-plaintext,.form-floating>.form-select{height:calc(3.5rem + calc(var(--bs-border-width) * 2));min-height:calc(3.5rem + calc(var(--bs-border-width) * 2));line-height:1.25}.form-floating>label{position:absolute;top:0;left:0;z-index:2;height:100%;padding:1rem .75rem;overflow:hidden;text-align:start;text-overflow:ellipsis;white-space:nowrap;pointer-events:none;border:var(--bs-border-width) solid transparent;transform-origin:0 0;transition:opacity .1s ease-in-out,transform .1s ease-in-out}@media (prefers-reduced-motion:reduce){.form-floating>label{transition:none}}.form-floating>.form-control,.form-floating>.form-control-plaintext{padding:1rem .75rem}.form-floating>.form-control-plaintext::-moz-placeholder,.form-floating>.form-control::-moz-placeholder{color:transparent}.form-floating>.form-control-plaintext::placeholder,.form-floating>.form-control::placeholder{color:transparent}.form-floating>.form-control-plaintext:not(:-moz-placeholder-shown),.form-floating>.form-control:not(:-moz-placeholder-shown){padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control-plaintext:focus,.form-floating>.form-control-plaintext:not(:placeholder-shown),.form-floating>.form-control:focus,.form-floating>.form-control:not(:placeholder-shown){padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control-plaintext:-webkit-autofill,.form-floating>.form-control:-webkit-autofill{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-select{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:not(:-moz-placeholder-shown)~label{color:rgba(var(--bs-body-color-rgb),.65);transform:scale(.85) translateY(-.5rem) translateX(.15rem)}.form-floating>.form-control-plaintext~label,.form-floating>.form-control:focus~label,.form-floating>.form-control:not(:placeholder-shown)~label,.form-floating>.form-select~label{color:rgba(var(--bs-body-color-rgb),.65);transform:scale(.85) translateY(-.5rem) translateX(.15rem)}.form-floating>.form-control:not(:-moz-placeholder-shown)~label::after{position:absolute;inset:1rem 0.375rem;z-index:-1;height:1.5em;content:\"\";background-color:var(--bs-body-bg);border-radius:var(--bs-border-radius)}.form-floating>.form-control-plaintext~label::after,.form-floating>.form-control:focus~label::after,.form-floating>.form-control:not(:placeholder-shown)~label::after,.form-floating>.form-select~label::after{position:absolute;inset:1rem 0.375rem;z-index:-1;height:1.5em;content:\"\";background-color:var(--bs-body-bg);border-radius:var(--bs-border-radius)}.form-floating>.form-control:-webkit-autofill~label{color:rgba(var(--bs-body-color-rgb),.65);transform:scale(.85) translateY(-.5rem) translateX(.15rem)}.form-floating>.form-control-plaintext~label{border-width:var(--bs-border-width) 0}.form-floating>.form-control:disabled~label,.form-floating>:disabled~label{color:#6c757d}.form-floating>.form-control:disabled~label::after,.form-floating>:disabled~label::after{background-color:var(--bs-secondary-bg)}.input-group{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;width:100%}.input-group>.form-control,.input-group>.form-floating,.input-group>.form-select{position:relative;flex:1 1 auto;width:1%;min-width:0}.input-group>.form-control:focus,.input-group>.form-floating:focus-within,.input-group>.form-select:focus{z-index:5}.input-group .btn{position:relative;z-index:2}.input-group .btn:focus{z-index:5}.input-group-text{display:flex;align-items:center;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:var(--bs-body-color);text-align:center;white-space:nowrap;background-color:var(--bs-tertiary-bg);border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius)}.input-group-lg>.btn,.input-group-lg>.form-control,.input-group-lg>.form-select,.input-group-lg>.input-group-text{padding:.5rem 1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}.input-group-sm>.btn,.input-group-sm>.form-control,.input-group-sm>.form-select,.input-group-sm>.input-group-text{padding:.25rem .5rem;font-size:.875rem;border-radius:var(--bs-border-radius-sm)}.input-group-lg>.form-select,.input-group-sm>.form-select{padding-right:3rem}.input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n+3),.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-control,.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-select,.input-group:not(.has-validation)>:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating){border-top-right-radius:0;border-bottom-right-radius:0}.input-group.has-validation>.dropdown-toggle:nth-last-child(n+4),.input-group.has-validation>.form-floating:nth-last-child(n+3)>.form-control,.input-group.has-validation>.form-floating:nth-last-child(n+3)>.form-select,.input-group.has-validation>:nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback){margin-left:calc(var(--bs-border-width) * -1);border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.form-floating:not(:first-child)>.form-control,.input-group>.form-floating:not(:first-child)>.form-select{border-top-left-radius:0;border-bottom-left-radius:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:.875em;color:var(--bs-form-valid-color)}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;color:#fff;background-color:var(--bs-success);border-radius:var(--bs-border-radius)}.is-valid~.valid-feedback,.is-valid~.valid-tooltip,.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip{display:block}.form-control.is-valid,.was-validated .form-control:valid{border-color:var(--bs-form-valid-border-color);padding-right:calc(1.5em + .75rem);background-image:url(${___CSS_LOADER_URL_REPLACEMENT_9___});background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-valid:focus,.was-validated .form-control:valid:focus{border-color:var(--bs-form-valid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb),.25)}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.form-select.is-valid,.was-validated .form-select:valid{border-color:var(--bs-form-valid-border-color)}.form-select.is-valid:not([multiple]):not([size]),.form-select.is-valid:not([multiple])[size=\"1\"],.was-validated .form-select:valid:not([multiple]):not([size]),.was-validated .form-select:valid:not([multiple])[size=\"1\"]{--bs-form-select-bg-icon:url(${___CSS_LOADER_URL_REPLACEMENT_9___});padding-right:4.125rem;background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem)}.form-select.is-valid:focus,.was-validated .form-select:valid:focus{border-color:var(--bs-form-valid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb),.25)}.form-control-color.is-valid,.was-validated .form-control-color:valid{width:calc(3rem + calc(1.5em + .75rem))}.form-check-input.is-valid,.was-validated .form-check-input:valid{border-color:var(--bs-form-valid-border-color)}.form-check-input.is-valid:checked,.was-validated .form-check-input:valid:checked{background-color:var(--bs-form-valid-color)}.form-check-input.is-valid:focus,.was-validated .form-check-input:valid:focus{box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb),.25)}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:var(--bs-form-valid-color)}.form-check-inline .form-check-input~.valid-feedback{margin-left:.5em}.input-group>.form-control:not(:focus).is-valid,.input-group>.form-floating:not(:focus-within).is-valid,.input-group>.form-select:not(:focus).is-valid,.was-validated .input-group>.form-control:not(:focus):valid,.was-validated .input-group>.form-floating:not(:focus-within):valid,.was-validated .input-group>.form-select:not(:focus):valid{z-index:3}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:.875em;color:var(--bs-form-invalid-color)}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;color:#fff;background-color:var(--bs-danger);border-radius:var(--bs-border-radius)}.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip,.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip{display:block}.form-control.is-invalid,.was-validated .form-control:invalid{border-color:var(--bs-form-invalid-border-color);padding-right:calc(1.5em + .75rem);background-image:url(${___CSS_LOADER_URL_REPLACEMENT_10___});background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-invalid:focus,.was-validated .form-control:invalid:focus{border-color:var(--bs-form-invalid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb),.25)}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.form-select.is-invalid,.was-validated .form-select:invalid{border-color:var(--bs-form-invalid-border-color)}.form-select.is-invalid:not([multiple]):not([size]),.form-select.is-invalid:not([multiple])[size=\"1\"],.was-validated .form-select:invalid:not([multiple]):not([size]),.was-validated .form-select:invalid:not([multiple])[size=\"1\"]{--bs-form-select-bg-icon:url(${___CSS_LOADER_URL_REPLACEMENT_10___});padding-right:4.125rem;background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem)}.form-select.is-invalid:focus,.was-validated .form-select:invalid:focus{border-color:var(--bs-form-invalid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb),.25)}.form-control-color.is-invalid,.was-validated .form-control-color:invalid{width:calc(3rem + calc(1.5em + .75rem))}.form-check-input.is-invalid,.was-validated .form-check-input:invalid{border-color:var(--bs-form-invalid-border-color)}.form-check-input.is-invalid:checked,.was-validated .form-check-input:invalid:checked{background-color:var(--bs-form-invalid-color)}.form-check-input.is-invalid:focus,.was-validated .form-check-input:invalid:focus{box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb),.25)}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:var(--bs-form-invalid-color)}.form-check-inline .form-check-input~.invalid-feedback{margin-left:.5em}.input-group>.form-control:not(:focus).is-invalid,.input-group>.form-floating:not(:focus-within).is-invalid,.input-group>.form-select:not(:focus).is-invalid,.was-validated .input-group>.form-control:not(:focus):invalid,.was-validated .input-group>.form-floating:not(:focus-within):invalid,.was-validated .input-group>.form-select:not(:focus):invalid{z-index:4}.btn{--bs-btn-padding-x:0.75rem;--bs-btn-padding-y:0.375rem;--bs-btn-font-family: ;--bs-btn-font-size:1rem;--bs-btn-font-weight:400;--bs-btn-line-height:1.5;--bs-btn-color:var(--bs-body-color);--bs-btn-bg:transparent;--bs-btn-border-width:var(--bs-border-width);--bs-btn-border-color:transparent;--bs-btn-border-radius:var(--bs-border-radius);--bs-btn-hover-border-color:transparent;--bs-btn-box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.15),0 1px 1px rgba(0, 0, 0, 0.075);--bs-btn-disabled-opacity:0.65;--bs-btn-focus-box-shadow:0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);display:inline-block;padding:var(--bs-btn-padding-y) var(--bs-btn-padding-x);font-family:var(--bs-btn-font-family);font-size:var(--bs-btn-font-size);font-weight:var(--bs-btn-font-weight);line-height:var(--bs-btn-line-height);color:var(--bs-btn-color);text-align:center;text-decoration:none;vertical-align:middle;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;border:var(--bs-btn-border-width) solid var(--bs-btn-border-color);border-radius:var(--bs-btn-border-radius);background-color:var(--bs-btn-bg);transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:hover{color:var(--bs-btn-hover-color);background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color)}.btn-check+.btn:hover{color:var(--bs-btn-color);background-color:var(--bs-btn-bg);border-color:var(--bs-btn-border-color)}.btn:focus-visible{color:var(--bs-btn-hover-color);background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color);outline:0;box-shadow:var(--bs-btn-focus-box-shadow)}.btn-check:focus-visible+.btn{border-color:var(--bs-btn-hover-border-color);outline:0;box-shadow:var(--bs-btn-focus-box-shadow)}.btn-check:checked+.btn,.btn.active,.btn.show,.btn:first-child:active,:not(.btn-check)+.btn:active{color:var(--bs-btn-active-color);background-color:var(--bs-btn-active-bg);border-color:var(--bs-btn-active-border-color)}.btn-check:checked+.btn:focus-visible,.btn.active:focus-visible,.btn.show:focus-visible,.btn:first-child:active:focus-visible,:not(.btn-check)+.btn:active:focus-visible{box-shadow:var(--bs-btn-focus-box-shadow)}.btn-check:checked:focus-visible+.btn{box-shadow:var(--bs-btn-focus-box-shadow)}.btn.disabled,.btn:disabled,fieldset:disabled .btn{color:var(--bs-btn-disabled-color);pointer-events:none;background-color:var(--bs-btn-disabled-bg);border-color:var(--bs-btn-disabled-border-color);opacity:var(--bs-btn-disabled-opacity)}.btn-primary{--bs-btn-color:#fff;--bs-btn-bg:#0d6efd;--bs-btn-border-color:#0d6efd;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#0b5ed7;--bs-btn-hover-border-color:#0a58ca;--bs-btn-focus-shadow-rgb:49,132,253;--bs-btn-active-color:#fff;--bs-btn-active-bg:#0a58ca;--bs-btn-active-border-color:#0a53be;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#0d6efd;--bs-btn-disabled-border-color:#0d6efd}.btn-secondary{--bs-btn-color:#fff;--bs-btn-bg:#6c757d;--bs-btn-border-color:#6c757d;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#5c636a;--bs-btn-hover-border-color:#565e64;--bs-btn-focus-shadow-rgb:130,138,145;--bs-btn-active-color:#fff;--bs-btn-active-bg:#565e64;--bs-btn-active-border-color:#51585e;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#6c757d;--bs-btn-disabled-border-color:#6c757d}.btn-success{--bs-btn-color:#fff;--bs-btn-bg:#198754;--bs-btn-border-color:#198754;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#157347;--bs-btn-hover-border-color:#146c43;--bs-btn-focus-shadow-rgb:60,153,110;--bs-btn-active-color:#fff;--bs-btn-active-bg:#146c43;--bs-btn-active-border-color:#13653f;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#198754;--bs-btn-disabled-border-color:#198754}.btn-info{--bs-btn-color:#000;--bs-btn-bg:#0dcaf0;--bs-btn-border-color:#0dcaf0;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#31d2f2;--bs-btn-hover-border-color:#25cff2;--bs-btn-focus-shadow-rgb:11,172,204;--bs-btn-active-color:#000;--bs-btn-active-bg:#3dd5f3;--bs-btn-active-border-color:#25cff2;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#000;--bs-btn-disabled-bg:#0dcaf0;--bs-btn-disabled-border-color:#0dcaf0}.btn-warning{--bs-btn-color:#000;--bs-btn-bg:#ffc107;--bs-btn-border-color:#ffc107;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#ffca2c;--bs-btn-hover-border-color:#ffc720;--bs-btn-focus-shadow-rgb:217,164,6;--bs-btn-active-color:#000;--bs-btn-active-bg:#ffcd39;--bs-btn-active-border-color:#ffc720;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#000;--bs-btn-disabled-bg:#ffc107;--bs-btn-disabled-border-color:#ffc107}.btn-danger{--bs-btn-color:#fff;--bs-btn-bg:#dc3545;--bs-btn-border-color:#dc3545;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#bb2d3b;--bs-btn-hover-border-color:#b02a37;--bs-btn-focus-shadow-rgb:225,83,97;--bs-btn-active-color:#fff;--bs-btn-active-bg:#b02a37;--bs-btn-active-border-color:#a52834;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#dc3545;--bs-btn-disabled-border-color:#dc3545}.btn-light{--bs-btn-color:#000;--bs-btn-bg:#f8f9fa;--bs-btn-border-color:#f8f9fa;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#d3d4d5;--bs-btn-hover-border-color:#c6c7c8;--bs-btn-focus-shadow-rgb:211,212,213;--bs-btn-active-color:#000;--bs-btn-active-bg:#c6c7c8;--bs-btn-active-border-color:#babbbc;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#000;--bs-btn-disabled-bg:#f8f9fa;--bs-btn-disabled-border-color:#f8f9fa}.btn-dark{--bs-btn-color:#fff;--bs-btn-bg:#212529;--bs-btn-border-color:#212529;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#424649;--bs-btn-hover-border-color:#373b3e;--bs-btn-focus-shadow-rgb:66,70,73;--bs-btn-active-color:#fff;--bs-btn-active-bg:#4d5154;--bs-btn-active-border-color:#373b3e;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#212529;--bs-btn-disabled-border-color:#212529}.btn-outline-primary{--bs-btn-color:#0d6efd;--bs-btn-border-color:#0d6efd;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#0d6efd;--bs-btn-hover-border-color:#0d6efd;--bs-btn-focus-shadow-rgb:13,110,253;--bs-btn-active-color:#fff;--bs-btn-active-bg:#0d6efd;--bs-btn-active-border-color:#0d6efd;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#0d6efd;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#0d6efd;--bs-gradient:none}.btn-outline-secondary{--bs-btn-color:#6c757d;--bs-btn-border-color:#6c757d;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#6c757d;--bs-btn-hover-border-color:#6c757d;--bs-btn-focus-shadow-rgb:108,117,125;--bs-btn-active-color:#fff;--bs-btn-active-bg:#6c757d;--bs-btn-active-border-color:#6c757d;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#6c757d;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#6c757d;--bs-gradient:none}.btn-outline-success{--bs-btn-color:#198754;--bs-btn-border-color:#198754;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#198754;--bs-btn-hover-border-color:#198754;--bs-btn-focus-shadow-rgb:25,135,84;--bs-btn-active-color:#fff;--bs-btn-active-bg:#198754;--bs-btn-active-border-color:#198754;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#198754;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#198754;--bs-gradient:none}.btn-outline-info{--bs-btn-color:#0dcaf0;--bs-btn-border-color:#0dcaf0;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#0dcaf0;--bs-btn-hover-border-color:#0dcaf0;--bs-btn-focus-shadow-rgb:13,202,240;--bs-btn-active-color:#000;--bs-btn-active-bg:#0dcaf0;--bs-btn-active-border-color:#0dcaf0;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#0dcaf0;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#0dcaf0;--bs-gradient:none}.btn-outline-warning{--bs-btn-color:#ffc107;--bs-btn-border-color:#ffc107;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#ffc107;--bs-btn-hover-border-color:#ffc107;--bs-btn-focus-shadow-rgb:255,193,7;--bs-btn-active-color:#000;--bs-btn-active-bg:#ffc107;--bs-btn-active-border-color:#ffc107;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#ffc107;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#ffc107;--bs-gradient:none}.btn-outline-danger{--bs-btn-color:#dc3545;--bs-btn-border-color:#dc3545;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#dc3545;--bs-btn-hover-border-color:#dc3545;--bs-btn-focus-shadow-rgb:220,53,69;--bs-btn-active-color:#fff;--bs-btn-active-bg:#dc3545;--bs-btn-active-border-color:#dc3545;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#dc3545;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#dc3545;--bs-gradient:none}.btn-outline-light{--bs-btn-color:#f8f9fa;--bs-btn-border-color:#f8f9fa;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#f8f9fa;--bs-btn-hover-border-color:#f8f9fa;--bs-btn-focus-shadow-rgb:248,249,250;--bs-btn-active-color:#000;--bs-btn-active-bg:#f8f9fa;--bs-btn-active-border-color:#f8f9fa;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#f8f9fa;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#f8f9fa;--bs-gradient:none}.btn-outline-dark{--bs-btn-color:#212529;--bs-btn-border-color:#212529;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#212529;--bs-btn-hover-border-color:#212529;--bs-btn-focus-shadow-rgb:33,37,41;--bs-btn-active-color:#fff;--bs-btn-active-bg:#212529;--bs-btn-active-border-color:#212529;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#212529;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#212529;--bs-gradient:none}.btn-link{--bs-btn-font-weight:400;--bs-btn-color:var(--bs-link-color);--bs-btn-bg:transparent;--bs-btn-border-color:transparent;--bs-btn-hover-color:var(--bs-link-hover-color);--bs-btn-hover-border-color:transparent;--bs-btn-active-color:var(--bs-link-hover-color);--bs-btn-active-border-color:transparent;--bs-btn-disabled-color:#6c757d;--bs-btn-disabled-border-color:transparent;--bs-btn-box-shadow:0 0 0 #000;--bs-btn-focus-shadow-rgb:49,132,253;text-decoration:underline}.btn-link:focus-visible{color:var(--bs-btn-color)}.btn-link:hover{color:var(--bs-btn-hover-color)}.btn-group-lg>.btn,.btn-lg{--bs-btn-padding-y:0.5rem;--bs-btn-padding-x:1rem;--bs-btn-font-size:1.25rem;--bs-btn-border-radius:var(--bs-border-radius-lg)}.btn-group-sm>.btn,.btn-sm{--bs-btn-padding-y:0.25rem;--bs-btn-padding-x:0.5rem;--bs-btn-font-size:0.875rem;--bs-btn-border-radius:var(--bs-border-radius-sm)}.fade{transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{height:0;overflow:hidden;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{transition:none}}.collapsing.collapse-horizontal{width:0;height:auto;transition:width .35s ease}@media (prefers-reduced-motion:reduce){.collapsing.collapse-horizontal{transition:none}}.dropdown,.dropdown-center,.dropend,.dropstart,.dropup,.dropup-center{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:\"\";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty::after{margin-left:0}.dropdown-menu{--bs-dropdown-zindex:1000;--bs-dropdown-min-width:10rem;--bs-dropdown-padding-x:0;--bs-dropdown-padding-y:0.5rem;--bs-dropdown-spacer:0.125rem;--bs-dropdown-font-size:1rem;--bs-dropdown-color:var(--bs-body-color);--bs-dropdown-bg:var(--bs-body-bg);--bs-dropdown-border-color:var(--bs-border-color-translucent);--bs-dropdown-border-radius:var(--bs-border-radius);--bs-dropdown-border-width:var(--bs-border-width);--bs-dropdown-inner-border-radius:calc(var(--bs-border-radius) - var(--bs-border-width));--bs-dropdown-divider-bg:var(--bs-border-color-translucent);--bs-dropdown-divider-margin-y:0.5rem;--bs-dropdown-box-shadow:var(--bs-box-shadow);--bs-dropdown-link-color:var(--bs-body-color);--bs-dropdown-link-hover-color:var(--bs-body-color);--bs-dropdown-link-hover-bg:var(--bs-tertiary-bg);--bs-dropdown-link-active-color:#fff;--bs-dropdown-link-active-bg:#0d6efd;--bs-dropdown-link-disabled-color:var(--bs-tertiary-color);--bs-dropdown-item-padding-x:1rem;--bs-dropdown-item-padding-y:0.25rem;--bs-dropdown-header-color:#6c757d;--bs-dropdown-header-padding-x:1rem;--bs-dropdown-header-padding-y:0.5rem;position:absolute;z-index:var(--bs-dropdown-zindex);display:none;min-width:var(--bs-dropdown-min-width);padding:var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);margin:0;font-size:var(--bs-dropdown-font-size);color:var(--bs-dropdown-color);text-align:left;list-style:none;background-color:var(--bs-dropdown-bg);background-clip:padding-box;border:var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);border-radius:var(--bs-dropdown-border-radius)}.dropdown-menu[data-bs-popper]{top:100%;left:0;margin-top:var(--bs-dropdown-spacer)}.dropdown-menu-start{--bs-position:start}.dropdown-menu-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-end{--bs-position:end}.dropdown-menu-end[data-bs-popper]{right:0;left:auto}@media (min-width:576px){.dropdown-menu-sm-start{--bs-position:start}.dropdown-menu-sm-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-sm-end{--bs-position:end}.dropdown-menu-sm-end[data-bs-popper]{right:0;left:auto}}@media (min-width:768px){.dropdown-menu-md-start{--bs-position:start}.dropdown-menu-md-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-md-end{--bs-position:end}.dropdown-menu-md-end[data-bs-popper]{right:0;left:auto}}@media (min-width:992px){.dropdown-menu-lg-start{--bs-position:start}.dropdown-menu-lg-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-lg-end{--bs-position:end}.dropdown-menu-lg-end[data-bs-popper]{right:0;left:auto}}@media (min-width:1200px){.dropdown-menu-xl-start{--bs-position:start}.dropdown-menu-xl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xl-end{--bs-position:end}.dropdown-menu-xl-end[data-bs-popper]{right:0;left:auto}}@media (min-width:1400px){.dropdown-menu-xxl-start{--bs-position:start}.dropdown-menu-xxl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xxl-end{--bs-position:end}.dropdown-menu-xxl-end[data-bs-popper]{right:0;left:auto}}.dropup .dropdown-menu[data-bs-popper]{top:auto;bottom:100%;margin-top:0;margin-bottom:var(--bs-dropdown-spacer)}.dropup .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:\"\";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-menu[data-bs-popper]{top:0;right:auto;left:100%;margin-top:0;margin-left:var(--bs-dropdown-spacer)}.dropend .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:\"\";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropend .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-toggle::after{vertical-align:0}.dropstart .dropdown-menu[data-bs-popper]{top:0;right:100%;left:auto;margin-top:0;margin-right:var(--bs-dropdown-spacer)}.dropstart .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:\"\"}.dropstart .dropdown-toggle::after{display:none}.dropstart .dropdown-toggle::before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:\"\";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropstart .dropdown-toggle:empty::after{margin-left:0}.dropstart .dropdown-toggle::before{vertical-align:0}.dropdown-divider{height:0;margin:var(--bs-dropdown-divider-margin-y) 0;overflow:hidden;border-top:1px solid var(--bs-dropdown-divider-bg);opacity:1}.dropdown-item{display:block;width:100%;padding:var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);clear:both;font-weight:400;color:var(--bs-dropdown-link-color);text-align:inherit;text-decoration:none;white-space:nowrap;background-color:transparent;border:0;border-radius:var(--bs-dropdown-item-border-radius,0)}.dropdown-item:focus,.dropdown-item:hover{color:var(--bs-dropdown-link-hover-color);background-color:var(--bs-dropdown-link-hover-bg)}.dropdown-item.active,.dropdown-item:active{color:var(--bs-dropdown-link-active-color);text-decoration:none;background-color:var(--bs-dropdown-link-active-bg)}.dropdown-item.disabled,.dropdown-item:disabled{color:var(--bs-dropdown-link-disabled-color);pointer-events:none;background-color:transparent}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:var(--bs-dropdown-header-padding-y) var(--bs-dropdown-header-padding-x);margin-bottom:0;font-size:.875rem;color:var(--bs-dropdown-header-color);white-space:nowrap}.dropdown-item-text{display:block;padding:var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);color:var(--bs-dropdown-link-color)}.dropdown-menu-dark{--bs-dropdown-color:#dee2e6;--bs-dropdown-bg:#343a40;--bs-dropdown-border-color:var(--bs-border-color-translucent);--bs-dropdown-box-shadow: ;--bs-dropdown-link-color:#dee2e6;--bs-dropdown-link-hover-color:#fff;--bs-dropdown-divider-bg:var(--bs-border-color-translucent);--bs-dropdown-link-hover-bg:rgba(255, 255, 255, 0.15);--bs-dropdown-link-active-color:#fff;--bs-dropdown-link-active-bg:#0d6efd;--bs-dropdown-link-disabled-color:#adb5bd;--bs-dropdown-header-color:#adb5bd}.btn-group,.btn-group-vertical{position:relative;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;flex:1 1 auto}.btn-group-vertical>.btn-check:checked+.btn,.btn-group-vertical>.btn-check:focus+.btn,.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn-check:checked+.btn,.btn-group>.btn-check:focus+.btn,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:1}.btn-toolbar{display:flex;flex-wrap:wrap;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group{border-radius:var(--bs-border-radius)}.btn-group>.btn-group:not(:first-child),.btn-group>:not(.btn-check:first-child)+.btn{margin-left:calc(var(--bs-border-width) * -1)}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn.dropdown-toggle-split:first-child,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:nth-child(n+3),.btn-group>:not(.btn-check)+.btn{border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split::after,.dropend .dropdown-toggle-split::after,.dropup .dropdown-toggle-split::after{margin-left:0}.dropstart .dropdown-toggle-split::before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{flex-direction:column;align-items:flex-start;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn-group:not(:first-child),.btn-group-vertical>.btn:not(:first-child){margin-top:calc(var(--bs-border-width) * -1)}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn~.btn{border-top-left-radius:0;border-top-right-radius:0}.nav{--bs-nav-link-padding-x:1rem;--bs-nav-link-padding-y:0.5rem;--bs-nav-link-font-weight: ;--bs-nav-link-color:var(--bs-link-color);--bs-nav-link-hover-color:var(--bs-link-hover-color);--bs-nav-link-disabled-color:var(--bs-secondary-color);display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);font-size:var(--bs-nav-link-font-size);font-weight:var(--bs-nav-link-font-weight);color:var(--bs-nav-link-color);text-decoration:none;background:0 0;border:0;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out}@media (prefers-reduced-motion:reduce){.nav-link{transition:none}}.nav-link:focus,.nav-link:hover{color:var(--bs-nav-link-hover-color)}.nav-link:focus-visible{outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.nav-link.disabled,.nav-link:disabled{color:var(--bs-nav-link-disabled-color);pointer-events:none;cursor:default}.nav-tabs{--bs-nav-tabs-border-width:var(--bs-border-width);--bs-nav-tabs-border-color:var(--bs-border-color);--bs-nav-tabs-border-radius:var(--bs-border-radius);--bs-nav-tabs-link-hover-border-color:var(--bs-secondary-bg) var(--bs-secondary-bg) var(--bs-border-color);--bs-nav-tabs-link-active-color:var(--bs-emphasis-color);--bs-nav-tabs-link-active-bg:var(--bs-body-bg);--bs-nav-tabs-link-active-border-color:var(--bs-border-color) var(--bs-border-color) var(--bs-body-bg);border-bottom:var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color)}.nav-tabs .nav-link{margin-bottom:calc(-1 * var(--bs-nav-tabs-border-width));border:var(--bs-nav-tabs-border-width) solid transparent;border-top-left-radius:var(--bs-nav-tabs-border-radius);border-top-right-radius:var(--bs-nav-tabs-border-radius)}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{isolation:isolate;border-color:var(--bs-nav-tabs-link-hover-border-color)}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{color:var(--bs-nav-tabs-link-active-color);background-color:var(--bs-nav-tabs-link-active-bg);border-color:var(--bs-nav-tabs-link-active-border-color)}.nav-tabs .dropdown-menu{margin-top:calc(-1 * var(--bs-nav-tabs-border-width));border-top-left-radius:0;border-top-right-radius:0}.nav-pills{--bs-nav-pills-border-radius:var(--bs-border-radius);--bs-nav-pills-link-active-color:#fff;--bs-nav-pills-link-active-bg:#0d6efd}.nav-pills .nav-link{border-radius:var(--bs-nav-pills-border-radius)}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:var(--bs-nav-pills-link-active-color);background-color:var(--bs-nav-pills-link-active-bg)}.nav-underline{--bs-nav-underline-gap:1rem;--bs-nav-underline-border-width:0.125rem;--bs-nav-underline-link-active-color:var(--bs-emphasis-color);gap:var(--bs-nav-underline-gap)}.nav-underline .nav-link{padding-right:0;padding-left:0;border-bottom:var(--bs-nav-underline-border-width) solid transparent}.nav-underline .nav-link:focus,.nav-underline .nav-link:hover{border-bottom-color:currentcolor}.nav-underline .nav-link.active,.nav-underline .show>.nav-link{font-weight:700;color:var(--bs-nav-underline-link-active-color);border-bottom-color:currentcolor}.nav-fill .nav-item,.nav-fill>.nav-link{flex:1 1 auto;text-align:center}.nav-justified .nav-item,.nav-justified>.nav-link{flex-basis:0;flex-grow:1;text-align:center}.nav-fill .nav-item .nav-link,.nav-justified .nav-item .nav-link{width:100%}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{--bs-navbar-padding-x:0;--bs-navbar-padding-y:0.5rem;--bs-navbar-color:rgba(var(--bs-emphasis-color-rgb), 0.65);--bs-navbar-hover-color:rgba(var(--bs-emphasis-color-rgb), 0.8);--bs-navbar-disabled-color:rgba(var(--bs-emphasis-color-rgb), 0.3);--bs-navbar-active-color:rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-brand-padding-y:0.3125rem;--bs-navbar-brand-margin-end:1rem;--bs-navbar-brand-font-size:1.25rem;--bs-navbar-brand-color:rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-brand-hover-color:rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-nav-link-padding-x:0.5rem;--bs-navbar-toggler-padding-y:0.25rem;--bs-navbar-toggler-padding-x:0.75rem;--bs-navbar-toggler-font-size:1.25rem;--bs-navbar-toggler-icon-bg:url(${___CSS_LOADER_URL_REPLACEMENT_11___});--bs-navbar-toggler-border-color:rgba(var(--bs-emphasis-color-rgb), 0.15);--bs-navbar-toggler-border-radius:var(--bs-border-radius);--bs-navbar-toggler-focus-width:0.25rem;--bs-navbar-toggler-transition:box-shadow 0.15s ease-in-out;position:relative;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:var(--bs-navbar-padding-y) var(--bs-navbar-padding-x)}.navbar>.container,.navbar>.container-fluid,.navbar>.container-lg,.navbar>.container-md,.navbar>.container-sm,.navbar>.container-xl,.navbar>.container-xxl{display:flex;flex-wrap:inherit;align-items:center;justify-content:space-between}.navbar-brand{padding-top:var(--bs-navbar-brand-padding-y);padding-bottom:var(--bs-navbar-brand-padding-y);margin-right:var(--bs-navbar-brand-margin-end);font-size:var(--bs-navbar-brand-font-size);color:var(--bs-navbar-brand-color);text-decoration:none;white-space:nowrap}.navbar-brand:focus,.navbar-brand:hover{color:var(--bs-navbar-brand-hover-color)}.navbar-nav{--bs-nav-link-padding-x:0;--bs-nav-link-padding-y:0.5rem;--bs-nav-link-font-weight: ;--bs-nav-link-color:var(--bs-navbar-color);--bs-nav-link-hover-color:var(--bs-navbar-hover-color);--bs-nav-link-disabled-color:var(--bs-navbar-disabled-color);display:flex;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link.active,.navbar-nav .nav-link.show{color:var(--bs-navbar-active-color)}.navbar-nav .dropdown-menu{position:static}.navbar-text{padding-top:.5rem;padding-bottom:.5rem;color:var(--bs-navbar-color)}.navbar-text a,.navbar-text a:focus,.navbar-text a:hover{color:var(--bs-navbar-active-color)}.navbar-collapse{flex-basis:100%;flex-grow:1;align-items:center}.navbar-toggler{padding:var(--bs-navbar-toggler-padding-y) var(--bs-navbar-toggler-padding-x);font-size:var(--bs-navbar-toggler-font-size);line-height:1;color:var(--bs-navbar-color);background-color:transparent;border:var(--bs-border-width) solid var(--bs-navbar-toggler-border-color);border-radius:var(--bs-navbar-toggler-border-radius);transition:var(--bs-navbar-toggler-transition)}@media (prefers-reduced-motion:reduce){.navbar-toggler{transition:none}}.navbar-toggler:hover{text-decoration:none}.navbar-toggler:focus{text-decoration:none;outline:0;box-shadow:0 0 0 var(--bs-navbar-toggler-focus-width)}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;background-image:var(--bs-navbar-toggler-icon-bg);background-repeat:no-repeat;background-position:center;background-size:100%}.navbar-nav-scroll{max-height:var(--bs-scroll-height,75vh);overflow-y:auto}@media (min-width:576px){.navbar-expand-sm{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-sm .navbar-nav{flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-sm .navbar-nav-scroll{overflow:visible}.navbar-expand-sm .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}.navbar-expand-sm .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;transform:none!important;transition:none}.navbar-expand-sm .offcanvas .offcanvas-header{display:none}.navbar-expand-sm .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:768px){.navbar-expand-md{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-md .navbar-nav{flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-md .navbar-nav-scroll{overflow:visible}.navbar-expand-md .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}.navbar-expand-md .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;transform:none!important;transition:none}.navbar-expand-md .offcanvas .offcanvas-header{display:none}.navbar-expand-md .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:992px){.navbar-expand-lg{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-lg .navbar-nav-scroll{overflow:visible}.navbar-expand-lg .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}.navbar-expand-lg .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;transform:none!important;transition:none}.navbar-expand-lg .offcanvas .offcanvas-header{display:none}.navbar-expand-lg .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:1200px){.navbar-expand-xl{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-xl .navbar-nav{flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-xl .navbar-nav-scroll{overflow:visible}.navbar-expand-xl .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}.navbar-expand-xl .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;transform:none!important;transition:none}.navbar-expand-xl .offcanvas .offcanvas-header{display:none}.navbar-expand-xl .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:1400px){.navbar-expand-xxl{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-xxl .navbar-nav{flex-direction:row}.navbar-expand-xxl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xxl .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-xxl .navbar-nav-scroll{overflow:visible}.navbar-expand-xxl .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-xxl .navbar-toggler{display:none}.navbar-expand-xxl .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;transform:none!important;transition:none}.navbar-expand-xxl .offcanvas .offcanvas-header{display:none}.navbar-expand-xxl .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}.navbar-expand{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand .navbar-nav{flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand .navbar-nav-scroll{overflow:visible}.navbar-expand .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-expand .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;transform:none!important;transition:none}.navbar-expand .offcanvas .offcanvas-header{display:none}.navbar-expand .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}.navbar-dark,.navbar[data-bs-theme=dark]{--bs-navbar-color:rgba(255, 255, 255, 0.55);--bs-navbar-hover-color:rgba(255, 255, 255, 0.75);--bs-navbar-disabled-color:rgba(255, 255, 255, 0.25);--bs-navbar-active-color:#fff;--bs-navbar-brand-color:#fff;--bs-navbar-brand-hover-color:#fff;--bs-navbar-toggler-border-color:rgba(255, 255, 255, 0.1);--bs-navbar-toggler-icon-bg:url(${___CSS_LOADER_URL_REPLACEMENT_12___})}[data-bs-theme=dark] .navbar-toggler-icon{--bs-navbar-toggler-icon-bg:url(${___CSS_LOADER_URL_REPLACEMENT_12___})}.card{--bs-card-spacer-y:1rem;--bs-card-spacer-x:1rem;--bs-card-title-spacer-y:0.5rem;--bs-card-title-color: ;--bs-card-subtitle-color: ;--bs-card-border-width:var(--bs-border-width);--bs-card-border-color:var(--bs-border-color-translucent);--bs-card-border-radius:var(--bs-border-radius);--bs-card-box-shadow: ;--bs-card-inner-border-radius:calc(var(--bs-border-radius) - (var(--bs-border-width)));--bs-card-cap-padding-y:0.5rem;--bs-card-cap-padding-x:1rem;--bs-card-cap-bg:rgba(var(--bs-body-color-rgb), 0.03);--bs-card-cap-color: ;--bs-card-height: ;--bs-card-color: ;--bs-card-bg:var(--bs-body-bg);--bs-card-img-overlay-padding:1rem;--bs-card-group-margin:0.75rem;position:relative;display:flex;flex-direction:column;min-width:0;height:var(--bs-card-height);color:var(--bs-body-color);word-wrap:break-word;background-color:var(--bs-card-bg);background-clip:border-box;border:var(--bs-card-border-width) solid var(--bs-card-border-color);border-radius:var(--bs-card-border-radius)}.card>hr{margin-right:0;margin-left:0}.card>.list-group{border-top:inherit;border-bottom:inherit}.card>.list-group:first-child{border-top-width:0;border-top-left-radius:var(--bs-card-inner-border-radius);border-top-right-radius:var(--bs-card-inner-border-radius)}.card>.list-group:last-child{border-bottom-width:0;border-bottom-right-radius:var(--bs-card-inner-border-radius);border-bottom-left-radius:var(--bs-card-inner-border-radius)}.card>.card-header+.list-group,.card>.list-group+.card-footer{border-top:0}.card-body{flex:1 1 auto;padding:var(--bs-card-spacer-y) var(--bs-card-spacer-x);color:var(--bs-card-color)}.card-title{margin-bottom:var(--bs-card-title-spacer-y);color:var(--bs-card-title-color)}.card-subtitle{margin-top:calc(-.5 * var(--bs-card-title-spacer-y));margin-bottom:0;color:var(--bs-card-subtitle-color)}.card-text:last-child{margin-bottom:0}.card-link+.card-link{margin-left:var(--bs-card-spacer-x)}.card-header{padding:var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);margin-bottom:0;color:var(--bs-card-cap-color);background-color:var(--bs-card-cap-bg);border-bottom:var(--bs-card-border-width) solid var(--bs-card-border-color)}.card-header:first-child{border-radius:var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius) 0 0}.card-footer{padding:var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);color:var(--bs-card-cap-color);background-color:var(--bs-card-cap-bg);border-top:var(--bs-card-border-width) solid var(--bs-card-border-color)}.card-footer:last-child{border-radius:0 0 var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius)}.card-header-tabs{margin-right:calc(-.5 * var(--bs-card-cap-padding-x));margin-bottom:calc(-1 * var(--bs-card-cap-padding-y));margin-left:calc(-.5 * var(--bs-card-cap-padding-x));border-bottom:0}.card-header-tabs .nav-link.active{background-color:var(--bs-card-bg);border-bottom-color:var(--bs-card-bg)}.card-header-pills{margin-right:calc(-.5 * var(--bs-card-cap-padding-x));margin-left:calc(-.5 * var(--bs-card-cap-padding-x))}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:var(--bs-card-img-overlay-padding);border-radius:var(--bs-card-inner-border-radius)}.card-img,.card-img-bottom,.card-img-top{width:100%}.card-img,.card-img-top{border-top-left-radius:var(--bs-card-inner-border-radius);border-top-right-radius:var(--bs-card-inner-border-radius)}.card-img,.card-img-bottom{border-bottom-right-radius:var(--bs-card-inner-border-radius);border-bottom-left-radius:var(--bs-card-inner-border-radius)}.card-group>.card{margin-bottom:var(--bs-card-group-margin)}@media (min-width:576px){.card-group{display:flex;flex-flow:row wrap}.card-group>.card{flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-header,.card-group>.card:not(:last-child) .card-img-top{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-footer,.card-group>.card:not(:last-child) .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-header,.card-group>.card:not(:first-child) .card-img-top{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-footer,.card-group>.card:not(:first-child) .card-img-bottom{border-bottom-left-radius:0}}.accordion{--bs-accordion-color:var(--bs-body-color);--bs-accordion-bg:var(--bs-body-bg);--bs-accordion-transition:color 0.15s ease-in-out,background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out,border-radius 0.15s ease;--bs-accordion-border-color:var(--bs-border-color);--bs-accordion-border-width:var(--bs-border-width);--bs-accordion-border-radius:var(--bs-border-radius);--bs-accordion-inner-border-radius:calc(var(--bs-border-radius) - (var(--bs-border-width)));--bs-accordion-btn-padding-x:1.25rem;--bs-accordion-btn-padding-y:1rem;--bs-accordion-btn-color:var(--bs-body-color);--bs-accordion-btn-bg:var(--bs-accordion-bg);--bs-accordion-btn-icon:url(${___CSS_LOADER_URL_REPLACEMENT_13___});--bs-accordion-btn-icon-width:1.25rem;--bs-accordion-btn-icon-transform:rotate(-180deg);--bs-accordion-btn-icon-transition:transform 0.2s ease-in-out;--bs-accordion-btn-active-icon:url(${___CSS_LOADER_URL_REPLACEMENT_14___});--bs-accordion-btn-focus-box-shadow:0 0 0 0.25rem rgba(13, 110, 253, 0.25);--bs-accordion-body-padding-x:1.25rem;--bs-accordion-body-padding-y:1rem;--bs-accordion-active-color:var(--bs-primary-text-emphasis);--bs-accordion-active-bg:var(--bs-primary-bg-subtle)}.accordion-button{position:relative;display:flex;align-items:center;width:100%;padding:var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);font-size:1rem;color:var(--bs-accordion-btn-color);text-align:left;background-color:var(--bs-accordion-btn-bg);border:0;border-radius:0;overflow-anchor:none;transition:var(--bs-accordion-transition)}@media (prefers-reduced-motion:reduce){.accordion-button{transition:none}}.accordion-button:not(.collapsed){color:var(--bs-accordion-active-color);background-color:var(--bs-accordion-active-bg);box-shadow:inset 0 calc(-1 * var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color)}.accordion-button:not(.collapsed)::after{background-image:var(--bs-accordion-btn-active-icon);transform:var(--bs-accordion-btn-icon-transform)}.accordion-button::after{flex-shrink:0;width:var(--bs-accordion-btn-icon-width);height:var(--bs-accordion-btn-icon-width);margin-left:auto;content:\"\";background-image:var(--bs-accordion-btn-icon);background-repeat:no-repeat;background-size:var(--bs-accordion-btn-icon-width);transition:var(--bs-accordion-btn-icon-transition)}@media (prefers-reduced-motion:reduce){.accordion-button::after{transition:none}}.accordion-button:hover{z-index:2}.accordion-button:focus{z-index:3;outline:0;box-shadow:var(--bs-accordion-btn-focus-box-shadow)}.accordion-header{margin-bottom:0}.accordion-item{color:var(--bs-accordion-color);background-color:var(--bs-accordion-bg);border:var(--bs-accordion-border-width) solid var(--bs-accordion-border-color)}.accordion-item:first-of-type{border-top-left-radius:var(--bs-accordion-border-radius);border-top-right-radius:var(--bs-accordion-border-radius)}.accordion-item:first-of-type>.accordion-header .accordion-button{border-top-left-radius:var(--bs-accordion-inner-border-radius);border-top-right-radius:var(--bs-accordion-inner-border-radius)}.accordion-item:not(:first-of-type){border-top:0}.accordion-item:last-of-type{border-bottom-right-radius:var(--bs-accordion-border-radius);border-bottom-left-radius:var(--bs-accordion-border-radius)}.accordion-item:last-of-type>.accordion-header .accordion-button.collapsed{border-bottom-right-radius:var(--bs-accordion-inner-border-radius);border-bottom-left-radius:var(--bs-accordion-inner-border-radius)}.accordion-item:last-of-type>.accordion-collapse{border-bottom-right-radius:var(--bs-accordion-border-radius);border-bottom-left-radius:var(--bs-accordion-border-radius)}.accordion-body{padding:var(--bs-accordion-body-padding-y) var(--bs-accordion-body-padding-x)}.accordion-flush>.accordion-item{border-right:0;border-left:0;border-radius:0}.accordion-flush>.accordion-item:first-child{border-top:0}.accordion-flush>.accordion-item:last-child{border-bottom:0}.accordion-flush>.accordion-item>.accordion-header .accordion-button,.accordion-flush>.accordion-item>.accordion-header .accordion-button.collapsed{border-radius:0}.accordion-flush>.accordion-item>.accordion-collapse{border-radius:0}[data-bs-theme=dark] .accordion-button::after{--bs-accordion-btn-icon:url(${___CSS_LOADER_URL_REPLACEMENT_15___});--bs-accordion-btn-active-icon:url(${___CSS_LOADER_URL_REPLACEMENT_15___})}.breadcrumb{--bs-breadcrumb-padding-x:0;--bs-breadcrumb-padding-y:0;--bs-breadcrumb-margin-bottom:1rem;--bs-breadcrumb-bg: ;--bs-breadcrumb-border-radius: ;--bs-breadcrumb-divider-color:var(--bs-secondary-color);--bs-breadcrumb-item-padding-x:0.5rem;--bs-breadcrumb-item-active-color:var(--bs-secondary-color);display:flex;flex-wrap:wrap;padding:var(--bs-breadcrumb-padding-y) var(--bs-breadcrumb-padding-x);margin-bottom:var(--bs-breadcrumb-margin-bottom);font-size:var(--bs-breadcrumb-font-size);list-style:none;background-color:var(--bs-breadcrumb-bg);border-radius:var(--bs-breadcrumb-border-radius)}.breadcrumb-item+.breadcrumb-item{padding-left:var(--bs-breadcrumb-item-padding-x)}.breadcrumb-item+.breadcrumb-item::before{float:left;padding-right:var(--bs-breadcrumb-item-padding-x);color:var(--bs-breadcrumb-divider-color);content:var(--bs-breadcrumb-divider, \"/\")}.breadcrumb-item.active{color:var(--bs-breadcrumb-item-active-color)}.pagination{--bs-pagination-padding-x:0.75rem;--bs-pagination-padding-y:0.375rem;--bs-pagination-font-size:1rem;--bs-pagination-color:var(--bs-link-color);--bs-pagination-bg:var(--bs-body-bg);--bs-pagination-border-width:var(--bs-border-width);--bs-pagination-border-color:var(--bs-border-color);--bs-pagination-border-radius:var(--bs-border-radius);--bs-pagination-hover-color:var(--bs-link-hover-color);--bs-pagination-hover-bg:var(--bs-tertiary-bg);--bs-pagination-hover-border-color:var(--bs-border-color);--bs-pagination-focus-color:var(--bs-link-hover-color);--bs-pagination-focus-bg:var(--bs-secondary-bg);--bs-pagination-focus-box-shadow:0 0 0 0.25rem rgba(13, 110, 253, 0.25);--bs-pagination-active-color:#fff;--bs-pagination-active-bg:#0d6efd;--bs-pagination-active-border-color:#0d6efd;--bs-pagination-disabled-color:var(--bs-secondary-color);--bs-pagination-disabled-bg:var(--bs-secondary-bg);--bs-pagination-disabled-border-color:var(--bs-border-color);display:flex;padding-left:0;list-style:none}.page-link{position:relative;display:block;padding:var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);font-size:var(--bs-pagination-font-size);color:var(--bs-pagination-color);text-decoration:none;background-color:var(--bs-pagination-bg);border:var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.page-link{transition:none}}.page-link:hover{z-index:2;color:var(--bs-pagination-hover-color);background-color:var(--bs-pagination-hover-bg);border-color:var(--bs-pagination-hover-border-color)}.page-link:focus{z-index:3;color:var(--bs-pagination-focus-color);background-color:var(--bs-pagination-focus-bg);outline:0;box-shadow:var(--bs-pagination-focus-box-shadow)}.active>.page-link,.page-link.active{z-index:3;color:var(--bs-pagination-active-color);background-color:var(--bs-pagination-active-bg);border-color:var(--bs-pagination-active-border-color)}.disabled>.page-link,.page-link.disabled{color:var(--bs-pagination-disabled-color);pointer-events:none;background-color:var(--bs-pagination-disabled-bg);border-color:var(--bs-pagination-disabled-border-color)}.page-item:not(:first-child) .page-link{margin-left:calc(var(--bs-border-width) * -1)}.page-item:first-child .page-link{border-top-left-radius:var(--bs-pagination-border-radius);border-bottom-left-radius:var(--bs-pagination-border-radius)}.page-item:last-child .page-link{border-top-right-radius:var(--bs-pagination-border-radius);border-bottom-right-radius:var(--bs-pagination-border-radius)}.pagination-lg{--bs-pagination-padding-x:1.5rem;--bs-pagination-padding-y:0.75rem;--bs-pagination-font-size:1.25rem;--bs-pagination-border-radius:var(--bs-border-radius-lg)}.pagination-sm{--bs-pagination-padding-x:0.5rem;--bs-pagination-padding-y:0.25rem;--bs-pagination-font-size:0.875rem;--bs-pagination-border-radius:var(--bs-border-radius-sm)}.badge{--bs-badge-padding-x:0.65em;--bs-badge-padding-y:0.35em;--bs-badge-font-size:0.75em;--bs-badge-font-weight:700;--bs-badge-color:#fff;--bs-badge-border-radius:var(--bs-border-radius);display:inline-block;padding:var(--bs-badge-padding-y) var(--bs-badge-padding-x);font-size:var(--bs-badge-font-size);font-weight:var(--bs-badge-font-weight);line-height:1;color:var(--bs-badge-color);text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:var(--bs-badge-border-radius)}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.alert{--bs-alert-bg:transparent;--bs-alert-padding-x:1rem;--bs-alert-padding-y:1rem;--bs-alert-margin-bottom:1rem;--bs-alert-color:inherit;--bs-alert-border-color:transparent;--bs-alert-border:var(--bs-border-width) solid var(--bs-alert-border-color);--bs-alert-border-radius:var(--bs-border-radius);--bs-alert-link-color:inherit;position:relative;padding:var(--bs-alert-padding-y) var(--bs-alert-padding-x);margin-bottom:var(--bs-alert-margin-bottom);color:var(--bs-alert-color);background-color:var(--bs-alert-bg);border:var(--bs-alert-border);border-radius:var(--bs-alert-border-radius)}.alert-heading{color:inherit}.alert-link{font-weight:700;color:var(--bs-alert-link-color)}.alert-dismissible{padding-right:3rem}.alert-dismissible .btn-close{position:absolute;top:0;right:0;z-index:2;padding:1.25rem 1rem}.alert-primary{--bs-alert-color:var(--bs-primary-text-emphasis);--bs-alert-bg:var(--bs-primary-bg-subtle);--bs-alert-border-color:var(--bs-primary-border-subtle);--bs-alert-link-color:var(--bs-primary-text-emphasis)}.alert-secondary{--bs-alert-color:var(--bs-secondary-text-emphasis);--bs-alert-bg:var(--bs-secondary-bg-subtle);--bs-alert-border-color:var(--bs-secondary-border-subtle);--bs-alert-link-color:var(--bs-secondary-text-emphasis)}.alert-success{--bs-alert-color:var(--bs-success-text-emphasis);--bs-alert-bg:var(--bs-success-bg-subtle);--bs-alert-border-color:var(--bs-success-border-subtle);--bs-alert-link-color:var(--bs-success-text-emphasis)}.alert-info{--bs-alert-color:var(--bs-info-text-emphasis);--bs-alert-bg:var(--bs-info-bg-subtle);--bs-alert-border-color:var(--bs-info-border-subtle);--bs-alert-link-color:var(--bs-info-text-emphasis)}.alert-warning{--bs-alert-color:var(--bs-warning-text-emphasis);--bs-alert-bg:var(--bs-warning-bg-subtle);--bs-alert-border-color:var(--bs-warning-border-subtle);--bs-alert-link-color:var(--bs-warning-text-emphasis)}.alert-danger{--bs-alert-color:var(--bs-danger-text-emphasis);--bs-alert-bg:var(--bs-danger-bg-subtle);--bs-alert-border-color:var(--bs-danger-border-subtle);--bs-alert-link-color:var(--bs-danger-text-emphasis)}.alert-light{--bs-alert-color:var(--bs-light-text-emphasis);--bs-alert-bg:var(--bs-light-bg-subtle);--bs-alert-border-color:var(--bs-light-border-subtle);--bs-alert-link-color:var(--bs-light-text-emphasis)}.alert-dark{--bs-alert-color:var(--bs-dark-text-emphasis);--bs-alert-bg:var(--bs-dark-bg-subtle);--bs-alert-border-color:var(--bs-dark-border-subtle);--bs-alert-link-color:var(--bs-dark-text-emphasis)}@keyframes progress-bar-stripes{0%{background-position-x:1rem}}.progress,.progress-stacked{--bs-progress-height:1rem;--bs-progress-font-size:0.75rem;--bs-progress-bg:var(--bs-secondary-bg);--bs-progress-border-radius:var(--bs-border-radius);--bs-progress-box-shadow:var(--bs-box-shadow-inset);--bs-progress-bar-color:#fff;--bs-progress-bar-bg:#0d6efd;--bs-progress-bar-transition:width 0.6s ease;display:flex;height:var(--bs-progress-height);overflow:hidden;font-size:var(--bs-progress-font-size);background-color:var(--bs-progress-bg);border-radius:var(--bs-progress-border-radius)}.progress-bar{display:flex;flex-direction:column;justify-content:center;overflow:hidden;color:var(--bs-progress-bar-color);text-align:center;white-space:nowrap;background-color:var(--bs-progress-bar-bg);transition:var(--bs-progress-bar-transition)}@media (prefers-reduced-motion:reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:var(--bs-progress-height) var(--bs-progress-height)}.progress-stacked>.progress{overflow:visible}.progress-stacked>.progress>.progress-bar{width:100%}.progress-bar-animated{animation:1s linear infinite progress-bar-stripes}@media (prefers-reduced-motion:reduce){.progress-bar-animated{animation:none}}.list-group{--bs-list-group-color:var(--bs-body-color);--bs-list-group-bg:var(--bs-body-bg);--bs-list-group-border-color:var(--bs-border-color);--bs-list-group-border-width:var(--bs-border-width);--bs-list-group-border-radius:var(--bs-border-radius);--bs-list-group-item-padding-x:1rem;--bs-list-group-item-padding-y:0.5rem;--bs-list-group-action-color:var(--bs-secondary-color);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-tertiary-bg);--bs-list-group-action-active-color:var(--bs-body-color);--bs-list-group-action-active-bg:var(--bs-secondary-bg);--bs-list-group-disabled-color:var(--bs-secondary-color);--bs-list-group-disabled-bg:var(--bs-body-bg);--bs-list-group-active-color:#fff;--bs-list-group-active-bg:#0d6efd;--bs-list-group-active-border-color:#0d6efd;display:flex;flex-direction:column;padding-left:0;margin-bottom:0;border-radius:var(--bs-list-group-border-radius)}.list-group-numbered{list-style-type:none;counter-reset:section}.list-group-numbered>.list-group-item::before{content:counters(section, \".\") \". \";counter-increment:section}.list-group-item-action{width:100%;color:var(--bs-list-group-action-color);text-align:inherit}.list-group-item-action:focus,.list-group-item-action:hover{z-index:1;color:var(--bs-list-group-action-hover-color);text-decoration:none;background-color:var(--bs-list-group-action-hover-bg)}.list-group-item-action:active{color:var(--bs-list-group-action-active-color);background-color:var(--bs-list-group-action-active-bg)}.list-group-item{position:relative;display:block;padding:var(--bs-list-group-item-padding-y) var(--bs-list-group-item-padding-x);color:var(--bs-list-group-color);text-decoration:none;background-color:var(--bs-list-group-bg);border:var(--bs-list-group-border-width) solid var(--bs-list-group-border-color)}.list-group-item:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.list-group-item:last-child{border-bottom-right-radius:inherit;border-bottom-left-radius:inherit}.list-group-item.disabled,.list-group-item:disabled{color:var(--bs-list-group-disabled-color);pointer-events:none;background-color:var(--bs-list-group-disabled-bg)}.list-group-item.active{z-index:2;color:var(--bs-list-group-active-color);background-color:var(--bs-list-group-active-bg);border-color:var(--bs-list-group-active-border-color)}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:calc(-1 * var(--bs-list-group-border-width));border-top-width:var(--bs-list-group-border-width)}.list-group-horizontal{flex-direction:row}.list-group-horizontal>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal>.list-group-item.active{margin-top:0}.list-group-horizontal>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}@media (min-width:576px){.list-group-horizontal-sm{flex-direction:row}.list-group-horizontal-sm>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-sm>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-sm>.list-group-item.active{margin-top:0}.list-group-horizontal-sm>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-sm>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media (min-width:768px){.list-group-horizontal-md{flex-direction:row}.list-group-horizontal-md>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-md>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-md>.list-group-item.active{margin-top:0}.list-group-horizontal-md>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-md>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media (min-width:992px){.list-group-horizontal-lg{flex-direction:row}.list-group-horizontal-lg>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-lg>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-lg>.list-group-item.active{margin-top:0}.list-group-horizontal-lg>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-lg>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media (min-width:1200px){.list-group-horizontal-xl{flex-direction:row}.list-group-horizontal-xl>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-xl>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-xl>.list-group-item.active{margin-top:0}.list-group-horizontal-xl>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-xl>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media (min-width:1400px){.list-group-horizontal-xxl{flex-direction:row}.list-group-horizontal-xxl>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-xxl>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-xxl>.list-group-item.active{margin-top:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}.list-group-flush{border-radius:0}.list-group-flush>.list-group-item{border-width:0 0 var(--bs-list-group-border-width)}.list-group-flush>.list-group-item:last-child{border-bottom-width:0}.list-group-item-primary{--bs-list-group-color:var(--bs-primary-text-emphasis);--bs-list-group-bg:var(--bs-primary-bg-subtle);--bs-list-group-border-color:var(--bs-primary-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-primary-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-primary-border-subtle);--bs-list-group-active-color:var(--bs-primary-bg-subtle);--bs-list-group-active-bg:var(--bs-primary-text-emphasis);--bs-list-group-active-border-color:var(--bs-primary-text-emphasis)}.list-group-item-secondary{--bs-list-group-color:var(--bs-secondary-text-emphasis);--bs-list-group-bg:var(--bs-secondary-bg-subtle);--bs-list-group-border-color:var(--bs-secondary-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-secondary-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-secondary-border-subtle);--bs-list-group-active-color:var(--bs-secondary-bg-subtle);--bs-list-group-active-bg:var(--bs-secondary-text-emphasis);--bs-list-group-active-border-color:var(--bs-secondary-text-emphasis)}.list-group-item-success{--bs-list-group-color:var(--bs-success-text-emphasis);--bs-list-group-bg:var(--bs-success-bg-subtle);--bs-list-group-border-color:var(--bs-success-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-success-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-success-border-subtle);--bs-list-group-active-color:var(--bs-success-bg-subtle);--bs-list-group-active-bg:var(--bs-success-text-emphasis);--bs-list-group-active-border-color:var(--bs-success-text-emphasis)}.list-group-item-info{--bs-list-group-color:var(--bs-info-text-emphasis);--bs-list-group-bg:var(--bs-info-bg-subtle);--bs-list-group-border-color:var(--bs-info-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-info-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-info-border-subtle);--bs-list-group-active-color:var(--bs-info-bg-subtle);--bs-list-group-active-bg:var(--bs-info-text-emphasis);--bs-list-group-active-border-color:var(--bs-info-text-emphasis)}.list-group-item-warning{--bs-list-group-color:var(--bs-warning-text-emphasis);--bs-list-group-bg:var(--bs-warning-bg-subtle);--bs-list-group-border-color:var(--bs-warning-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-warning-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-warning-border-subtle);--bs-list-group-active-color:var(--bs-warning-bg-subtle);--bs-list-group-active-bg:var(--bs-warning-text-emphasis);--bs-list-group-active-border-color:var(--bs-warning-text-emphasis)}.list-group-item-danger{--bs-list-group-color:var(--bs-danger-text-emphasis);--bs-list-group-bg:var(--bs-danger-bg-subtle);--bs-list-group-border-color:var(--bs-danger-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-danger-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-danger-border-subtle);--bs-list-group-active-color:var(--bs-danger-bg-subtle);--bs-list-group-active-bg:var(--bs-danger-text-emphasis);--bs-list-group-active-border-color:var(--bs-danger-text-emphasis)}.list-group-item-light{--bs-list-group-color:var(--bs-light-text-emphasis);--bs-list-group-bg:var(--bs-light-bg-subtle);--bs-list-group-border-color:var(--bs-light-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-light-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-light-border-subtle);--bs-list-group-active-color:var(--bs-light-bg-subtle);--bs-list-group-active-bg:var(--bs-light-text-emphasis);--bs-list-group-active-border-color:var(--bs-light-text-emphasis)}.list-group-item-dark{--bs-list-group-color:var(--bs-dark-text-emphasis);--bs-list-group-bg:var(--bs-dark-bg-subtle);--bs-list-group-border-color:var(--bs-dark-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-dark-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-dark-border-subtle);--bs-list-group-active-color:var(--bs-dark-bg-subtle);--bs-list-group-active-bg:var(--bs-dark-text-emphasis);--bs-list-group-active-border-color:var(--bs-dark-text-emphasis)}.btn-close{--bs-btn-close-color:#000;--bs-btn-close-bg:url(${___CSS_LOADER_URL_REPLACEMENT_16___});--bs-btn-close-opacity:0.5;--bs-btn-close-hover-opacity:0.75;--bs-btn-close-focus-shadow:0 0 0 0.25rem rgba(13, 110, 253, 0.25);--bs-btn-close-focus-opacity:1;--bs-btn-close-disabled-opacity:0.25;--bs-btn-close-white-filter:invert(1) grayscale(100%) brightness(200%);box-sizing:content-box;width:1em;height:1em;padding:.25em .25em;color:var(--bs-btn-close-color);background:transparent var(--bs-btn-close-bg) center/1em auto no-repeat;border:0;border-radius:.375rem;opacity:var(--bs-btn-close-opacity)}.btn-close:hover{color:var(--bs-btn-close-color);text-decoration:none;opacity:var(--bs-btn-close-hover-opacity)}.btn-close:focus{outline:0;box-shadow:var(--bs-btn-close-focus-shadow);opacity:var(--bs-btn-close-focus-opacity)}.btn-close.disabled,.btn-close:disabled{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;opacity:var(--bs-btn-close-disabled-opacity)}.btn-close-white{filter:var(--bs-btn-close-white-filter)}[data-bs-theme=dark] .btn-close{filter:var(--bs-btn-close-white-filter)}.toast{--bs-toast-zindex:1090;--bs-toast-padding-x:0.75rem;--bs-toast-padding-y:0.5rem;--bs-toast-spacing:1.5rem;--bs-toast-max-width:350px;--bs-toast-font-size:0.875rem;--bs-toast-color: ;--bs-toast-bg:rgba(var(--bs-body-bg-rgb), 0.85);--bs-toast-border-width:var(--bs-border-width);--bs-toast-border-color:var(--bs-border-color-translucent);--bs-toast-border-radius:var(--bs-border-radius);--bs-toast-box-shadow:var(--bs-box-shadow);--bs-toast-header-color:var(--bs-secondary-color);--bs-toast-header-bg:rgba(var(--bs-body-bg-rgb), 0.85);--bs-toast-header-border-color:var(--bs-border-color-translucent);width:var(--bs-toast-max-width);max-width:100%;font-size:var(--bs-toast-font-size);color:var(--bs-toast-color);pointer-events:auto;background-color:var(--bs-toast-bg);background-clip:padding-box;border:var(--bs-toast-border-width) solid var(--bs-toast-border-color);box-shadow:var(--bs-toast-box-shadow);border-radius:var(--bs-toast-border-radius)}.toast.showing{opacity:0}.toast:not(.show){display:none}.toast-container{--bs-toast-zindex:1090;position:absolute;z-index:var(--bs-toast-zindex);width:-webkit-max-content;width:-moz-max-content;width:max-content;max-width:100%;pointer-events:none}.toast-container>:not(:last-child){margin-bottom:var(--bs-toast-spacing)}.toast-header{display:flex;align-items:center;padding:var(--bs-toast-padding-y) var(--bs-toast-padding-x);color:var(--bs-toast-header-color);background-color:var(--bs-toast-header-bg);background-clip:padding-box;border-bottom:var(--bs-toast-border-width) solid var(--bs-toast-header-border-color);border-top-left-radius:calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));border-top-right-radius:calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width))}.toast-header .btn-close{margin-right:calc(-.5 * var(--bs-toast-padding-x));margin-left:var(--bs-toast-padding-x)}.toast-body{padding:var(--bs-toast-padding-x);word-wrap:break-word}.modal{--bs-modal-zindex:1055;--bs-modal-width:500px;--bs-modal-padding:1rem;--bs-modal-margin:0.5rem;--bs-modal-color: ;--bs-modal-bg:var(--bs-body-bg);--bs-modal-border-color:var(--bs-border-color-translucent);--bs-modal-border-width:var(--bs-border-width);--bs-modal-border-radius:var(--bs-border-radius-lg);--bs-modal-box-shadow:var(--bs-box-shadow-sm);--bs-modal-inner-border-radius:calc(var(--bs-border-radius-lg) - (var(--bs-border-width)));--bs-modal-header-padding-x:1rem;--bs-modal-header-padding-y:1rem;--bs-modal-header-padding:1rem 1rem;--bs-modal-header-border-color:var(--bs-border-color);--bs-modal-header-border-width:var(--bs-border-width);--bs-modal-title-line-height:1.5;--bs-modal-footer-gap:0.5rem;--bs-modal-footer-bg: ;--bs-modal-footer-border-color:var(--bs-border-color);--bs-modal-footer-border-width:var(--bs-border-width);position:fixed;top:0;left:0;z-index:var(--bs-modal-zindex);display:none;width:100%;height:100%;overflow-x:hidden;overflow-y:auto;outline:0}.modal-dialog{position:relative;width:auto;margin:var(--bs-modal-margin);pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transform:translate(0,-50px)}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{height:calc(100% - var(--bs-modal-margin) * 2)}.modal-dialog-scrollable .modal-content{max-height:100%;overflow:hidden}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:flex;align-items:center;min-height:calc(100% - var(--bs-modal-margin) * 2)}.modal-content{position:relative;display:flex;flex-direction:column;width:100%;color:var(--bs-modal-color);pointer-events:auto;background-color:var(--bs-modal-bg);background-clip:padding-box;border:var(--bs-modal-border-width) solid var(--bs-modal-border-color);border-radius:var(--bs-modal-border-radius);outline:0}.modal-backdrop{--bs-backdrop-zindex:1050;--bs-backdrop-bg:#000;--bs-backdrop-opacity:0.5;position:fixed;top:0;left:0;z-index:var(--bs-backdrop-zindex);width:100vw;height:100vh;background-color:var(--bs-backdrop-bg)}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:var(--bs-backdrop-opacity)}.modal-header{display:flex;flex-shrink:0;align-items:center;padding:var(--bs-modal-header-padding);border-bottom:var(--bs-modal-header-border-width) solid var(--bs-modal-header-border-color);border-top-left-radius:var(--bs-modal-inner-border-radius);border-top-right-radius:var(--bs-modal-inner-border-radius)}.modal-header .btn-close{padding:calc(var(--bs-modal-header-padding-y) * .5) calc(var(--bs-modal-header-padding-x) * .5);margin:calc(-.5 * var(--bs-modal-header-padding-y)) calc(-.5 * var(--bs-modal-header-padding-x)) calc(-.5 * var(--bs-modal-header-padding-y)) auto}.modal-title{margin-bottom:0;line-height:var(--bs-modal-title-line-height)}.modal-body{position:relative;flex:1 1 auto;padding:var(--bs-modal-padding)}.modal-footer{display:flex;flex-shrink:0;flex-wrap:wrap;align-items:center;justify-content:flex-end;padding:calc(var(--bs-modal-padding) - var(--bs-modal-footer-gap) * .5);background-color:var(--bs-modal-footer-bg);border-top:var(--bs-modal-footer-border-width) solid var(--bs-modal-footer-border-color);border-bottom-right-radius:var(--bs-modal-inner-border-radius);border-bottom-left-radius:var(--bs-modal-inner-border-radius)}.modal-footer>*{margin:calc(var(--bs-modal-footer-gap) * .5)}@media (min-width:576px){.modal{--bs-modal-margin:1.75rem;--bs-modal-box-shadow:var(--bs-box-shadow)}.modal-dialog{max-width:var(--bs-modal-width);margin-right:auto;margin-left:auto}.modal-sm{--bs-modal-width:300px}}@media (min-width:992px){.modal-lg,.modal-xl{--bs-modal-width:800px}}@media (min-width:1200px){.modal-xl{--bs-modal-width:1140px}}.modal-fullscreen{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen .modal-footer,.modal-fullscreen .modal-header{border-radius:0}.modal-fullscreen .modal-body{overflow-y:auto}@media (max-width:575.98px){.modal-fullscreen-sm-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-sm-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-sm-down .modal-footer,.modal-fullscreen-sm-down .modal-header{border-radius:0}.modal-fullscreen-sm-down .modal-body{overflow-y:auto}}@media (max-width:767.98px){.modal-fullscreen-md-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-md-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-md-down .modal-footer,.modal-fullscreen-md-down .modal-header{border-radius:0}.modal-fullscreen-md-down .modal-body{overflow-y:auto}}@media (max-width:991.98px){.modal-fullscreen-lg-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-lg-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-lg-down .modal-footer,.modal-fullscreen-lg-down .modal-header{border-radius:0}.modal-fullscreen-lg-down .modal-body{overflow-y:auto}}@media (max-width:1199.98px){.modal-fullscreen-xl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xl-down .modal-footer,.modal-fullscreen-xl-down .modal-header{border-radius:0}.modal-fullscreen-xl-down .modal-body{overflow-y:auto}}@media (max-width:1399.98px){.modal-fullscreen-xxl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xxl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xxl-down .modal-footer,.modal-fullscreen-xxl-down .modal-header{border-radius:0}.modal-fullscreen-xxl-down .modal-body{overflow-y:auto}}.tooltip{--bs-tooltip-zindex:1080;--bs-tooltip-max-width:200px;--bs-tooltip-padding-x:0.5rem;--bs-tooltip-padding-y:0.25rem;--bs-tooltip-margin: ;--bs-tooltip-font-size:0.875rem;--bs-tooltip-color:var(--bs-body-bg);--bs-tooltip-bg:var(--bs-emphasis-color);--bs-tooltip-border-radius:var(--bs-border-radius);--bs-tooltip-opacity:0.9;--bs-tooltip-arrow-width:0.8rem;--bs-tooltip-arrow-height:0.4rem;z-index:var(--bs-tooltip-zindex);display:block;margin:var(--bs-tooltip-margin);font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:var(--bs-tooltip-font-size);word-wrap:break-word;opacity:0}.tooltip.show{opacity:var(--bs-tooltip-opacity)}.tooltip .tooltip-arrow{display:block;width:var(--bs-tooltip-arrow-width);height:var(--bs-tooltip-arrow-height)}.tooltip .tooltip-arrow::before{position:absolute;content:\"\";border-color:transparent;border-style:solid}.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow,.bs-tooltip-top .tooltip-arrow{bottom:calc(-1 * var(--bs-tooltip-arrow-height))}.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before,.bs-tooltip-top .tooltip-arrow::before{top:-1px;border-width:var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * .5) 0;border-top-color:var(--bs-tooltip-bg)}.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow,.bs-tooltip-end .tooltip-arrow{left:calc(-1 * var(--bs-tooltip-arrow-height));width:var(--bs-tooltip-arrow-height);height:var(--bs-tooltip-arrow-width)}.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before,.bs-tooltip-end .tooltip-arrow::before{right:-1px;border-width:calc(var(--bs-tooltip-arrow-width) * .5) var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * .5) 0;border-right-color:var(--bs-tooltip-bg)}.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow,.bs-tooltip-bottom .tooltip-arrow{top:calc(-1 * var(--bs-tooltip-arrow-height))}.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before,.bs-tooltip-bottom .tooltip-arrow::before{bottom:-1px;border-width:0 calc(var(--bs-tooltip-arrow-width) * .5) var(--bs-tooltip-arrow-height);border-bottom-color:var(--bs-tooltip-bg)}.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow,.bs-tooltip-start .tooltip-arrow{right:calc(-1 * var(--bs-tooltip-arrow-height));width:var(--bs-tooltip-arrow-height);height:var(--bs-tooltip-arrow-width)}.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before,.bs-tooltip-start .tooltip-arrow::before{left:-1px;border-width:calc(var(--bs-tooltip-arrow-width) * .5) 0 calc(var(--bs-tooltip-arrow-width) * .5) var(--bs-tooltip-arrow-height);border-left-color:var(--bs-tooltip-bg)}.tooltip-inner{max-width:var(--bs-tooltip-max-width);padding:var(--bs-tooltip-padding-y) var(--bs-tooltip-padding-x);color:var(--bs-tooltip-color);text-align:center;background-color:var(--bs-tooltip-bg);border-radius:var(--bs-tooltip-border-radius)}.popover{--bs-popover-zindex:1070;--bs-popover-max-width:276px;--bs-popover-font-size:0.875rem;--bs-popover-bg:var(--bs-body-bg);--bs-popover-border-width:var(--bs-border-width);--bs-popover-border-color:var(--bs-border-color-translucent);--bs-popover-border-radius:var(--bs-border-radius-lg);--bs-popover-inner-border-radius:calc(var(--bs-border-radius-lg) - var(--bs-border-width));--bs-popover-box-shadow:var(--bs-box-shadow);--bs-popover-header-padding-x:1rem;--bs-popover-header-padding-y:0.5rem;--bs-popover-header-font-size:1rem;--bs-popover-header-color:inherit;--bs-popover-header-bg:var(--bs-secondary-bg);--bs-popover-body-padding-x:1rem;--bs-popover-body-padding-y:1rem;--bs-popover-body-color:var(--bs-body-color);--bs-popover-arrow-width:1rem;--bs-popover-arrow-height:0.5rem;--bs-popover-arrow-border:var(--bs-popover-border-color);z-index:var(--bs-popover-zindex);display:block;max-width:var(--bs-popover-max-width);font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:var(--bs-popover-font-size);word-wrap:break-word;background-color:var(--bs-popover-bg);background-clip:padding-box;border:var(--bs-popover-border-width) solid var(--bs-popover-border-color);border-radius:var(--bs-popover-border-radius)}.popover .popover-arrow{display:block;width:var(--bs-popover-arrow-width);height:var(--bs-popover-arrow-height)}.popover .popover-arrow::after,.popover .popover-arrow::before{position:absolute;display:block;content:\"\";border-color:transparent;border-style:solid;border-width:0}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow,.bs-popover-top>.popover-arrow{bottom:calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width))}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::before,.bs-popover-top>.popover-arrow::after,.bs-popover-top>.popover-arrow::before{border-width:var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * .5) 0}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::before,.bs-popover-top>.popover-arrow::before{bottom:0;border-top-color:var(--bs-popover-arrow-border)}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::after,.bs-popover-top>.popover-arrow::after{bottom:var(--bs-popover-border-width);border-top-color:var(--bs-popover-bg)}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow,.bs-popover-end>.popover-arrow{left:calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));width:var(--bs-popover-arrow-height);height:var(--bs-popover-arrow-width)}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::before,.bs-popover-end>.popover-arrow::after,.bs-popover-end>.popover-arrow::before{border-width:calc(var(--bs-popover-arrow-width) * .5) var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * .5) 0}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::before,.bs-popover-end>.popover-arrow::before{left:0;border-right-color:var(--bs-popover-arrow-border)}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::after,.bs-popover-end>.popover-arrow::after{left:var(--bs-popover-border-width);border-right-color:var(--bs-popover-bg)}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow,.bs-popover-bottom>.popover-arrow{top:calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width))}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::before,.bs-popover-bottom>.popover-arrow::after,.bs-popover-bottom>.popover-arrow::before{border-width:0 calc(var(--bs-popover-arrow-width) * .5) var(--bs-popover-arrow-height)}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::before,.bs-popover-bottom>.popover-arrow::before{top:0;border-bottom-color:var(--bs-popover-arrow-border)}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::after,.bs-popover-bottom>.popover-arrow::after{top:var(--bs-popover-border-width);border-bottom-color:var(--bs-popover-bg)}.bs-popover-auto[data-popper-placement^=bottom] .popover-header::before,.bs-popover-bottom .popover-header::before{position:absolute;top:0;left:50%;display:block;width:var(--bs-popover-arrow-width);margin-left:calc(-.5 * var(--bs-popover-arrow-width));content:\"\";border-bottom:var(--bs-popover-border-width) solid var(--bs-popover-header-bg)}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow,.bs-popover-start>.popover-arrow{right:calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));width:var(--bs-popover-arrow-height);height:var(--bs-popover-arrow-width)}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::before,.bs-popover-start>.popover-arrow::after,.bs-popover-start>.popover-arrow::before{border-width:calc(var(--bs-popover-arrow-width) * .5) 0 calc(var(--bs-popover-arrow-width) * .5) var(--bs-popover-arrow-height)}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::before,.bs-popover-start>.popover-arrow::before{right:0;border-left-color:var(--bs-popover-arrow-border)}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::after,.bs-popover-start>.popover-arrow::after{right:var(--bs-popover-border-width);border-left-color:var(--bs-popover-bg)}.popover-header{padding:var(--bs-popover-header-padding-y) var(--bs-popover-header-padding-x);margin-bottom:0;font-size:var(--bs-popover-header-font-size);color:var(--bs-popover-header-color);background-color:var(--bs-popover-header-bg);border-bottom:var(--bs-popover-border-width) solid var(--bs-popover-border-color);border-top-left-radius:var(--bs-popover-inner-border-radius);border-top-right-radius:var(--bs-popover-inner-border-radius)}.popover-header:empty{display:none}.popover-body{padding:var(--bs-popover-body-padding-y) var(--bs-popover-body-padding-x);color:var(--bs-popover-body-color)}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner::after{display:block;clear:both;content:\"\"}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:transform .6s ease-in-out}@media (prefers-reduced-motion:reduce){.carousel-item{transition:none}}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.active.carousel-item-end,.carousel-item-next:not(.carousel-item-start){transform:translateX(100%)}.active.carousel-item-start,.carousel-item-prev:not(.carousel-item-end){transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;transition-property:opacity;transform:none}.carousel-fade .carousel-item-next.carousel-item-start,.carousel-fade .carousel-item-prev.carousel-item-end,.carousel-fade .carousel-item.active{z-index:1;opacity:1}.carousel-fade .active.carousel-item-end,.carousel-fade .active.carousel-item-start{z-index:0;opacity:0;transition:opacity 0s .6s}@media (prefers-reduced-motion:reduce){.carousel-fade .active.carousel-item-end,.carousel-fade .active.carousel-item-start{transition:none}}.carousel-control-next,.carousel-control-prev{position:absolute;top:0;bottom:0;z-index:1;display:flex;align-items:center;justify-content:center;width:15%;padding:0;color:#fff;text-align:center;background:0 0;border:0;opacity:.5;transition:opacity .15s ease}@media (prefers-reduced-motion:reduce){.carousel-control-next,.carousel-control-prev{transition:none}}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{display:inline-block;width:2rem;height:2rem;background-repeat:no-repeat;background-position:50%;background-size:100% 100%}.carousel-control-prev-icon{background-image:url(${___CSS_LOADER_URL_REPLACEMENT_17___})}.carousel-control-next-icon{background-image:url(${___CSS_LOADER_URL_REPLACEMENT_18___})}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:2;display:flex;justify-content:center;padding:0;margin-right:15%;margin-bottom:1rem;margin-left:15%}.carousel-indicators [data-bs-target]{box-sizing:content-box;flex:0 1 auto;width:30px;height:3px;padding:0;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border:0;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;transition:opacity .6s ease}@media (prefers-reduced-motion:reduce){.carousel-indicators [data-bs-target]{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:1.25rem;left:15%;padding-top:1.25rem;padding-bottom:1.25rem;color:#fff;text-align:center}.carousel-dark .carousel-control-next-icon,.carousel-dark .carousel-control-prev-icon{filter:invert(1) grayscale(100)}.carousel-dark .carousel-indicators [data-bs-target]{background-color:#000}.carousel-dark .carousel-caption{color:#000}[data-bs-theme=dark] .carousel .carousel-control-next-icon,[data-bs-theme=dark] .carousel .carousel-control-prev-icon,[data-bs-theme=dark].carousel .carousel-control-next-icon,[data-bs-theme=dark].carousel .carousel-control-prev-icon{filter:invert(1) grayscale(100)}[data-bs-theme=dark] .carousel .carousel-indicators [data-bs-target],[data-bs-theme=dark].carousel .carousel-indicators [data-bs-target]{background-color:#000}[data-bs-theme=dark] .carousel .carousel-caption,[data-bs-theme=dark].carousel .carousel-caption{color:#000}.spinner-border,.spinner-grow{display:inline-block;width:var(--bs-spinner-width);height:var(--bs-spinner-height);vertical-align:var(--bs-spinner-vertical-align);border-radius:50%;animation:var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name)}@keyframes spinner-border{to{transform:rotate(360deg)}}.spinner-border{--bs-spinner-width:2rem;--bs-spinner-height:2rem;--bs-spinner-vertical-align:-0.125em;--bs-spinner-border-width:0.25em;--bs-spinner-animation-speed:0.75s;--bs-spinner-animation-name:spinner-border;border:var(--bs-spinner-border-width) solid currentcolor;border-right-color:transparent}.spinner-border-sm{--bs-spinner-width:1rem;--bs-spinner-height:1rem;--bs-spinner-border-width:0.2em}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}.spinner-grow{--bs-spinner-width:2rem;--bs-spinner-height:2rem;--bs-spinner-vertical-align:-0.125em;--bs-spinner-animation-speed:0.75s;--bs-spinner-animation-name:spinner-grow;background-color:currentcolor;opacity:0}.spinner-grow-sm{--bs-spinner-width:1rem;--bs-spinner-height:1rem}@media (prefers-reduced-motion:reduce){.spinner-border,.spinner-grow{--bs-spinner-animation-speed:1.5s}}.offcanvas,.offcanvas-lg,.offcanvas-md,.offcanvas-sm,.offcanvas-xl,.offcanvas-xxl{--bs-offcanvas-zindex:1045;--bs-offcanvas-width:400px;--bs-offcanvas-height:30vh;--bs-offcanvas-padding-x:1rem;--bs-offcanvas-padding-y:1rem;--bs-offcanvas-color:var(--bs-body-color);--bs-offcanvas-bg:var(--bs-body-bg);--bs-offcanvas-border-width:var(--bs-border-width);--bs-offcanvas-border-color:var(--bs-border-color-translucent);--bs-offcanvas-box-shadow:var(--bs-box-shadow-sm);--bs-offcanvas-transition:transform 0.3s ease-in-out;--bs-offcanvas-title-line-height:1.5}@media (max-width:575.98px){.offcanvas-sm{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media (max-width:575.98px) and (prefers-reduced-motion:reduce){.offcanvas-sm{transition:none}}@media (max-width:575.98px){.offcanvas-sm.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-sm.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-sm.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-sm.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-sm.show:not(.hiding),.offcanvas-sm.showing{transform:none}.offcanvas-sm.hiding,.offcanvas-sm.show,.offcanvas-sm.showing{visibility:visible}}@media (min-width:576px){.offcanvas-sm{--bs-offcanvas-height:auto;--bs-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-sm .offcanvas-header{display:none}.offcanvas-sm .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}@media (max-width:767.98px){.offcanvas-md{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media (max-width:767.98px) and (prefers-reduced-motion:reduce){.offcanvas-md{transition:none}}@media (max-width:767.98px){.offcanvas-md.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-md.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-md.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-md.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-md.show:not(.hiding),.offcanvas-md.showing{transform:none}.offcanvas-md.hiding,.offcanvas-md.show,.offcanvas-md.showing{visibility:visible}}@media (min-width:768px){.offcanvas-md{--bs-offcanvas-height:auto;--bs-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-md .offcanvas-header{display:none}.offcanvas-md .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}@media (max-width:991.98px){.offcanvas-lg{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media (max-width:991.98px) and (prefers-reduced-motion:reduce){.offcanvas-lg{transition:none}}@media (max-width:991.98px){.offcanvas-lg.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-lg.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-lg.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-lg.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-lg.show:not(.hiding),.offcanvas-lg.showing{transform:none}.offcanvas-lg.hiding,.offcanvas-lg.show,.offcanvas-lg.showing{visibility:visible}}@media (min-width:992px){.offcanvas-lg{--bs-offcanvas-height:auto;--bs-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-lg .offcanvas-header{display:none}.offcanvas-lg .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}@media (max-width:1199.98px){.offcanvas-xl{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media (max-width:1199.98px) and (prefers-reduced-motion:reduce){.offcanvas-xl{transition:none}}@media (max-width:1199.98px){.offcanvas-xl.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-xl.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-xl.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-xl.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-xl.show:not(.hiding),.offcanvas-xl.showing{transform:none}.offcanvas-xl.hiding,.offcanvas-xl.show,.offcanvas-xl.showing{visibility:visible}}@media (min-width:1200px){.offcanvas-xl{--bs-offcanvas-height:auto;--bs-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-xl .offcanvas-header{display:none}.offcanvas-xl .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}@media (max-width:1399.98px){.offcanvas-xxl{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media (max-width:1399.98px) and (prefers-reduced-motion:reduce){.offcanvas-xxl{transition:none}}@media (max-width:1399.98px){.offcanvas-xxl.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-xxl.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-xxl.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-xxl.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-xxl.show:not(.hiding),.offcanvas-xxl.showing{transform:none}.offcanvas-xxl.hiding,.offcanvas-xxl.show,.offcanvas-xxl.showing{visibility:visible}}@media (min-width:1400px){.offcanvas-xxl{--bs-offcanvas-height:auto;--bs-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-xxl .offcanvas-header{display:none}.offcanvas-xxl .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}.offcanvas{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}@media (prefers-reduced-motion:reduce){.offcanvas{transition:none}}.offcanvas.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas.show:not(.hiding),.offcanvas.showing{transform:none}.offcanvas.hiding,.offcanvas.show,.offcanvas.showing{visibility:visible}.offcanvas-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.offcanvas-backdrop.fade{opacity:0}.offcanvas-backdrop.show{opacity:.5}.offcanvas-header{display:flex;align-items:center;padding:var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x)}.offcanvas-header .btn-close{padding:calc(var(--bs-offcanvas-padding-y) * .5) calc(var(--bs-offcanvas-padding-x) * .5);margin:calc(-.5 * var(--bs-offcanvas-padding-y)) calc(-.5 * var(--bs-offcanvas-padding-x)) calc(-.5 * var(--bs-offcanvas-padding-y)) auto}.offcanvas-title{margin-bottom:0;line-height:var(--bs-offcanvas-title-line-height)}.offcanvas-body{flex-grow:1;padding:var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);overflow-y:auto}.placeholder{display:inline-block;min-height:1em;vertical-align:middle;cursor:wait;background-color:currentcolor;opacity:.5}.placeholder.btn::before{display:inline-block;content:\"\"}.placeholder-xs{min-height:.6em}.placeholder-sm{min-height:.8em}.placeholder-lg{min-height:1.2em}.placeholder-glow .placeholder{animation:placeholder-glow 2s ease-in-out infinite}@keyframes placeholder-glow{50%{opacity:.2}}.placeholder-wave{-webkit-mask-image:linear-gradient(130deg,#000 55%,rgba(0,0,0,0.8) 75%,#000 95%);mask-image:linear-gradient(130deg,#000 55%,rgba(0,0,0,0.8) 75%,#000 95%);-webkit-mask-size:200% 100%;mask-size:200% 100%;animation:placeholder-wave 2s linear infinite}@keyframes placeholder-wave{100%{-webkit-mask-position:-200% 0%;mask-position:-200% 0%}}.clearfix::after{display:block;clear:both;content:\"\"}.text-bg-primary{color:#fff!important;background-color:RGBA(var(--bs-primary-rgb),var(--bs-bg-opacity,1))!important}.text-bg-secondary{color:#fff!important;background-color:RGBA(var(--bs-secondary-rgb),var(--bs-bg-opacity,1))!important}.text-bg-success{color:#fff!important;background-color:RGBA(var(--bs-success-rgb),var(--bs-bg-opacity,1))!important}.text-bg-info{color:#000!important;background-color:RGBA(var(--bs-info-rgb),var(--bs-bg-opacity,1))!important}.text-bg-warning{color:#000!important;background-color:RGBA(var(--bs-warning-rgb),var(--bs-bg-opacity,1))!important}.text-bg-danger{color:#fff!important;background-color:RGBA(var(--bs-danger-rgb),var(--bs-bg-opacity,1))!important}.text-bg-light{color:#000!important;background-color:RGBA(var(--bs-light-rgb),var(--bs-bg-opacity,1))!important}.text-bg-dark{color:#fff!important;background-color:RGBA(var(--bs-dark-rgb),var(--bs-bg-opacity,1))!important}.link-primary{color:RGBA(var(--bs-primary-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-primary-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-primary-rgb),var(--bs-link-underline-opacity,1))!important}.link-primary:focus,.link-primary:hover{color:RGBA(10,88,202,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(10,88,202,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(10,88,202,var(--bs-link-underline-opacity,1))!important}.link-secondary{color:RGBA(var(--bs-secondary-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-secondary-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-secondary-rgb),var(--bs-link-underline-opacity,1))!important}.link-secondary:focus,.link-secondary:hover{color:RGBA(86,94,100,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(86,94,100,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(86,94,100,var(--bs-link-underline-opacity,1))!important}.link-success{color:RGBA(var(--bs-success-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-success-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-success-rgb),var(--bs-link-underline-opacity,1))!important}.link-success:focus,.link-success:hover{color:RGBA(20,108,67,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(20,108,67,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(20,108,67,var(--bs-link-underline-opacity,1))!important}.link-info{color:RGBA(var(--bs-info-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-info-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-info-rgb),var(--bs-link-underline-opacity,1))!important}.link-info:focus,.link-info:hover{color:RGBA(61,213,243,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(61,213,243,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(61,213,243,var(--bs-link-underline-opacity,1))!important}.link-warning{color:RGBA(var(--bs-warning-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-warning-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-warning-rgb),var(--bs-link-underline-opacity,1))!important}.link-warning:focus,.link-warning:hover{color:RGBA(255,205,57,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(255,205,57,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(255,205,57,var(--bs-link-underline-opacity,1))!important}.link-danger{color:RGBA(var(--bs-danger-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-danger-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-danger-rgb),var(--bs-link-underline-opacity,1))!important}.link-danger:focus,.link-danger:hover{color:RGBA(176,42,55,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(176,42,55,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(176,42,55,var(--bs-link-underline-opacity,1))!important}.link-light{color:RGBA(var(--bs-light-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-light-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-light-rgb),var(--bs-link-underline-opacity,1))!important}.link-light:focus,.link-light:hover{color:RGBA(249,250,251,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(249,250,251,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(249,250,251,var(--bs-link-underline-opacity,1))!important}.link-dark{color:RGBA(var(--bs-dark-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-dark-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-dark-rgb),var(--bs-link-underline-opacity,1))!important}.link-dark:focus,.link-dark:hover{color:RGBA(26,30,33,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(26,30,33,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(26,30,33,var(--bs-link-underline-opacity,1))!important}.link-body-emphasis{color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-underline-opacity,1))!important}.link-body-emphasis:focus,.link-body-emphasis:hover{color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-opacity,.75))!important;-webkit-text-decoration-color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-underline-opacity,0.75))!important;text-decoration-color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-underline-opacity,0.75))!important}.focus-ring:focus{outline:0;box-shadow:var(--bs-focus-ring-x,0) var(--bs-focus-ring-y,0) var(--bs-focus-ring-blur,0) var(--bs-focus-ring-width) var(--bs-focus-ring-color)}.icon-link{display:inline-flex;gap:.375rem;align-items:center;-webkit-text-decoration-color:rgba(var(--bs-link-color-rgb),var(--bs-link-opacity,0.5));text-decoration-color:rgba(var(--bs-link-color-rgb),var(--bs-link-opacity,0.5));text-underline-offset:0.25em;-webkit-backface-visibility:hidden;backface-visibility:hidden}.icon-link>.bi{flex-shrink:0;width:1em;height:1em;fill:currentcolor;transition:.2s ease-in-out transform}@media (prefers-reduced-motion:reduce){.icon-link>.bi{transition:none}}.icon-link-hover:focus-visible>.bi,.icon-link-hover:hover>.bi{transform:var(--bs-icon-link-transform,translate3d(.25em,0,0))}.ratio{position:relative;width:100%}.ratio::before{display:block;padding-top:var(--bs-aspect-ratio);content:\"\"}.ratio>*{position:absolute;top:0;left:0;width:100%;height:100%}.ratio-1x1{--bs-aspect-ratio:100%}.ratio-4x3{--bs-aspect-ratio:75%}.ratio-16x9{--bs-aspect-ratio:56.25%}.ratio-21x9{--bs-aspect-ratio:42.8571428571%}.fixed-top{position:fixed;top:0;right:0;left:0;z-index:1030}.fixed-bottom{position:fixed;right:0;bottom:0;left:0;z-index:1030}.sticky-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}.sticky-bottom{position:-webkit-sticky;position:sticky;bottom:0;z-index:1020}@media (min-width:576px){.sticky-sm-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}.sticky-sm-bottom{position:-webkit-sticky;position:sticky;bottom:0;z-index:1020}}@media (min-width:768px){.sticky-md-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}.sticky-md-bottom{position:-webkit-sticky;position:sticky;bottom:0;z-index:1020}}@media (min-width:992px){.sticky-lg-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}.sticky-lg-bottom{position:-webkit-sticky;position:sticky;bottom:0;z-index:1020}}@media (min-width:1200px){.sticky-xl-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}.sticky-xl-bottom{position:-webkit-sticky;position:sticky;bottom:0;z-index:1020}}@media (min-width:1400px){.sticky-xxl-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}.sticky-xxl-bottom{position:-webkit-sticky;position:sticky;bottom:0;z-index:1020}}.hstack{display:flex;flex-direction:row;align-items:center;align-self:stretch}.vstack{display:flex;flex:1 1 auto;flex-direction:column;align-self:stretch}.visually-hidden,.visually-hidden-focusable:not(:focus):not(:focus-within){width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.visually-hidden-focusable:not(:focus):not(:focus-within):not(caption),.visually-hidden:not(caption){position:absolute!important}.stretched-link::after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;content:\"\"}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vr{display:inline-block;align-self:stretch;width:var(--bs-border-width);min-height:1em;background-color:currentcolor;opacity:.25}.align-baseline{vertical-align:baseline!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.float-start{float:left!important}.float-end{float:right!important}.float-none{float:none!important}.object-fit-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-none{-o-object-fit:none!important;object-fit:none!important}.opacity-0{opacity:0!important}.opacity-25{opacity:.25!important}.opacity-50{opacity:.5!important}.opacity-75{opacity:.75!important}.opacity-100{opacity:1!important}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.overflow-visible{overflow:visible!important}.overflow-scroll{overflow:scroll!important}.overflow-x-auto{overflow-x:auto!important}.overflow-x-hidden{overflow-x:hidden!important}.overflow-x-visible{overflow-x:visible!important}.overflow-x-scroll{overflow-x:scroll!important}.overflow-y-auto{overflow-y:auto!important}.overflow-y-hidden{overflow-y:hidden!important}.overflow-y-visible{overflow-y:visible!important}.overflow-y-scroll{overflow-y:scroll!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-grid{display:grid!important}.d-inline-grid{display:inline-grid!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}.d-none{display:none!important}.shadow{box-shadow:var(--bs-box-shadow)!important}.shadow-sm{box-shadow:var(--bs-box-shadow-sm)!important}.shadow-lg{box-shadow:var(--bs-box-shadow-lg)!important}.shadow-none{box-shadow:none!important}.focus-ring-primary{--bs-focus-ring-color:rgba(var(--bs-primary-rgb), var(--bs-focus-ring-opacity))}.focus-ring-secondary{--bs-focus-ring-color:rgba(var(--bs-secondary-rgb), var(--bs-focus-ring-opacity))}.focus-ring-success{--bs-focus-ring-color:rgba(var(--bs-success-rgb), var(--bs-focus-ring-opacity))}.focus-ring-info{--bs-focus-ring-color:rgba(var(--bs-info-rgb), var(--bs-focus-ring-opacity))}.focus-ring-warning{--bs-focus-ring-color:rgba(var(--bs-warning-rgb), var(--bs-focus-ring-opacity))}.focus-ring-danger{--bs-focus-ring-color:rgba(var(--bs-danger-rgb), var(--bs-focus-ring-opacity))}.focus-ring-light{--bs-focus-ring-color:rgba(var(--bs-light-rgb), var(--bs-focus-ring-opacity))}.focus-ring-dark{--bs-focus-ring-color:rgba(var(--bs-dark-rgb), var(--bs-focus-ring-opacity))}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:-webkit-sticky!important;position:sticky!important}.top-0{top:0!important}.top-50{top:50%!important}.top-100{top:100%!important}.bottom-0{bottom:0!important}.bottom-50{bottom:50%!important}.bottom-100{bottom:100%!important}.start-0{left:0!important}.start-50{left:50%!important}.start-100{left:100%!important}.end-0{right:0!important}.end-50{right:50%!important}.end-100{right:100%!important}.translate-middle{transform:translate(-50%,-50%)!important}.translate-middle-x{transform:translateX(-50%)!important}.translate-middle-y{transform:translateY(-50%)!important}.border{border:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-0{border:0!important}.border-top{border-top:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-top-0{border-top:0!important}.border-end{border-right:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-end-0{border-right:0!important}.border-bottom{border-bottom:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-bottom-0{border-bottom:0!important}.border-start{border-left:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-start-0{border-left:0!important}.border-primary{--bs-border-opacity:1;border-color:rgba(var(--bs-primary-rgb),var(--bs-border-opacity))!important}.border-secondary{--bs-border-opacity:1;border-color:rgba(var(--bs-secondary-rgb),var(--bs-border-opacity))!important}.border-success{--bs-border-opacity:1;border-color:rgba(var(--bs-success-rgb),var(--bs-border-opacity))!important}.border-info{--bs-border-opacity:1;border-color:rgba(var(--bs-info-rgb),var(--bs-border-opacity))!important}.border-warning{--bs-border-opacity:1;border-color:rgba(var(--bs-warning-rgb),var(--bs-border-opacity))!important}.border-danger{--bs-border-opacity:1;border-color:rgba(var(--bs-danger-rgb),var(--bs-border-opacity))!important}.border-light{--bs-border-opacity:1;border-color:rgba(var(--bs-light-rgb),var(--bs-border-opacity))!important}.border-dark{--bs-border-opacity:1;border-color:rgba(var(--bs-dark-rgb),var(--bs-border-opacity))!important}.border-black{--bs-border-opacity:1;border-color:rgba(var(--bs-black-rgb),var(--bs-border-opacity))!important}.border-white{--bs-border-opacity:1;border-color:rgba(var(--bs-white-rgb),var(--bs-border-opacity))!important}.border-primary-subtle{border-color:var(--bs-primary-border-subtle)!important}.border-secondary-subtle{border-color:var(--bs-secondary-border-subtle)!important}.border-success-subtle{border-color:var(--bs-success-border-subtle)!important}.border-info-subtle{border-color:var(--bs-info-border-subtle)!important}.border-warning-subtle{border-color:var(--bs-warning-border-subtle)!important}.border-danger-subtle{border-color:var(--bs-danger-border-subtle)!important}.border-light-subtle{border-color:var(--bs-light-border-subtle)!important}.border-dark-subtle{border-color:var(--bs-dark-border-subtle)!important}.border-1{border-width:1px!important}.border-2{border-width:2px!important}.border-3{border-width:3px!important}.border-4{border-width:4px!important}.border-5{border-width:5px!important}.border-opacity-10{--bs-border-opacity:0.1}.border-opacity-25{--bs-border-opacity:0.25}.border-opacity-50{--bs-border-opacity:0.5}.border-opacity-75{--bs-border-opacity:0.75}.border-opacity-100{--bs-border-opacity:1}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.mw-100{max-width:100%!important}.vw-100{width:100vw!important}.min-vw-100{min-width:100vw!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.mh-100{max-height:100%!important}.vh-100{height:100vh!important}.min-vh-100{min-height:100vh!important}.flex-fill{flex:1 1 auto!important}.flex-row{flex-direction:row!important}.flex-column{flex-direction:column!important}.flex-row-reverse{flex-direction:row-reverse!important}.flex-column-reverse{flex-direction:column-reverse!important}.flex-grow-0{flex-grow:0!important}.flex-grow-1{flex-grow:1!important}.flex-shrink-0{flex-shrink:0!important}.flex-shrink-1{flex-shrink:1!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.justify-content-around{justify-content:space-around!important}.justify-content-evenly{justify-content:space-evenly!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center{align-items:center!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}.align-content-start{align-content:flex-start!important}.align-content-end{align-content:flex-end!important}.align-content-center{align-content:center!important}.align-content-between{align-content:space-between!important}.align-content-around{align-content:space-around!important}.align-content-stretch{align-content:stretch!important}.align-self-auto{align-self:auto!important}.align-self-start{align-self:flex-start!important}.align-self-end{align-self:flex-end!important}.align-self-center{align-self:center!important}.align-self-baseline{align-self:baseline!important}.align-self-stretch{align-self:stretch!important}.order-first{order:-1!important}.order-0{order:0!important}.order-1{order:1!important}.order-2{order:2!important}.order-3{order:3!important}.order-4{order:4!important}.order-5{order:5!important}.order-last{order:6!important}.m-0{margin:0!important}.m-1{margin:.25rem!important}.m-2{margin:.5rem!important}.m-3{margin:1rem!important}.m-4{margin:1.5rem!important}.m-5{margin:3rem!important}.m-auto{margin:auto!important}.mx-0{margin-right:0!important;margin-left:0!important}.mx-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-3{margin-right:1rem!important;margin-left:1rem!important}.mx-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-5{margin-right:3rem!important;margin-left:3rem!important}.mx-auto{margin-right:auto!important;margin-left:auto!important}.my-0{margin-top:0!important;margin-bottom:0!important}.my-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-0{margin-top:0!important}.mt-1{margin-top:.25rem!important}.mt-2{margin-top:.5rem!important}.mt-3{margin-top:1rem!important}.mt-4{margin-top:1.5rem!important}.mt-5{margin-top:3rem!important}.mt-auto{margin-top:auto!important}.me-0{margin-right:0!important}.me-1{margin-right:.25rem!important}.me-2{margin-right:.5rem!important}.me-3{margin-right:1rem!important}.me-4{margin-right:1.5rem!important}.me-5{margin-right:3rem!important}.me-auto{margin-right:auto!important}.mb-0{margin-bottom:0!important}.mb-1{margin-bottom:.25rem!important}.mb-2{margin-bottom:.5rem!important}.mb-3{margin-bottom:1rem!important}.mb-4{margin-bottom:1.5rem!important}.mb-5{margin-bottom:3rem!important}.mb-auto{margin-bottom:auto!important}.ms-0{margin-left:0!important}.ms-1{margin-left:.25rem!important}.ms-2{margin-left:.5rem!important}.ms-3{margin-left:1rem!important}.ms-4{margin-left:1.5rem!important}.ms-5{margin-left:3rem!important}.ms-auto{margin-left:auto!important}.p-0{padding:0!important}.p-1{padding:.25rem!important}.p-2{padding:.5rem!important}.p-3{padding:1rem!important}.p-4{padding:1.5rem!important}.p-5{padding:3rem!important}.px-0{padding-right:0!important;padding-left:0!important}.px-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-3{padding-right:1rem!important;padding-left:1rem!important}.px-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-5{padding-right:3rem!important;padding-left:3rem!important}.py-0{padding-top:0!important;padding-bottom:0!important}.py-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-0{padding-top:0!important}.pt-1{padding-top:.25rem!important}.pt-2{padding-top:.5rem!important}.pt-3{padding-top:1rem!important}.pt-4{padding-top:1.5rem!important}.pt-5{padding-top:3rem!important}.pe-0{padding-right:0!important}.pe-1{padding-right:.25rem!important}.pe-2{padding-right:.5rem!important}.pe-3{padding-right:1rem!important}.pe-4{padding-right:1.5rem!important}.pe-5{padding-right:3rem!important}.pb-0{padding-bottom:0!important}.pb-1{padding-bottom:.25rem!important}.pb-2{padding-bottom:.5rem!important}.pb-3{padding-bottom:1rem!important}.pb-4{padding-bottom:1.5rem!important}.pb-5{padding-bottom:3rem!important}.ps-0{padding-left:0!important}.ps-1{padding-left:.25rem!important}.ps-2{padding-left:.5rem!important}.ps-3{padding-left:1rem!important}.ps-4{padding-left:1.5rem!important}.ps-5{padding-left:3rem!important}.gap-0{gap:0!important}.gap-1{gap:.25rem!important}.gap-2{gap:.5rem!important}.gap-3{gap:1rem!important}.gap-4{gap:1.5rem!important}.gap-5{gap:3rem!important}.row-gap-0{row-gap:0!important}.row-gap-1{row-gap:.25rem!important}.row-gap-2{row-gap:.5rem!important}.row-gap-3{row-gap:1rem!important}.row-gap-4{row-gap:1.5rem!important}.row-gap-5{row-gap:3rem!important}.column-gap-0{-moz-column-gap:0!important;column-gap:0!important}.column-gap-1{-moz-column-gap:0.25rem!important;column-gap:.25rem!important}.column-gap-2{-moz-column-gap:0.5rem!important;column-gap:.5rem!important}.column-gap-3{-moz-column-gap:1rem!important;column-gap:1rem!important}.column-gap-4{-moz-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-5{-moz-column-gap:3rem!important;column-gap:3rem!important}.font-monospace{font-family:var(--bs-font-monospace)!important}.fs-1{font-size:calc(1.375rem + 1.5vw)!important}.fs-2{font-size:calc(1.325rem + .9vw)!important}.fs-3{font-size:calc(1.3rem + .6vw)!important}.fs-4{font-size:calc(1.275rem + .3vw)!important}.fs-5{font-size:1.25rem!important}.fs-6{font-size:1rem!important}.fst-italic{font-style:italic!important}.fst-normal{font-style:normal!important}.fw-lighter{font-weight:lighter!important}.fw-light{font-weight:300!important}.fw-normal{font-weight:400!important}.fw-medium{font-weight:500!important}.fw-semibold{font-weight:600!important}.fw-bold{font-weight:700!important}.fw-bolder{font-weight:bolder!important}.lh-1{line-height:1!important}.lh-sm{line-height:1.25!important}.lh-base{line-height:1.5!important}.lh-lg{line-height:2!important}.text-start{text-align:left!important}.text-end{text-align:right!important}.text-center{text-align:center!important}.text-decoration-none{text-decoration:none!important}.text-decoration-underline{text-decoration:underline!important}.text-decoration-line-through{text-decoration:line-through!important}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.text-wrap{white-space:normal!important}.text-nowrap{white-space:nowrap!important}.text-break{word-wrap:break-word!important;word-break:break-word!important}.text-primary{--bs-text-opacity:1;color:rgba(var(--bs-primary-rgb),var(--bs-text-opacity))!important}.text-secondary{--bs-text-opacity:1;color:rgba(var(--bs-secondary-rgb),var(--bs-text-opacity))!important}.text-success{--bs-text-opacity:1;color:rgba(var(--bs-success-rgb),var(--bs-text-opacity))!important}.text-info{--bs-text-opacity:1;color:rgba(var(--bs-info-rgb),var(--bs-text-opacity))!important}.text-warning{--bs-text-opacity:1;color:rgba(var(--bs-warning-rgb),var(--bs-text-opacity))!important}.text-danger{--bs-text-opacity:1;color:rgba(var(--bs-danger-rgb),var(--bs-text-opacity))!important}.text-light{--bs-text-opacity:1;color:rgba(var(--bs-light-rgb),var(--bs-text-opacity))!important}.text-dark{--bs-text-opacity:1;color:rgba(var(--bs-dark-rgb),var(--bs-text-opacity))!important}.text-black{--bs-text-opacity:1;color:rgba(var(--bs-black-rgb),var(--bs-text-opacity))!important}.text-white{--bs-text-opacity:1;color:rgba(var(--bs-white-rgb),var(--bs-text-opacity))!important}.text-body{--bs-text-opacity:1;color:rgba(var(--bs-body-color-rgb),var(--bs-text-opacity))!important}.text-muted{--bs-text-opacity:1;color:var(--bs-secondary-color)!important}.text-black-50{--bs-text-opacity:1;color:rgba(0,0,0,.5)!important}.text-white-50{--bs-text-opacity:1;color:rgba(255,255,255,.5)!important}.text-body-secondary{--bs-text-opacity:1;color:var(--bs-secondary-color)!important}.text-body-tertiary{--bs-text-opacity:1;color:var(--bs-tertiary-color)!important}.text-body-emphasis{--bs-text-opacity:1;color:var(--bs-emphasis-color)!important}.text-reset{--bs-text-opacity:1;color:inherit!important}.text-opacity-25{--bs-text-opacity:0.25}.text-opacity-50{--bs-text-opacity:0.5}.text-opacity-75{--bs-text-opacity:0.75}.text-opacity-100{--bs-text-opacity:1}.text-primary-emphasis{color:var(--bs-primary-text-emphasis)!important}.text-secondary-emphasis{color:var(--bs-secondary-text-emphasis)!important}.text-success-emphasis{color:var(--bs-success-text-emphasis)!important}.text-info-emphasis{color:var(--bs-info-text-emphasis)!important}.text-warning-emphasis{color:var(--bs-warning-text-emphasis)!important}.text-danger-emphasis{color:var(--bs-danger-text-emphasis)!important}.text-light-emphasis{color:var(--bs-light-text-emphasis)!important}.text-dark-emphasis{color:var(--bs-dark-text-emphasis)!important}.link-opacity-10{--bs-link-opacity:0.1}.link-opacity-10-hover:hover{--bs-link-opacity:0.1}.link-opacity-25{--bs-link-opacity:0.25}.link-opacity-25-hover:hover{--bs-link-opacity:0.25}.link-opacity-50{--bs-link-opacity:0.5}.link-opacity-50-hover:hover{--bs-link-opacity:0.5}.link-opacity-75{--bs-link-opacity:0.75}.link-opacity-75-hover:hover{--bs-link-opacity:0.75}.link-opacity-100{--bs-link-opacity:1}.link-opacity-100-hover:hover{--bs-link-opacity:1}.link-offset-1{text-underline-offset:0.125em!important}.link-offset-1-hover:hover{text-underline-offset:0.125em!important}.link-offset-2{text-underline-offset:0.25em!important}.link-offset-2-hover:hover{text-underline-offset:0.25em!important}.link-offset-3{text-underline-offset:0.375em!important}.link-offset-3-hover:hover{text-underline-offset:0.375em!important}.link-underline-primary{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-primary-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-primary-rgb),var(--bs-link-underline-opacity))!important}.link-underline-secondary{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-secondary-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-secondary-rgb),var(--bs-link-underline-opacity))!important}.link-underline-success{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-success-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-success-rgb),var(--bs-link-underline-opacity))!important}.link-underline-info{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-info-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-info-rgb),var(--bs-link-underline-opacity))!important}.link-underline-warning{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-warning-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-warning-rgb),var(--bs-link-underline-opacity))!important}.link-underline-danger{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-danger-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-danger-rgb),var(--bs-link-underline-opacity))!important}.link-underline-light{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-light-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-light-rgb),var(--bs-link-underline-opacity))!important}.link-underline-dark{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-dark-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-dark-rgb),var(--bs-link-underline-opacity))!important}.link-underline{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-link-color-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:rgba(var(--bs-link-color-rgb),var(--bs-link-underline-opacity,1))!important}.link-underline-opacity-0{--bs-link-underline-opacity:0}.link-underline-opacity-0-hover:hover{--bs-link-underline-opacity:0}.link-underline-opacity-10{--bs-link-underline-opacity:0.1}.link-underline-opacity-10-hover:hover{--bs-link-underline-opacity:0.1}.link-underline-opacity-25{--bs-link-underline-opacity:0.25}.link-underline-opacity-25-hover:hover{--bs-link-underline-opacity:0.25}.link-underline-opacity-50{--bs-link-underline-opacity:0.5}.link-underline-opacity-50-hover:hover{--bs-link-underline-opacity:0.5}.link-underline-opacity-75{--bs-link-underline-opacity:0.75}.link-underline-opacity-75-hover:hover{--bs-link-underline-opacity:0.75}.link-underline-opacity-100{--bs-link-underline-opacity:1}.link-underline-opacity-100-hover:hover{--bs-link-underline-opacity:1}.bg-primary{--bs-bg-opacity:1;background-color:rgba(var(--bs-primary-rgb),var(--bs-bg-opacity))!important}.bg-secondary{--bs-bg-opacity:1;background-color:rgba(var(--bs-secondary-rgb),var(--bs-bg-opacity))!important}.bg-success{--bs-bg-opacity:1;background-color:rgba(var(--bs-success-rgb),var(--bs-bg-opacity))!important}.bg-info{--bs-bg-opacity:1;background-color:rgba(var(--bs-info-rgb),var(--bs-bg-opacity))!important}.bg-warning{--bs-bg-opacity:1;background-color:rgba(var(--bs-warning-rgb),var(--bs-bg-opacity))!important}.bg-danger{--bs-bg-opacity:1;background-color:rgba(var(--bs-danger-rgb),var(--bs-bg-opacity))!important}.bg-light{--bs-bg-opacity:1;background-color:rgba(var(--bs-light-rgb),var(--bs-bg-opacity))!important}.bg-dark{--bs-bg-opacity:1;background-color:rgba(var(--bs-dark-rgb),var(--bs-bg-opacity))!important}.bg-black{--bs-bg-opacity:1;background-color:rgba(var(--bs-black-rgb),var(--bs-bg-opacity))!important}.bg-white{--bs-bg-opacity:1;background-color:rgba(var(--bs-white-rgb),var(--bs-bg-opacity))!important}.bg-body{--bs-bg-opacity:1;background-color:rgba(var(--bs-body-bg-rgb),var(--bs-bg-opacity))!important}.bg-transparent{--bs-bg-opacity:1;background-color:transparent!important}.bg-body-secondary{--bs-bg-opacity:1;background-color:rgba(var(--bs-secondary-bg-rgb),var(--bs-bg-opacity))!important}.bg-body-tertiary{--bs-bg-opacity:1;background-color:rgba(var(--bs-tertiary-bg-rgb),var(--bs-bg-opacity))!important}.bg-opacity-10{--bs-bg-opacity:0.1}.bg-opacity-25{--bs-bg-opacity:0.25}.bg-opacity-50{--bs-bg-opacity:0.5}.bg-opacity-75{--bs-bg-opacity:0.75}.bg-opacity-100{--bs-bg-opacity:1}.bg-primary-subtle{background-color:var(--bs-primary-bg-subtle)!important}.bg-secondary-subtle{background-color:var(--bs-secondary-bg-subtle)!important}.bg-success-subtle{background-color:var(--bs-success-bg-subtle)!important}.bg-info-subtle{background-color:var(--bs-info-bg-subtle)!important}.bg-warning-subtle{background-color:var(--bs-warning-bg-subtle)!important}.bg-danger-subtle{background-color:var(--bs-danger-bg-subtle)!important}.bg-light-subtle{background-color:var(--bs-light-bg-subtle)!important}.bg-dark-subtle{background-color:var(--bs-dark-bg-subtle)!important}.bg-gradient{background-image:var(--bs-gradient)!important}.user-select-all{-webkit-user-select:all!important;-moz-user-select:all!important;user-select:all!important}.user-select-auto{-webkit-user-select:auto!important;-moz-user-select:auto!important;user-select:auto!important}.user-select-none{-webkit-user-select:none!important;-moz-user-select:none!important;user-select:none!important}.pe-none{pointer-events:none!important}.pe-auto{pointer-events:auto!important}.rounded{border-radius:var(--bs-border-radius)!important}.rounded-0{border-radius:0!important}.rounded-1{border-radius:var(--bs-border-radius-sm)!important}.rounded-2{border-radius:var(--bs-border-radius)!important}.rounded-3{border-radius:var(--bs-border-radius-lg)!important}.rounded-4{border-radius:var(--bs-border-radius-xl)!important}.rounded-5{border-radius:var(--bs-border-radius-xxl)!important}.rounded-circle{border-radius:50%!important}.rounded-pill{border-radius:var(--bs-border-radius-pill)!important}.rounded-top{border-top-left-radius:var(--bs-border-radius)!important;border-top-right-radius:var(--bs-border-radius)!important}.rounded-top-0{border-top-left-radius:0!important;border-top-right-radius:0!important}.rounded-top-1{border-top-left-radius:var(--bs-border-radius-sm)!important;border-top-right-radius:var(--bs-border-radius-sm)!important}.rounded-top-2{border-top-left-radius:var(--bs-border-radius)!important;border-top-right-radius:var(--bs-border-radius)!important}.rounded-top-3{border-top-left-radius:var(--bs-border-radius-lg)!important;border-top-right-radius:var(--bs-border-radius-lg)!important}.rounded-top-4{border-top-left-radius:var(--bs-border-radius-xl)!important;border-top-right-radius:var(--bs-border-radius-xl)!important}.rounded-top-5{border-top-left-radius:var(--bs-border-radius-xxl)!important;border-top-right-radius:var(--bs-border-radius-xxl)!important}.rounded-top-circle{border-top-left-radius:50%!important;border-top-right-radius:50%!important}.rounded-top-pill{border-top-left-radius:var(--bs-border-radius-pill)!important;border-top-right-radius:var(--bs-border-radius-pill)!important}.rounded-end{border-top-right-radius:var(--bs-border-radius)!important;border-bottom-right-radius:var(--bs-border-radius)!important}.rounded-end-0{border-top-right-radius:0!important;border-bottom-right-radius:0!important}.rounded-end-1{border-top-right-radius:var(--bs-border-radius-sm)!important;border-bottom-right-radius:var(--bs-border-radius-sm)!important}.rounded-end-2{border-top-right-radius:var(--bs-border-radius)!important;border-bottom-right-radius:var(--bs-border-radius)!important}.rounded-end-3{border-top-right-radius:var(--bs-border-radius-lg)!important;border-bottom-right-radius:var(--bs-border-radius-lg)!important}.rounded-end-4{border-top-right-radius:var(--bs-border-radius-xl)!important;border-bottom-right-radius:var(--bs-border-radius-xl)!important}.rounded-end-5{border-top-right-radius:var(--bs-border-radius-xxl)!important;border-bottom-right-radius:var(--bs-border-radius-xxl)!important}.rounded-end-circle{border-top-right-radius:50%!important;border-bottom-right-radius:50%!important}.rounded-end-pill{border-top-right-radius:var(--bs-border-radius-pill)!important;border-bottom-right-radius:var(--bs-border-radius-pill)!important}.rounded-bottom{border-bottom-right-radius:var(--bs-border-radius)!important;border-bottom-left-radius:var(--bs-border-radius)!important}.rounded-bottom-0{border-bottom-right-radius:0!important;border-bottom-left-radius:0!important}.rounded-bottom-1{border-bottom-right-radius:var(--bs-border-radius-sm)!important;border-bottom-left-radius:var(--bs-border-radius-sm)!important}.rounded-bottom-2{border-bottom-right-radius:var(--bs-border-radius)!important;border-bottom-left-radius:var(--bs-border-radius)!important}.rounded-bottom-3{border-bottom-right-radius:var(--bs-border-radius-lg)!important;border-bottom-left-radius:var(--bs-border-radius-lg)!important}.rounded-bottom-4{border-bottom-right-radius:var(--bs-border-radius-xl)!important;border-bottom-left-radius:var(--bs-border-radius-xl)!important}.rounded-bottom-5{border-bottom-right-radius:var(--bs-border-radius-xxl)!important;border-bottom-left-radius:var(--bs-border-radius-xxl)!important}.rounded-bottom-circle{border-bottom-right-radius:50%!important;border-bottom-left-radius:50%!important}.rounded-bottom-pill{border-bottom-right-radius:var(--bs-border-radius-pill)!important;border-bottom-left-radius:var(--bs-border-radius-pill)!important}.rounded-start{border-bottom-left-radius:var(--bs-border-radius)!important;border-top-left-radius:var(--bs-border-radius)!important}.rounded-start-0{border-bottom-left-radius:0!important;border-top-left-radius:0!important}.rounded-start-1{border-bottom-left-radius:var(--bs-border-radius-sm)!important;border-top-left-radius:var(--bs-border-radius-sm)!important}.rounded-start-2{border-bottom-left-radius:var(--bs-border-radius)!important;border-top-left-radius:var(--bs-border-radius)!important}.rounded-start-3{border-bottom-left-radius:var(--bs-border-radius-lg)!important;border-top-left-radius:var(--bs-border-radius-lg)!important}.rounded-start-4{border-bottom-left-radius:var(--bs-border-radius-xl)!important;border-top-left-radius:var(--bs-border-radius-xl)!important}.rounded-start-5{border-bottom-left-radius:var(--bs-border-radius-xxl)!important;border-top-left-radius:var(--bs-border-radius-xxl)!important}.rounded-start-circle{border-bottom-left-radius:50%!important;border-top-left-radius:50%!important}.rounded-start-pill{border-bottom-left-radius:var(--bs-border-radius-pill)!important;border-top-left-radius:var(--bs-border-radius-pill)!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}.z-n1{z-index:-1!important}.z-0{z-index:0!important}.z-1{z-index:1!important}.z-2{z-index:2!important}.z-3{z-index:3!important}@media (min-width:576px){.float-sm-start{float:left!important}.float-sm-end{float:right!important}.float-sm-none{float:none!important}.object-fit-sm-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-sm-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-sm-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-sm-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-sm-none{-o-object-fit:none!important;object-fit:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-grid{display:grid!important}.d-sm-inline-grid{display:inline-grid!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:flex!important}.d-sm-inline-flex{display:inline-flex!important}.d-sm-none{display:none!important}.flex-sm-fill{flex:1 1 auto!important}.flex-sm-row{flex-direction:row!important}.flex-sm-column{flex-direction:column!important}.flex-sm-row-reverse{flex-direction:row-reverse!important}.flex-sm-column-reverse{flex-direction:column-reverse!important}.flex-sm-grow-0{flex-grow:0!important}.flex-sm-grow-1{flex-grow:1!important}.flex-sm-shrink-0{flex-shrink:0!important}.flex-sm-shrink-1{flex-shrink:1!important}.flex-sm-wrap{flex-wrap:wrap!important}.flex-sm-nowrap{flex-wrap:nowrap!important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-sm-start{justify-content:flex-start!important}.justify-content-sm-end{justify-content:flex-end!important}.justify-content-sm-center{justify-content:center!important}.justify-content-sm-between{justify-content:space-between!important}.justify-content-sm-around{justify-content:space-around!important}.justify-content-sm-evenly{justify-content:space-evenly!important}.align-items-sm-start{align-items:flex-start!important}.align-items-sm-end{align-items:flex-end!important}.align-items-sm-center{align-items:center!important}.align-items-sm-baseline{align-items:baseline!important}.align-items-sm-stretch{align-items:stretch!important}.align-content-sm-start{align-content:flex-start!important}.align-content-sm-end{align-content:flex-end!important}.align-content-sm-center{align-content:center!important}.align-content-sm-between{align-content:space-between!important}.align-content-sm-around{align-content:space-around!important}.align-content-sm-stretch{align-content:stretch!important}.align-self-sm-auto{align-self:auto!important}.align-self-sm-start{align-self:flex-start!important}.align-self-sm-end{align-self:flex-end!important}.align-self-sm-center{align-self:center!important}.align-self-sm-baseline{align-self:baseline!important}.align-self-sm-stretch{align-self:stretch!important}.order-sm-first{order:-1!important}.order-sm-0{order:0!important}.order-sm-1{order:1!important}.order-sm-2{order:2!important}.order-sm-3{order:3!important}.order-sm-4{order:4!important}.order-sm-5{order:5!important}.order-sm-last{order:6!important}.m-sm-0{margin:0!important}.m-sm-1{margin:.25rem!important}.m-sm-2{margin:.5rem!important}.m-sm-3{margin:1rem!important}.m-sm-4{margin:1.5rem!important}.m-sm-5{margin:3rem!important}.m-sm-auto{margin:auto!important}.mx-sm-0{margin-right:0!important;margin-left:0!important}.mx-sm-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-sm-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-sm-3{margin-right:1rem!important;margin-left:1rem!important}.mx-sm-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-sm-5{margin-right:3rem!important;margin-left:3rem!important}.mx-sm-auto{margin-right:auto!important;margin-left:auto!important}.my-sm-0{margin-top:0!important;margin-bottom:0!important}.my-sm-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-sm-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-sm-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-sm-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-sm-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-sm-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-sm-0{margin-top:0!important}.mt-sm-1{margin-top:.25rem!important}.mt-sm-2{margin-top:.5rem!important}.mt-sm-3{margin-top:1rem!important}.mt-sm-4{margin-top:1.5rem!important}.mt-sm-5{margin-top:3rem!important}.mt-sm-auto{margin-top:auto!important}.me-sm-0{margin-right:0!important}.me-sm-1{margin-right:.25rem!important}.me-sm-2{margin-right:.5rem!important}.me-sm-3{margin-right:1rem!important}.me-sm-4{margin-right:1.5rem!important}.me-sm-5{margin-right:3rem!important}.me-sm-auto{margin-right:auto!important}.mb-sm-0{margin-bottom:0!important}.mb-sm-1{margin-bottom:.25rem!important}.mb-sm-2{margin-bottom:.5rem!important}.mb-sm-3{margin-bottom:1rem!important}.mb-sm-4{margin-bottom:1.5rem!important}.mb-sm-5{margin-bottom:3rem!important}.mb-sm-auto{margin-bottom:auto!important}.ms-sm-0{margin-left:0!important}.ms-sm-1{margin-left:.25rem!important}.ms-sm-2{margin-left:.5rem!important}.ms-sm-3{margin-left:1rem!important}.ms-sm-4{margin-left:1.5rem!important}.ms-sm-5{margin-left:3rem!important}.ms-sm-auto{margin-left:auto!important}.p-sm-0{padding:0!important}.p-sm-1{padding:.25rem!important}.p-sm-2{padding:.5rem!important}.p-sm-3{padding:1rem!important}.p-sm-4{padding:1.5rem!important}.p-sm-5{padding:3rem!important}.px-sm-0{padding-right:0!important;padding-left:0!important}.px-sm-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-sm-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-sm-3{padding-right:1rem!important;padding-left:1rem!important}.px-sm-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-sm-5{padding-right:3rem!important;padding-left:3rem!important}.py-sm-0{padding-top:0!important;padding-bottom:0!important}.py-sm-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-sm-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-sm-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-sm-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-sm-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-sm-0{padding-top:0!important}.pt-sm-1{padding-top:.25rem!important}.pt-sm-2{padding-top:.5rem!important}.pt-sm-3{padding-top:1rem!important}.pt-sm-4{padding-top:1.5rem!important}.pt-sm-5{padding-top:3rem!important}.pe-sm-0{padding-right:0!important}.pe-sm-1{padding-right:.25rem!important}.pe-sm-2{padding-right:.5rem!important}.pe-sm-3{padding-right:1rem!important}.pe-sm-4{padding-right:1.5rem!important}.pe-sm-5{padding-right:3rem!important}.pb-sm-0{padding-bottom:0!important}.pb-sm-1{padding-bottom:.25rem!important}.pb-sm-2{padding-bottom:.5rem!important}.pb-sm-3{padding-bottom:1rem!important}.pb-sm-4{padding-bottom:1.5rem!important}.pb-sm-5{padding-bottom:3rem!important}.ps-sm-0{padding-left:0!important}.ps-sm-1{padding-left:.25rem!important}.ps-sm-2{padding-left:.5rem!important}.ps-sm-3{padding-left:1rem!important}.ps-sm-4{padding-left:1.5rem!important}.ps-sm-5{padding-left:3rem!important}.gap-sm-0{gap:0!important}.gap-sm-1{gap:.25rem!important}.gap-sm-2{gap:.5rem!important}.gap-sm-3{gap:1rem!important}.gap-sm-4{gap:1.5rem!important}.gap-sm-5{gap:3rem!important}.row-gap-sm-0{row-gap:0!important}.row-gap-sm-1{row-gap:.25rem!important}.row-gap-sm-2{row-gap:.5rem!important}.row-gap-sm-3{row-gap:1rem!important}.row-gap-sm-4{row-gap:1.5rem!important}.row-gap-sm-5{row-gap:3rem!important}.column-gap-sm-0{-moz-column-gap:0!important;column-gap:0!important}.column-gap-sm-1{-moz-column-gap:0.25rem!important;column-gap:.25rem!important}.column-gap-sm-2{-moz-column-gap:0.5rem!important;column-gap:.5rem!important}.column-gap-sm-3{-moz-column-gap:1rem!important;column-gap:1rem!important}.column-gap-sm-4{-moz-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-sm-5{-moz-column-gap:3rem!important;column-gap:3rem!important}.text-sm-start{text-align:left!important}.text-sm-end{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.float-md-start{float:left!important}.float-md-end{float:right!important}.float-md-none{float:none!important}.object-fit-md-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-md-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-md-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-md-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-md-none{-o-object-fit:none!important;object-fit:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-grid{display:grid!important}.d-md-inline-grid{display:inline-grid!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:flex!important}.d-md-inline-flex{display:inline-flex!important}.d-md-none{display:none!important}.flex-md-fill{flex:1 1 auto!important}.flex-md-row{flex-direction:row!important}.flex-md-column{flex-direction:column!important}.flex-md-row-reverse{flex-direction:row-reverse!important}.flex-md-column-reverse{flex-direction:column-reverse!important}.flex-md-grow-0{flex-grow:0!important}.flex-md-grow-1{flex-grow:1!important}.flex-md-shrink-0{flex-shrink:0!important}.flex-md-shrink-1{flex-shrink:1!important}.flex-md-wrap{flex-wrap:wrap!important}.flex-md-nowrap{flex-wrap:nowrap!important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-md-start{justify-content:flex-start!important}.justify-content-md-end{justify-content:flex-end!important}.justify-content-md-center{justify-content:center!important}.justify-content-md-between{justify-content:space-between!important}.justify-content-md-around{justify-content:space-around!important}.justify-content-md-evenly{justify-content:space-evenly!important}.align-items-md-start{align-items:flex-start!important}.align-items-md-end{align-items:flex-end!important}.align-items-md-center{align-items:center!important}.align-items-md-baseline{align-items:baseline!important}.align-items-md-stretch{align-items:stretch!important}.align-content-md-start{align-content:flex-start!important}.align-content-md-end{align-content:flex-end!important}.align-content-md-center{align-content:center!important}.align-content-md-between{align-content:space-between!important}.align-content-md-around{align-content:space-around!important}.align-content-md-stretch{align-content:stretch!important}.align-self-md-auto{align-self:auto!important}.align-self-md-start{align-self:flex-start!important}.align-self-md-end{align-self:flex-end!important}.align-self-md-center{align-self:center!important}.align-self-md-baseline{align-self:baseline!important}.align-self-md-stretch{align-self:stretch!important}.order-md-first{order:-1!important}.order-md-0{order:0!important}.order-md-1{order:1!important}.order-md-2{order:2!important}.order-md-3{order:3!important}.order-md-4{order:4!important}.order-md-5{order:5!important}.order-md-last{order:6!important}.m-md-0{margin:0!important}.m-md-1{margin:.25rem!important}.m-md-2{margin:.5rem!important}.m-md-3{margin:1rem!important}.m-md-4{margin:1.5rem!important}.m-md-5{margin:3rem!important}.m-md-auto{margin:auto!important}.mx-md-0{margin-right:0!important;margin-left:0!important}.mx-md-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-md-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-md-3{margin-right:1rem!important;margin-left:1rem!important}.mx-md-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-md-5{margin-right:3rem!important;margin-left:3rem!important}.mx-md-auto{margin-right:auto!important;margin-left:auto!important}.my-md-0{margin-top:0!important;margin-bottom:0!important}.my-md-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-md-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-md-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-md-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-md-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-md-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-md-0{margin-top:0!important}.mt-md-1{margin-top:.25rem!important}.mt-md-2{margin-top:.5rem!important}.mt-md-3{margin-top:1rem!important}.mt-md-4{margin-top:1.5rem!important}.mt-md-5{margin-top:3rem!important}.mt-md-auto{margin-top:auto!important}.me-md-0{margin-right:0!important}.me-md-1{margin-right:.25rem!important}.me-md-2{margin-right:.5rem!important}.me-md-3{margin-right:1rem!important}.me-md-4{margin-right:1.5rem!important}.me-md-5{margin-right:3rem!important}.me-md-auto{margin-right:auto!important}.mb-md-0{margin-bottom:0!important}.mb-md-1{margin-bottom:.25rem!important}.mb-md-2{margin-bottom:.5rem!important}.mb-md-3{margin-bottom:1rem!important}.mb-md-4{margin-bottom:1.5rem!important}.mb-md-5{margin-bottom:3rem!important}.mb-md-auto{margin-bottom:auto!important}.ms-md-0{margin-left:0!important}.ms-md-1{margin-left:.25rem!important}.ms-md-2{margin-left:.5rem!important}.ms-md-3{margin-left:1rem!important}.ms-md-4{margin-left:1.5rem!important}.ms-md-5{margin-left:3rem!important}.ms-md-auto{margin-left:auto!important}.p-md-0{padding:0!important}.p-md-1{padding:.25rem!important}.p-md-2{padding:.5rem!important}.p-md-3{padding:1rem!important}.p-md-4{padding:1.5rem!important}.p-md-5{padding:3rem!important}.px-md-0{padding-right:0!important;padding-left:0!important}.px-md-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-md-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-md-3{padding-right:1rem!important;padding-left:1rem!important}.px-md-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-md-5{padding-right:3rem!important;padding-left:3rem!important}.py-md-0{padding-top:0!important;padding-bottom:0!important}.py-md-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-md-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-md-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-md-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-md-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-md-0{padding-top:0!important}.pt-md-1{padding-top:.25rem!important}.pt-md-2{padding-top:.5rem!important}.pt-md-3{padding-top:1rem!important}.pt-md-4{padding-top:1.5rem!important}.pt-md-5{padding-top:3rem!important}.pe-md-0{padding-right:0!important}.pe-md-1{padding-right:.25rem!important}.pe-md-2{padding-right:.5rem!important}.pe-md-3{padding-right:1rem!important}.pe-md-4{padding-right:1.5rem!important}.pe-md-5{padding-right:3rem!important}.pb-md-0{padding-bottom:0!important}.pb-md-1{padding-bottom:.25rem!important}.pb-md-2{padding-bottom:.5rem!important}.pb-md-3{padding-bottom:1rem!important}.pb-md-4{padding-bottom:1.5rem!important}.pb-md-5{padding-bottom:3rem!important}.ps-md-0{padding-left:0!important}.ps-md-1{padding-left:.25rem!important}.ps-md-2{padding-left:.5rem!important}.ps-md-3{padding-left:1rem!important}.ps-md-4{padding-left:1.5rem!important}.ps-md-5{padding-left:3rem!important}.gap-md-0{gap:0!important}.gap-md-1{gap:.25rem!important}.gap-md-2{gap:.5rem!important}.gap-md-3{gap:1rem!important}.gap-md-4{gap:1.5rem!important}.gap-md-5{gap:3rem!important}.row-gap-md-0{row-gap:0!important}.row-gap-md-1{row-gap:.25rem!important}.row-gap-md-2{row-gap:.5rem!important}.row-gap-md-3{row-gap:1rem!important}.row-gap-md-4{row-gap:1.5rem!important}.row-gap-md-5{row-gap:3rem!important}.column-gap-md-0{-moz-column-gap:0!important;column-gap:0!important}.column-gap-md-1{-moz-column-gap:0.25rem!important;column-gap:.25rem!important}.column-gap-md-2{-moz-column-gap:0.5rem!important;column-gap:.5rem!important}.column-gap-md-3{-moz-column-gap:1rem!important;column-gap:1rem!important}.column-gap-md-4{-moz-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-md-5{-moz-column-gap:3rem!important;column-gap:3rem!important}.text-md-start{text-align:left!important}.text-md-end{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.float-lg-start{float:left!important}.float-lg-end{float:right!important}.float-lg-none{float:none!important}.object-fit-lg-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-lg-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-lg-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-lg-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-lg-none{-o-object-fit:none!important;object-fit:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-grid{display:grid!important}.d-lg-inline-grid{display:inline-grid!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:flex!important}.d-lg-inline-flex{display:inline-flex!important}.d-lg-none{display:none!important}.flex-lg-fill{flex:1 1 auto!important}.flex-lg-row{flex-direction:row!important}.flex-lg-column{flex-direction:column!important}.flex-lg-row-reverse{flex-direction:row-reverse!important}.flex-lg-column-reverse{flex-direction:column-reverse!important}.flex-lg-grow-0{flex-grow:0!important}.flex-lg-grow-1{flex-grow:1!important}.flex-lg-shrink-0{flex-shrink:0!important}.flex-lg-shrink-1{flex-shrink:1!important}.flex-lg-wrap{flex-wrap:wrap!important}.flex-lg-nowrap{flex-wrap:nowrap!important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-lg-start{justify-content:flex-start!important}.justify-content-lg-end{justify-content:flex-end!important}.justify-content-lg-center{justify-content:center!important}.justify-content-lg-between{justify-content:space-between!important}.justify-content-lg-around{justify-content:space-around!important}.justify-content-lg-evenly{justify-content:space-evenly!important}.align-items-lg-start{align-items:flex-start!important}.align-items-lg-end{align-items:flex-end!important}.align-items-lg-center{align-items:center!important}.align-items-lg-baseline{align-items:baseline!important}.align-items-lg-stretch{align-items:stretch!important}.align-content-lg-start{align-content:flex-start!important}.align-content-lg-end{align-content:flex-end!important}.align-content-lg-center{align-content:center!important}.align-content-lg-between{align-content:space-between!important}.align-content-lg-around{align-content:space-around!important}.align-content-lg-stretch{align-content:stretch!important}.align-self-lg-auto{align-self:auto!important}.align-self-lg-start{align-self:flex-start!important}.align-self-lg-end{align-self:flex-end!important}.align-self-lg-center{align-self:center!important}.align-self-lg-baseline{align-self:baseline!important}.align-self-lg-stretch{align-self:stretch!important}.order-lg-first{order:-1!important}.order-lg-0{order:0!important}.order-lg-1{order:1!important}.order-lg-2{order:2!important}.order-lg-3{order:3!important}.order-lg-4{order:4!important}.order-lg-5{order:5!important}.order-lg-last{order:6!important}.m-lg-0{margin:0!important}.m-lg-1{margin:.25rem!important}.m-lg-2{margin:.5rem!important}.m-lg-3{margin:1rem!important}.m-lg-4{margin:1.5rem!important}.m-lg-5{margin:3rem!important}.m-lg-auto{margin:auto!important}.mx-lg-0{margin-right:0!important;margin-left:0!important}.mx-lg-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-lg-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-lg-3{margin-right:1rem!important;margin-left:1rem!important}.mx-lg-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-lg-5{margin-right:3rem!important;margin-left:3rem!important}.mx-lg-auto{margin-right:auto!important;margin-left:auto!important}.my-lg-0{margin-top:0!important;margin-bottom:0!important}.my-lg-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-lg-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-lg-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-lg-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-lg-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-lg-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-lg-0{margin-top:0!important}.mt-lg-1{margin-top:.25rem!important}.mt-lg-2{margin-top:.5rem!important}.mt-lg-3{margin-top:1rem!important}.mt-lg-4{margin-top:1.5rem!important}.mt-lg-5{margin-top:3rem!important}.mt-lg-auto{margin-top:auto!important}.me-lg-0{margin-right:0!important}.me-lg-1{margin-right:.25rem!important}.me-lg-2{margin-right:.5rem!important}.me-lg-3{margin-right:1rem!important}.me-lg-4{margin-right:1.5rem!important}.me-lg-5{margin-right:3rem!important}.me-lg-auto{margin-right:auto!important}.mb-lg-0{margin-bottom:0!important}.mb-lg-1{margin-bottom:.25rem!important}.mb-lg-2{margin-bottom:.5rem!important}.mb-lg-3{margin-bottom:1rem!important}.mb-lg-4{margin-bottom:1.5rem!important}.mb-lg-5{margin-bottom:3rem!important}.mb-lg-auto{margin-bottom:auto!important}.ms-lg-0{margin-left:0!important}.ms-lg-1{margin-left:.25rem!important}.ms-lg-2{margin-left:.5rem!important}.ms-lg-3{margin-left:1rem!important}.ms-lg-4{margin-left:1.5rem!important}.ms-lg-5{margin-left:3rem!important}.ms-lg-auto{margin-left:auto!important}.p-lg-0{padding:0!important}.p-lg-1{padding:.25rem!important}.p-lg-2{padding:.5rem!important}.p-lg-3{padding:1rem!important}.p-lg-4{padding:1.5rem!important}.p-lg-5{padding:3rem!important}.px-lg-0{padding-right:0!important;padding-left:0!important}.px-lg-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-lg-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-lg-3{padding-right:1rem!important;padding-left:1rem!important}.px-lg-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-lg-5{padding-right:3rem!important;padding-left:3rem!important}.py-lg-0{padding-top:0!important;padding-bottom:0!important}.py-lg-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-lg-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-lg-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-lg-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-lg-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-lg-0{padding-top:0!important}.pt-lg-1{padding-top:.25rem!important}.pt-lg-2{padding-top:.5rem!important}.pt-lg-3{padding-top:1rem!important}.pt-lg-4{padding-top:1.5rem!important}.pt-lg-5{padding-top:3rem!important}.pe-lg-0{padding-right:0!important}.pe-lg-1{padding-right:.25rem!important}.pe-lg-2{padding-right:.5rem!important}.pe-lg-3{padding-right:1rem!important}.pe-lg-4{padding-right:1.5rem!important}.pe-lg-5{padding-right:3rem!important}.pb-lg-0{padding-bottom:0!important}.pb-lg-1{padding-bottom:.25rem!important}.pb-lg-2{padding-bottom:.5rem!important}.pb-lg-3{padding-bottom:1rem!important}.pb-lg-4{padding-bottom:1.5rem!important}.pb-lg-5{padding-bottom:3rem!important}.ps-lg-0{padding-left:0!important}.ps-lg-1{padding-left:.25rem!important}.ps-lg-2{padding-left:.5rem!important}.ps-lg-3{padding-left:1rem!important}.ps-lg-4{padding-left:1.5rem!important}.ps-lg-5{padding-left:3rem!important}.gap-lg-0{gap:0!important}.gap-lg-1{gap:.25rem!important}.gap-lg-2{gap:.5rem!important}.gap-lg-3{gap:1rem!important}.gap-lg-4{gap:1.5rem!important}.gap-lg-5{gap:3rem!important}.row-gap-lg-0{row-gap:0!important}.row-gap-lg-1{row-gap:.25rem!important}.row-gap-lg-2{row-gap:.5rem!important}.row-gap-lg-3{row-gap:1rem!important}.row-gap-lg-4{row-gap:1.5rem!important}.row-gap-lg-5{row-gap:3rem!important}.column-gap-lg-0{-moz-column-gap:0!important;column-gap:0!important}.column-gap-lg-1{-moz-column-gap:0.25rem!important;column-gap:.25rem!important}.column-gap-lg-2{-moz-column-gap:0.5rem!important;column-gap:.5rem!important}.column-gap-lg-3{-moz-column-gap:1rem!important;column-gap:1rem!important}.column-gap-lg-4{-moz-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-lg-5{-moz-column-gap:3rem!important;column-gap:3rem!important}.text-lg-start{text-align:left!important}.text-lg-end{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.float-xl-start{float:left!important}.float-xl-end{float:right!important}.float-xl-none{float:none!important}.object-fit-xl-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-xl-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-xl-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-xl-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-xl-none{-o-object-fit:none!important;object-fit:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-grid{display:grid!important}.d-xl-inline-grid{display:inline-grid!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:flex!important}.d-xl-inline-flex{display:inline-flex!important}.d-xl-none{display:none!important}.flex-xl-fill{flex:1 1 auto!important}.flex-xl-row{flex-direction:row!important}.flex-xl-column{flex-direction:column!important}.flex-xl-row-reverse{flex-direction:row-reverse!important}.flex-xl-column-reverse{flex-direction:column-reverse!important}.flex-xl-grow-0{flex-grow:0!important}.flex-xl-grow-1{flex-grow:1!important}.flex-xl-shrink-0{flex-shrink:0!important}.flex-xl-shrink-1{flex-shrink:1!important}.flex-xl-wrap{flex-wrap:wrap!important}.flex-xl-nowrap{flex-wrap:nowrap!important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-xl-start{justify-content:flex-start!important}.justify-content-xl-end{justify-content:flex-end!important}.justify-content-xl-center{justify-content:center!important}.justify-content-xl-between{justify-content:space-between!important}.justify-content-xl-around{justify-content:space-around!important}.justify-content-xl-evenly{justify-content:space-evenly!important}.align-items-xl-start{align-items:flex-start!important}.align-items-xl-end{align-items:flex-end!important}.align-items-xl-center{align-items:center!important}.align-items-xl-baseline{align-items:baseline!important}.align-items-xl-stretch{align-items:stretch!important}.align-content-xl-start{align-content:flex-start!important}.align-content-xl-end{align-content:flex-end!important}.align-content-xl-center{align-content:center!important}.align-content-xl-between{align-content:space-between!important}.align-content-xl-around{align-content:space-around!important}.align-content-xl-stretch{align-content:stretch!important}.align-self-xl-auto{align-self:auto!important}.align-self-xl-start{align-self:flex-start!important}.align-self-xl-end{align-self:flex-end!important}.align-self-xl-center{align-self:center!important}.align-self-xl-baseline{align-self:baseline!important}.align-self-xl-stretch{align-self:stretch!important}.order-xl-first{order:-1!important}.order-xl-0{order:0!important}.order-xl-1{order:1!important}.order-xl-2{order:2!important}.order-xl-3{order:3!important}.order-xl-4{order:4!important}.order-xl-5{order:5!important}.order-xl-last{order:6!important}.m-xl-0{margin:0!important}.m-xl-1{margin:.25rem!important}.m-xl-2{margin:.5rem!important}.m-xl-3{margin:1rem!important}.m-xl-4{margin:1.5rem!important}.m-xl-5{margin:3rem!important}.m-xl-auto{margin:auto!important}.mx-xl-0{margin-right:0!important;margin-left:0!important}.mx-xl-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-xl-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-xl-3{margin-right:1rem!important;margin-left:1rem!important}.mx-xl-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-xl-5{margin-right:3rem!important;margin-left:3rem!important}.mx-xl-auto{margin-right:auto!important;margin-left:auto!important}.my-xl-0{margin-top:0!important;margin-bottom:0!important}.my-xl-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-xl-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-xl-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-xl-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-xl-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-xl-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-xl-0{margin-top:0!important}.mt-xl-1{margin-top:.25rem!important}.mt-xl-2{margin-top:.5rem!important}.mt-xl-3{margin-top:1rem!important}.mt-xl-4{margin-top:1.5rem!important}.mt-xl-5{margin-top:3rem!important}.mt-xl-auto{margin-top:auto!important}.me-xl-0{margin-right:0!important}.me-xl-1{margin-right:.25rem!important}.me-xl-2{margin-right:.5rem!important}.me-xl-3{margin-right:1rem!important}.me-xl-4{margin-right:1.5rem!important}.me-xl-5{margin-right:3rem!important}.me-xl-auto{margin-right:auto!important}.mb-xl-0{margin-bottom:0!important}.mb-xl-1{margin-bottom:.25rem!important}.mb-xl-2{margin-bottom:.5rem!important}.mb-xl-3{margin-bottom:1rem!important}.mb-xl-4{margin-bottom:1.5rem!important}.mb-xl-5{margin-bottom:3rem!important}.mb-xl-auto{margin-bottom:auto!important}.ms-xl-0{margin-left:0!important}.ms-xl-1{margin-left:.25rem!important}.ms-xl-2{margin-left:.5rem!important}.ms-xl-3{margin-left:1rem!important}.ms-xl-4{margin-left:1.5rem!important}.ms-xl-5{margin-left:3rem!important}.ms-xl-auto{margin-left:auto!important}.p-xl-0{padding:0!important}.p-xl-1{padding:.25rem!important}.p-xl-2{padding:.5rem!important}.p-xl-3{padding:1rem!important}.p-xl-4{padding:1.5rem!important}.p-xl-5{padding:3rem!important}.px-xl-0{padding-right:0!important;padding-left:0!important}.px-xl-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-xl-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-xl-3{padding-right:1rem!important;padding-left:1rem!important}.px-xl-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-xl-5{padding-right:3rem!important;padding-left:3rem!important}.py-xl-0{padding-top:0!important;padding-bottom:0!important}.py-xl-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-xl-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-xl-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-xl-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-xl-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-xl-0{padding-top:0!important}.pt-xl-1{padding-top:.25rem!important}.pt-xl-2{padding-top:.5rem!important}.pt-xl-3{padding-top:1rem!important}.pt-xl-4{padding-top:1.5rem!important}.pt-xl-5{padding-top:3rem!important}.pe-xl-0{padding-right:0!important}.pe-xl-1{padding-right:.25rem!important}.pe-xl-2{padding-right:.5rem!important}.pe-xl-3{padding-right:1rem!important}.pe-xl-4{padding-right:1.5rem!important}.pe-xl-5{padding-right:3rem!important}.pb-xl-0{padding-bottom:0!important}.pb-xl-1{padding-bottom:.25rem!important}.pb-xl-2{padding-bottom:.5rem!important}.pb-xl-3{padding-bottom:1rem!important}.pb-xl-4{padding-bottom:1.5rem!important}.pb-xl-5{padding-bottom:3rem!important}.ps-xl-0{padding-left:0!important}.ps-xl-1{padding-left:.25rem!important}.ps-xl-2{padding-left:.5rem!important}.ps-xl-3{padding-left:1rem!important}.ps-xl-4{padding-left:1.5rem!important}.ps-xl-5{padding-left:3rem!important}.gap-xl-0{gap:0!important}.gap-xl-1{gap:.25rem!important}.gap-xl-2{gap:.5rem!important}.gap-xl-3{gap:1rem!important}.gap-xl-4{gap:1.5rem!important}.gap-xl-5{gap:3rem!important}.row-gap-xl-0{row-gap:0!important}.row-gap-xl-1{row-gap:.25rem!important}.row-gap-xl-2{row-gap:.5rem!important}.row-gap-xl-3{row-gap:1rem!important}.row-gap-xl-4{row-gap:1.5rem!important}.row-gap-xl-5{row-gap:3rem!important}.column-gap-xl-0{-moz-column-gap:0!important;column-gap:0!important}.column-gap-xl-1{-moz-column-gap:0.25rem!important;column-gap:.25rem!important}.column-gap-xl-2{-moz-column-gap:0.5rem!important;column-gap:.5rem!important}.column-gap-xl-3{-moz-column-gap:1rem!important;column-gap:1rem!important}.column-gap-xl-4{-moz-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-xl-5{-moz-column-gap:3rem!important;column-gap:3rem!important}.text-xl-start{text-align:left!important}.text-xl-end{text-align:right!important}.text-xl-center{text-align:center!important}}@media (min-width:1400px){.float-xxl-start{float:left!important}.float-xxl-end{float:right!important}.float-xxl-none{float:none!important}.object-fit-xxl-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-xxl-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-xxl-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-xxl-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-xxl-none{-o-object-fit:none!important;object-fit:none!important}.d-xxl-inline{display:inline!important}.d-xxl-inline-block{display:inline-block!important}.d-xxl-block{display:block!important}.d-xxl-grid{display:grid!important}.d-xxl-inline-grid{display:inline-grid!important}.d-xxl-table{display:table!important}.d-xxl-table-row{display:table-row!important}.d-xxl-table-cell{display:table-cell!important}.d-xxl-flex{display:flex!important}.d-xxl-inline-flex{display:inline-flex!important}.d-xxl-none{display:none!important}.flex-xxl-fill{flex:1 1 auto!important}.flex-xxl-row{flex-direction:row!important}.flex-xxl-column{flex-direction:column!important}.flex-xxl-row-reverse{flex-direction:row-reverse!important}.flex-xxl-column-reverse{flex-direction:column-reverse!important}.flex-xxl-grow-0{flex-grow:0!important}.flex-xxl-grow-1{flex-grow:1!important}.flex-xxl-shrink-0{flex-shrink:0!important}.flex-xxl-shrink-1{flex-shrink:1!important}.flex-xxl-wrap{flex-wrap:wrap!important}.flex-xxl-nowrap{flex-wrap:nowrap!important}.flex-xxl-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-xxl-start{justify-content:flex-start!important}.justify-content-xxl-end{justify-content:flex-end!important}.justify-content-xxl-center{justify-content:center!important}.justify-content-xxl-between{justify-content:space-between!important}.justify-content-xxl-around{justify-content:space-around!important}.justify-content-xxl-evenly{justify-content:space-evenly!important}.align-items-xxl-start{align-items:flex-start!important}.align-items-xxl-end{align-items:flex-end!important}.align-items-xxl-center{align-items:center!important}.align-items-xxl-baseline{align-items:baseline!important}.align-items-xxl-stretch{align-items:stretch!important}.align-content-xxl-start{align-content:flex-start!important}.align-content-xxl-end{align-content:flex-end!important}.align-content-xxl-center{align-content:center!important}.align-content-xxl-between{align-content:space-between!important}.align-content-xxl-around{align-content:space-around!important}.align-content-xxl-stretch{align-content:stretch!important}.align-self-xxl-auto{align-self:auto!important}.align-self-xxl-start{align-self:flex-start!important}.align-self-xxl-end{align-self:flex-end!important}.align-self-xxl-center{align-self:center!important}.align-self-xxl-baseline{align-self:baseline!important}.align-self-xxl-stretch{align-self:stretch!important}.order-xxl-first{order:-1!important}.order-xxl-0{order:0!important}.order-xxl-1{order:1!important}.order-xxl-2{order:2!important}.order-xxl-3{order:3!important}.order-xxl-4{order:4!important}.order-xxl-5{order:5!important}.order-xxl-last{order:6!important}.m-xxl-0{margin:0!important}.m-xxl-1{margin:.25rem!important}.m-xxl-2{margin:.5rem!important}.m-xxl-3{margin:1rem!important}.m-xxl-4{margin:1.5rem!important}.m-xxl-5{margin:3rem!important}.m-xxl-auto{margin:auto!important}.mx-xxl-0{margin-right:0!important;margin-left:0!important}.mx-xxl-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-xxl-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-xxl-3{margin-right:1rem!important;margin-left:1rem!important}.mx-xxl-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-xxl-5{margin-right:3rem!important;margin-left:3rem!important}.mx-xxl-auto{margin-right:auto!important;margin-left:auto!important}.my-xxl-0{margin-top:0!important;margin-bottom:0!important}.my-xxl-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-xxl-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-xxl-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-xxl-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-xxl-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-xxl-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-xxl-0{margin-top:0!important}.mt-xxl-1{margin-top:.25rem!important}.mt-xxl-2{margin-top:.5rem!important}.mt-xxl-3{margin-top:1rem!important}.mt-xxl-4{margin-top:1.5rem!important}.mt-xxl-5{margin-top:3rem!important}.mt-xxl-auto{margin-top:auto!important}.me-xxl-0{margin-right:0!important}.me-xxl-1{margin-right:.25rem!important}.me-xxl-2{margin-right:.5rem!important}.me-xxl-3{margin-right:1rem!important}.me-xxl-4{margin-right:1.5rem!important}.me-xxl-5{margin-right:3rem!important}.me-xxl-auto{margin-right:auto!important}.mb-xxl-0{margin-bottom:0!important}.mb-xxl-1{margin-bottom:.25rem!important}.mb-xxl-2{margin-bottom:.5rem!important}.mb-xxl-3{margin-bottom:1rem!important}.mb-xxl-4{margin-bottom:1.5rem!important}.mb-xxl-5{margin-bottom:3rem!important}.mb-xxl-auto{margin-bottom:auto!important}.ms-xxl-0{margin-left:0!important}.ms-xxl-1{margin-left:.25rem!important}.ms-xxl-2{margin-left:.5rem!important}.ms-xxl-3{margin-left:1rem!important}.ms-xxl-4{margin-left:1.5rem!important}.ms-xxl-5{margin-left:3rem!important}.ms-xxl-auto{margin-left:auto!important}.p-xxl-0{padding:0!important}.p-xxl-1{padding:.25rem!important}.p-xxl-2{padding:.5rem!important}.p-xxl-3{padding:1rem!important}.p-xxl-4{padding:1.5rem!important}.p-xxl-5{padding:3rem!important}.px-xxl-0{padding-right:0!important;padding-left:0!important}.px-xxl-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-xxl-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-xxl-3{padding-right:1rem!important;padding-left:1rem!important}.px-xxl-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-xxl-5{padding-right:3rem!important;padding-left:3rem!important}.py-xxl-0{padding-top:0!important;padding-bottom:0!important}.py-xxl-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-xxl-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-xxl-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-xxl-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-xxl-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-xxl-0{padding-top:0!important}.pt-xxl-1{padding-top:.25rem!important}.pt-xxl-2{padding-top:.5rem!important}.pt-xxl-3{padding-top:1rem!important}.pt-xxl-4{padding-top:1.5rem!important}.pt-xxl-5{padding-top:3rem!important}.pe-xxl-0{padding-right:0!important}.pe-xxl-1{padding-right:.25rem!important}.pe-xxl-2{padding-right:.5rem!important}.pe-xxl-3{padding-right:1rem!important}.pe-xxl-4{padding-right:1.5rem!important}.pe-xxl-5{padding-right:3rem!important}.pb-xxl-0{padding-bottom:0!important}.pb-xxl-1{padding-bottom:.25rem!important}.pb-xxl-2{padding-bottom:.5rem!important}.pb-xxl-3{padding-bottom:1rem!important}.pb-xxl-4{padding-bottom:1.5rem!important}.pb-xxl-5{padding-bottom:3rem!important}.ps-xxl-0{padding-left:0!important}.ps-xxl-1{padding-left:.25rem!important}.ps-xxl-2{padding-left:.5rem!important}.ps-xxl-3{padding-left:1rem!important}.ps-xxl-4{padding-left:1.5rem!important}.ps-xxl-5{padding-left:3rem!important}.gap-xxl-0{gap:0!important}.gap-xxl-1{gap:.25rem!important}.gap-xxl-2{gap:.5rem!important}.gap-xxl-3{gap:1rem!important}.gap-xxl-4{gap:1.5rem!important}.gap-xxl-5{gap:3rem!important}.row-gap-xxl-0{row-gap:0!important}.row-gap-xxl-1{row-gap:.25rem!important}.row-gap-xxl-2{row-gap:.5rem!important}.row-gap-xxl-3{row-gap:1rem!important}.row-gap-xxl-4{row-gap:1.5rem!important}.row-gap-xxl-5{row-gap:3rem!important}.column-gap-xxl-0{-moz-column-gap:0!important;column-gap:0!important}.column-gap-xxl-1{-moz-column-gap:0.25rem!important;column-gap:.25rem!important}.column-gap-xxl-2{-moz-column-gap:0.5rem!important;column-gap:.5rem!important}.column-gap-xxl-3{-moz-column-gap:1rem!important;column-gap:1rem!important}.column-gap-xxl-4{-moz-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-xxl-5{-moz-column-gap:3rem!important;column-gap:3rem!important}.text-xxl-start{text-align:left!important}.text-xxl-end{text-align:right!important}.text-xxl-center{text-align:center!important}}@media (min-width:1200px){.fs-1{font-size:2.5rem!important}.fs-2{font-size:2rem!important}.fs-3{font-size:1.75rem!important}.fs-4{font-size:1.5rem!important}}@media print{.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-grid{display:grid!important}.d-print-inline-grid{display:inline-grid!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:flex!important}.d-print-inline-flex{display:inline-flex!important}.d-print-none{display:none!important}}\n/*# sourceMappingURL=bootstrap.min.css.map */`, \"\",{\"version\":3,\"sources\":[\"webpack://./node_modules/bootstrap/dist/css/bootstrap.min.css\",\"webpack://./node_modules/bootstrap/scss/mixins/_banner.scss\",\"webpack://./node_modules/bootstrap/scss/_root.scss\",\"webpack://./node_modules/bootstrap/scss/vendor/_rfs.scss\",\"webpack://./node_modules/bootstrap/scss/mixins/_color-mode.scss\",\"webpack://./node_modules/bootstrap/dist/css/dist/css/bootstrap.css\",\"webpack://./node_modules/bootstrap/scss/_reboot.scss\",\"webpack://./node_modules/bootstrap/scss/mixins/_border-radius.scss\",\"webpack://./node_modules/bootstrap/scss/_type.scss\",\"webpack://./node_modules/bootstrap/scss/mixins/_lists.scss\",\"webpack://./node_modules/bootstrap/scss/_images.scss\",\"webpack://./node_modules/bootstrap/scss/mixins/_image.scss\",\"webpack://./node_modules/bootstrap/scss/_containers.scss\",\"webpack://./node_modules/bootstrap/scss/mixins/_container.scss\",\"webpack://./node_modules/bootstrap/scss/mixins/_breakpoints.scss\",\"webpack://./node_modules/bootstrap/scss/_grid.scss\",\"webpack://./node_modules/bootstrap/scss/mixins/_grid.scss\",\"webpack://./node_modules/bootstrap/scss/_tables.scss\",\"webpack://./node_modules/bootstrap/scss/mixins/_table-variants.scss\",\"webpack://./node_modules/bootstrap/scss/forms/_labels.scss\",\"webpack://./node_modules/bootstrap/scss/forms/_form-text.scss\",\"webpack://./node_modules/bootstrap/scss/forms/_form-control.scss\",\"webpack://./node_modules/bootstrap/scss/mixins/_transition.scss\",\"webpack://./node_modules/bootstrap/scss/mixins/_gradients.scss\",\"webpack://./node_modules/bootstrap/scss/forms/_form-select.scss\",\"webpack://./node_modules/bootstrap/scss/forms/_form-check.scss\",\"webpack://./node_modules/bootstrap/scss/forms/_form-range.scss\",\"webpack://./node_modules/bootstrap/scss/forms/_floating-labels.scss\",\"webpack://./node_modules/bootstrap/scss/forms/_input-group.scss\",\"webpack://./node_modules/bootstrap/scss/mixins/_forms.scss\",\"webpack://./node_modules/bootstrap/scss/_buttons.scss\",\"webpack://./node_modules/bootstrap/scss/mixins/_buttons.scss\",\"webpack://./node_modules/bootstrap/scss/_transitions.scss\",\"webpack://./node_modules/bootstrap/scss/_dropdown.scss\",\"webpack://./node_modules/bootstrap/scss/mixins/_caret.scss\",\"webpack://./node_modules/bootstrap/scss/_button-group.scss\",\"webpack://./node_modules/bootstrap/scss/_nav.scss\",\"webpack://./node_modules/bootstrap/scss/_navbar.scss\",\"webpack://./node_modules/bootstrap/scss/_card.scss\",\"webpack://./node_modules/bootstrap/scss/_accordion.scss\",\"webpack://./node_modules/bootstrap/scss/_breadcrumb.scss\",\"webpack://./node_modules/bootstrap/scss/_pagination.scss\",\"webpack://./node_modules/bootstrap/scss/mixins/_pagination.scss\",\"webpack://./node_modules/bootstrap/scss/_badge.scss\",\"webpack://./node_modules/bootstrap/scss/_alert.scss\",\"webpack://./node_modules/bootstrap/scss/_progress.scss\",\"webpack://./node_modules/bootstrap/scss/_list-group.scss\",\"webpack://./node_modules/bootstrap/scss/_close.scss\",\"webpack://./node_modules/bootstrap/scss/_toasts.scss\",\"webpack://./node_modules/bootstrap/scss/_modal.scss\",\"webpack://./node_modules/bootstrap/scss/mixins/_backdrop.scss\",\"webpack://./node_modules/bootstrap/scss/_tooltip.scss\",\"webpack://./node_modules/bootstrap/scss/mixins/_reset-text.scss\",\"webpack://./node_modules/bootstrap/scss/_popover.scss\",\"webpack://./node_modules/bootstrap/scss/_carousel.scss\",\"webpack://./node_modules/bootstrap/scss/mixins/_clearfix.scss\",\"webpack://./node_modules/bootstrap/scss/_spinners.scss\",\"webpack://./node_modules/bootstrap/scss/_offcanvas.scss\",\"webpack://./node_modules/bootstrap/scss/_placeholders.scss\",\"webpack://./node_modules/bootstrap/scss/helpers/_color-bg.scss\",\"webpack://./node_modules/bootstrap/scss/helpers/_colored-links.scss\",\"webpack://./node_modules/bootstrap/scss/helpers/_focus-ring.scss\",\"webpack://./node_modules/bootstrap/scss/helpers/_icon-link.scss\",\"webpack://./node_modules/bootstrap/scss/helpers/_ratio.scss\",\"webpack://./node_modules/bootstrap/scss/helpers/_position.scss\",\"webpack://./node_modules/bootstrap/scss/helpers/_stacks.scss\",\"webpack://./node_modules/bootstrap/scss/helpers/_visually-hidden.scss\",\"webpack://./node_modules/bootstrap/scss/mixins/_visually-hidden.scss\",\"webpack://./node_modules/bootstrap/scss/helpers/_stretched-link.scss\",\"webpack://./node_modules/bootstrap/scss/helpers/_text-truncation.scss\",\"webpack://./node_modules/bootstrap/scss/mixins/_text-truncate.scss\",\"webpack://./node_modules/bootstrap/scss/helpers/_vr.scss\",\"webpack://./node_modules/bootstrap/scss/mixins/_utilities.scss\",\"webpack://./node_modules/bootstrap/scss/utilities/_api.scss\"],\"names\":[],\"mappings\":\"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\",\"sourcesContent\":[\"@charset \\\"UTF-8\\\";/*!\\n * Bootstrap v5.3.3 (https://getbootstrap.com/)\\n * Copyright 2011-2024 The Bootstrap Authors\\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\\n */:root,[data-bs-theme=light]{--bs-blue:#0d6efd;--bs-indigo:#6610f2;--bs-purple:#6f42c1;--bs-pink:#d63384;--bs-red:#dc3545;--bs-orange:#fd7e14;--bs-yellow:#ffc107;--bs-green:#198754;--bs-teal:#20c997;--bs-cyan:#0dcaf0;--bs-black:#000;--bs-white:#fff;--bs-gray:#6c757d;--bs-gray-dark:#343a40;--bs-gray-100:#f8f9fa;--bs-gray-200:#e9ecef;--bs-gray-300:#dee2e6;--bs-gray-400:#ced4da;--bs-gray-500:#adb5bd;--bs-gray-600:#6c757d;--bs-gray-700:#495057;--bs-gray-800:#343a40;--bs-gray-900:#212529;--bs-primary:#0d6efd;--bs-secondary:#6c757d;--bs-success:#198754;--bs-info:#0dcaf0;--bs-warning:#ffc107;--bs-danger:#dc3545;--bs-light:#f8f9fa;--bs-dark:#212529;--bs-primary-rgb:13,110,253;--bs-secondary-rgb:108,117,125;--bs-success-rgb:25,135,84;--bs-info-rgb:13,202,240;--bs-warning-rgb:255,193,7;--bs-danger-rgb:220,53,69;--bs-light-rgb:248,249,250;--bs-dark-rgb:33,37,41;--bs-primary-text-emphasis:#052c65;--bs-secondary-text-emphasis:#2b2f32;--bs-success-text-emphasis:#0a3622;--bs-info-text-emphasis:#055160;--bs-warning-text-emphasis:#664d03;--bs-danger-text-emphasis:#58151c;--bs-light-text-emphasis:#495057;--bs-dark-text-emphasis:#495057;--bs-primary-bg-subtle:#cfe2ff;--bs-secondary-bg-subtle:#e2e3e5;--bs-success-bg-subtle:#d1e7dd;--bs-info-bg-subtle:#cff4fc;--bs-warning-bg-subtle:#fff3cd;--bs-danger-bg-subtle:#f8d7da;--bs-light-bg-subtle:#fcfcfd;--bs-dark-bg-subtle:#ced4da;--bs-primary-border-subtle:#9ec5fe;--bs-secondary-border-subtle:#c4c8cb;--bs-success-border-subtle:#a3cfbb;--bs-info-border-subtle:#9eeaf9;--bs-warning-border-subtle:#ffe69c;--bs-danger-border-subtle:#f1aeb5;--bs-light-border-subtle:#e9ecef;--bs-dark-border-subtle:#adb5bd;--bs-white-rgb:255,255,255;--bs-black-rgb:0,0,0;--bs-font-sans-serif:system-ui,-apple-system,\\\"Segoe UI\\\",Roboto,\\\"Helvetica Neue\\\",\\\"Noto Sans\\\",\\\"Liberation Sans\\\",Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\",\\\"Segoe UI Symbol\\\",\\\"Noto Color Emoji\\\";--bs-font-monospace:SFMono-Regular,Menlo,Monaco,Consolas,\\\"Liberation Mono\\\",\\\"Courier New\\\",monospace;--bs-gradient:linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));--bs-body-font-family:var(--bs-font-sans-serif);--bs-body-font-size:1rem;--bs-body-font-weight:400;--bs-body-line-height:1.5;--bs-body-color:#212529;--bs-body-color-rgb:33,37,41;--bs-body-bg:#fff;--bs-body-bg-rgb:255,255,255;--bs-emphasis-color:#000;--bs-emphasis-color-rgb:0,0,0;--bs-secondary-color:rgba(33, 37, 41, 0.75);--bs-secondary-color-rgb:33,37,41;--bs-secondary-bg:#e9ecef;--bs-secondary-bg-rgb:233,236,239;--bs-tertiary-color:rgba(33, 37, 41, 0.5);--bs-tertiary-color-rgb:33,37,41;--bs-tertiary-bg:#f8f9fa;--bs-tertiary-bg-rgb:248,249,250;--bs-heading-color:inherit;--bs-link-color:#0d6efd;--bs-link-color-rgb:13,110,253;--bs-link-decoration:underline;--bs-link-hover-color:#0a58ca;--bs-link-hover-color-rgb:10,88,202;--bs-code-color:#d63384;--bs-highlight-color:#212529;--bs-highlight-bg:#fff3cd;--bs-border-width:1px;--bs-border-style:solid;--bs-border-color:#dee2e6;--bs-border-color-translucent:rgba(0, 0, 0, 0.175);--bs-border-radius:0.375rem;--bs-border-radius-sm:0.25rem;--bs-border-radius-lg:0.5rem;--bs-border-radius-xl:1rem;--bs-border-radius-xxl:2rem;--bs-border-radius-2xl:var(--bs-border-radius-xxl);--bs-border-radius-pill:50rem;--bs-box-shadow:0 0.5rem 1rem rgba(0, 0, 0, 0.15);--bs-box-shadow-sm:0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);--bs-box-shadow-lg:0 1rem 3rem rgba(0, 0, 0, 0.175);--bs-box-shadow-inset:inset 0 1px 2px rgba(0, 0, 0, 0.075);--bs-focus-ring-width:0.25rem;--bs-focus-ring-opacity:0.25;--bs-focus-ring-color:rgba(13, 110, 253, 0.25);--bs-form-valid-color:#198754;--bs-form-valid-border-color:#198754;--bs-form-invalid-color:#dc3545;--bs-form-invalid-border-color:#dc3545}[data-bs-theme=dark]{color-scheme:dark;--bs-body-color:#dee2e6;--bs-body-color-rgb:222,226,230;--bs-body-bg:#212529;--bs-body-bg-rgb:33,37,41;--bs-emphasis-color:#fff;--bs-emphasis-color-rgb:255,255,255;--bs-secondary-color:rgba(222, 226, 230, 0.75);--bs-secondary-color-rgb:222,226,230;--bs-secondary-bg:#343a40;--bs-secondary-bg-rgb:52,58,64;--bs-tertiary-color:rgba(222, 226, 230, 0.5);--bs-tertiary-color-rgb:222,226,230;--bs-tertiary-bg:#2b3035;--bs-tertiary-bg-rgb:43,48,53;--bs-primary-text-emphasis:#6ea8fe;--bs-secondary-text-emphasis:#a7acb1;--bs-success-text-emphasis:#75b798;--bs-info-text-emphasis:#6edff6;--bs-warning-text-emphasis:#ffda6a;--bs-danger-text-emphasis:#ea868f;--bs-light-text-emphasis:#f8f9fa;--bs-dark-text-emphasis:#dee2e6;--bs-primary-bg-subtle:#031633;--bs-secondary-bg-subtle:#161719;--bs-success-bg-subtle:#051b11;--bs-info-bg-subtle:#032830;--bs-warning-bg-subtle:#332701;--bs-danger-bg-subtle:#2c0b0e;--bs-light-bg-subtle:#343a40;--bs-dark-bg-subtle:#1a1d20;--bs-primary-border-subtle:#084298;--bs-secondary-border-subtle:#41464b;--bs-success-border-subtle:#0f5132;--bs-info-border-subtle:#087990;--bs-warning-border-subtle:#997404;--bs-danger-border-subtle:#842029;--bs-light-border-subtle:#495057;--bs-dark-border-subtle:#343a40;--bs-heading-color:inherit;--bs-link-color:#6ea8fe;--bs-link-hover-color:#8bb9fe;--bs-link-color-rgb:110,168,254;--bs-link-hover-color-rgb:139,185,254;--bs-code-color:#e685b5;--bs-highlight-color:#dee2e6;--bs-highlight-bg:#664d03;--bs-border-color:#495057;--bs-border-color-translucent:rgba(255, 255, 255, 0.15);--bs-form-valid-color:#75b798;--bs-form-valid-border-color:#75b798;--bs-form-invalid-color:#ea868f;--bs-form-invalid-border-color:#ea868f}*,::after,::before{box-sizing:border-box}@media (prefers-reduced-motion:no-preference){:root{scroll-behavior:smooth}}body{margin:0;font-family:var(--bs-body-font-family);font-size:var(--bs-body-font-size);font-weight:var(--bs-body-font-weight);line-height:var(--bs-body-line-height);color:var(--bs-body-color);text-align:var(--bs-body-text-align);background-color:var(--bs-body-bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}hr{margin:1rem 0;color:inherit;border:0;border-top:var(--bs-border-width) solid;opacity:.25}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem;font-weight:500;line-height:1.2;color:var(--bs-heading-color)}.h1,h1{font-size:calc(1.375rem + 1.5vw)}@media (min-width:1200px){.h1,h1{font-size:2.5rem}}.h2,h2{font-size:calc(1.325rem + .9vw)}@media (min-width:1200px){.h2,h2{font-size:2rem}}.h3,h3{font-size:calc(1.3rem + .6vw)}@media (min-width:1200px){.h3,h3{font-size:1.75rem}}.h4,h4{font-size:calc(1.275rem + .3vw)}@media (min-width:1200px){.h4,h4{font-size:1.5rem}}.h5,h5{font-size:1.25rem}.h6,h6{font-size:1rem}p{margin-top:0;margin-bottom:1rem}abbr[title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}ol,ul{padding-left:2rem}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}.small,small{font-size:.875em}.mark,mark{padding:.1875em;color:var(--bs-highlight-color);background-color:var(--bs-highlight-bg)}sub,sup{position:relative;font-size:.75em;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:rgba(var(--bs-link-color-rgb),var(--bs-link-opacity,1));text-decoration:underline}a:hover{--bs-link-color-rgb:var(--bs-link-hover-color-rgb)}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none}code,kbd,pre,samp{font-family:var(--bs-font-monospace);font-size:1em}pre{display:block;margin-top:0;margin-bottom:1rem;overflow:auto;font-size:.875em}pre code{font-size:inherit;color:inherit;word-break:normal}code{font-size:.875em;color:var(--bs-code-color);word-wrap:break-word}a>code{color:inherit}kbd{padding:.1875rem .375rem;font-size:.875em;color:var(--bs-body-bg);background-color:var(--bs-body-color);border-radius:.25rem}kbd kbd{padding:0;font-size:1em}figure{margin:0 0 1rem}img,svg{vertical-align:middle}table{caption-side:bottom;border-collapse:collapse}caption{padding-top:.5rem;padding-bottom:.5rem;color:var(--bs-secondary-color);text-align:left}th{text-align:inherit;text-align:-webkit-match-parent}tbody,td,tfoot,th,thead,tr{border-color:inherit;border-style:solid;border-width:0}label{display:inline-block}button{border-radius:0}button:focus:not(:focus-visible){outline:0}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,select{text-transform:none}[role=button]{cursor:pointer}select{word-wrap:normal}select:disabled{opacity:1}[list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator{display:none!important}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}::-moz-focus-inner{padding:0;border-style:none}textarea{resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{float:left;width:100%;padding:0;margin-bottom:.5rem;font-size:calc(1.275rem + .3vw);line-height:inherit}@media (min-width:1200px){legend{font-size:1.5rem}}legend+*{clear:left}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-fields-wrapper,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-text,::-webkit-datetime-edit-year-field{padding:0}::-webkit-inner-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}::file-selector-button{font:inherit;-webkit-appearance:button}output{display:inline-block}iframe{border:0}summary{display:list-item;cursor:pointer}progress{vertical-align:baseline}[hidden]{display:none!important}.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:calc(1.625rem + 4.5vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-1{font-size:5rem}}.display-2{font-size:calc(1.575rem + 3.9vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-2{font-size:4.5rem}}.display-3{font-size:calc(1.525rem + 3.3vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-3{font-size:4rem}}.display-4{font-size:calc(1.475rem + 2.7vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-4{font-size:3.5rem}}.display-5{font-size:calc(1.425rem + 2.1vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-5{font-size:3rem}}.display-6{font-size:calc(1.375rem + 1.5vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-6{font-size:2.5rem}}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:.875em;text-transform:uppercase}.blockquote{margin-bottom:1rem;font-size:1.25rem}.blockquote>:last-child{margin-bottom:0}.blockquote-footer{margin-top:-1rem;margin-bottom:1rem;font-size:.875em;color:#6c757d}.blockquote-footer::before{content:\\\"— \\\"}.img-fluid{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:var(--bs-body-bg);border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius);max-width:100%;height:auto}.figure{display:inline-block}.figure-img{margin-bottom:.5rem;line-height:1}.figure-caption{font-size:.875em;color:var(--bs-secondary-color)}.container,.container-fluid,.container-lg,.container-md,.container-sm,.container-xl,.container-xxl{--bs-gutter-x:1.5rem;--bs-gutter-y:0;width:100%;padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5);margin-right:auto;margin-left:auto}@media (min-width:576px){.container,.container-sm{max-width:540px}}@media (min-width:768px){.container,.container-md,.container-sm{max-width:720px}}@media (min-width:992px){.container,.container-lg,.container-md,.container-sm{max-width:960px}}@media (min-width:1200px){.container,.container-lg,.container-md,.container-sm,.container-xl{max-width:1140px}}@media (min-width:1400px){.container,.container-lg,.container-md,.container-sm,.container-xl,.container-xxl{max-width:1320px}}:root{--bs-breakpoint-xs:0;--bs-breakpoint-sm:576px;--bs-breakpoint-md:768px;--bs-breakpoint-lg:992px;--bs-breakpoint-xl:1200px;--bs-breakpoint-xxl:1400px}.row{--bs-gutter-x:1.5rem;--bs-gutter-y:0;display:flex;flex-wrap:wrap;margin-top:calc(-1 * var(--bs-gutter-y));margin-right:calc(-.5 * var(--bs-gutter-x));margin-left:calc(-.5 * var(--bs-gutter-x))}.row>*{flex-shrink:0;width:100%;max-width:100%;padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5);margin-top:var(--bs-gutter-y)}.col{flex:1 0 0%}.row-cols-auto>*{flex:0 0 auto;width:auto}.row-cols-1>*{flex:0 0 auto;width:100%}.row-cols-2>*{flex:0 0 auto;width:50%}.row-cols-3>*{flex:0 0 auto;width:33.33333333%}.row-cols-4>*{flex:0 0 auto;width:25%}.row-cols-5>*{flex:0 0 auto;width:20%}.row-cols-6>*{flex:0 0 auto;width:16.66666667%}.col-auto{flex:0 0 auto;width:auto}.col-1{flex:0 0 auto;width:8.33333333%}.col-2{flex:0 0 auto;width:16.66666667%}.col-3{flex:0 0 auto;width:25%}.col-4{flex:0 0 auto;width:33.33333333%}.col-5{flex:0 0 auto;width:41.66666667%}.col-6{flex:0 0 auto;width:50%}.col-7{flex:0 0 auto;width:58.33333333%}.col-8{flex:0 0 auto;width:66.66666667%}.col-9{flex:0 0 auto;width:75%}.col-10{flex:0 0 auto;width:83.33333333%}.col-11{flex:0 0 auto;width:91.66666667%}.col-12{flex:0 0 auto;width:100%}.offset-1{margin-left:8.33333333%}.offset-2{margin-left:16.66666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.33333333%}.offset-5{margin-left:41.66666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.33333333%}.offset-8{margin-left:66.66666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.33333333%}.offset-11{margin-left:91.66666667%}.g-0,.gx-0{--bs-gutter-x:0}.g-0,.gy-0{--bs-gutter-y:0}.g-1,.gx-1{--bs-gutter-x:0.25rem}.g-1,.gy-1{--bs-gutter-y:0.25rem}.g-2,.gx-2{--bs-gutter-x:0.5rem}.g-2,.gy-2{--bs-gutter-y:0.5rem}.g-3,.gx-3{--bs-gutter-x:1rem}.g-3,.gy-3{--bs-gutter-y:1rem}.g-4,.gx-4{--bs-gutter-x:1.5rem}.g-4,.gy-4{--bs-gutter-y:1.5rem}.g-5,.gx-5{--bs-gutter-x:3rem}.g-5,.gy-5{--bs-gutter-y:3rem}@media (min-width:576px){.col-sm{flex:1 0 0%}.row-cols-sm-auto>*{flex:0 0 auto;width:auto}.row-cols-sm-1>*{flex:0 0 auto;width:100%}.row-cols-sm-2>*{flex:0 0 auto;width:50%}.row-cols-sm-3>*{flex:0 0 auto;width:33.33333333%}.row-cols-sm-4>*{flex:0 0 auto;width:25%}.row-cols-sm-5>*{flex:0 0 auto;width:20%}.row-cols-sm-6>*{flex:0 0 auto;width:16.66666667%}.col-sm-auto{flex:0 0 auto;width:auto}.col-sm-1{flex:0 0 auto;width:8.33333333%}.col-sm-2{flex:0 0 auto;width:16.66666667%}.col-sm-3{flex:0 0 auto;width:25%}.col-sm-4{flex:0 0 auto;width:33.33333333%}.col-sm-5{flex:0 0 auto;width:41.66666667%}.col-sm-6{flex:0 0 auto;width:50%}.col-sm-7{flex:0 0 auto;width:58.33333333%}.col-sm-8{flex:0 0 auto;width:66.66666667%}.col-sm-9{flex:0 0 auto;width:75%}.col-sm-10{flex:0 0 auto;width:83.33333333%}.col-sm-11{flex:0 0 auto;width:91.66666667%}.col-sm-12{flex:0 0 auto;width:100%}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.33333333%}.offset-sm-2{margin-left:16.66666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.33333333%}.offset-sm-5{margin-left:41.66666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.33333333%}.offset-sm-8{margin-left:66.66666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.33333333%}.offset-sm-11{margin-left:91.66666667%}.g-sm-0,.gx-sm-0{--bs-gutter-x:0}.g-sm-0,.gy-sm-0{--bs-gutter-y:0}.g-sm-1,.gx-sm-1{--bs-gutter-x:0.25rem}.g-sm-1,.gy-sm-1{--bs-gutter-y:0.25rem}.g-sm-2,.gx-sm-2{--bs-gutter-x:0.5rem}.g-sm-2,.gy-sm-2{--bs-gutter-y:0.5rem}.g-sm-3,.gx-sm-3{--bs-gutter-x:1rem}.g-sm-3,.gy-sm-3{--bs-gutter-y:1rem}.g-sm-4,.gx-sm-4{--bs-gutter-x:1.5rem}.g-sm-4,.gy-sm-4{--bs-gutter-y:1.5rem}.g-sm-5,.gx-sm-5{--bs-gutter-x:3rem}.g-sm-5,.gy-sm-5{--bs-gutter-y:3rem}}@media (min-width:768px){.col-md{flex:1 0 0%}.row-cols-md-auto>*{flex:0 0 auto;width:auto}.row-cols-md-1>*{flex:0 0 auto;width:100%}.row-cols-md-2>*{flex:0 0 auto;width:50%}.row-cols-md-3>*{flex:0 0 auto;width:33.33333333%}.row-cols-md-4>*{flex:0 0 auto;width:25%}.row-cols-md-5>*{flex:0 0 auto;width:20%}.row-cols-md-6>*{flex:0 0 auto;width:16.66666667%}.col-md-auto{flex:0 0 auto;width:auto}.col-md-1{flex:0 0 auto;width:8.33333333%}.col-md-2{flex:0 0 auto;width:16.66666667%}.col-md-3{flex:0 0 auto;width:25%}.col-md-4{flex:0 0 auto;width:33.33333333%}.col-md-5{flex:0 0 auto;width:41.66666667%}.col-md-6{flex:0 0 auto;width:50%}.col-md-7{flex:0 0 auto;width:58.33333333%}.col-md-8{flex:0 0 auto;width:66.66666667%}.col-md-9{flex:0 0 auto;width:75%}.col-md-10{flex:0 0 auto;width:83.33333333%}.col-md-11{flex:0 0 auto;width:91.66666667%}.col-md-12{flex:0 0 auto;width:100%}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.33333333%}.offset-md-2{margin-left:16.66666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.33333333%}.offset-md-5{margin-left:41.66666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.33333333%}.offset-md-8{margin-left:66.66666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.33333333%}.offset-md-11{margin-left:91.66666667%}.g-md-0,.gx-md-0{--bs-gutter-x:0}.g-md-0,.gy-md-0{--bs-gutter-y:0}.g-md-1,.gx-md-1{--bs-gutter-x:0.25rem}.g-md-1,.gy-md-1{--bs-gutter-y:0.25rem}.g-md-2,.gx-md-2{--bs-gutter-x:0.5rem}.g-md-2,.gy-md-2{--bs-gutter-y:0.5rem}.g-md-3,.gx-md-3{--bs-gutter-x:1rem}.g-md-3,.gy-md-3{--bs-gutter-y:1rem}.g-md-4,.gx-md-4{--bs-gutter-x:1.5rem}.g-md-4,.gy-md-4{--bs-gutter-y:1.5rem}.g-md-5,.gx-md-5{--bs-gutter-x:3rem}.g-md-5,.gy-md-5{--bs-gutter-y:3rem}}@media (min-width:992px){.col-lg{flex:1 0 0%}.row-cols-lg-auto>*{flex:0 0 auto;width:auto}.row-cols-lg-1>*{flex:0 0 auto;width:100%}.row-cols-lg-2>*{flex:0 0 auto;width:50%}.row-cols-lg-3>*{flex:0 0 auto;width:33.33333333%}.row-cols-lg-4>*{flex:0 0 auto;width:25%}.row-cols-lg-5>*{flex:0 0 auto;width:20%}.row-cols-lg-6>*{flex:0 0 auto;width:16.66666667%}.col-lg-auto{flex:0 0 auto;width:auto}.col-lg-1{flex:0 0 auto;width:8.33333333%}.col-lg-2{flex:0 0 auto;width:16.66666667%}.col-lg-3{flex:0 0 auto;width:25%}.col-lg-4{flex:0 0 auto;width:33.33333333%}.col-lg-5{flex:0 0 auto;width:41.66666667%}.col-lg-6{flex:0 0 auto;width:50%}.col-lg-7{flex:0 0 auto;width:58.33333333%}.col-lg-8{flex:0 0 auto;width:66.66666667%}.col-lg-9{flex:0 0 auto;width:75%}.col-lg-10{flex:0 0 auto;width:83.33333333%}.col-lg-11{flex:0 0 auto;width:91.66666667%}.col-lg-12{flex:0 0 auto;width:100%}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.33333333%}.offset-lg-2{margin-left:16.66666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.33333333%}.offset-lg-5{margin-left:41.66666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.33333333%}.offset-lg-8{margin-left:66.66666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.33333333%}.offset-lg-11{margin-left:91.66666667%}.g-lg-0,.gx-lg-0{--bs-gutter-x:0}.g-lg-0,.gy-lg-0{--bs-gutter-y:0}.g-lg-1,.gx-lg-1{--bs-gutter-x:0.25rem}.g-lg-1,.gy-lg-1{--bs-gutter-y:0.25rem}.g-lg-2,.gx-lg-2{--bs-gutter-x:0.5rem}.g-lg-2,.gy-lg-2{--bs-gutter-y:0.5rem}.g-lg-3,.gx-lg-3{--bs-gutter-x:1rem}.g-lg-3,.gy-lg-3{--bs-gutter-y:1rem}.g-lg-4,.gx-lg-4{--bs-gutter-x:1.5rem}.g-lg-4,.gy-lg-4{--bs-gutter-y:1.5rem}.g-lg-5,.gx-lg-5{--bs-gutter-x:3rem}.g-lg-5,.gy-lg-5{--bs-gutter-y:3rem}}@media (min-width:1200px){.col-xl{flex:1 0 0%}.row-cols-xl-auto>*{flex:0 0 auto;width:auto}.row-cols-xl-1>*{flex:0 0 auto;width:100%}.row-cols-xl-2>*{flex:0 0 auto;width:50%}.row-cols-xl-3>*{flex:0 0 auto;width:33.33333333%}.row-cols-xl-4>*{flex:0 0 auto;width:25%}.row-cols-xl-5>*{flex:0 0 auto;width:20%}.row-cols-xl-6>*{flex:0 0 auto;width:16.66666667%}.col-xl-auto{flex:0 0 auto;width:auto}.col-xl-1{flex:0 0 auto;width:8.33333333%}.col-xl-2{flex:0 0 auto;width:16.66666667%}.col-xl-3{flex:0 0 auto;width:25%}.col-xl-4{flex:0 0 auto;width:33.33333333%}.col-xl-5{flex:0 0 auto;width:41.66666667%}.col-xl-6{flex:0 0 auto;width:50%}.col-xl-7{flex:0 0 auto;width:58.33333333%}.col-xl-8{flex:0 0 auto;width:66.66666667%}.col-xl-9{flex:0 0 auto;width:75%}.col-xl-10{flex:0 0 auto;width:83.33333333%}.col-xl-11{flex:0 0 auto;width:91.66666667%}.col-xl-12{flex:0 0 auto;width:100%}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.33333333%}.offset-xl-2{margin-left:16.66666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.33333333%}.offset-xl-5{margin-left:41.66666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.33333333%}.offset-xl-8{margin-left:66.66666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.33333333%}.offset-xl-11{margin-left:91.66666667%}.g-xl-0,.gx-xl-0{--bs-gutter-x:0}.g-xl-0,.gy-xl-0{--bs-gutter-y:0}.g-xl-1,.gx-xl-1{--bs-gutter-x:0.25rem}.g-xl-1,.gy-xl-1{--bs-gutter-y:0.25rem}.g-xl-2,.gx-xl-2{--bs-gutter-x:0.5rem}.g-xl-2,.gy-xl-2{--bs-gutter-y:0.5rem}.g-xl-3,.gx-xl-3{--bs-gutter-x:1rem}.g-xl-3,.gy-xl-3{--bs-gutter-y:1rem}.g-xl-4,.gx-xl-4{--bs-gutter-x:1.5rem}.g-xl-4,.gy-xl-4{--bs-gutter-y:1.5rem}.g-xl-5,.gx-xl-5{--bs-gutter-x:3rem}.g-xl-5,.gy-xl-5{--bs-gutter-y:3rem}}@media (min-width:1400px){.col-xxl{flex:1 0 0%}.row-cols-xxl-auto>*{flex:0 0 auto;width:auto}.row-cols-xxl-1>*{flex:0 0 auto;width:100%}.row-cols-xxl-2>*{flex:0 0 auto;width:50%}.row-cols-xxl-3>*{flex:0 0 auto;width:33.33333333%}.row-cols-xxl-4>*{flex:0 0 auto;width:25%}.row-cols-xxl-5>*{flex:0 0 auto;width:20%}.row-cols-xxl-6>*{flex:0 0 auto;width:16.66666667%}.col-xxl-auto{flex:0 0 auto;width:auto}.col-xxl-1{flex:0 0 auto;width:8.33333333%}.col-xxl-2{flex:0 0 auto;width:16.66666667%}.col-xxl-3{flex:0 0 auto;width:25%}.col-xxl-4{flex:0 0 auto;width:33.33333333%}.col-xxl-5{flex:0 0 auto;width:41.66666667%}.col-xxl-6{flex:0 0 auto;width:50%}.col-xxl-7{flex:0 0 auto;width:58.33333333%}.col-xxl-8{flex:0 0 auto;width:66.66666667%}.col-xxl-9{flex:0 0 auto;width:75%}.col-xxl-10{flex:0 0 auto;width:83.33333333%}.col-xxl-11{flex:0 0 auto;width:91.66666667%}.col-xxl-12{flex:0 0 auto;width:100%}.offset-xxl-0{margin-left:0}.offset-xxl-1{margin-left:8.33333333%}.offset-xxl-2{margin-left:16.66666667%}.offset-xxl-3{margin-left:25%}.offset-xxl-4{margin-left:33.33333333%}.offset-xxl-5{margin-left:41.66666667%}.offset-xxl-6{margin-left:50%}.offset-xxl-7{margin-left:58.33333333%}.offset-xxl-8{margin-left:66.66666667%}.offset-xxl-9{margin-left:75%}.offset-xxl-10{margin-left:83.33333333%}.offset-xxl-11{margin-left:91.66666667%}.g-xxl-0,.gx-xxl-0{--bs-gutter-x:0}.g-xxl-0,.gy-xxl-0{--bs-gutter-y:0}.g-xxl-1,.gx-xxl-1{--bs-gutter-x:0.25rem}.g-xxl-1,.gy-xxl-1{--bs-gutter-y:0.25rem}.g-xxl-2,.gx-xxl-2{--bs-gutter-x:0.5rem}.g-xxl-2,.gy-xxl-2{--bs-gutter-y:0.5rem}.g-xxl-3,.gx-xxl-3{--bs-gutter-x:1rem}.g-xxl-3,.gy-xxl-3{--bs-gutter-y:1rem}.g-xxl-4,.gx-xxl-4{--bs-gutter-x:1.5rem}.g-xxl-4,.gy-xxl-4{--bs-gutter-y:1.5rem}.g-xxl-5,.gx-xxl-5{--bs-gutter-x:3rem}.g-xxl-5,.gy-xxl-5{--bs-gutter-y:3rem}}.table{--bs-table-color-type:initial;--bs-table-bg-type:initial;--bs-table-color-state:initial;--bs-table-bg-state:initial;--bs-table-color:var(--bs-emphasis-color);--bs-table-bg:var(--bs-body-bg);--bs-table-border-color:var(--bs-border-color);--bs-table-accent-bg:transparent;--bs-table-striped-color:var(--bs-emphasis-color);--bs-table-striped-bg:rgba(var(--bs-emphasis-color-rgb), 0.05);--bs-table-active-color:var(--bs-emphasis-color);--bs-table-active-bg:rgba(var(--bs-emphasis-color-rgb), 0.1);--bs-table-hover-color:var(--bs-emphasis-color);--bs-table-hover-bg:rgba(var(--bs-emphasis-color-rgb), 0.075);width:100%;margin-bottom:1rem;vertical-align:top;border-color:var(--bs-table-border-color)}.table>:not(caption)>*>*{padding:.5rem .5rem;color:var(--bs-table-color-state,var(--bs-table-color-type,var(--bs-table-color)));background-color:var(--bs-table-bg);border-bottom-width:var(--bs-border-width);box-shadow:inset 0 0 0 9999px var(--bs-table-bg-state,var(--bs-table-bg-type,var(--bs-table-accent-bg)))}.table>tbody{vertical-align:inherit}.table>thead{vertical-align:bottom}.table-group-divider{border-top:calc(var(--bs-border-width) * 2) solid currentcolor}.caption-top{caption-side:top}.table-sm>:not(caption)>*>*{padding:.25rem .25rem}.table-bordered>:not(caption)>*{border-width:var(--bs-border-width) 0}.table-bordered>:not(caption)>*>*{border-width:0 var(--bs-border-width)}.table-borderless>:not(caption)>*>*{border-bottom-width:0}.table-borderless>:not(:first-child){border-top-width:0}.table-striped>tbody>tr:nth-of-type(odd)>*{--bs-table-color-type:var(--bs-table-striped-color);--bs-table-bg-type:var(--bs-table-striped-bg)}.table-striped-columns>:not(caption)>tr>:nth-child(2n){--bs-table-color-type:var(--bs-table-striped-color);--bs-table-bg-type:var(--bs-table-striped-bg)}.table-active{--bs-table-color-state:var(--bs-table-active-color);--bs-table-bg-state:var(--bs-table-active-bg)}.table-hover>tbody>tr:hover>*{--bs-table-color-state:var(--bs-table-hover-color);--bs-table-bg-state:var(--bs-table-hover-bg)}.table-primary{--bs-table-color:#000;--bs-table-bg:#cfe2ff;--bs-table-border-color:#a6b5cc;--bs-table-striped-bg:#c5d7f2;--bs-table-striped-color:#000;--bs-table-active-bg:#bacbe6;--bs-table-active-color:#000;--bs-table-hover-bg:#bfd1ec;--bs-table-hover-color:#000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-secondary{--bs-table-color:#000;--bs-table-bg:#e2e3e5;--bs-table-border-color:#b5b6b7;--bs-table-striped-bg:#d7d8da;--bs-table-striped-color:#000;--bs-table-active-bg:#cbccce;--bs-table-active-color:#000;--bs-table-hover-bg:#d1d2d4;--bs-table-hover-color:#000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-success{--bs-table-color:#000;--bs-table-bg:#d1e7dd;--bs-table-border-color:#a7b9b1;--bs-table-striped-bg:#c7dbd2;--bs-table-striped-color:#000;--bs-table-active-bg:#bcd0c7;--bs-table-active-color:#000;--bs-table-hover-bg:#c1d6cc;--bs-table-hover-color:#000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-info{--bs-table-color:#000;--bs-table-bg:#cff4fc;--bs-table-border-color:#a6c3ca;--bs-table-striped-bg:#c5e8ef;--bs-table-striped-color:#000;--bs-table-active-bg:#badce3;--bs-table-active-color:#000;--bs-table-hover-bg:#bfe2e9;--bs-table-hover-color:#000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-warning{--bs-table-color:#000;--bs-table-bg:#fff3cd;--bs-table-border-color:#ccc2a4;--bs-table-striped-bg:#f2e7c3;--bs-table-striped-color:#000;--bs-table-active-bg:#e6dbb9;--bs-table-active-color:#000;--bs-table-hover-bg:#ece1be;--bs-table-hover-color:#000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-danger{--bs-table-color:#000;--bs-table-bg:#f8d7da;--bs-table-border-color:#c6acae;--bs-table-striped-bg:#eccccf;--bs-table-striped-color:#000;--bs-table-active-bg:#dfc2c4;--bs-table-active-color:#000;--bs-table-hover-bg:#e5c7ca;--bs-table-hover-color:#000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-light{--bs-table-color:#000;--bs-table-bg:#f8f9fa;--bs-table-border-color:#c6c7c8;--bs-table-striped-bg:#ecedee;--bs-table-striped-color:#000;--bs-table-active-bg:#dfe0e1;--bs-table-active-color:#000;--bs-table-hover-bg:#e5e6e7;--bs-table-hover-color:#000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-dark{--bs-table-color:#fff;--bs-table-bg:#212529;--bs-table-border-color:#4d5154;--bs-table-striped-bg:#2c3034;--bs-table-striped-color:#fff;--bs-table-active-bg:#373b3e;--bs-table-active-color:#fff;--bs-table-hover-bg:#323539;--bs-table-hover-color:#fff;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}@media (max-width:575.98px){.table-responsive-sm{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:767.98px){.table-responsive-md{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:991.98px){.table-responsive-lg{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:1199.98px){.table-responsive-xl{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:1399.98px){.table-responsive-xxl{overflow-x:auto;-webkit-overflow-scrolling:touch}}.form-label{margin-bottom:.5rem}.col-form-label{padding-top:calc(.375rem + var(--bs-border-width));padding-bottom:calc(.375rem + var(--bs-border-width));margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + var(--bs-border-width));padding-bottom:calc(.5rem + var(--bs-border-width));font-size:1.25rem}.col-form-label-sm{padding-top:calc(.25rem + var(--bs-border-width));padding-bottom:calc(.25rem + var(--bs-border-width));font-size:.875rem}.form-text{margin-top:.25rem;font-size:.875em;color:var(--bs-secondary-color)}.form-control{display:block;width:100%;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:var(--bs-body-color);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--bs-body-bg);background-clip:padding-box;border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius);transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control{transition:none}}.form-control[type=file]{overflow:hidden}.form-control[type=file]:not(:disabled):not([readonly]){cursor:pointer}.form-control:focus{color:var(--bs-body-color);background-color:var(--bs-body-bg);border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.form-control::-webkit-date-and-time-value{min-width:85px;height:1.5em;margin:0}.form-control::-webkit-datetime-edit{display:block;padding:0}.form-control::-moz-placeholder{color:var(--bs-secondary-color);opacity:1}.form-control::placeholder{color:var(--bs-secondary-color);opacity:1}.form-control:disabled{background-color:var(--bs-secondary-bg);opacity:1}.form-control::-webkit-file-upload-button{padding:.375rem .75rem;margin:-.375rem -.75rem;-webkit-margin-end:.75rem;margin-inline-end:.75rem;color:var(--bs-body-color);background-color:var(--bs-tertiary-bg);pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:var(--bs-border-width);border-radius:0;-webkit-transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}.form-control::file-selector-button{padding:.375rem .75rem;margin:-.375rem -.75rem;-webkit-margin-end:.75rem;margin-inline-end:.75rem;color:var(--bs-body-color);background-color:var(--bs-tertiary-bg);pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:var(--bs-border-width);border-radius:0;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control::-webkit-file-upload-button{-webkit-transition:none;transition:none}.form-control::file-selector-button{transition:none}}.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button{background-color:var(--bs-secondary-bg)}.form-control:hover:not(:disabled):not([readonly])::file-selector-button{background-color:var(--bs-secondary-bg)}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;line-height:1.5;color:var(--bs-body-color);background-color:transparent;border:solid transparent;border-width:var(--bs-border-width) 0}.form-control-plaintext:focus{outline:0}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-right:0;padding-left:0}.form-control-sm{min-height:calc(1.5em + .5rem + calc(var(--bs-border-width) * 2));padding:.25rem .5rem;font-size:.875rem;border-radius:var(--bs-border-radius-sm)}.form-control-sm::-webkit-file-upload-button{padding:.25rem .5rem;margin:-.25rem -.5rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem}.form-control-sm::file-selector-button{padding:.25rem .5rem;margin:-.25rem -.5rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem}.form-control-lg{min-height:calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));padding:.5rem 1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}.form-control-lg::-webkit-file-upload-button{padding:.5rem 1rem;margin:-.5rem -1rem;-webkit-margin-end:1rem;margin-inline-end:1rem}.form-control-lg::file-selector-button{padding:.5rem 1rem;margin:-.5rem -1rem;-webkit-margin-end:1rem;margin-inline-end:1rem}textarea.form-control{min-height:calc(1.5em + .75rem + calc(var(--bs-border-width) * 2))}textarea.form-control-sm{min-height:calc(1.5em + .5rem + calc(var(--bs-border-width) * 2))}textarea.form-control-lg{min-height:calc(1.5em + 1rem + calc(var(--bs-border-width) * 2))}.form-control-color{width:3rem;height:calc(1.5em + .75rem + calc(var(--bs-border-width) * 2));padding:.375rem}.form-control-color:not(:disabled):not([readonly]){cursor:pointer}.form-control-color::-moz-color-swatch{border:0!important;border-radius:var(--bs-border-radius)}.form-control-color::-webkit-color-swatch{border:0!important;border-radius:var(--bs-border-radius)}.form-control-color.form-control-sm{height:calc(1.5em + .5rem + calc(var(--bs-border-width) * 2))}.form-control-color.form-control-lg{height:calc(1.5em + 1rem + calc(var(--bs-border-width) * 2))}.form-select{--bs-form-select-bg-img:url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e\\\");display:block;width:100%;padding:.375rem 2.25rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:var(--bs-body-color);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--bs-body-bg);background-image:var(--bs-form-select-bg-img),var(--bs-form-select-bg-icon,none);background-repeat:no-repeat;background-position:right .75rem center;background-size:16px 12px;border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius);transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-select{transition:none}}.form-select:focus{border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.form-select[multiple],.form-select[size]:not([size=\\\"1\\\"]){padding-right:.75rem;background-image:none}.form-select:disabled{background-color:var(--bs-secondary-bg)}.form-select:-moz-focusring{color:transparent;text-shadow:0 0 0 var(--bs-body-color)}.form-select-sm{padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:.875rem;border-radius:var(--bs-border-radius-sm)}.form-select-lg{padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}[data-bs-theme=dark] .form-select{--bs-form-select-bg-img:url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23dee2e6' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e\\\")}.form-check{display:block;min-height:1.5rem;padding-left:1.5em;margin-bottom:.125rem}.form-check .form-check-input{float:left;margin-left:-1.5em}.form-check-reverse{padding-right:1.5em;padding-left:0;text-align:right}.form-check-reverse .form-check-input{float:right;margin-right:-1.5em;margin-left:0}.form-check-input{--bs-form-check-bg:var(--bs-body-bg);flex-shrink:0;width:1em;height:1em;margin-top:.25em;vertical-align:top;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--bs-form-check-bg);background-image:var(--bs-form-check-bg-image);background-repeat:no-repeat;background-position:center;background-size:contain;border:var(--bs-border-width) solid var(--bs-border-color);-webkit-print-color-adjust:exact;color-adjust:exact;print-color-adjust:exact}.form-check-input[type=checkbox]{border-radius:.25em}.form-check-input[type=radio]{border-radius:50%}.form-check-input:active{filter:brightness(90%)}.form-check-input:focus{border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.form-check-input:checked{background-color:#0d6efd;border-color:#0d6efd}.form-check-input:checked[type=checkbox]{--bs-form-check-bg-image:url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e\\\")}.form-check-input:checked[type=radio]{--bs-form-check-bg-image:url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e\\\")}.form-check-input[type=checkbox]:indeterminate{background-color:#0d6efd;border-color:#0d6efd;--bs-form-check-bg-image:url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e\\\")}.form-check-input:disabled{pointer-events:none;filter:none;opacity:.5}.form-check-input:disabled~.form-check-label,.form-check-input[disabled]~.form-check-label{cursor:default;opacity:.5}.form-switch{padding-left:2.5em}.form-switch .form-check-input{--bs-form-switch-bg:url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e\\\");width:2em;margin-left:-2.5em;background-image:var(--bs-form-switch-bg);background-position:left center;border-radius:2em;transition:background-position .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-switch .form-check-input{transition:none}}.form-switch .form-check-input:focus{--bs-form-switch-bg:url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2386b7fe'/%3e%3c/svg%3e\\\")}.form-switch .form-check-input:checked{background-position:right center;--bs-form-switch-bg:url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e\\\")}.form-switch.form-check-reverse{padding-right:2.5em;padding-left:0}.form-switch.form-check-reverse .form-check-input{margin-right:-2.5em;margin-left:0}.form-check-inline{display:inline-block;margin-right:1rem}.btn-check{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.btn-check:disabled+.btn,.btn-check[disabled]+.btn{pointer-events:none;filter:none;opacity:.65}[data-bs-theme=dark] .form-switch .form-check-input:not(:checked):not(:focus){--bs-form-switch-bg:url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%28255, 255, 255, 0.25%29'/%3e%3c/svg%3e\\\")}.form-range{width:100%;height:1.5rem;padding:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:transparent}.form-range:focus{outline:0}.form-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(13,110,253,.25)}.form-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(13,110,253,.25)}.form-range::-moz-focus-outer{border:0}.form-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;-webkit-appearance:none;appearance:none;background-color:#0d6efd;border:0;border-radius:1rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.form-range::-webkit-slider-thumb:active{background-color:#b6d4fe}.form-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:var(--bs-secondary-bg);border-color:transparent;border-radius:1rem}.form-range::-moz-range-thumb{width:1rem;height:1rem;-moz-appearance:none;appearance:none;background-color:#0d6efd;border:0;border-radius:1rem;-moz-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-range::-moz-range-thumb{-moz-transition:none;transition:none}}.form-range::-moz-range-thumb:active{background-color:#b6d4fe}.form-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:var(--bs-secondary-bg);border-color:transparent;border-radius:1rem}.form-range:disabled{pointer-events:none}.form-range:disabled::-webkit-slider-thumb{background-color:var(--bs-secondary-color)}.form-range:disabled::-moz-range-thumb{background-color:var(--bs-secondary-color)}.form-floating{position:relative}.form-floating>.form-control,.form-floating>.form-control-plaintext,.form-floating>.form-select{height:calc(3.5rem + calc(var(--bs-border-width) * 2));min-height:calc(3.5rem + calc(var(--bs-border-width) * 2));line-height:1.25}.form-floating>label{position:absolute;top:0;left:0;z-index:2;height:100%;padding:1rem .75rem;overflow:hidden;text-align:start;text-overflow:ellipsis;white-space:nowrap;pointer-events:none;border:var(--bs-border-width) solid transparent;transform-origin:0 0;transition:opacity .1s ease-in-out,transform .1s ease-in-out}@media (prefers-reduced-motion:reduce){.form-floating>label{transition:none}}.form-floating>.form-control,.form-floating>.form-control-plaintext{padding:1rem .75rem}.form-floating>.form-control-plaintext::-moz-placeholder,.form-floating>.form-control::-moz-placeholder{color:transparent}.form-floating>.form-control-plaintext::placeholder,.form-floating>.form-control::placeholder{color:transparent}.form-floating>.form-control-plaintext:not(:-moz-placeholder-shown),.form-floating>.form-control:not(:-moz-placeholder-shown){padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control-plaintext:focus,.form-floating>.form-control-plaintext:not(:placeholder-shown),.form-floating>.form-control:focus,.form-floating>.form-control:not(:placeholder-shown){padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control-plaintext:-webkit-autofill,.form-floating>.form-control:-webkit-autofill{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-select{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:not(:-moz-placeholder-shown)~label{color:rgba(var(--bs-body-color-rgb),.65);transform:scale(.85) translateY(-.5rem) translateX(.15rem)}.form-floating>.form-control-plaintext~label,.form-floating>.form-control:focus~label,.form-floating>.form-control:not(:placeholder-shown)~label,.form-floating>.form-select~label{color:rgba(var(--bs-body-color-rgb),.65);transform:scale(.85) translateY(-.5rem) translateX(.15rem)}.form-floating>.form-control:not(:-moz-placeholder-shown)~label::after{position:absolute;inset:1rem 0.375rem;z-index:-1;height:1.5em;content:\\\"\\\";background-color:var(--bs-body-bg);border-radius:var(--bs-border-radius)}.form-floating>.form-control-plaintext~label::after,.form-floating>.form-control:focus~label::after,.form-floating>.form-control:not(:placeholder-shown)~label::after,.form-floating>.form-select~label::after{position:absolute;inset:1rem 0.375rem;z-index:-1;height:1.5em;content:\\\"\\\";background-color:var(--bs-body-bg);border-radius:var(--bs-border-radius)}.form-floating>.form-control:-webkit-autofill~label{color:rgba(var(--bs-body-color-rgb),.65);transform:scale(.85) translateY(-.5rem) translateX(.15rem)}.form-floating>.form-control-plaintext~label{border-width:var(--bs-border-width) 0}.form-floating>.form-control:disabled~label,.form-floating>:disabled~label{color:#6c757d}.form-floating>.form-control:disabled~label::after,.form-floating>:disabled~label::after{background-color:var(--bs-secondary-bg)}.input-group{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;width:100%}.input-group>.form-control,.input-group>.form-floating,.input-group>.form-select{position:relative;flex:1 1 auto;width:1%;min-width:0}.input-group>.form-control:focus,.input-group>.form-floating:focus-within,.input-group>.form-select:focus{z-index:5}.input-group .btn{position:relative;z-index:2}.input-group .btn:focus{z-index:5}.input-group-text{display:flex;align-items:center;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:var(--bs-body-color);text-align:center;white-space:nowrap;background-color:var(--bs-tertiary-bg);border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius)}.input-group-lg>.btn,.input-group-lg>.form-control,.input-group-lg>.form-select,.input-group-lg>.input-group-text{padding:.5rem 1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}.input-group-sm>.btn,.input-group-sm>.form-control,.input-group-sm>.form-select,.input-group-sm>.input-group-text{padding:.25rem .5rem;font-size:.875rem;border-radius:var(--bs-border-radius-sm)}.input-group-lg>.form-select,.input-group-sm>.form-select{padding-right:3rem}.input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n+3),.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-control,.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-select,.input-group:not(.has-validation)>:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating){border-top-right-radius:0;border-bottom-right-radius:0}.input-group.has-validation>.dropdown-toggle:nth-last-child(n+4),.input-group.has-validation>.form-floating:nth-last-child(n+3)>.form-control,.input-group.has-validation>.form-floating:nth-last-child(n+3)>.form-select,.input-group.has-validation>:nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback){margin-left:calc(var(--bs-border-width) * -1);border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.form-floating:not(:first-child)>.form-control,.input-group>.form-floating:not(:first-child)>.form-select{border-top-left-radius:0;border-bottom-left-radius:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:.875em;color:var(--bs-form-valid-color)}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;color:#fff;background-color:var(--bs-success);border-radius:var(--bs-border-radius)}.is-valid~.valid-feedback,.is-valid~.valid-tooltip,.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip{display:block}.form-control.is-valid,.was-validated .form-control:valid{border-color:var(--bs-form-valid-border-color);padding-right:calc(1.5em + .75rem);background-image:url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e\\\");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-valid:focus,.was-validated .form-control:valid:focus{border-color:var(--bs-form-valid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb),.25)}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.form-select.is-valid,.was-validated .form-select:valid{border-color:var(--bs-form-valid-border-color)}.form-select.is-valid:not([multiple]):not([size]),.form-select.is-valid:not([multiple])[size=\\\"1\\\"],.was-validated .form-select:valid:not([multiple]):not([size]),.was-validated .form-select:valid:not([multiple])[size=\\\"1\\\"]{--bs-form-select-bg-icon:url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e\\\");padding-right:4.125rem;background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem)}.form-select.is-valid:focus,.was-validated .form-select:valid:focus{border-color:var(--bs-form-valid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb),.25)}.form-control-color.is-valid,.was-validated .form-control-color:valid{width:calc(3rem + calc(1.5em + .75rem))}.form-check-input.is-valid,.was-validated .form-check-input:valid{border-color:var(--bs-form-valid-border-color)}.form-check-input.is-valid:checked,.was-validated .form-check-input:valid:checked{background-color:var(--bs-form-valid-color)}.form-check-input.is-valid:focus,.was-validated .form-check-input:valid:focus{box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb),.25)}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:var(--bs-form-valid-color)}.form-check-inline .form-check-input~.valid-feedback{margin-left:.5em}.input-group>.form-control:not(:focus).is-valid,.input-group>.form-floating:not(:focus-within).is-valid,.input-group>.form-select:not(:focus).is-valid,.was-validated .input-group>.form-control:not(:focus):valid,.was-validated .input-group>.form-floating:not(:focus-within):valid,.was-validated .input-group>.form-select:not(:focus):valid{z-index:3}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:.875em;color:var(--bs-form-invalid-color)}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;color:#fff;background-color:var(--bs-danger);border-radius:var(--bs-border-radius)}.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip,.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip{display:block}.form-control.is-invalid,.was-validated .form-control:invalid{border-color:var(--bs-form-invalid-border-color);padding-right:calc(1.5em + .75rem);background-image:url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e\\\");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-invalid:focus,.was-validated .form-control:invalid:focus{border-color:var(--bs-form-invalid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb),.25)}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.form-select.is-invalid,.was-validated .form-select:invalid{border-color:var(--bs-form-invalid-border-color)}.form-select.is-invalid:not([multiple]):not([size]),.form-select.is-invalid:not([multiple])[size=\\\"1\\\"],.was-validated .form-select:invalid:not([multiple]):not([size]),.was-validated .form-select:invalid:not([multiple])[size=\\\"1\\\"]{--bs-form-select-bg-icon:url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e\\\");padding-right:4.125rem;background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem)}.form-select.is-invalid:focus,.was-validated .form-select:invalid:focus{border-color:var(--bs-form-invalid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb),.25)}.form-control-color.is-invalid,.was-validated .form-control-color:invalid{width:calc(3rem + calc(1.5em + .75rem))}.form-check-input.is-invalid,.was-validated .form-check-input:invalid{border-color:var(--bs-form-invalid-border-color)}.form-check-input.is-invalid:checked,.was-validated .form-check-input:invalid:checked{background-color:var(--bs-form-invalid-color)}.form-check-input.is-invalid:focus,.was-validated .form-check-input:invalid:focus{box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb),.25)}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:var(--bs-form-invalid-color)}.form-check-inline .form-check-input~.invalid-feedback{margin-left:.5em}.input-group>.form-control:not(:focus).is-invalid,.input-group>.form-floating:not(:focus-within).is-invalid,.input-group>.form-select:not(:focus).is-invalid,.was-validated .input-group>.form-control:not(:focus):invalid,.was-validated .input-group>.form-floating:not(:focus-within):invalid,.was-validated .input-group>.form-select:not(:focus):invalid{z-index:4}.btn{--bs-btn-padding-x:0.75rem;--bs-btn-padding-y:0.375rem;--bs-btn-font-family: ;--bs-btn-font-size:1rem;--bs-btn-font-weight:400;--bs-btn-line-height:1.5;--bs-btn-color:var(--bs-body-color);--bs-btn-bg:transparent;--bs-btn-border-width:var(--bs-border-width);--bs-btn-border-color:transparent;--bs-btn-border-radius:var(--bs-border-radius);--bs-btn-hover-border-color:transparent;--bs-btn-box-shadow:inset 0 1px 0 rgba(255, 255, 255, 0.15),0 1px 1px rgba(0, 0, 0, 0.075);--bs-btn-disabled-opacity:0.65;--bs-btn-focus-box-shadow:0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);display:inline-block;padding:var(--bs-btn-padding-y) var(--bs-btn-padding-x);font-family:var(--bs-btn-font-family);font-size:var(--bs-btn-font-size);font-weight:var(--bs-btn-font-weight);line-height:var(--bs-btn-line-height);color:var(--bs-btn-color);text-align:center;text-decoration:none;vertical-align:middle;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;border:var(--bs-btn-border-width) solid var(--bs-btn-border-color);border-radius:var(--bs-btn-border-radius);background-color:var(--bs-btn-bg);transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:hover{color:var(--bs-btn-hover-color);background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color)}.btn-check+.btn:hover{color:var(--bs-btn-color);background-color:var(--bs-btn-bg);border-color:var(--bs-btn-border-color)}.btn:focus-visible{color:var(--bs-btn-hover-color);background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color);outline:0;box-shadow:var(--bs-btn-focus-box-shadow)}.btn-check:focus-visible+.btn{border-color:var(--bs-btn-hover-border-color);outline:0;box-shadow:var(--bs-btn-focus-box-shadow)}.btn-check:checked+.btn,.btn.active,.btn.show,.btn:first-child:active,:not(.btn-check)+.btn:active{color:var(--bs-btn-active-color);background-color:var(--bs-btn-active-bg);border-color:var(--bs-btn-active-border-color)}.btn-check:checked+.btn:focus-visible,.btn.active:focus-visible,.btn.show:focus-visible,.btn:first-child:active:focus-visible,:not(.btn-check)+.btn:active:focus-visible{box-shadow:var(--bs-btn-focus-box-shadow)}.btn-check:checked:focus-visible+.btn{box-shadow:var(--bs-btn-focus-box-shadow)}.btn.disabled,.btn:disabled,fieldset:disabled .btn{color:var(--bs-btn-disabled-color);pointer-events:none;background-color:var(--bs-btn-disabled-bg);border-color:var(--bs-btn-disabled-border-color);opacity:var(--bs-btn-disabled-opacity)}.btn-primary{--bs-btn-color:#fff;--bs-btn-bg:#0d6efd;--bs-btn-border-color:#0d6efd;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#0b5ed7;--bs-btn-hover-border-color:#0a58ca;--bs-btn-focus-shadow-rgb:49,132,253;--bs-btn-active-color:#fff;--bs-btn-active-bg:#0a58ca;--bs-btn-active-border-color:#0a53be;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#0d6efd;--bs-btn-disabled-border-color:#0d6efd}.btn-secondary{--bs-btn-color:#fff;--bs-btn-bg:#6c757d;--bs-btn-border-color:#6c757d;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#5c636a;--bs-btn-hover-border-color:#565e64;--bs-btn-focus-shadow-rgb:130,138,145;--bs-btn-active-color:#fff;--bs-btn-active-bg:#565e64;--bs-btn-active-border-color:#51585e;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#6c757d;--bs-btn-disabled-border-color:#6c757d}.btn-success{--bs-btn-color:#fff;--bs-btn-bg:#198754;--bs-btn-border-color:#198754;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#157347;--bs-btn-hover-border-color:#146c43;--bs-btn-focus-shadow-rgb:60,153,110;--bs-btn-active-color:#fff;--bs-btn-active-bg:#146c43;--bs-btn-active-border-color:#13653f;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#198754;--bs-btn-disabled-border-color:#198754}.btn-info{--bs-btn-color:#000;--bs-btn-bg:#0dcaf0;--bs-btn-border-color:#0dcaf0;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#31d2f2;--bs-btn-hover-border-color:#25cff2;--bs-btn-focus-shadow-rgb:11,172,204;--bs-btn-active-color:#000;--bs-btn-active-bg:#3dd5f3;--bs-btn-active-border-color:#25cff2;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#000;--bs-btn-disabled-bg:#0dcaf0;--bs-btn-disabled-border-color:#0dcaf0}.btn-warning{--bs-btn-color:#000;--bs-btn-bg:#ffc107;--bs-btn-border-color:#ffc107;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#ffca2c;--bs-btn-hover-border-color:#ffc720;--bs-btn-focus-shadow-rgb:217,164,6;--bs-btn-active-color:#000;--bs-btn-active-bg:#ffcd39;--bs-btn-active-border-color:#ffc720;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#000;--bs-btn-disabled-bg:#ffc107;--bs-btn-disabled-border-color:#ffc107}.btn-danger{--bs-btn-color:#fff;--bs-btn-bg:#dc3545;--bs-btn-border-color:#dc3545;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#bb2d3b;--bs-btn-hover-border-color:#b02a37;--bs-btn-focus-shadow-rgb:225,83,97;--bs-btn-active-color:#fff;--bs-btn-active-bg:#b02a37;--bs-btn-active-border-color:#a52834;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#dc3545;--bs-btn-disabled-border-color:#dc3545}.btn-light{--bs-btn-color:#000;--bs-btn-bg:#f8f9fa;--bs-btn-border-color:#f8f9fa;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#d3d4d5;--bs-btn-hover-border-color:#c6c7c8;--bs-btn-focus-shadow-rgb:211,212,213;--bs-btn-active-color:#000;--bs-btn-active-bg:#c6c7c8;--bs-btn-active-border-color:#babbbc;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#000;--bs-btn-disabled-bg:#f8f9fa;--bs-btn-disabled-border-color:#f8f9fa}.btn-dark{--bs-btn-color:#fff;--bs-btn-bg:#212529;--bs-btn-border-color:#212529;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#424649;--bs-btn-hover-border-color:#373b3e;--bs-btn-focus-shadow-rgb:66,70,73;--bs-btn-active-color:#fff;--bs-btn-active-bg:#4d5154;--bs-btn-active-border-color:#373b3e;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#212529;--bs-btn-disabled-border-color:#212529}.btn-outline-primary{--bs-btn-color:#0d6efd;--bs-btn-border-color:#0d6efd;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#0d6efd;--bs-btn-hover-border-color:#0d6efd;--bs-btn-focus-shadow-rgb:13,110,253;--bs-btn-active-color:#fff;--bs-btn-active-bg:#0d6efd;--bs-btn-active-border-color:#0d6efd;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#0d6efd;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#0d6efd;--bs-gradient:none}.btn-outline-secondary{--bs-btn-color:#6c757d;--bs-btn-border-color:#6c757d;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#6c757d;--bs-btn-hover-border-color:#6c757d;--bs-btn-focus-shadow-rgb:108,117,125;--bs-btn-active-color:#fff;--bs-btn-active-bg:#6c757d;--bs-btn-active-border-color:#6c757d;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#6c757d;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#6c757d;--bs-gradient:none}.btn-outline-success{--bs-btn-color:#198754;--bs-btn-border-color:#198754;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#198754;--bs-btn-hover-border-color:#198754;--bs-btn-focus-shadow-rgb:25,135,84;--bs-btn-active-color:#fff;--bs-btn-active-bg:#198754;--bs-btn-active-border-color:#198754;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#198754;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#198754;--bs-gradient:none}.btn-outline-info{--bs-btn-color:#0dcaf0;--bs-btn-border-color:#0dcaf0;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#0dcaf0;--bs-btn-hover-border-color:#0dcaf0;--bs-btn-focus-shadow-rgb:13,202,240;--bs-btn-active-color:#000;--bs-btn-active-bg:#0dcaf0;--bs-btn-active-border-color:#0dcaf0;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#0dcaf0;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#0dcaf0;--bs-gradient:none}.btn-outline-warning{--bs-btn-color:#ffc107;--bs-btn-border-color:#ffc107;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#ffc107;--bs-btn-hover-border-color:#ffc107;--bs-btn-focus-shadow-rgb:255,193,7;--bs-btn-active-color:#000;--bs-btn-active-bg:#ffc107;--bs-btn-active-border-color:#ffc107;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#ffc107;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#ffc107;--bs-gradient:none}.btn-outline-danger{--bs-btn-color:#dc3545;--bs-btn-border-color:#dc3545;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#dc3545;--bs-btn-hover-border-color:#dc3545;--bs-btn-focus-shadow-rgb:220,53,69;--bs-btn-active-color:#fff;--bs-btn-active-bg:#dc3545;--bs-btn-active-border-color:#dc3545;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#dc3545;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#dc3545;--bs-gradient:none}.btn-outline-light{--bs-btn-color:#f8f9fa;--bs-btn-border-color:#f8f9fa;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#f8f9fa;--bs-btn-hover-border-color:#f8f9fa;--bs-btn-focus-shadow-rgb:248,249,250;--bs-btn-active-color:#000;--bs-btn-active-bg:#f8f9fa;--bs-btn-active-border-color:#f8f9fa;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#f8f9fa;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#f8f9fa;--bs-gradient:none}.btn-outline-dark{--bs-btn-color:#212529;--bs-btn-border-color:#212529;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#212529;--bs-btn-hover-border-color:#212529;--bs-btn-focus-shadow-rgb:33,37,41;--bs-btn-active-color:#fff;--bs-btn-active-bg:#212529;--bs-btn-active-border-color:#212529;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);--bs-btn-disabled-color:#212529;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#212529;--bs-gradient:none}.btn-link{--bs-btn-font-weight:400;--bs-btn-color:var(--bs-link-color);--bs-btn-bg:transparent;--bs-btn-border-color:transparent;--bs-btn-hover-color:var(--bs-link-hover-color);--bs-btn-hover-border-color:transparent;--bs-btn-active-color:var(--bs-link-hover-color);--bs-btn-active-border-color:transparent;--bs-btn-disabled-color:#6c757d;--bs-btn-disabled-border-color:transparent;--bs-btn-box-shadow:0 0 0 #000;--bs-btn-focus-shadow-rgb:49,132,253;text-decoration:underline}.btn-link:focus-visible{color:var(--bs-btn-color)}.btn-link:hover{color:var(--bs-btn-hover-color)}.btn-group-lg>.btn,.btn-lg{--bs-btn-padding-y:0.5rem;--bs-btn-padding-x:1rem;--bs-btn-font-size:1.25rem;--bs-btn-border-radius:var(--bs-border-radius-lg)}.btn-group-sm>.btn,.btn-sm{--bs-btn-padding-y:0.25rem;--bs-btn-padding-x:0.5rem;--bs-btn-font-size:0.875rem;--bs-btn-border-radius:var(--bs-border-radius-sm)}.fade{transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{height:0;overflow:hidden;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{transition:none}}.collapsing.collapse-horizontal{width:0;height:auto;transition:width .35s ease}@media (prefers-reduced-motion:reduce){.collapsing.collapse-horizontal{transition:none}}.dropdown,.dropdown-center,.dropend,.dropstart,.dropup,.dropup-center{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:\\\"\\\";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty::after{margin-left:0}.dropdown-menu{--bs-dropdown-zindex:1000;--bs-dropdown-min-width:10rem;--bs-dropdown-padding-x:0;--bs-dropdown-padding-y:0.5rem;--bs-dropdown-spacer:0.125rem;--bs-dropdown-font-size:1rem;--bs-dropdown-color:var(--bs-body-color);--bs-dropdown-bg:var(--bs-body-bg);--bs-dropdown-border-color:var(--bs-border-color-translucent);--bs-dropdown-border-radius:var(--bs-border-radius);--bs-dropdown-border-width:var(--bs-border-width);--bs-dropdown-inner-border-radius:calc(var(--bs-border-radius) - var(--bs-border-width));--bs-dropdown-divider-bg:var(--bs-border-color-translucent);--bs-dropdown-divider-margin-y:0.5rem;--bs-dropdown-box-shadow:var(--bs-box-shadow);--bs-dropdown-link-color:var(--bs-body-color);--bs-dropdown-link-hover-color:var(--bs-body-color);--bs-dropdown-link-hover-bg:var(--bs-tertiary-bg);--bs-dropdown-link-active-color:#fff;--bs-dropdown-link-active-bg:#0d6efd;--bs-dropdown-link-disabled-color:var(--bs-tertiary-color);--bs-dropdown-item-padding-x:1rem;--bs-dropdown-item-padding-y:0.25rem;--bs-dropdown-header-color:#6c757d;--bs-dropdown-header-padding-x:1rem;--bs-dropdown-header-padding-y:0.5rem;position:absolute;z-index:var(--bs-dropdown-zindex);display:none;min-width:var(--bs-dropdown-min-width);padding:var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);margin:0;font-size:var(--bs-dropdown-font-size);color:var(--bs-dropdown-color);text-align:left;list-style:none;background-color:var(--bs-dropdown-bg);background-clip:padding-box;border:var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);border-radius:var(--bs-dropdown-border-radius)}.dropdown-menu[data-bs-popper]{top:100%;left:0;margin-top:var(--bs-dropdown-spacer)}.dropdown-menu-start{--bs-position:start}.dropdown-menu-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-end{--bs-position:end}.dropdown-menu-end[data-bs-popper]{right:0;left:auto}@media (min-width:576px){.dropdown-menu-sm-start{--bs-position:start}.dropdown-menu-sm-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-sm-end{--bs-position:end}.dropdown-menu-sm-end[data-bs-popper]{right:0;left:auto}}@media (min-width:768px){.dropdown-menu-md-start{--bs-position:start}.dropdown-menu-md-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-md-end{--bs-position:end}.dropdown-menu-md-end[data-bs-popper]{right:0;left:auto}}@media (min-width:992px){.dropdown-menu-lg-start{--bs-position:start}.dropdown-menu-lg-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-lg-end{--bs-position:end}.dropdown-menu-lg-end[data-bs-popper]{right:0;left:auto}}@media (min-width:1200px){.dropdown-menu-xl-start{--bs-position:start}.dropdown-menu-xl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xl-end{--bs-position:end}.dropdown-menu-xl-end[data-bs-popper]{right:0;left:auto}}@media (min-width:1400px){.dropdown-menu-xxl-start{--bs-position:start}.dropdown-menu-xxl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xxl-end{--bs-position:end}.dropdown-menu-xxl-end[data-bs-popper]{right:0;left:auto}}.dropup .dropdown-menu[data-bs-popper]{top:auto;bottom:100%;margin-top:0;margin-bottom:var(--bs-dropdown-spacer)}.dropup .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:\\\"\\\";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-menu[data-bs-popper]{top:0;right:auto;left:100%;margin-top:0;margin-left:var(--bs-dropdown-spacer)}.dropend .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:\\\"\\\";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropend .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-toggle::after{vertical-align:0}.dropstart .dropdown-menu[data-bs-popper]{top:0;right:100%;left:auto;margin-top:0;margin-right:var(--bs-dropdown-spacer)}.dropstart .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:\\\"\\\"}.dropstart .dropdown-toggle::after{display:none}.dropstart .dropdown-toggle::before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:\\\"\\\";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropstart .dropdown-toggle:empty::after{margin-left:0}.dropstart .dropdown-toggle::before{vertical-align:0}.dropdown-divider{height:0;margin:var(--bs-dropdown-divider-margin-y) 0;overflow:hidden;border-top:1px solid var(--bs-dropdown-divider-bg);opacity:1}.dropdown-item{display:block;width:100%;padding:var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);clear:both;font-weight:400;color:var(--bs-dropdown-link-color);text-align:inherit;text-decoration:none;white-space:nowrap;background-color:transparent;border:0;border-radius:var(--bs-dropdown-item-border-radius,0)}.dropdown-item:focus,.dropdown-item:hover{color:var(--bs-dropdown-link-hover-color);background-color:var(--bs-dropdown-link-hover-bg)}.dropdown-item.active,.dropdown-item:active{color:var(--bs-dropdown-link-active-color);text-decoration:none;background-color:var(--bs-dropdown-link-active-bg)}.dropdown-item.disabled,.dropdown-item:disabled{color:var(--bs-dropdown-link-disabled-color);pointer-events:none;background-color:transparent}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:var(--bs-dropdown-header-padding-y) var(--bs-dropdown-header-padding-x);margin-bottom:0;font-size:.875rem;color:var(--bs-dropdown-header-color);white-space:nowrap}.dropdown-item-text{display:block;padding:var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);color:var(--bs-dropdown-link-color)}.dropdown-menu-dark{--bs-dropdown-color:#dee2e6;--bs-dropdown-bg:#343a40;--bs-dropdown-border-color:var(--bs-border-color-translucent);--bs-dropdown-box-shadow: ;--bs-dropdown-link-color:#dee2e6;--bs-dropdown-link-hover-color:#fff;--bs-dropdown-divider-bg:var(--bs-border-color-translucent);--bs-dropdown-link-hover-bg:rgba(255, 255, 255, 0.15);--bs-dropdown-link-active-color:#fff;--bs-dropdown-link-active-bg:#0d6efd;--bs-dropdown-link-disabled-color:#adb5bd;--bs-dropdown-header-color:#adb5bd}.btn-group,.btn-group-vertical{position:relative;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;flex:1 1 auto}.btn-group-vertical>.btn-check:checked+.btn,.btn-group-vertical>.btn-check:focus+.btn,.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn-check:checked+.btn,.btn-group>.btn-check:focus+.btn,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:1}.btn-toolbar{display:flex;flex-wrap:wrap;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group{border-radius:var(--bs-border-radius)}.btn-group>.btn-group:not(:first-child),.btn-group>:not(.btn-check:first-child)+.btn{margin-left:calc(var(--bs-border-width) * -1)}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn.dropdown-toggle-split:first-child,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:nth-child(n+3),.btn-group>:not(.btn-check)+.btn{border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split::after,.dropend .dropdown-toggle-split::after,.dropup .dropdown-toggle-split::after{margin-left:0}.dropstart .dropdown-toggle-split::before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{flex-direction:column;align-items:flex-start;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn-group:not(:first-child),.btn-group-vertical>.btn:not(:first-child){margin-top:calc(var(--bs-border-width) * -1)}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn~.btn{border-top-left-radius:0;border-top-right-radius:0}.nav{--bs-nav-link-padding-x:1rem;--bs-nav-link-padding-y:0.5rem;--bs-nav-link-font-weight: ;--bs-nav-link-color:var(--bs-link-color);--bs-nav-link-hover-color:var(--bs-link-hover-color);--bs-nav-link-disabled-color:var(--bs-secondary-color);display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);font-size:var(--bs-nav-link-font-size);font-weight:var(--bs-nav-link-font-weight);color:var(--bs-nav-link-color);text-decoration:none;background:0 0;border:0;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out}@media (prefers-reduced-motion:reduce){.nav-link{transition:none}}.nav-link:focus,.nav-link:hover{color:var(--bs-nav-link-hover-color)}.nav-link:focus-visible{outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.nav-link.disabled,.nav-link:disabled{color:var(--bs-nav-link-disabled-color);pointer-events:none;cursor:default}.nav-tabs{--bs-nav-tabs-border-width:var(--bs-border-width);--bs-nav-tabs-border-color:var(--bs-border-color);--bs-nav-tabs-border-radius:var(--bs-border-radius);--bs-nav-tabs-link-hover-border-color:var(--bs-secondary-bg) var(--bs-secondary-bg) var(--bs-border-color);--bs-nav-tabs-link-active-color:var(--bs-emphasis-color);--bs-nav-tabs-link-active-bg:var(--bs-body-bg);--bs-nav-tabs-link-active-border-color:var(--bs-border-color) var(--bs-border-color) var(--bs-body-bg);border-bottom:var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color)}.nav-tabs .nav-link{margin-bottom:calc(-1 * var(--bs-nav-tabs-border-width));border:var(--bs-nav-tabs-border-width) solid transparent;border-top-left-radius:var(--bs-nav-tabs-border-radius);border-top-right-radius:var(--bs-nav-tabs-border-radius)}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{isolation:isolate;border-color:var(--bs-nav-tabs-link-hover-border-color)}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{color:var(--bs-nav-tabs-link-active-color);background-color:var(--bs-nav-tabs-link-active-bg);border-color:var(--bs-nav-tabs-link-active-border-color)}.nav-tabs .dropdown-menu{margin-top:calc(-1 * var(--bs-nav-tabs-border-width));border-top-left-radius:0;border-top-right-radius:0}.nav-pills{--bs-nav-pills-border-radius:var(--bs-border-radius);--bs-nav-pills-link-active-color:#fff;--bs-nav-pills-link-active-bg:#0d6efd}.nav-pills .nav-link{border-radius:var(--bs-nav-pills-border-radius)}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:var(--bs-nav-pills-link-active-color);background-color:var(--bs-nav-pills-link-active-bg)}.nav-underline{--bs-nav-underline-gap:1rem;--bs-nav-underline-border-width:0.125rem;--bs-nav-underline-link-active-color:var(--bs-emphasis-color);gap:var(--bs-nav-underline-gap)}.nav-underline .nav-link{padding-right:0;padding-left:0;border-bottom:var(--bs-nav-underline-border-width) solid transparent}.nav-underline .nav-link:focus,.nav-underline .nav-link:hover{border-bottom-color:currentcolor}.nav-underline .nav-link.active,.nav-underline .show>.nav-link{font-weight:700;color:var(--bs-nav-underline-link-active-color);border-bottom-color:currentcolor}.nav-fill .nav-item,.nav-fill>.nav-link{flex:1 1 auto;text-align:center}.nav-justified .nav-item,.nav-justified>.nav-link{flex-basis:0;flex-grow:1;text-align:center}.nav-fill .nav-item .nav-link,.nav-justified .nav-item .nav-link{width:100%}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{--bs-navbar-padding-x:0;--bs-navbar-padding-y:0.5rem;--bs-navbar-color:rgba(var(--bs-emphasis-color-rgb), 0.65);--bs-navbar-hover-color:rgba(var(--bs-emphasis-color-rgb), 0.8);--bs-navbar-disabled-color:rgba(var(--bs-emphasis-color-rgb), 0.3);--bs-navbar-active-color:rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-brand-padding-y:0.3125rem;--bs-navbar-brand-margin-end:1rem;--bs-navbar-brand-font-size:1.25rem;--bs-navbar-brand-color:rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-brand-hover-color:rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-nav-link-padding-x:0.5rem;--bs-navbar-toggler-padding-y:0.25rem;--bs-navbar-toggler-padding-x:0.75rem;--bs-navbar-toggler-font-size:1.25rem;--bs-navbar-toggler-icon-bg:url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2833, 37, 41, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\\\");--bs-navbar-toggler-border-color:rgba(var(--bs-emphasis-color-rgb), 0.15);--bs-navbar-toggler-border-radius:var(--bs-border-radius);--bs-navbar-toggler-focus-width:0.25rem;--bs-navbar-toggler-transition:box-shadow 0.15s ease-in-out;position:relative;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:var(--bs-navbar-padding-y) var(--bs-navbar-padding-x)}.navbar>.container,.navbar>.container-fluid,.navbar>.container-lg,.navbar>.container-md,.navbar>.container-sm,.navbar>.container-xl,.navbar>.container-xxl{display:flex;flex-wrap:inherit;align-items:center;justify-content:space-between}.navbar-brand{padding-top:var(--bs-navbar-brand-padding-y);padding-bottom:var(--bs-navbar-brand-padding-y);margin-right:var(--bs-navbar-brand-margin-end);font-size:var(--bs-navbar-brand-font-size);color:var(--bs-navbar-brand-color);text-decoration:none;white-space:nowrap}.navbar-brand:focus,.navbar-brand:hover{color:var(--bs-navbar-brand-hover-color)}.navbar-nav{--bs-nav-link-padding-x:0;--bs-nav-link-padding-y:0.5rem;--bs-nav-link-font-weight: ;--bs-nav-link-color:var(--bs-navbar-color);--bs-nav-link-hover-color:var(--bs-navbar-hover-color);--bs-nav-link-disabled-color:var(--bs-navbar-disabled-color);display:flex;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link.active,.navbar-nav .nav-link.show{color:var(--bs-navbar-active-color)}.navbar-nav .dropdown-menu{position:static}.navbar-text{padding-top:.5rem;padding-bottom:.5rem;color:var(--bs-navbar-color)}.navbar-text a,.navbar-text a:focus,.navbar-text a:hover{color:var(--bs-navbar-active-color)}.navbar-collapse{flex-basis:100%;flex-grow:1;align-items:center}.navbar-toggler{padding:var(--bs-navbar-toggler-padding-y) var(--bs-navbar-toggler-padding-x);font-size:var(--bs-navbar-toggler-font-size);line-height:1;color:var(--bs-navbar-color);background-color:transparent;border:var(--bs-border-width) solid var(--bs-navbar-toggler-border-color);border-radius:var(--bs-navbar-toggler-border-radius);transition:var(--bs-navbar-toggler-transition)}@media (prefers-reduced-motion:reduce){.navbar-toggler{transition:none}}.navbar-toggler:hover{text-decoration:none}.navbar-toggler:focus{text-decoration:none;outline:0;box-shadow:0 0 0 var(--bs-navbar-toggler-focus-width)}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;background-image:var(--bs-navbar-toggler-icon-bg);background-repeat:no-repeat;background-position:center;background-size:100%}.navbar-nav-scroll{max-height:var(--bs-scroll-height,75vh);overflow-y:auto}@media (min-width:576px){.navbar-expand-sm{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-sm .navbar-nav{flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-sm .navbar-nav-scroll{overflow:visible}.navbar-expand-sm .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}.navbar-expand-sm .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;transform:none!important;transition:none}.navbar-expand-sm .offcanvas .offcanvas-header{display:none}.navbar-expand-sm .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:768px){.navbar-expand-md{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-md .navbar-nav{flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-md .navbar-nav-scroll{overflow:visible}.navbar-expand-md .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}.navbar-expand-md .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;transform:none!important;transition:none}.navbar-expand-md .offcanvas .offcanvas-header{display:none}.navbar-expand-md .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:992px){.navbar-expand-lg{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-lg .navbar-nav-scroll{overflow:visible}.navbar-expand-lg .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}.navbar-expand-lg .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;transform:none!important;transition:none}.navbar-expand-lg .offcanvas .offcanvas-header{display:none}.navbar-expand-lg .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:1200px){.navbar-expand-xl{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-xl .navbar-nav{flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-xl .navbar-nav-scroll{overflow:visible}.navbar-expand-xl .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}.navbar-expand-xl .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;transform:none!important;transition:none}.navbar-expand-xl .offcanvas .offcanvas-header{display:none}.navbar-expand-xl .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:1400px){.navbar-expand-xxl{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-xxl .navbar-nav{flex-direction:row}.navbar-expand-xxl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xxl .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-xxl .navbar-nav-scroll{overflow:visible}.navbar-expand-xxl .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-xxl .navbar-toggler{display:none}.navbar-expand-xxl .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;transform:none!important;transition:none}.navbar-expand-xxl .offcanvas .offcanvas-header{display:none}.navbar-expand-xxl .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}.navbar-expand{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand .navbar-nav{flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand .navbar-nav-scroll{overflow:visible}.navbar-expand .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-expand .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;transform:none!important;transition:none}.navbar-expand .offcanvas .offcanvas-header{display:none}.navbar-expand .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}.navbar-dark,.navbar[data-bs-theme=dark]{--bs-navbar-color:rgba(255, 255, 255, 0.55);--bs-navbar-hover-color:rgba(255, 255, 255, 0.75);--bs-navbar-disabled-color:rgba(255, 255, 255, 0.25);--bs-navbar-active-color:#fff;--bs-navbar-brand-color:#fff;--bs-navbar-brand-hover-color:#fff;--bs-navbar-toggler-border-color:rgba(255, 255, 255, 0.1);--bs-navbar-toggler-icon-bg:url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\\\")}[data-bs-theme=dark] .navbar-toggler-icon{--bs-navbar-toggler-icon-bg:url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\\\")}.card{--bs-card-spacer-y:1rem;--bs-card-spacer-x:1rem;--bs-card-title-spacer-y:0.5rem;--bs-card-title-color: ;--bs-card-subtitle-color: ;--bs-card-border-width:var(--bs-border-width);--bs-card-border-color:var(--bs-border-color-translucent);--bs-card-border-radius:var(--bs-border-radius);--bs-card-box-shadow: ;--bs-card-inner-border-radius:calc(var(--bs-border-radius) - (var(--bs-border-width)));--bs-card-cap-padding-y:0.5rem;--bs-card-cap-padding-x:1rem;--bs-card-cap-bg:rgba(var(--bs-body-color-rgb), 0.03);--bs-card-cap-color: ;--bs-card-height: ;--bs-card-color: ;--bs-card-bg:var(--bs-body-bg);--bs-card-img-overlay-padding:1rem;--bs-card-group-margin:0.75rem;position:relative;display:flex;flex-direction:column;min-width:0;height:var(--bs-card-height);color:var(--bs-body-color);word-wrap:break-word;background-color:var(--bs-card-bg);background-clip:border-box;border:var(--bs-card-border-width) solid var(--bs-card-border-color);border-radius:var(--bs-card-border-radius)}.card>hr{margin-right:0;margin-left:0}.card>.list-group{border-top:inherit;border-bottom:inherit}.card>.list-group:first-child{border-top-width:0;border-top-left-radius:var(--bs-card-inner-border-radius);border-top-right-radius:var(--bs-card-inner-border-radius)}.card>.list-group:last-child{border-bottom-width:0;border-bottom-right-radius:var(--bs-card-inner-border-radius);border-bottom-left-radius:var(--bs-card-inner-border-radius)}.card>.card-header+.list-group,.card>.list-group+.card-footer{border-top:0}.card-body{flex:1 1 auto;padding:var(--bs-card-spacer-y) var(--bs-card-spacer-x);color:var(--bs-card-color)}.card-title{margin-bottom:var(--bs-card-title-spacer-y);color:var(--bs-card-title-color)}.card-subtitle{margin-top:calc(-.5 * var(--bs-card-title-spacer-y));margin-bottom:0;color:var(--bs-card-subtitle-color)}.card-text:last-child{margin-bottom:0}.card-link+.card-link{margin-left:var(--bs-card-spacer-x)}.card-header{padding:var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);margin-bottom:0;color:var(--bs-card-cap-color);background-color:var(--bs-card-cap-bg);border-bottom:var(--bs-card-border-width) solid var(--bs-card-border-color)}.card-header:first-child{border-radius:var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius) 0 0}.card-footer{padding:var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);color:var(--bs-card-cap-color);background-color:var(--bs-card-cap-bg);border-top:var(--bs-card-border-width) solid var(--bs-card-border-color)}.card-footer:last-child{border-radius:0 0 var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius)}.card-header-tabs{margin-right:calc(-.5 * var(--bs-card-cap-padding-x));margin-bottom:calc(-1 * var(--bs-card-cap-padding-y));margin-left:calc(-.5 * var(--bs-card-cap-padding-x));border-bottom:0}.card-header-tabs .nav-link.active{background-color:var(--bs-card-bg);border-bottom-color:var(--bs-card-bg)}.card-header-pills{margin-right:calc(-.5 * var(--bs-card-cap-padding-x));margin-left:calc(-.5 * var(--bs-card-cap-padding-x))}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:var(--bs-card-img-overlay-padding);border-radius:var(--bs-card-inner-border-radius)}.card-img,.card-img-bottom,.card-img-top{width:100%}.card-img,.card-img-top{border-top-left-radius:var(--bs-card-inner-border-radius);border-top-right-radius:var(--bs-card-inner-border-radius)}.card-img,.card-img-bottom{border-bottom-right-radius:var(--bs-card-inner-border-radius);border-bottom-left-radius:var(--bs-card-inner-border-radius)}.card-group>.card{margin-bottom:var(--bs-card-group-margin)}@media (min-width:576px){.card-group{display:flex;flex-flow:row wrap}.card-group>.card{flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-header,.card-group>.card:not(:last-child) .card-img-top{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-footer,.card-group>.card:not(:last-child) .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-header,.card-group>.card:not(:first-child) .card-img-top{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-footer,.card-group>.card:not(:first-child) .card-img-bottom{border-bottom-left-radius:0}}.accordion{--bs-accordion-color:var(--bs-body-color);--bs-accordion-bg:var(--bs-body-bg);--bs-accordion-transition:color 0.15s ease-in-out,background-color 0.15s ease-in-out,border-color 0.15s ease-in-out,box-shadow 0.15s ease-in-out,border-radius 0.15s ease;--bs-accordion-border-color:var(--bs-border-color);--bs-accordion-border-width:var(--bs-border-width);--bs-accordion-border-radius:var(--bs-border-radius);--bs-accordion-inner-border-radius:calc(var(--bs-border-radius) - (var(--bs-border-width)));--bs-accordion-btn-padding-x:1.25rem;--bs-accordion-btn-padding-y:1rem;--bs-accordion-btn-color:var(--bs-body-color);--bs-accordion-btn-bg:var(--bs-accordion-bg);--bs-accordion-btn-icon:url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23212529' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='M2 5L8 11L14 5'/%3e%3c/svg%3e\\\");--bs-accordion-btn-icon-width:1.25rem;--bs-accordion-btn-icon-transform:rotate(-180deg);--bs-accordion-btn-icon-transition:transform 0.2s ease-in-out;--bs-accordion-btn-active-icon:url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23052c65' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='M2 5L8 11L14 5'/%3e%3c/svg%3e\\\");--bs-accordion-btn-focus-box-shadow:0 0 0 0.25rem rgba(13, 110, 253, 0.25);--bs-accordion-body-padding-x:1.25rem;--bs-accordion-body-padding-y:1rem;--bs-accordion-active-color:var(--bs-primary-text-emphasis);--bs-accordion-active-bg:var(--bs-primary-bg-subtle)}.accordion-button{position:relative;display:flex;align-items:center;width:100%;padding:var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);font-size:1rem;color:var(--bs-accordion-btn-color);text-align:left;background-color:var(--bs-accordion-btn-bg);border:0;border-radius:0;overflow-anchor:none;transition:var(--bs-accordion-transition)}@media (prefers-reduced-motion:reduce){.accordion-button{transition:none}}.accordion-button:not(.collapsed){color:var(--bs-accordion-active-color);background-color:var(--bs-accordion-active-bg);box-shadow:inset 0 calc(-1 * var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color)}.accordion-button:not(.collapsed)::after{background-image:var(--bs-accordion-btn-active-icon);transform:var(--bs-accordion-btn-icon-transform)}.accordion-button::after{flex-shrink:0;width:var(--bs-accordion-btn-icon-width);height:var(--bs-accordion-btn-icon-width);margin-left:auto;content:\\\"\\\";background-image:var(--bs-accordion-btn-icon);background-repeat:no-repeat;background-size:var(--bs-accordion-btn-icon-width);transition:var(--bs-accordion-btn-icon-transition)}@media (prefers-reduced-motion:reduce){.accordion-button::after{transition:none}}.accordion-button:hover{z-index:2}.accordion-button:focus{z-index:3;outline:0;box-shadow:var(--bs-accordion-btn-focus-box-shadow)}.accordion-header{margin-bottom:0}.accordion-item{color:var(--bs-accordion-color);background-color:var(--bs-accordion-bg);border:var(--bs-accordion-border-width) solid var(--bs-accordion-border-color)}.accordion-item:first-of-type{border-top-left-radius:var(--bs-accordion-border-radius);border-top-right-radius:var(--bs-accordion-border-radius)}.accordion-item:first-of-type>.accordion-header .accordion-button{border-top-left-radius:var(--bs-accordion-inner-border-radius);border-top-right-radius:var(--bs-accordion-inner-border-radius)}.accordion-item:not(:first-of-type){border-top:0}.accordion-item:last-of-type{border-bottom-right-radius:var(--bs-accordion-border-radius);border-bottom-left-radius:var(--bs-accordion-border-radius)}.accordion-item:last-of-type>.accordion-header .accordion-button.collapsed{border-bottom-right-radius:var(--bs-accordion-inner-border-radius);border-bottom-left-radius:var(--bs-accordion-inner-border-radius)}.accordion-item:last-of-type>.accordion-collapse{border-bottom-right-radius:var(--bs-accordion-border-radius);border-bottom-left-radius:var(--bs-accordion-border-radius)}.accordion-body{padding:var(--bs-accordion-body-padding-y) var(--bs-accordion-body-padding-x)}.accordion-flush>.accordion-item{border-right:0;border-left:0;border-radius:0}.accordion-flush>.accordion-item:first-child{border-top:0}.accordion-flush>.accordion-item:last-child{border-bottom:0}.accordion-flush>.accordion-item>.accordion-header .accordion-button,.accordion-flush>.accordion-item>.accordion-header .accordion-button.collapsed{border-radius:0}.accordion-flush>.accordion-item>.accordion-collapse{border-radius:0}[data-bs-theme=dark] .accordion-button::after{--bs-accordion-btn-icon:url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236ea8fe'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e\\\");--bs-accordion-btn-active-icon:url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236ea8fe'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e\\\")}.breadcrumb{--bs-breadcrumb-padding-x:0;--bs-breadcrumb-padding-y:0;--bs-breadcrumb-margin-bottom:1rem;--bs-breadcrumb-bg: ;--bs-breadcrumb-border-radius: ;--bs-breadcrumb-divider-color:var(--bs-secondary-color);--bs-breadcrumb-item-padding-x:0.5rem;--bs-breadcrumb-item-active-color:var(--bs-secondary-color);display:flex;flex-wrap:wrap;padding:var(--bs-breadcrumb-padding-y) var(--bs-breadcrumb-padding-x);margin-bottom:var(--bs-breadcrumb-margin-bottom);font-size:var(--bs-breadcrumb-font-size);list-style:none;background-color:var(--bs-breadcrumb-bg);border-radius:var(--bs-breadcrumb-border-radius)}.breadcrumb-item+.breadcrumb-item{padding-left:var(--bs-breadcrumb-item-padding-x)}.breadcrumb-item+.breadcrumb-item::before{float:left;padding-right:var(--bs-breadcrumb-item-padding-x);color:var(--bs-breadcrumb-divider-color);content:var(--bs-breadcrumb-divider, \\\"/\\\")}.breadcrumb-item.active{color:var(--bs-breadcrumb-item-active-color)}.pagination{--bs-pagination-padding-x:0.75rem;--bs-pagination-padding-y:0.375rem;--bs-pagination-font-size:1rem;--bs-pagination-color:var(--bs-link-color);--bs-pagination-bg:var(--bs-body-bg);--bs-pagination-border-width:var(--bs-border-width);--bs-pagination-border-color:var(--bs-border-color);--bs-pagination-border-radius:var(--bs-border-radius);--bs-pagination-hover-color:var(--bs-link-hover-color);--bs-pagination-hover-bg:var(--bs-tertiary-bg);--bs-pagination-hover-border-color:var(--bs-border-color);--bs-pagination-focus-color:var(--bs-link-hover-color);--bs-pagination-focus-bg:var(--bs-secondary-bg);--bs-pagination-focus-box-shadow:0 0 0 0.25rem rgba(13, 110, 253, 0.25);--bs-pagination-active-color:#fff;--bs-pagination-active-bg:#0d6efd;--bs-pagination-active-border-color:#0d6efd;--bs-pagination-disabled-color:var(--bs-secondary-color);--bs-pagination-disabled-bg:var(--bs-secondary-bg);--bs-pagination-disabled-border-color:var(--bs-border-color);display:flex;padding-left:0;list-style:none}.page-link{position:relative;display:block;padding:var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);font-size:var(--bs-pagination-font-size);color:var(--bs-pagination-color);text-decoration:none;background-color:var(--bs-pagination-bg);border:var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.page-link{transition:none}}.page-link:hover{z-index:2;color:var(--bs-pagination-hover-color);background-color:var(--bs-pagination-hover-bg);border-color:var(--bs-pagination-hover-border-color)}.page-link:focus{z-index:3;color:var(--bs-pagination-focus-color);background-color:var(--bs-pagination-focus-bg);outline:0;box-shadow:var(--bs-pagination-focus-box-shadow)}.active>.page-link,.page-link.active{z-index:3;color:var(--bs-pagination-active-color);background-color:var(--bs-pagination-active-bg);border-color:var(--bs-pagination-active-border-color)}.disabled>.page-link,.page-link.disabled{color:var(--bs-pagination-disabled-color);pointer-events:none;background-color:var(--bs-pagination-disabled-bg);border-color:var(--bs-pagination-disabled-border-color)}.page-item:not(:first-child) .page-link{margin-left:calc(var(--bs-border-width) * -1)}.page-item:first-child .page-link{border-top-left-radius:var(--bs-pagination-border-radius);border-bottom-left-radius:var(--bs-pagination-border-radius)}.page-item:last-child .page-link{border-top-right-radius:var(--bs-pagination-border-radius);border-bottom-right-radius:var(--bs-pagination-border-radius)}.pagination-lg{--bs-pagination-padding-x:1.5rem;--bs-pagination-padding-y:0.75rem;--bs-pagination-font-size:1.25rem;--bs-pagination-border-radius:var(--bs-border-radius-lg)}.pagination-sm{--bs-pagination-padding-x:0.5rem;--bs-pagination-padding-y:0.25rem;--bs-pagination-font-size:0.875rem;--bs-pagination-border-radius:var(--bs-border-radius-sm)}.badge{--bs-badge-padding-x:0.65em;--bs-badge-padding-y:0.35em;--bs-badge-font-size:0.75em;--bs-badge-font-weight:700;--bs-badge-color:#fff;--bs-badge-border-radius:var(--bs-border-radius);display:inline-block;padding:var(--bs-badge-padding-y) var(--bs-badge-padding-x);font-size:var(--bs-badge-font-size);font-weight:var(--bs-badge-font-weight);line-height:1;color:var(--bs-badge-color);text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:var(--bs-badge-border-radius)}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.alert{--bs-alert-bg:transparent;--bs-alert-padding-x:1rem;--bs-alert-padding-y:1rem;--bs-alert-margin-bottom:1rem;--bs-alert-color:inherit;--bs-alert-border-color:transparent;--bs-alert-border:var(--bs-border-width) solid var(--bs-alert-border-color);--bs-alert-border-radius:var(--bs-border-radius);--bs-alert-link-color:inherit;position:relative;padding:var(--bs-alert-padding-y) var(--bs-alert-padding-x);margin-bottom:var(--bs-alert-margin-bottom);color:var(--bs-alert-color);background-color:var(--bs-alert-bg);border:var(--bs-alert-border);border-radius:var(--bs-alert-border-radius)}.alert-heading{color:inherit}.alert-link{font-weight:700;color:var(--bs-alert-link-color)}.alert-dismissible{padding-right:3rem}.alert-dismissible .btn-close{position:absolute;top:0;right:0;z-index:2;padding:1.25rem 1rem}.alert-primary{--bs-alert-color:var(--bs-primary-text-emphasis);--bs-alert-bg:var(--bs-primary-bg-subtle);--bs-alert-border-color:var(--bs-primary-border-subtle);--bs-alert-link-color:var(--bs-primary-text-emphasis)}.alert-secondary{--bs-alert-color:var(--bs-secondary-text-emphasis);--bs-alert-bg:var(--bs-secondary-bg-subtle);--bs-alert-border-color:var(--bs-secondary-border-subtle);--bs-alert-link-color:var(--bs-secondary-text-emphasis)}.alert-success{--bs-alert-color:var(--bs-success-text-emphasis);--bs-alert-bg:var(--bs-success-bg-subtle);--bs-alert-border-color:var(--bs-success-border-subtle);--bs-alert-link-color:var(--bs-success-text-emphasis)}.alert-info{--bs-alert-color:var(--bs-info-text-emphasis);--bs-alert-bg:var(--bs-info-bg-subtle);--bs-alert-border-color:var(--bs-info-border-subtle);--bs-alert-link-color:var(--bs-info-text-emphasis)}.alert-warning{--bs-alert-color:var(--bs-warning-text-emphasis);--bs-alert-bg:var(--bs-warning-bg-subtle);--bs-alert-border-color:var(--bs-warning-border-subtle);--bs-alert-link-color:var(--bs-warning-text-emphasis)}.alert-danger{--bs-alert-color:var(--bs-danger-text-emphasis);--bs-alert-bg:var(--bs-danger-bg-subtle);--bs-alert-border-color:var(--bs-danger-border-subtle);--bs-alert-link-color:var(--bs-danger-text-emphasis)}.alert-light{--bs-alert-color:var(--bs-light-text-emphasis);--bs-alert-bg:var(--bs-light-bg-subtle);--bs-alert-border-color:var(--bs-light-border-subtle);--bs-alert-link-color:var(--bs-light-text-emphasis)}.alert-dark{--bs-alert-color:var(--bs-dark-text-emphasis);--bs-alert-bg:var(--bs-dark-bg-subtle);--bs-alert-border-color:var(--bs-dark-border-subtle);--bs-alert-link-color:var(--bs-dark-text-emphasis)}@keyframes progress-bar-stripes{0%{background-position-x:1rem}}.progress,.progress-stacked{--bs-progress-height:1rem;--bs-progress-font-size:0.75rem;--bs-progress-bg:var(--bs-secondary-bg);--bs-progress-border-radius:var(--bs-border-radius);--bs-progress-box-shadow:var(--bs-box-shadow-inset);--bs-progress-bar-color:#fff;--bs-progress-bar-bg:#0d6efd;--bs-progress-bar-transition:width 0.6s ease;display:flex;height:var(--bs-progress-height);overflow:hidden;font-size:var(--bs-progress-font-size);background-color:var(--bs-progress-bg);border-radius:var(--bs-progress-border-radius)}.progress-bar{display:flex;flex-direction:column;justify-content:center;overflow:hidden;color:var(--bs-progress-bar-color);text-align:center;white-space:nowrap;background-color:var(--bs-progress-bar-bg);transition:var(--bs-progress-bar-transition)}@media (prefers-reduced-motion:reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:var(--bs-progress-height) var(--bs-progress-height)}.progress-stacked>.progress{overflow:visible}.progress-stacked>.progress>.progress-bar{width:100%}.progress-bar-animated{animation:1s linear infinite progress-bar-stripes}@media (prefers-reduced-motion:reduce){.progress-bar-animated{animation:none}}.list-group{--bs-list-group-color:var(--bs-body-color);--bs-list-group-bg:var(--bs-body-bg);--bs-list-group-border-color:var(--bs-border-color);--bs-list-group-border-width:var(--bs-border-width);--bs-list-group-border-radius:var(--bs-border-radius);--bs-list-group-item-padding-x:1rem;--bs-list-group-item-padding-y:0.5rem;--bs-list-group-action-color:var(--bs-secondary-color);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-tertiary-bg);--bs-list-group-action-active-color:var(--bs-body-color);--bs-list-group-action-active-bg:var(--bs-secondary-bg);--bs-list-group-disabled-color:var(--bs-secondary-color);--bs-list-group-disabled-bg:var(--bs-body-bg);--bs-list-group-active-color:#fff;--bs-list-group-active-bg:#0d6efd;--bs-list-group-active-border-color:#0d6efd;display:flex;flex-direction:column;padding-left:0;margin-bottom:0;border-radius:var(--bs-list-group-border-radius)}.list-group-numbered{list-style-type:none;counter-reset:section}.list-group-numbered>.list-group-item::before{content:counters(section, \\\".\\\") \\\". \\\";counter-increment:section}.list-group-item-action{width:100%;color:var(--bs-list-group-action-color);text-align:inherit}.list-group-item-action:focus,.list-group-item-action:hover{z-index:1;color:var(--bs-list-group-action-hover-color);text-decoration:none;background-color:var(--bs-list-group-action-hover-bg)}.list-group-item-action:active{color:var(--bs-list-group-action-active-color);background-color:var(--bs-list-group-action-active-bg)}.list-group-item{position:relative;display:block;padding:var(--bs-list-group-item-padding-y) var(--bs-list-group-item-padding-x);color:var(--bs-list-group-color);text-decoration:none;background-color:var(--bs-list-group-bg);border:var(--bs-list-group-border-width) solid var(--bs-list-group-border-color)}.list-group-item:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.list-group-item:last-child{border-bottom-right-radius:inherit;border-bottom-left-radius:inherit}.list-group-item.disabled,.list-group-item:disabled{color:var(--bs-list-group-disabled-color);pointer-events:none;background-color:var(--bs-list-group-disabled-bg)}.list-group-item.active{z-index:2;color:var(--bs-list-group-active-color);background-color:var(--bs-list-group-active-bg);border-color:var(--bs-list-group-active-border-color)}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:calc(-1 * var(--bs-list-group-border-width));border-top-width:var(--bs-list-group-border-width)}.list-group-horizontal{flex-direction:row}.list-group-horizontal>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal>.list-group-item.active{margin-top:0}.list-group-horizontal>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}@media (min-width:576px){.list-group-horizontal-sm{flex-direction:row}.list-group-horizontal-sm>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-sm>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-sm>.list-group-item.active{margin-top:0}.list-group-horizontal-sm>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-sm>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media (min-width:768px){.list-group-horizontal-md{flex-direction:row}.list-group-horizontal-md>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-md>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-md>.list-group-item.active{margin-top:0}.list-group-horizontal-md>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-md>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media (min-width:992px){.list-group-horizontal-lg{flex-direction:row}.list-group-horizontal-lg>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-lg>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-lg>.list-group-item.active{margin-top:0}.list-group-horizontal-lg>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-lg>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media (min-width:1200px){.list-group-horizontal-xl{flex-direction:row}.list-group-horizontal-xl>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-xl>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-xl>.list-group-item.active{margin-top:0}.list-group-horizontal-xl>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-xl>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media (min-width:1400px){.list-group-horizontal-xxl{flex-direction:row}.list-group-horizontal-xxl>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-xxl>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-xxl>.list-group-item.active{margin-top:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}.list-group-flush{border-radius:0}.list-group-flush>.list-group-item{border-width:0 0 var(--bs-list-group-border-width)}.list-group-flush>.list-group-item:last-child{border-bottom-width:0}.list-group-item-primary{--bs-list-group-color:var(--bs-primary-text-emphasis);--bs-list-group-bg:var(--bs-primary-bg-subtle);--bs-list-group-border-color:var(--bs-primary-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-primary-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-primary-border-subtle);--bs-list-group-active-color:var(--bs-primary-bg-subtle);--bs-list-group-active-bg:var(--bs-primary-text-emphasis);--bs-list-group-active-border-color:var(--bs-primary-text-emphasis)}.list-group-item-secondary{--bs-list-group-color:var(--bs-secondary-text-emphasis);--bs-list-group-bg:var(--bs-secondary-bg-subtle);--bs-list-group-border-color:var(--bs-secondary-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-secondary-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-secondary-border-subtle);--bs-list-group-active-color:var(--bs-secondary-bg-subtle);--bs-list-group-active-bg:var(--bs-secondary-text-emphasis);--bs-list-group-active-border-color:var(--bs-secondary-text-emphasis)}.list-group-item-success{--bs-list-group-color:var(--bs-success-text-emphasis);--bs-list-group-bg:var(--bs-success-bg-subtle);--bs-list-group-border-color:var(--bs-success-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-success-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-success-border-subtle);--bs-list-group-active-color:var(--bs-success-bg-subtle);--bs-list-group-active-bg:var(--bs-success-text-emphasis);--bs-list-group-active-border-color:var(--bs-success-text-emphasis)}.list-group-item-info{--bs-list-group-color:var(--bs-info-text-emphasis);--bs-list-group-bg:var(--bs-info-bg-subtle);--bs-list-group-border-color:var(--bs-info-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-info-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-info-border-subtle);--bs-list-group-active-color:var(--bs-info-bg-subtle);--bs-list-group-active-bg:var(--bs-info-text-emphasis);--bs-list-group-active-border-color:var(--bs-info-text-emphasis)}.list-group-item-warning{--bs-list-group-color:var(--bs-warning-text-emphasis);--bs-list-group-bg:var(--bs-warning-bg-subtle);--bs-list-group-border-color:var(--bs-warning-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-warning-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-warning-border-subtle);--bs-list-group-active-color:var(--bs-warning-bg-subtle);--bs-list-group-active-bg:var(--bs-warning-text-emphasis);--bs-list-group-active-border-color:var(--bs-warning-text-emphasis)}.list-group-item-danger{--bs-list-group-color:var(--bs-danger-text-emphasis);--bs-list-group-bg:var(--bs-danger-bg-subtle);--bs-list-group-border-color:var(--bs-danger-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-danger-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-danger-border-subtle);--bs-list-group-active-color:var(--bs-danger-bg-subtle);--bs-list-group-active-bg:var(--bs-danger-text-emphasis);--bs-list-group-active-border-color:var(--bs-danger-text-emphasis)}.list-group-item-light{--bs-list-group-color:var(--bs-light-text-emphasis);--bs-list-group-bg:var(--bs-light-bg-subtle);--bs-list-group-border-color:var(--bs-light-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-light-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-light-border-subtle);--bs-list-group-active-color:var(--bs-light-bg-subtle);--bs-list-group-active-bg:var(--bs-light-text-emphasis);--bs-list-group-active-border-color:var(--bs-light-text-emphasis)}.list-group-item-dark{--bs-list-group-color:var(--bs-dark-text-emphasis);--bs-list-group-bg:var(--bs-dark-bg-subtle);--bs-list-group-border-color:var(--bs-dark-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-dark-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-dark-border-subtle);--bs-list-group-active-color:var(--bs-dark-bg-subtle);--bs-list-group-active-bg:var(--bs-dark-text-emphasis);--bs-list-group-active-border-color:var(--bs-dark-text-emphasis)}.btn-close{--bs-btn-close-color:#000;--bs-btn-close-bg:url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e\\\");--bs-btn-close-opacity:0.5;--bs-btn-close-hover-opacity:0.75;--bs-btn-close-focus-shadow:0 0 0 0.25rem rgba(13, 110, 253, 0.25);--bs-btn-close-focus-opacity:1;--bs-btn-close-disabled-opacity:0.25;--bs-btn-close-white-filter:invert(1) grayscale(100%) brightness(200%);box-sizing:content-box;width:1em;height:1em;padding:.25em .25em;color:var(--bs-btn-close-color);background:transparent var(--bs-btn-close-bg) center/1em auto no-repeat;border:0;border-radius:.375rem;opacity:var(--bs-btn-close-opacity)}.btn-close:hover{color:var(--bs-btn-close-color);text-decoration:none;opacity:var(--bs-btn-close-hover-opacity)}.btn-close:focus{outline:0;box-shadow:var(--bs-btn-close-focus-shadow);opacity:var(--bs-btn-close-focus-opacity)}.btn-close.disabled,.btn-close:disabled{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;opacity:var(--bs-btn-close-disabled-opacity)}.btn-close-white{filter:var(--bs-btn-close-white-filter)}[data-bs-theme=dark] .btn-close{filter:var(--bs-btn-close-white-filter)}.toast{--bs-toast-zindex:1090;--bs-toast-padding-x:0.75rem;--bs-toast-padding-y:0.5rem;--bs-toast-spacing:1.5rem;--bs-toast-max-width:350px;--bs-toast-font-size:0.875rem;--bs-toast-color: ;--bs-toast-bg:rgba(var(--bs-body-bg-rgb), 0.85);--bs-toast-border-width:var(--bs-border-width);--bs-toast-border-color:var(--bs-border-color-translucent);--bs-toast-border-radius:var(--bs-border-radius);--bs-toast-box-shadow:var(--bs-box-shadow);--bs-toast-header-color:var(--bs-secondary-color);--bs-toast-header-bg:rgba(var(--bs-body-bg-rgb), 0.85);--bs-toast-header-border-color:var(--bs-border-color-translucent);width:var(--bs-toast-max-width);max-width:100%;font-size:var(--bs-toast-font-size);color:var(--bs-toast-color);pointer-events:auto;background-color:var(--bs-toast-bg);background-clip:padding-box;border:var(--bs-toast-border-width) solid var(--bs-toast-border-color);box-shadow:var(--bs-toast-box-shadow);border-radius:var(--bs-toast-border-radius)}.toast.showing{opacity:0}.toast:not(.show){display:none}.toast-container{--bs-toast-zindex:1090;position:absolute;z-index:var(--bs-toast-zindex);width:-webkit-max-content;width:-moz-max-content;width:max-content;max-width:100%;pointer-events:none}.toast-container>:not(:last-child){margin-bottom:var(--bs-toast-spacing)}.toast-header{display:flex;align-items:center;padding:var(--bs-toast-padding-y) var(--bs-toast-padding-x);color:var(--bs-toast-header-color);background-color:var(--bs-toast-header-bg);background-clip:padding-box;border-bottom:var(--bs-toast-border-width) solid var(--bs-toast-header-border-color);border-top-left-radius:calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));border-top-right-radius:calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width))}.toast-header .btn-close{margin-right:calc(-.5 * var(--bs-toast-padding-x));margin-left:var(--bs-toast-padding-x)}.toast-body{padding:var(--bs-toast-padding-x);word-wrap:break-word}.modal{--bs-modal-zindex:1055;--bs-modal-width:500px;--bs-modal-padding:1rem;--bs-modal-margin:0.5rem;--bs-modal-color: ;--bs-modal-bg:var(--bs-body-bg);--bs-modal-border-color:var(--bs-border-color-translucent);--bs-modal-border-width:var(--bs-border-width);--bs-modal-border-radius:var(--bs-border-radius-lg);--bs-modal-box-shadow:var(--bs-box-shadow-sm);--bs-modal-inner-border-radius:calc(var(--bs-border-radius-lg) - (var(--bs-border-width)));--bs-modal-header-padding-x:1rem;--bs-modal-header-padding-y:1rem;--bs-modal-header-padding:1rem 1rem;--bs-modal-header-border-color:var(--bs-border-color);--bs-modal-header-border-width:var(--bs-border-width);--bs-modal-title-line-height:1.5;--bs-modal-footer-gap:0.5rem;--bs-modal-footer-bg: ;--bs-modal-footer-border-color:var(--bs-border-color);--bs-modal-footer-border-width:var(--bs-border-width);position:fixed;top:0;left:0;z-index:var(--bs-modal-zindex);display:none;width:100%;height:100%;overflow-x:hidden;overflow-y:auto;outline:0}.modal-dialog{position:relative;width:auto;margin:var(--bs-modal-margin);pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transform:translate(0,-50px)}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{height:calc(100% - var(--bs-modal-margin) * 2)}.modal-dialog-scrollable .modal-content{max-height:100%;overflow:hidden}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:flex;align-items:center;min-height:calc(100% - var(--bs-modal-margin) * 2)}.modal-content{position:relative;display:flex;flex-direction:column;width:100%;color:var(--bs-modal-color);pointer-events:auto;background-color:var(--bs-modal-bg);background-clip:padding-box;border:var(--bs-modal-border-width) solid var(--bs-modal-border-color);border-radius:var(--bs-modal-border-radius);outline:0}.modal-backdrop{--bs-backdrop-zindex:1050;--bs-backdrop-bg:#000;--bs-backdrop-opacity:0.5;position:fixed;top:0;left:0;z-index:var(--bs-backdrop-zindex);width:100vw;height:100vh;background-color:var(--bs-backdrop-bg)}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:var(--bs-backdrop-opacity)}.modal-header{display:flex;flex-shrink:0;align-items:center;padding:var(--bs-modal-header-padding);border-bottom:var(--bs-modal-header-border-width) solid var(--bs-modal-header-border-color);border-top-left-radius:var(--bs-modal-inner-border-radius);border-top-right-radius:var(--bs-modal-inner-border-radius)}.modal-header .btn-close{padding:calc(var(--bs-modal-header-padding-y) * .5) calc(var(--bs-modal-header-padding-x) * .5);margin:calc(-.5 * var(--bs-modal-header-padding-y)) calc(-.5 * var(--bs-modal-header-padding-x)) calc(-.5 * var(--bs-modal-header-padding-y)) auto}.modal-title{margin-bottom:0;line-height:var(--bs-modal-title-line-height)}.modal-body{position:relative;flex:1 1 auto;padding:var(--bs-modal-padding)}.modal-footer{display:flex;flex-shrink:0;flex-wrap:wrap;align-items:center;justify-content:flex-end;padding:calc(var(--bs-modal-padding) - var(--bs-modal-footer-gap) * .5);background-color:var(--bs-modal-footer-bg);border-top:var(--bs-modal-footer-border-width) solid var(--bs-modal-footer-border-color);border-bottom-right-radius:var(--bs-modal-inner-border-radius);border-bottom-left-radius:var(--bs-modal-inner-border-radius)}.modal-footer>*{margin:calc(var(--bs-modal-footer-gap) * .5)}@media (min-width:576px){.modal{--bs-modal-margin:1.75rem;--bs-modal-box-shadow:var(--bs-box-shadow)}.modal-dialog{max-width:var(--bs-modal-width);margin-right:auto;margin-left:auto}.modal-sm{--bs-modal-width:300px}}@media (min-width:992px){.modal-lg,.modal-xl{--bs-modal-width:800px}}@media (min-width:1200px){.modal-xl{--bs-modal-width:1140px}}.modal-fullscreen{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen .modal-footer,.modal-fullscreen .modal-header{border-radius:0}.modal-fullscreen .modal-body{overflow-y:auto}@media (max-width:575.98px){.modal-fullscreen-sm-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-sm-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-sm-down .modal-footer,.modal-fullscreen-sm-down .modal-header{border-radius:0}.modal-fullscreen-sm-down .modal-body{overflow-y:auto}}@media (max-width:767.98px){.modal-fullscreen-md-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-md-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-md-down .modal-footer,.modal-fullscreen-md-down .modal-header{border-radius:0}.modal-fullscreen-md-down .modal-body{overflow-y:auto}}@media (max-width:991.98px){.modal-fullscreen-lg-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-lg-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-lg-down .modal-footer,.modal-fullscreen-lg-down .modal-header{border-radius:0}.modal-fullscreen-lg-down .modal-body{overflow-y:auto}}@media (max-width:1199.98px){.modal-fullscreen-xl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xl-down .modal-footer,.modal-fullscreen-xl-down .modal-header{border-radius:0}.modal-fullscreen-xl-down .modal-body{overflow-y:auto}}@media (max-width:1399.98px){.modal-fullscreen-xxl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xxl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xxl-down .modal-footer,.modal-fullscreen-xxl-down .modal-header{border-radius:0}.modal-fullscreen-xxl-down .modal-body{overflow-y:auto}}.tooltip{--bs-tooltip-zindex:1080;--bs-tooltip-max-width:200px;--bs-tooltip-padding-x:0.5rem;--bs-tooltip-padding-y:0.25rem;--bs-tooltip-margin: ;--bs-tooltip-font-size:0.875rem;--bs-tooltip-color:var(--bs-body-bg);--bs-tooltip-bg:var(--bs-emphasis-color);--bs-tooltip-border-radius:var(--bs-border-radius);--bs-tooltip-opacity:0.9;--bs-tooltip-arrow-width:0.8rem;--bs-tooltip-arrow-height:0.4rem;z-index:var(--bs-tooltip-zindex);display:block;margin:var(--bs-tooltip-margin);font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:var(--bs-tooltip-font-size);word-wrap:break-word;opacity:0}.tooltip.show{opacity:var(--bs-tooltip-opacity)}.tooltip .tooltip-arrow{display:block;width:var(--bs-tooltip-arrow-width);height:var(--bs-tooltip-arrow-height)}.tooltip .tooltip-arrow::before{position:absolute;content:\\\"\\\";border-color:transparent;border-style:solid}.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow,.bs-tooltip-top .tooltip-arrow{bottom:calc(-1 * var(--bs-tooltip-arrow-height))}.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before,.bs-tooltip-top .tooltip-arrow::before{top:-1px;border-width:var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * .5) 0;border-top-color:var(--bs-tooltip-bg)}.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow,.bs-tooltip-end .tooltip-arrow{left:calc(-1 * var(--bs-tooltip-arrow-height));width:var(--bs-tooltip-arrow-height);height:var(--bs-tooltip-arrow-width)}.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before,.bs-tooltip-end .tooltip-arrow::before{right:-1px;border-width:calc(var(--bs-tooltip-arrow-width) * .5) var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * .5) 0;border-right-color:var(--bs-tooltip-bg)}.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow,.bs-tooltip-bottom .tooltip-arrow{top:calc(-1 * var(--bs-tooltip-arrow-height))}.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before,.bs-tooltip-bottom .tooltip-arrow::before{bottom:-1px;border-width:0 calc(var(--bs-tooltip-arrow-width) * .5) var(--bs-tooltip-arrow-height);border-bottom-color:var(--bs-tooltip-bg)}.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow,.bs-tooltip-start .tooltip-arrow{right:calc(-1 * var(--bs-tooltip-arrow-height));width:var(--bs-tooltip-arrow-height);height:var(--bs-tooltip-arrow-width)}.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before,.bs-tooltip-start .tooltip-arrow::before{left:-1px;border-width:calc(var(--bs-tooltip-arrow-width) * .5) 0 calc(var(--bs-tooltip-arrow-width) * .5) var(--bs-tooltip-arrow-height);border-left-color:var(--bs-tooltip-bg)}.tooltip-inner{max-width:var(--bs-tooltip-max-width);padding:var(--bs-tooltip-padding-y) var(--bs-tooltip-padding-x);color:var(--bs-tooltip-color);text-align:center;background-color:var(--bs-tooltip-bg);border-radius:var(--bs-tooltip-border-radius)}.popover{--bs-popover-zindex:1070;--bs-popover-max-width:276px;--bs-popover-font-size:0.875rem;--bs-popover-bg:var(--bs-body-bg);--bs-popover-border-width:var(--bs-border-width);--bs-popover-border-color:var(--bs-border-color-translucent);--bs-popover-border-radius:var(--bs-border-radius-lg);--bs-popover-inner-border-radius:calc(var(--bs-border-radius-lg) - var(--bs-border-width));--bs-popover-box-shadow:var(--bs-box-shadow);--bs-popover-header-padding-x:1rem;--bs-popover-header-padding-y:0.5rem;--bs-popover-header-font-size:1rem;--bs-popover-header-color:inherit;--bs-popover-header-bg:var(--bs-secondary-bg);--bs-popover-body-padding-x:1rem;--bs-popover-body-padding-y:1rem;--bs-popover-body-color:var(--bs-body-color);--bs-popover-arrow-width:1rem;--bs-popover-arrow-height:0.5rem;--bs-popover-arrow-border:var(--bs-popover-border-color);z-index:var(--bs-popover-zindex);display:block;max-width:var(--bs-popover-max-width);font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:var(--bs-popover-font-size);word-wrap:break-word;background-color:var(--bs-popover-bg);background-clip:padding-box;border:var(--bs-popover-border-width) solid var(--bs-popover-border-color);border-radius:var(--bs-popover-border-radius)}.popover .popover-arrow{display:block;width:var(--bs-popover-arrow-width);height:var(--bs-popover-arrow-height)}.popover .popover-arrow::after,.popover .popover-arrow::before{position:absolute;display:block;content:\\\"\\\";border-color:transparent;border-style:solid;border-width:0}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow,.bs-popover-top>.popover-arrow{bottom:calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width))}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::before,.bs-popover-top>.popover-arrow::after,.bs-popover-top>.popover-arrow::before{border-width:var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * .5) 0}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::before,.bs-popover-top>.popover-arrow::before{bottom:0;border-top-color:var(--bs-popover-arrow-border)}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::after,.bs-popover-top>.popover-arrow::after{bottom:var(--bs-popover-border-width);border-top-color:var(--bs-popover-bg)}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow,.bs-popover-end>.popover-arrow{left:calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));width:var(--bs-popover-arrow-height);height:var(--bs-popover-arrow-width)}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::before,.bs-popover-end>.popover-arrow::after,.bs-popover-end>.popover-arrow::before{border-width:calc(var(--bs-popover-arrow-width) * .5) var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * .5) 0}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::before,.bs-popover-end>.popover-arrow::before{left:0;border-right-color:var(--bs-popover-arrow-border)}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::after,.bs-popover-end>.popover-arrow::after{left:var(--bs-popover-border-width);border-right-color:var(--bs-popover-bg)}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow,.bs-popover-bottom>.popover-arrow{top:calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width))}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::before,.bs-popover-bottom>.popover-arrow::after,.bs-popover-bottom>.popover-arrow::before{border-width:0 calc(var(--bs-popover-arrow-width) * .5) var(--bs-popover-arrow-height)}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::before,.bs-popover-bottom>.popover-arrow::before{top:0;border-bottom-color:var(--bs-popover-arrow-border)}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::after,.bs-popover-bottom>.popover-arrow::after{top:var(--bs-popover-border-width);border-bottom-color:var(--bs-popover-bg)}.bs-popover-auto[data-popper-placement^=bottom] .popover-header::before,.bs-popover-bottom .popover-header::before{position:absolute;top:0;left:50%;display:block;width:var(--bs-popover-arrow-width);margin-left:calc(-.5 * var(--bs-popover-arrow-width));content:\\\"\\\";border-bottom:var(--bs-popover-border-width) solid var(--bs-popover-header-bg)}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow,.bs-popover-start>.popover-arrow{right:calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));width:var(--bs-popover-arrow-height);height:var(--bs-popover-arrow-width)}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::after,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::before,.bs-popover-start>.popover-arrow::after,.bs-popover-start>.popover-arrow::before{border-width:calc(var(--bs-popover-arrow-width) * .5) 0 calc(var(--bs-popover-arrow-width) * .5) var(--bs-popover-arrow-height)}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::before,.bs-popover-start>.popover-arrow::before{right:0;border-left-color:var(--bs-popover-arrow-border)}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::after,.bs-popover-start>.popover-arrow::after{right:var(--bs-popover-border-width);border-left-color:var(--bs-popover-bg)}.popover-header{padding:var(--bs-popover-header-padding-y) var(--bs-popover-header-padding-x);margin-bottom:0;font-size:var(--bs-popover-header-font-size);color:var(--bs-popover-header-color);background-color:var(--bs-popover-header-bg);border-bottom:var(--bs-popover-border-width) solid var(--bs-popover-border-color);border-top-left-radius:var(--bs-popover-inner-border-radius);border-top-right-radius:var(--bs-popover-inner-border-radius)}.popover-header:empty{display:none}.popover-body{padding:var(--bs-popover-body-padding-y) var(--bs-popover-body-padding-x);color:var(--bs-popover-body-color)}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner::after{display:block;clear:both;content:\\\"\\\"}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:transform .6s ease-in-out}@media (prefers-reduced-motion:reduce){.carousel-item{transition:none}}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.active.carousel-item-end,.carousel-item-next:not(.carousel-item-start){transform:translateX(100%)}.active.carousel-item-start,.carousel-item-prev:not(.carousel-item-end){transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;transition-property:opacity;transform:none}.carousel-fade .carousel-item-next.carousel-item-start,.carousel-fade .carousel-item-prev.carousel-item-end,.carousel-fade .carousel-item.active{z-index:1;opacity:1}.carousel-fade .active.carousel-item-end,.carousel-fade .active.carousel-item-start{z-index:0;opacity:0;transition:opacity 0s .6s}@media (prefers-reduced-motion:reduce){.carousel-fade .active.carousel-item-end,.carousel-fade .active.carousel-item-start{transition:none}}.carousel-control-next,.carousel-control-prev{position:absolute;top:0;bottom:0;z-index:1;display:flex;align-items:center;justify-content:center;width:15%;padding:0;color:#fff;text-align:center;background:0 0;border:0;opacity:.5;transition:opacity .15s ease}@media (prefers-reduced-motion:reduce){.carousel-control-next,.carousel-control-prev{transition:none}}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{display:inline-block;width:2rem;height:2rem;background-repeat:no-repeat;background-position:50%;background-size:100% 100%}.carousel-control-prev-icon{background-image:url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e\\\")}.carousel-control-next-icon{background-image:url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e\\\")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:2;display:flex;justify-content:center;padding:0;margin-right:15%;margin-bottom:1rem;margin-left:15%}.carousel-indicators [data-bs-target]{box-sizing:content-box;flex:0 1 auto;width:30px;height:3px;padding:0;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border:0;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;transition:opacity .6s ease}@media (prefers-reduced-motion:reduce){.carousel-indicators [data-bs-target]{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:1.25rem;left:15%;padding-top:1.25rem;padding-bottom:1.25rem;color:#fff;text-align:center}.carousel-dark .carousel-control-next-icon,.carousel-dark .carousel-control-prev-icon{filter:invert(1) grayscale(100)}.carousel-dark .carousel-indicators [data-bs-target]{background-color:#000}.carousel-dark .carousel-caption{color:#000}[data-bs-theme=dark] .carousel .carousel-control-next-icon,[data-bs-theme=dark] .carousel .carousel-control-prev-icon,[data-bs-theme=dark].carousel .carousel-control-next-icon,[data-bs-theme=dark].carousel .carousel-control-prev-icon{filter:invert(1) grayscale(100)}[data-bs-theme=dark] .carousel .carousel-indicators [data-bs-target],[data-bs-theme=dark].carousel .carousel-indicators [data-bs-target]{background-color:#000}[data-bs-theme=dark] .carousel .carousel-caption,[data-bs-theme=dark].carousel .carousel-caption{color:#000}.spinner-border,.spinner-grow{display:inline-block;width:var(--bs-spinner-width);height:var(--bs-spinner-height);vertical-align:var(--bs-spinner-vertical-align);border-radius:50%;animation:var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name)}@keyframes spinner-border{to{transform:rotate(360deg)}}.spinner-border{--bs-spinner-width:2rem;--bs-spinner-height:2rem;--bs-spinner-vertical-align:-0.125em;--bs-spinner-border-width:0.25em;--bs-spinner-animation-speed:0.75s;--bs-spinner-animation-name:spinner-border;border:var(--bs-spinner-border-width) solid currentcolor;border-right-color:transparent}.spinner-border-sm{--bs-spinner-width:1rem;--bs-spinner-height:1rem;--bs-spinner-border-width:0.2em}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}.spinner-grow{--bs-spinner-width:2rem;--bs-spinner-height:2rem;--bs-spinner-vertical-align:-0.125em;--bs-spinner-animation-speed:0.75s;--bs-spinner-animation-name:spinner-grow;background-color:currentcolor;opacity:0}.spinner-grow-sm{--bs-spinner-width:1rem;--bs-spinner-height:1rem}@media (prefers-reduced-motion:reduce){.spinner-border,.spinner-grow{--bs-spinner-animation-speed:1.5s}}.offcanvas,.offcanvas-lg,.offcanvas-md,.offcanvas-sm,.offcanvas-xl,.offcanvas-xxl{--bs-offcanvas-zindex:1045;--bs-offcanvas-width:400px;--bs-offcanvas-height:30vh;--bs-offcanvas-padding-x:1rem;--bs-offcanvas-padding-y:1rem;--bs-offcanvas-color:var(--bs-body-color);--bs-offcanvas-bg:var(--bs-body-bg);--bs-offcanvas-border-width:var(--bs-border-width);--bs-offcanvas-border-color:var(--bs-border-color-translucent);--bs-offcanvas-box-shadow:var(--bs-box-shadow-sm);--bs-offcanvas-transition:transform 0.3s ease-in-out;--bs-offcanvas-title-line-height:1.5}@media (max-width:575.98px){.offcanvas-sm{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media (max-width:575.98px) and (prefers-reduced-motion:reduce){.offcanvas-sm{transition:none}}@media (max-width:575.98px){.offcanvas-sm.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-sm.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-sm.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-sm.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-sm.show:not(.hiding),.offcanvas-sm.showing{transform:none}.offcanvas-sm.hiding,.offcanvas-sm.show,.offcanvas-sm.showing{visibility:visible}}@media (min-width:576px){.offcanvas-sm{--bs-offcanvas-height:auto;--bs-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-sm .offcanvas-header{display:none}.offcanvas-sm .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}@media (max-width:767.98px){.offcanvas-md{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media (max-width:767.98px) and (prefers-reduced-motion:reduce){.offcanvas-md{transition:none}}@media (max-width:767.98px){.offcanvas-md.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-md.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-md.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-md.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-md.show:not(.hiding),.offcanvas-md.showing{transform:none}.offcanvas-md.hiding,.offcanvas-md.show,.offcanvas-md.showing{visibility:visible}}@media (min-width:768px){.offcanvas-md{--bs-offcanvas-height:auto;--bs-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-md .offcanvas-header{display:none}.offcanvas-md .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}@media (max-width:991.98px){.offcanvas-lg{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media (max-width:991.98px) and (prefers-reduced-motion:reduce){.offcanvas-lg{transition:none}}@media (max-width:991.98px){.offcanvas-lg.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-lg.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-lg.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-lg.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-lg.show:not(.hiding),.offcanvas-lg.showing{transform:none}.offcanvas-lg.hiding,.offcanvas-lg.show,.offcanvas-lg.showing{visibility:visible}}@media (min-width:992px){.offcanvas-lg{--bs-offcanvas-height:auto;--bs-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-lg .offcanvas-header{display:none}.offcanvas-lg .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}@media (max-width:1199.98px){.offcanvas-xl{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media (max-width:1199.98px) and (prefers-reduced-motion:reduce){.offcanvas-xl{transition:none}}@media (max-width:1199.98px){.offcanvas-xl.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-xl.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-xl.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-xl.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-xl.show:not(.hiding),.offcanvas-xl.showing{transform:none}.offcanvas-xl.hiding,.offcanvas-xl.show,.offcanvas-xl.showing{visibility:visible}}@media (min-width:1200px){.offcanvas-xl{--bs-offcanvas-height:auto;--bs-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-xl .offcanvas-header{display:none}.offcanvas-xl .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}@media (max-width:1399.98px){.offcanvas-xxl{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}}@media (max-width:1399.98px) and (prefers-reduced-motion:reduce){.offcanvas-xxl{transition:none}}@media (max-width:1399.98px){.offcanvas-xxl.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas-xxl.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas-xxl.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas-xxl.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas-xxl.show:not(.hiding),.offcanvas-xxl.showing{transform:none}.offcanvas-xxl.hiding,.offcanvas-xxl.show,.offcanvas-xxl.showing{visibility:visible}}@media (min-width:1400px){.offcanvas-xxl{--bs-offcanvas-height:auto;--bs-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-xxl .offcanvas-header{display:none}.offcanvas-xxl .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}.offcanvas{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:var(--bs-offcanvas-transition)}@media (prefers-reduced-motion:reduce){.offcanvas{transition:none}}.offcanvas.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(-100%)}.offcanvas.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateX(100%)}.offcanvas.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas.show:not(.hiding),.offcanvas.showing{transform:none}.offcanvas.hiding,.offcanvas.show,.offcanvas.showing{visibility:visible}.offcanvas-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.offcanvas-backdrop.fade{opacity:0}.offcanvas-backdrop.show{opacity:.5}.offcanvas-header{display:flex;align-items:center;padding:var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x)}.offcanvas-header .btn-close{padding:calc(var(--bs-offcanvas-padding-y) * .5) calc(var(--bs-offcanvas-padding-x) * .5);margin:calc(-.5 * var(--bs-offcanvas-padding-y)) calc(-.5 * var(--bs-offcanvas-padding-x)) calc(-.5 * var(--bs-offcanvas-padding-y)) auto}.offcanvas-title{margin-bottom:0;line-height:var(--bs-offcanvas-title-line-height)}.offcanvas-body{flex-grow:1;padding:var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);overflow-y:auto}.placeholder{display:inline-block;min-height:1em;vertical-align:middle;cursor:wait;background-color:currentcolor;opacity:.5}.placeholder.btn::before{display:inline-block;content:\\\"\\\"}.placeholder-xs{min-height:.6em}.placeholder-sm{min-height:.8em}.placeholder-lg{min-height:1.2em}.placeholder-glow .placeholder{animation:placeholder-glow 2s ease-in-out infinite}@keyframes placeholder-glow{50%{opacity:.2}}.placeholder-wave{-webkit-mask-image:linear-gradient(130deg,#000 55%,rgba(0,0,0,0.8) 75%,#000 95%);mask-image:linear-gradient(130deg,#000 55%,rgba(0,0,0,0.8) 75%,#000 95%);-webkit-mask-size:200% 100%;mask-size:200% 100%;animation:placeholder-wave 2s linear infinite}@keyframes placeholder-wave{100%{-webkit-mask-position:-200% 0%;mask-position:-200% 0%}}.clearfix::after{display:block;clear:both;content:\\\"\\\"}.text-bg-primary{color:#fff!important;background-color:RGBA(var(--bs-primary-rgb),var(--bs-bg-opacity,1))!important}.text-bg-secondary{color:#fff!important;background-color:RGBA(var(--bs-secondary-rgb),var(--bs-bg-opacity,1))!important}.text-bg-success{color:#fff!important;background-color:RGBA(var(--bs-success-rgb),var(--bs-bg-opacity,1))!important}.text-bg-info{color:#000!important;background-color:RGBA(var(--bs-info-rgb),var(--bs-bg-opacity,1))!important}.text-bg-warning{color:#000!important;background-color:RGBA(var(--bs-warning-rgb),var(--bs-bg-opacity,1))!important}.text-bg-danger{color:#fff!important;background-color:RGBA(var(--bs-danger-rgb),var(--bs-bg-opacity,1))!important}.text-bg-light{color:#000!important;background-color:RGBA(var(--bs-light-rgb),var(--bs-bg-opacity,1))!important}.text-bg-dark{color:#fff!important;background-color:RGBA(var(--bs-dark-rgb),var(--bs-bg-opacity,1))!important}.link-primary{color:RGBA(var(--bs-primary-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-primary-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-primary-rgb),var(--bs-link-underline-opacity,1))!important}.link-primary:focus,.link-primary:hover{color:RGBA(10,88,202,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(10,88,202,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(10,88,202,var(--bs-link-underline-opacity,1))!important}.link-secondary{color:RGBA(var(--bs-secondary-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-secondary-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-secondary-rgb),var(--bs-link-underline-opacity,1))!important}.link-secondary:focus,.link-secondary:hover{color:RGBA(86,94,100,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(86,94,100,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(86,94,100,var(--bs-link-underline-opacity,1))!important}.link-success{color:RGBA(var(--bs-success-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-success-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-success-rgb),var(--bs-link-underline-opacity,1))!important}.link-success:focus,.link-success:hover{color:RGBA(20,108,67,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(20,108,67,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(20,108,67,var(--bs-link-underline-opacity,1))!important}.link-info{color:RGBA(var(--bs-info-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-info-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-info-rgb),var(--bs-link-underline-opacity,1))!important}.link-info:focus,.link-info:hover{color:RGBA(61,213,243,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(61,213,243,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(61,213,243,var(--bs-link-underline-opacity,1))!important}.link-warning{color:RGBA(var(--bs-warning-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-warning-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-warning-rgb),var(--bs-link-underline-opacity,1))!important}.link-warning:focus,.link-warning:hover{color:RGBA(255,205,57,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(255,205,57,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(255,205,57,var(--bs-link-underline-opacity,1))!important}.link-danger{color:RGBA(var(--bs-danger-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-danger-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-danger-rgb),var(--bs-link-underline-opacity,1))!important}.link-danger:focus,.link-danger:hover{color:RGBA(176,42,55,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(176,42,55,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(176,42,55,var(--bs-link-underline-opacity,1))!important}.link-light{color:RGBA(var(--bs-light-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-light-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-light-rgb),var(--bs-link-underline-opacity,1))!important}.link-light:focus,.link-light:hover{color:RGBA(249,250,251,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(249,250,251,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(249,250,251,var(--bs-link-underline-opacity,1))!important}.link-dark{color:RGBA(var(--bs-dark-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-dark-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-dark-rgb),var(--bs-link-underline-opacity,1))!important}.link-dark:focus,.link-dark:hover{color:RGBA(26,30,33,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(26,30,33,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(26,30,33,var(--bs-link-underline-opacity,1))!important}.link-body-emphasis{color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-underline-opacity,1))!important}.link-body-emphasis:focus,.link-body-emphasis:hover{color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-opacity,.75))!important;-webkit-text-decoration-color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-underline-opacity,0.75))!important;text-decoration-color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-underline-opacity,0.75))!important}.focus-ring:focus{outline:0;box-shadow:var(--bs-focus-ring-x,0) var(--bs-focus-ring-y,0) var(--bs-focus-ring-blur,0) var(--bs-focus-ring-width) var(--bs-focus-ring-color)}.icon-link{display:inline-flex;gap:.375rem;align-items:center;-webkit-text-decoration-color:rgba(var(--bs-link-color-rgb),var(--bs-link-opacity,0.5));text-decoration-color:rgba(var(--bs-link-color-rgb),var(--bs-link-opacity,0.5));text-underline-offset:0.25em;-webkit-backface-visibility:hidden;backface-visibility:hidden}.icon-link>.bi{flex-shrink:0;width:1em;height:1em;fill:currentcolor;transition:.2s ease-in-out transform}@media (prefers-reduced-motion:reduce){.icon-link>.bi{transition:none}}.icon-link-hover:focus-visible>.bi,.icon-link-hover:hover>.bi{transform:var(--bs-icon-link-transform,translate3d(.25em,0,0))}.ratio{position:relative;width:100%}.ratio::before{display:block;padding-top:var(--bs-aspect-ratio);content:\\\"\\\"}.ratio>*{position:absolute;top:0;left:0;width:100%;height:100%}.ratio-1x1{--bs-aspect-ratio:100%}.ratio-4x3{--bs-aspect-ratio:75%}.ratio-16x9{--bs-aspect-ratio:56.25%}.ratio-21x9{--bs-aspect-ratio:42.8571428571%}.fixed-top{position:fixed;top:0;right:0;left:0;z-index:1030}.fixed-bottom{position:fixed;right:0;bottom:0;left:0;z-index:1030}.sticky-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}.sticky-bottom{position:-webkit-sticky;position:sticky;bottom:0;z-index:1020}@media (min-width:576px){.sticky-sm-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}.sticky-sm-bottom{position:-webkit-sticky;position:sticky;bottom:0;z-index:1020}}@media (min-width:768px){.sticky-md-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}.sticky-md-bottom{position:-webkit-sticky;position:sticky;bottom:0;z-index:1020}}@media (min-width:992px){.sticky-lg-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}.sticky-lg-bottom{position:-webkit-sticky;position:sticky;bottom:0;z-index:1020}}@media (min-width:1200px){.sticky-xl-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}.sticky-xl-bottom{position:-webkit-sticky;position:sticky;bottom:0;z-index:1020}}@media (min-width:1400px){.sticky-xxl-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}.sticky-xxl-bottom{position:-webkit-sticky;position:sticky;bottom:0;z-index:1020}}.hstack{display:flex;flex-direction:row;align-items:center;align-self:stretch}.vstack{display:flex;flex:1 1 auto;flex-direction:column;align-self:stretch}.visually-hidden,.visually-hidden-focusable:not(:focus):not(:focus-within){width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.visually-hidden-focusable:not(:focus):not(:focus-within):not(caption),.visually-hidden:not(caption){position:absolute!important}.stretched-link::after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;content:\\\"\\\"}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vr{display:inline-block;align-self:stretch;width:var(--bs-border-width);min-height:1em;background-color:currentcolor;opacity:.25}.align-baseline{vertical-align:baseline!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.float-start{float:left!important}.float-end{float:right!important}.float-none{float:none!important}.object-fit-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-none{-o-object-fit:none!important;object-fit:none!important}.opacity-0{opacity:0!important}.opacity-25{opacity:.25!important}.opacity-50{opacity:.5!important}.opacity-75{opacity:.75!important}.opacity-100{opacity:1!important}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.overflow-visible{overflow:visible!important}.overflow-scroll{overflow:scroll!important}.overflow-x-auto{overflow-x:auto!important}.overflow-x-hidden{overflow-x:hidden!important}.overflow-x-visible{overflow-x:visible!important}.overflow-x-scroll{overflow-x:scroll!important}.overflow-y-auto{overflow-y:auto!important}.overflow-y-hidden{overflow-y:hidden!important}.overflow-y-visible{overflow-y:visible!important}.overflow-y-scroll{overflow-y:scroll!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-grid{display:grid!important}.d-inline-grid{display:inline-grid!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}.d-none{display:none!important}.shadow{box-shadow:var(--bs-box-shadow)!important}.shadow-sm{box-shadow:var(--bs-box-shadow-sm)!important}.shadow-lg{box-shadow:var(--bs-box-shadow-lg)!important}.shadow-none{box-shadow:none!important}.focus-ring-primary{--bs-focus-ring-color:rgba(var(--bs-primary-rgb), var(--bs-focus-ring-opacity))}.focus-ring-secondary{--bs-focus-ring-color:rgba(var(--bs-secondary-rgb), var(--bs-focus-ring-opacity))}.focus-ring-success{--bs-focus-ring-color:rgba(var(--bs-success-rgb), var(--bs-focus-ring-opacity))}.focus-ring-info{--bs-focus-ring-color:rgba(var(--bs-info-rgb), var(--bs-focus-ring-opacity))}.focus-ring-warning{--bs-focus-ring-color:rgba(var(--bs-warning-rgb), var(--bs-focus-ring-opacity))}.focus-ring-danger{--bs-focus-ring-color:rgba(var(--bs-danger-rgb), var(--bs-focus-ring-opacity))}.focus-ring-light{--bs-focus-ring-color:rgba(var(--bs-light-rgb), var(--bs-focus-ring-opacity))}.focus-ring-dark{--bs-focus-ring-color:rgba(var(--bs-dark-rgb), var(--bs-focus-ring-opacity))}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:-webkit-sticky!important;position:sticky!important}.top-0{top:0!important}.top-50{top:50%!important}.top-100{top:100%!important}.bottom-0{bottom:0!important}.bottom-50{bottom:50%!important}.bottom-100{bottom:100%!important}.start-0{left:0!important}.start-50{left:50%!important}.start-100{left:100%!important}.end-0{right:0!important}.end-50{right:50%!important}.end-100{right:100%!important}.translate-middle{transform:translate(-50%,-50%)!important}.translate-middle-x{transform:translateX(-50%)!important}.translate-middle-y{transform:translateY(-50%)!important}.border{border:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-0{border:0!important}.border-top{border-top:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-top-0{border-top:0!important}.border-end{border-right:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-end-0{border-right:0!important}.border-bottom{border-bottom:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-bottom-0{border-bottom:0!important}.border-start{border-left:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-start-0{border-left:0!important}.border-primary{--bs-border-opacity:1;border-color:rgba(var(--bs-primary-rgb),var(--bs-border-opacity))!important}.border-secondary{--bs-border-opacity:1;border-color:rgba(var(--bs-secondary-rgb),var(--bs-border-opacity))!important}.border-success{--bs-border-opacity:1;border-color:rgba(var(--bs-success-rgb),var(--bs-border-opacity))!important}.border-info{--bs-border-opacity:1;border-color:rgba(var(--bs-info-rgb),var(--bs-border-opacity))!important}.border-warning{--bs-border-opacity:1;border-color:rgba(var(--bs-warning-rgb),var(--bs-border-opacity))!important}.border-danger{--bs-border-opacity:1;border-color:rgba(var(--bs-danger-rgb),var(--bs-border-opacity))!important}.border-light{--bs-border-opacity:1;border-color:rgba(var(--bs-light-rgb),var(--bs-border-opacity))!important}.border-dark{--bs-border-opacity:1;border-color:rgba(var(--bs-dark-rgb),var(--bs-border-opacity))!important}.border-black{--bs-border-opacity:1;border-color:rgba(var(--bs-black-rgb),var(--bs-border-opacity))!important}.border-white{--bs-border-opacity:1;border-color:rgba(var(--bs-white-rgb),var(--bs-border-opacity))!important}.border-primary-subtle{border-color:var(--bs-primary-border-subtle)!important}.border-secondary-subtle{border-color:var(--bs-secondary-border-subtle)!important}.border-success-subtle{border-color:var(--bs-success-border-subtle)!important}.border-info-subtle{border-color:var(--bs-info-border-subtle)!important}.border-warning-subtle{border-color:var(--bs-warning-border-subtle)!important}.border-danger-subtle{border-color:var(--bs-danger-border-subtle)!important}.border-light-subtle{border-color:var(--bs-light-border-subtle)!important}.border-dark-subtle{border-color:var(--bs-dark-border-subtle)!important}.border-1{border-width:1px!important}.border-2{border-width:2px!important}.border-3{border-width:3px!important}.border-4{border-width:4px!important}.border-5{border-width:5px!important}.border-opacity-10{--bs-border-opacity:0.1}.border-opacity-25{--bs-border-opacity:0.25}.border-opacity-50{--bs-border-opacity:0.5}.border-opacity-75{--bs-border-opacity:0.75}.border-opacity-100{--bs-border-opacity:1}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.mw-100{max-width:100%!important}.vw-100{width:100vw!important}.min-vw-100{min-width:100vw!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.mh-100{max-height:100%!important}.vh-100{height:100vh!important}.min-vh-100{min-height:100vh!important}.flex-fill{flex:1 1 auto!important}.flex-row{flex-direction:row!important}.flex-column{flex-direction:column!important}.flex-row-reverse{flex-direction:row-reverse!important}.flex-column-reverse{flex-direction:column-reverse!important}.flex-grow-0{flex-grow:0!important}.flex-grow-1{flex-grow:1!important}.flex-shrink-0{flex-shrink:0!important}.flex-shrink-1{flex-shrink:1!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.justify-content-around{justify-content:space-around!important}.justify-content-evenly{justify-content:space-evenly!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center{align-items:center!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}.align-content-start{align-content:flex-start!important}.align-content-end{align-content:flex-end!important}.align-content-center{align-content:center!important}.align-content-between{align-content:space-between!important}.align-content-around{align-content:space-around!important}.align-content-stretch{align-content:stretch!important}.align-self-auto{align-self:auto!important}.align-self-start{align-self:flex-start!important}.align-self-end{align-self:flex-end!important}.align-self-center{align-self:center!important}.align-self-baseline{align-self:baseline!important}.align-self-stretch{align-self:stretch!important}.order-first{order:-1!important}.order-0{order:0!important}.order-1{order:1!important}.order-2{order:2!important}.order-3{order:3!important}.order-4{order:4!important}.order-5{order:5!important}.order-last{order:6!important}.m-0{margin:0!important}.m-1{margin:.25rem!important}.m-2{margin:.5rem!important}.m-3{margin:1rem!important}.m-4{margin:1.5rem!important}.m-5{margin:3rem!important}.m-auto{margin:auto!important}.mx-0{margin-right:0!important;margin-left:0!important}.mx-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-3{margin-right:1rem!important;margin-left:1rem!important}.mx-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-5{margin-right:3rem!important;margin-left:3rem!important}.mx-auto{margin-right:auto!important;margin-left:auto!important}.my-0{margin-top:0!important;margin-bottom:0!important}.my-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-0{margin-top:0!important}.mt-1{margin-top:.25rem!important}.mt-2{margin-top:.5rem!important}.mt-3{margin-top:1rem!important}.mt-4{margin-top:1.5rem!important}.mt-5{margin-top:3rem!important}.mt-auto{margin-top:auto!important}.me-0{margin-right:0!important}.me-1{margin-right:.25rem!important}.me-2{margin-right:.5rem!important}.me-3{margin-right:1rem!important}.me-4{margin-right:1.5rem!important}.me-5{margin-right:3rem!important}.me-auto{margin-right:auto!important}.mb-0{margin-bottom:0!important}.mb-1{margin-bottom:.25rem!important}.mb-2{margin-bottom:.5rem!important}.mb-3{margin-bottom:1rem!important}.mb-4{margin-bottom:1.5rem!important}.mb-5{margin-bottom:3rem!important}.mb-auto{margin-bottom:auto!important}.ms-0{margin-left:0!important}.ms-1{margin-left:.25rem!important}.ms-2{margin-left:.5rem!important}.ms-3{margin-left:1rem!important}.ms-4{margin-left:1.5rem!important}.ms-5{margin-left:3rem!important}.ms-auto{margin-left:auto!important}.p-0{padding:0!important}.p-1{padding:.25rem!important}.p-2{padding:.5rem!important}.p-3{padding:1rem!important}.p-4{padding:1.5rem!important}.p-5{padding:3rem!important}.px-0{padding-right:0!important;padding-left:0!important}.px-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-3{padding-right:1rem!important;padding-left:1rem!important}.px-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-5{padding-right:3rem!important;padding-left:3rem!important}.py-0{padding-top:0!important;padding-bottom:0!important}.py-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-0{padding-top:0!important}.pt-1{padding-top:.25rem!important}.pt-2{padding-top:.5rem!important}.pt-3{padding-top:1rem!important}.pt-4{padding-top:1.5rem!important}.pt-5{padding-top:3rem!important}.pe-0{padding-right:0!important}.pe-1{padding-right:.25rem!important}.pe-2{padding-right:.5rem!important}.pe-3{padding-right:1rem!important}.pe-4{padding-right:1.5rem!important}.pe-5{padding-right:3rem!important}.pb-0{padding-bottom:0!important}.pb-1{padding-bottom:.25rem!important}.pb-2{padding-bottom:.5rem!important}.pb-3{padding-bottom:1rem!important}.pb-4{padding-bottom:1.5rem!important}.pb-5{padding-bottom:3rem!important}.ps-0{padding-left:0!important}.ps-1{padding-left:.25rem!important}.ps-2{padding-left:.5rem!important}.ps-3{padding-left:1rem!important}.ps-4{padding-left:1.5rem!important}.ps-5{padding-left:3rem!important}.gap-0{gap:0!important}.gap-1{gap:.25rem!important}.gap-2{gap:.5rem!important}.gap-3{gap:1rem!important}.gap-4{gap:1.5rem!important}.gap-5{gap:3rem!important}.row-gap-0{row-gap:0!important}.row-gap-1{row-gap:.25rem!important}.row-gap-2{row-gap:.5rem!important}.row-gap-3{row-gap:1rem!important}.row-gap-4{row-gap:1.5rem!important}.row-gap-5{row-gap:3rem!important}.column-gap-0{-moz-column-gap:0!important;column-gap:0!important}.column-gap-1{-moz-column-gap:0.25rem!important;column-gap:.25rem!important}.column-gap-2{-moz-column-gap:0.5rem!important;column-gap:.5rem!important}.column-gap-3{-moz-column-gap:1rem!important;column-gap:1rem!important}.column-gap-4{-moz-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-5{-moz-column-gap:3rem!important;column-gap:3rem!important}.font-monospace{font-family:var(--bs-font-monospace)!important}.fs-1{font-size:calc(1.375rem + 1.5vw)!important}.fs-2{font-size:calc(1.325rem + .9vw)!important}.fs-3{font-size:calc(1.3rem + .6vw)!important}.fs-4{font-size:calc(1.275rem + .3vw)!important}.fs-5{font-size:1.25rem!important}.fs-6{font-size:1rem!important}.fst-italic{font-style:italic!important}.fst-normal{font-style:normal!important}.fw-lighter{font-weight:lighter!important}.fw-light{font-weight:300!important}.fw-normal{font-weight:400!important}.fw-medium{font-weight:500!important}.fw-semibold{font-weight:600!important}.fw-bold{font-weight:700!important}.fw-bolder{font-weight:bolder!important}.lh-1{line-height:1!important}.lh-sm{line-height:1.25!important}.lh-base{line-height:1.5!important}.lh-lg{line-height:2!important}.text-start{text-align:left!important}.text-end{text-align:right!important}.text-center{text-align:center!important}.text-decoration-none{text-decoration:none!important}.text-decoration-underline{text-decoration:underline!important}.text-decoration-line-through{text-decoration:line-through!important}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.text-wrap{white-space:normal!important}.text-nowrap{white-space:nowrap!important}.text-break{word-wrap:break-word!important;word-break:break-word!important}.text-primary{--bs-text-opacity:1;color:rgba(var(--bs-primary-rgb),var(--bs-text-opacity))!important}.text-secondary{--bs-text-opacity:1;color:rgba(var(--bs-secondary-rgb),var(--bs-text-opacity))!important}.text-success{--bs-text-opacity:1;color:rgba(var(--bs-success-rgb),var(--bs-text-opacity))!important}.text-info{--bs-text-opacity:1;color:rgba(var(--bs-info-rgb),var(--bs-text-opacity))!important}.text-warning{--bs-text-opacity:1;color:rgba(var(--bs-warning-rgb),var(--bs-text-opacity))!important}.text-danger{--bs-text-opacity:1;color:rgba(var(--bs-danger-rgb),var(--bs-text-opacity))!important}.text-light{--bs-text-opacity:1;color:rgba(var(--bs-light-rgb),var(--bs-text-opacity))!important}.text-dark{--bs-text-opacity:1;color:rgba(var(--bs-dark-rgb),var(--bs-text-opacity))!important}.text-black{--bs-text-opacity:1;color:rgba(var(--bs-black-rgb),var(--bs-text-opacity))!important}.text-white{--bs-text-opacity:1;color:rgba(var(--bs-white-rgb),var(--bs-text-opacity))!important}.text-body{--bs-text-opacity:1;color:rgba(var(--bs-body-color-rgb),var(--bs-text-opacity))!important}.text-muted{--bs-text-opacity:1;color:var(--bs-secondary-color)!important}.text-black-50{--bs-text-opacity:1;color:rgba(0,0,0,.5)!important}.text-white-50{--bs-text-opacity:1;color:rgba(255,255,255,.5)!important}.text-body-secondary{--bs-text-opacity:1;color:var(--bs-secondary-color)!important}.text-body-tertiary{--bs-text-opacity:1;color:var(--bs-tertiary-color)!important}.text-body-emphasis{--bs-text-opacity:1;color:var(--bs-emphasis-color)!important}.text-reset{--bs-text-opacity:1;color:inherit!important}.text-opacity-25{--bs-text-opacity:0.25}.text-opacity-50{--bs-text-opacity:0.5}.text-opacity-75{--bs-text-opacity:0.75}.text-opacity-100{--bs-text-opacity:1}.text-primary-emphasis{color:var(--bs-primary-text-emphasis)!important}.text-secondary-emphasis{color:var(--bs-secondary-text-emphasis)!important}.text-success-emphasis{color:var(--bs-success-text-emphasis)!important}.text-info-emphasis{color:var(--bs-info-text-emphasis)!important}.text-warning-emphasis{color:var(--bs-warning-text-emphasis)!important}.text-danger-emphasis{color:var(--bs-danger-text-emphasis)!important}.text-light-emphasis{color:var(--bs-light-text-emphasis)!important}.text-dark-emphasis{color:var(--bs-dark-text-emphasis)!important}.link-opacity-10{--bs-link-opacity:0.1}.link-opacity-10-hover:hover{--bs-link-opacity:0.1}.link-opacity-25{--bs-link-opacity:0.25}.link-opacity-25-hover:hover{--bs-link-opacity:0.25}.link-opacity-50{--bs-link-opacity:0.5}.link-opacity-50-hover:hover{--bs-link-opacity:0.5}.link-opacity-75{--bs-link-opacity:0.75}.link-opacity-75-hover:hover{--bs-link-opacity:0.75}.link-opacity-100{--bs-link-opacity:1}.link-opacity-100-hover:hover{--bs-link-opacity:1}.link-offset-1{text-underline-offset:0.125em!important}.link-offset-1-hover:hover{text-underline-offset:0.125em!important}.link-offset-2{text-underline-offset:0.25em!important}.link-offset-2-hover:hover{text-underline-offset:0.25em!important}.link-offset-3{text-underline-offset:0.375em!important}.link-offset-3-hover:hover{text-underline-offset:0.375em!important}.link-underline-primary{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-primary-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-primary-rgb),var(--bs-link-underline-opacity))!important}.link-underline-secondary{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-secondary-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-secondary-rgb),var(--bs-link-underline-opacity))!important}.link-underline-success{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-success-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-success-rgb),var(--bs-link-underline-opacity))!important}.link-underline-info{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-info-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-info-rgb),var(--bs-link-underline-opacity))!important}.link-underline-warning{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-warning-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-warning-rgb),var(--bs-link-underline-opacity))!important}.link-underline-danger{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-danger-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-danger-rgb),var(--bs-link-underline-opacity))!important}.link-underline-light{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-light-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-light-rgb),var(--bs-link-underline-opacity))!important}.link-underline-dark{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-dark-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-dark-rgb),var(--bs-link-underline-opacity))!important}.link-underline{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-link-color-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:rgba(var(--bs-link-color-rgb),var(--bs-link-underline-opacity,1))!important}.link-underline-opacity-0{--bs-link-underline-opacity:0}.link-underline-opacity-0-hover:hover{--bs-link-underline-opacity:0}.link-underline-opacity-10{--bs-link-underline-opacity:0.1}.link-underline-opacity-10-hover:hover{--bs-link-underline-opacity:0.1}.link-underline-opacity-25{--bs-link-underline-opacity:0.25}.link-underline-opacity-25-hover:hover{--bs-link-underline-opacity:0.25}.link-underline-opacity-50{--bs-link-underline-opacity:0.5}.link-underline-opacity-50-hover:hover{--bs-link-underline-opacity:0.5}.link-underline-opacity-75{--bs-link-underline-opacity:0.75}.link-underline-opacity-75-hover:hover{--bs-link-underline-opacity:0.75}.link-underline-opacity-100{--bs-link-underline-opacity:1}.link-underline-opacity-100-hover:hover{--bs-link-underline-opacity:1}.bg-primary{--bs-bg-opacity:1;background-color:rgba(var(--bs-primary-rgb),var(--bs-bg-opacity))!important}.bg-secondary{--bs-bg-opacity:1;background-color:rgba(var(--bs-secondary-rgb),var(--bs-bg-opacity))!important}.bg-success{--bs-bg-opacity:1;background-color:rgba(var(--bs-success-rgb),var(--bs-bg-opacity))!important}.bg-info{--bs-bg-opacity:1;background-color:rgba(var(--bs-info-rgb),var(--bs-bg-opacity))!important}.bg-warning{--bs-bg-opacity:1;background-color:rgba(var(--bs-warning-rgb),var(--bs-bg-opacity))!important}.bg-danger{--bs-bg-opacity:1;background-color:rgba(var(--bs-danger-rgb),var(--bs-bg-opacity))!important}.bg-light{--bs-bg-opacity:1;background-color:rgba(var(--bs-light-rgb),var(--bs-bg-opacity))!important}.bg-dark{--bs-bg-opacity:1;background-color:rgba(var(--bs-dark-rgb),var(--bs-bg-opacity))!important}.bg-black{--bs-bg-opacity:1;background-color:rgba(var(--bs-black-rgb),var(--bs-bg-opacity))!important}.bg-white{--bs-bg-opacity:1;background-color:rgba(var(--bs-white-rgb),var(--bs-bg-opacity))!important}.bg-body{--bs-bg-opacity:1;background-color:rgba(var(--bs-body-bg-rgb),var(--bs-bg-opacity))!important}.bg-transparent{--bs-bg-opacity:1;background-color:transparent!important}.bg-body-secondary{--bs-bg-opacity:1;background-color:rgba(var(--bs-secondary-bg-rgb),var(--bs-bg-opacity))!important}.bg-body-tertiary{--bs-bg-opacity:1;background-color:rgba(var(--bs-tertiary-bg-rgb),var(--bs-bg-opacity))!important}.bg-opacity-10{--bs-bg-opacity:0.1}.bg-opacity-25{--bs-bg-opacity:0.25}.bg-opacity-50{--bs-bg-opacity:0.5}.bg-opacity-75{--bs-bg-opacity:0.75}.bg-opacity-100{--bs-bg-opacity:1}.bg-primary-subtle{background-color:var(--bs-primary-bg-subtle)!important}.bg-secondary-subtle{background-color:var(--bs-secondary-bg-subtle)!important}.bg-success-subtle{background-color:var(--bs-success-bg-subtle)!important}.bg-info-subtle{background-color:var(--bs-info-bg-subtle)!important}.bg-warning-subtle{background-color:var(--bs-warning-bg-subtle)!important}.bg-danger-subtle{background-color:var(--bs-danger-bg-subtle)!important}.bg-light-subtle{background-color:var(--bs-light-bg-subtle)!important}.bg-dark-subtle{background-color:var(--bs-dark-bg-subtle)!important}.bg-gradient{background-image:var(--bs-gradient)!important}.user-select-all{-webkit-user-select:all!important;-moz-user-select:all!important;user-select:all!important}.user-select-auto{-webkit-user-select:auto!important;-moz-user-select:auto!important;user-select:auto!important}.user-select-none{-webkit-user-select:none!important;-moz-user-select:none!important;user-select:none!important}.pe-none{pointer-events:none!important}.pe-auto{pointer-events:auto!important}.rounded{border-radius:var(--bs-border-radius)!important}.rounded-0{border-radius:0!important}.rounded-1{border-radius:var(--bs-border-radius-sm)!important}.rounded-2{border-radius:var(--bs-border-radius)!important}.rounded-3{border-radius:var(--bs-border-radius-lg)!important}.rounded-4{border-radius:var(--bs-border-radius-xl)!important}.rounded-5{border-radius:var(--bs-border-radius-xxl)!important}.rounded-circle{border-radius:50%!important}.rounded-pill{border-radius:var(--bs-border-radius-pill)!important}.rounded-top{border-top-left-radius:var(--bs-border-radius)!important;border-top-right-radius:var(--bs-border-radius)!important}.rounded-top-0{border-top-left-radius:0!important;border-top-right-radius:0!important}.rounded-top-1{border-top-left-radius:var(--bs-border-radius-sm)!important;border-top-right-radius:var(--bs-border-radius-sm)!important}.rounded-top-2{border-top-left-radius:var(--bs-border-radius)!important;border-top-right-radius:var(--bs-border-radius)!important}.rounded-top-3{border-top-left-radius:var(--bs-border-radius-lg)!important;border-top-right-radius:var(--bs-border-radius-lg)!important}.rounded-top-4{border-top-left-radius:var(--bs-border-radius-xl)!important;border-top-right-radius:var(--bs-border-radius-xl)!important}.rounded-top-5{border-top-left-radius:var(--bs-border-radius-xxl)!important;border-top-right-radius:var(--bs-border-radius-xxl)!important}.rounded-top-circle{border-top-left-radius:50%!important;border-top-right-radius:50%!important}.rounded-top-pill{border-top-left-radius:var(--bs-border-radius-pill)!important;border-top-right-radius:var(--bs-border-radius-pill)!important}.rounded-end{border-top-right-radius:var(--bs-border-radius)!important;border-bottom-right-radius:var(--bs-border-radius)!important}.rounded-end-0{border-top-right-radius:0!important;border-bottom-right-radius:0!important}.rounded-end-1{border-top-right-radius:var(--bs-border-radius-sm)!important;border-bottom-right-radius:var(--bs-border-radius-sm)!important}.rounded-end-2{border-top-right-radius:var(--bs-border-radius)!important;border-bottom-right-radius:var(--bs-border-radius)!important}.rounded-end-3{border-top-right-radius:var(--bs-border-radius-lg)!important;border-bottom-right-radius:var(--bs-border-radius-lg)!important}.rounded-end-4{border-top-right-radius:var(--bs-border-radius-xl)!important;border-bottom-right-radius:var(--bs-border-radius-xl)!important}.rounded-end-5{border-top-right-radius:var(--bs-border-radius-xxl)!important;border-bottom-right-radius:var(--bs-border-radius-xxl)!important}.rounded-end-circle{border-top-right-radius:50%!important;border-bottom-right-radius:50%!important}.rounded-end-pill{border-top-right-radius:var(--bs-border-radius-pill)!important;border-bottom-right-radius:var(--bs-border-radius-pill)!important}.rounded-bottom{border-bottom-right-radius:var(--bs-border-radius)!important;border-bottom-left-radius:var(--bs-border-radius)!important}.rounded-bottom-0{border-bottom-right-radius:0!important;border-bottom-left-radius:0!important}.rounded-bottom-1{border-bottom-right-radius:var(--bs-border-radius-sm)!important;border-bottom-left-radius:var(--bs-border-radius-sm)!important}.rounded-bottom-2{border-bottom-right-radius:var(--bs-border-radius)!important;border-bottom-left-radius:var(--bs-border-radius)!important}.rounded-bottom-3{border-bottom-right-radius:var(--bs-border-radius-lg)!important;border-bottom-left-radius:var(--bs-border-radius-lg)!important}.rounded-bottom-4{border-bottom-right-radius:var(--bs-border-radius-xl)!important;border-bottom-left-radius:var(--bs-border-radius-xl)!important}.rounded-bottom-5{border-bottom-right-radius:var(--bs-border-radius-xxl)!important;border-bottom-left-radius:var(--bs-border-radius-xxl)!important}.rounded-bottom-circle{border-bottom-right-radius:50%!important;border-bottom-left-radius:50%!important}.rounded-bottom-pill{border-bottom-right-radius:var(--bs-border-radius-pill)!important;border-bottom-left-radius:var(--bs-border-radius-pill)!important}.rounded-start{border-bottom-left-radius:var(--bs-border-radius)!important;border-top-left-radius:var(--bs-border-radius)!important}.rounded-start-0{border-bottom-left-radius:0!important;border-top-left-radius:0!important}.rounded-start-1{border-bottom-left-radius:var(--bs-border-radius-sm)!important;border-top-left-radius:var(--bs-border-radius-sm)!important}.rounded-start-2{border-bottom-left-radius:var(--bs-border-radius)!important;border-top-left-radius:var(--bs-border-radius)!important}.rounded-start-3{border-bottom-left-radius:var(--bs-border-radius-lg)!important;border-top-left-radius:var(--bs-border-radius-lg)!important}.rounded-start-4{border-bottom-left-radius:var(--bs-border-radius-xl)!important;border-top-left-radius:var(--bs-border-radius-xl)!important}.rounded-start-5{border-bottom-left-radius:var(--bs-border-radius-xxl)!important;border-top-left-radius:var(--bs-border-radius-xxl)!important}.rounded-start-circle{border-bottom-left-radius:50%!important;border-top-left-radius:50%!important}.rounded-start-pill{border-bottom-left-radius:var(--bs-border-radius-pill)!important;border-top-left-radius:var(--bs-border-radius-pill)!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}.z-n1{z-index:-1!important}.z-0{z-index:0!important}.z-1{z-index:1!important}.z-2{z-index:2!important}.z-3{z-index:3!important}@media (min-width:576px){.float-sm-start{float:left!important}.float-sm-end{float:right!important}.float-sm-none{float:none!important}.object-fit-sm-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-sm-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-sm-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-sm-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-sm-none{-o-object-fit:none!important;object-fit:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-grid{display:grid!important}.d-sm-inline-grid{display:inline-grid!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:flex!important}.d-sm-inline-flex{display:inline-flex!important}.d-sm-none{display:none!important}.flex-sm-fill{flex:1 1 auto!important}.flex-sm-row{flex-direction:row!important}.flex-sm-column{flex-direction:column!important}.flex-sm-row-reverse{flex-direction:row-reverse!important}.flex-sm-column-reverse{flex-direction:column-reverse!important}.flex-sm-grow-0{flex-grow:0!important}.flex-sm-grow-1{flex-grow:1!important}.flex-sm-shrink-0{flex-shrink:0!important}.flex-sm-shrink-1{flex-shrink:1!important}.flex-sm-wrap{flex-wrap:wrap!important}.flex-sm-nowrap{flex-wrap:nowrap!important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-sm-start{justify-content:flex-start!important}.justify-content-sm-end{justify-content:flex-end!important}.justify-content-sm-center{justify-content:center!important}.justify-content-sm-between{justify-content:space-between!important}.justify-content-sm-around{justify-content:space-around!important}.justify-content-sm-evenly{justify-content:space-evenly!important}.align-items-sm-start{align-items:flex-start!important}.align-items-sm-end{align-items:flex-end!important}.align-items-sm-center{align-items:center!important}.align-items-sm-baseline{align-items:baseline!important}.align-items-sm-stretch{align-items:stretch!important}.align-content-sm-start{align-content:flex-start!important}.align-content-sm-end{align-content:flex-end!important}.align-content-sm-center{align-content:center!important}.align-content-sm-between{align-content:space-between!important}.align-content-sm-around{align-content:space-around!important}.align-content-sm-stretch{align-content:stretch!important}.align-self-sm-auto{align-self:auto!important}.align-self-sm-start{align-self:flex-start!important}.align-self-sm-end{align-self:flex-end!important}.align-self-sm-center{align-self:center!important}.align-self-sm-baseline{align-self:baseline!important}.align-self-sm-stretch{align-self:stretch!important}.order-sm-first{order:-1!important}.order-sm-0{order:0!important}.order-sm-1{order:1!important}.order-sm-2{order:2!important}.order-sm-3{order:3!important}.order-sm-4{order:4!important}.order-sm-5{order:5!important}.order-sm-last{order:6!important}.m-sm-0{margin:0!important}.m-sm-1{margin:.25rem!important}.m-sm-2{margin:.5rem!important}.m-sm-3{margin:1rem!important}.m-sm-4{margin:1.5rem!important}.m-sm-5{margin:3rem!important}.m-sm-auto{margin:auto!important}.mx-sm-0{margin-right:0!important;margin-left:0!important}.mx-sm-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-sm-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-sm-3{margin-right:1rem!important;margin-left:1rem!important}.mx-sm-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-sm-5{margin-right:3rem!important;margin-left:3rem!important}.mx-sm-auto{margin-right:auto!important;margin-left:auto!important}.my-sm-0{margin-top:0!important;margin-bottom:0!important}.my-sm-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-sm-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-sm-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-sm-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-sm-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-sm-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-sm-0{margin-top:0!important}.mt-sm-1{margin-top:.25rem!important}.mt-sm-2{margin-top:.5rem!important}.mt-sm-3{margin-top:1rem!important}.mt-sm-4{margin-top:1.5rem!important}.mt-sm-5{margin-top:3rem!important}.mt-sm-auto{margin-top:auto!important}.me-sm-0{margin-right:0!important}.me-sm-1{margin-right:.25rem!important}.me-sm-2{margin-right:.5rem!important}.me-sm-3{margin-right:1rem!important}.me-sm-4{margin-right:1.5rem!important}.me-sm-5{margin-right:3rem!important}.me-sm-auto{margin-right:auto!important}.mb-sm-0{margin-bottom:0!important}.mb-sm-1{margin-bottom:.25rem!important}.mb-sm-2{margin-bottom:.5rem!important}.mb-sm-3{margin-bottom:1rem!important}.mb-sm-4{margin-bottom:1.5rem!important}.mb-sm-5{margin-bottom:3rem!important}.mb-sm-auto{margin-bottom:auto!important}.ms-sm-0{margin-left:0!important}.ms-sm-1{margin-left:.25rem!important}.ms-sm-2{margin-left:.5rem!important}.ms-sm-3{margin-left:1rem!important}.ms-sm-4{margin-left:1.5rem!important}.ms-sm-5{margin-left:3rem!important}.ms-sm-auto{margin-left:auto!important}.p-sm-0{padding:0!important}.p-sm-1{padding:.25rem!important}.p-sm-2{padding:.5rem!important}.p-sm-3{padding:1rem!important}.p-sm-4{padding:1.5rem!important}.p-sm-5{padding:3rem!important}.px-sm-0{padding-right:0!important;padding-left:0!important}.px-sm-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-sm-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-sm-3{padding-right:1rem!important;padding-left:1rem!important}.px-sm-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-sm-5{padding-right:3rem!important;padding-left:3rem!important}.py-sm-0{padding-top:0!important;padding-bottom:0!important}.py-sm-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-sm-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-sm-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-sm-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-sm-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-sm-0{padding-top:0!important}.pt-sm-1{padding-top:.25rem!important}.pt-sm-2{padding-top:.5rem!important}.pt-sm-3{padding-top:1rem!important}.pt-sm-4{padding-top:1.5rem!important}.pt-sm-5{padding-top:3rem!important}.pe-sm-0{padding-right:0!important}.pe-sm-1{padding-right:.25rem!important}.pe-sm-2{padding-right:.5rem!important}.pe-sm-3{padding-right:1rem!important}.pe-sm-4{padding-right:1.5rem!important}.pe-sm-5{padding-right:3rem!important}.pb-sm-0{padding-bottom:0!important}.pb-sm-1{padding-bottom:.25rem!important}.pb-sm-2{padding-bottom:.5rem!important}.pb-sm-3{padding-bottom:1rem!important}.pb-sm-4{padding-bottom:1.5rem!important}.pb-sm-5{padding-bottom:3rem!important}.ps-sm-0{padding-left:0!important}.ps-sm-1{padding-left:.25rem!important}.ps-sm-2{padding-left:.5rem!important}.ps-sm-3{padding-left:1rem!important}.ps-sm-4{padding-left:1.5rem!important}.ps-sm-5{padding-left:3rem!important}.gap-sm-0{gap:0!important}.gap-sm-1{gap:.25rem!important}.gap-sm-2{gap:.5rem!important}.gap-sm-3{gap:1rem!important}.gap-sm-4{gap:1.5rem!important}.gap-sm-5{gap:3rem!important}.row-gap-sm-0{row-gap:0!important}.row-gap-sm-1{row-gap:.25rem!important}.row-gap-sm-2{row-gap:.5rem!important}.row-gap-sm-3{row-gap:1rem!important}.row-gap-sm-4{row-gap:1.5rem!important}.row-gap-sm-5{row-gap:3rem!important}.column-gap-sm-0{-moz-column-gap:0!important;column-gap:0!important}.column-gap-sm-1{-moz-column-gap:0.25rem!important;column-gap:.25rem!important}.column-gap-sm-2{-moz-column-gap:0.5rem!important;column-gap:.5rem!important}.column-gap-sm-3{-moz-column-gap:1rem!important;column-gap:1rem!important}.column-gap-sm-4{-moz-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-sm-5{-moz-column-gap:3rem!important;column-gap:3rem!important}.text-sm-start{text-align:left!important}.text-sm-end{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.float-md-start{float:left!important}.float-md-end{float:right!important}.float-md-none{float:none!important}.object-fit-md-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-md-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-md-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-md-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-md-none{-o-object-fit:none!important;object-fit:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-grid{display:grid!important}.d-md-inline-grid{display:inline-grid!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:flex!important}.d-md-inline-flex{display:inline-flex!important}.d-md-none{display:none!important}.flex-md-fill{flex:1 1 auto!important}.flex-md-row{flex-direction:row!important}.flex-md-column{flex-direction:column!important}.flex-md-row-reverse{flex-direction:row-reverse!important}.flex-md-column-reverse{flex-direction:column-reverse!important}.flex-md-grow-0{flex-grow:0!important}.flex-md-grow-1{flex-grow:1!important}.flex-md-shrink-0{flex-shrink:0!important}.flex-md-shrink-1{flex-shrink:1!important}.flex-md-wrap{flex-wrap:wrap!important}.flex-md-nowrap{flex-wrap:nowrap!important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-md-start{justify-content:flex-start!important}.justify-content-md-end{justify-content:flex-end!important}.justify-content-md-center{justify-content:center!important}.justify-content-md-between{justify-content:space-between!important}.justify-content-md-around{justify-content:space-around!important}.justify-content-md-evenly{justify-content:space-evenly!important}.align-items-md-start{align-items:flex-start!important}.align-items-md-end{align-items:flex-end!important}.align-items-md-center{align-items:center!important}.align-items-md-baseline{align-items:baseline!important}.align-items-md-stretch{align-items:stretch!important}.align-content-md-start{align-content:flex-start!important}.align-content-md-end{align-content:flex-end!important}.align-content-md-center{align-content:center!important}.align-content-md-between{align-content:space-between!important}.align-content-md-around{align-content:space-around!important}.align-content-md-stretch{align-content:stretch!important}.align-self-md-auto{align-self:auto!important}.align-self-md-start{align-self:flex-start!important}.align-self-md-end{align-self:flex-end!important}.align-self-md-center{align-self:center!important}.align-self-md-baseline{align-self:baseline!important}.align-self-md-stretch{align-self:stretch!important}.order-md-first{order:-1!important}.order-md-0{order:0!important}.order-md-1{order:1!important}.order-md-2{order:2!important}.order-md-3{order:3!important}.order-md-4{order:4!important}.order-md-5{order:5!important}.order-md-last{order:6!important}.m-md-0{margin:0!important}.m-md-1{margin:.25rem!important}.m-md-2{margin:.5rem!important}.m-md-3{margin:1rem!important}.m-md-4{margin:1.5rem!important}.m-md-5{margin:3rem!important}.m-md-auto{margin:auto!important}.mx-md-0{margin-right:0!important;margin-left:0!important}.mx-md-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-md-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-md-3{margin-right:1rem!important;margin-left:1rem!important}.mx-md-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-md-5{margin-right:3rem!important;margin-left:3rem!important}.mx-md-auto{margin-right:auto!important;margin-left:auto!important}.my-md-0{margin-top:0!important;margin-bottom:0!important}.my-md-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-md-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-md-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-md-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-md-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-md-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-md-0{margin-top:0!important}.mt-md-1{margin-top:.25rem!important}.mt-md-2{margin-top:.5rem!important}.mt-md-3{margin-top:1rem!important}.mt-md-4{margin-top:1.5rem!important}.mt-md-5{margin-top:3rem!important}.mt-md-auto{margin-top:auto!important}.me-md-0{margin-right:0!important}.me-md-1{margin-right:.25rem!important}.me-md-2{margin-right:.5rem!important}.me-md-3{margin-right:1rem!important}.me-md-4{margin-right:1.5rem!important}.me-md-5{margin-right:3rem!important}.me-md-auto{margin-right:auto!important}.mb-md-0{margin-bottom:0!important}.mb-md-1{margin-bottom:.25rem!important}.mb-md-2{margin-bottom:.5rem!important}.mb-md-3{margin-bottom:1rem!important}.mb-md-4{margin-bottom:1.5rem!important}.mb-md-5{margin-bottom:3rem!important}.mb-md-auto{margin-bottom:auto!important}.ms-md-0{margin-left:0!important}.ms-md-1{margin-left:.25rem!important}.ms-md-2{margin-left:.5rem!important}.ms-md-3{margin-left:1rem!important}.ms-md-4{margin-left:1.5rem!important}.ms-md-5{margin-left:3rem!important}.ms-md-auto{margin-left:auto!important}.p-md-0{padding:0!important}.p-md-1{padding:.25rem!important}.p-md-2{padding:.5rem!important}.p-md-3{padding:1rem!important}.p-md-4{padding:1.5rem!important}.p-md-5{padding:3rem!important}.px-md-0{padding-right:0!important;padding-left:0!important}.px-md-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-md-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-md-3{padding-right:1rem!important;padding-left:1rem!important}.px-md-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-md-5{padding-right:3rem!important;padding-left:3rem!important}.py-md-0{padding-top:0!important;padding-bottom:0!important}.py-md-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-md-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-md-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-md-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-md-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-md-0{padding-top:0!important}.pt-md-1{padding-top:.25rem!important}.pt-md-2{padding-top:.5rem!important}.pt-md-3{padding-top:1rem!important}.pt-md-4{padding-top:1.5rem!important}.pt-md-5{padding-top:3rem!important}.pe-md-0{padding-right:0!important}.pe-md-1{padding-right:.25rem!important}.pe-md-2{padding-right:.5rem!important}.pe-md-3{padding-right:1rem!important}.pe-md-4{padding-right:1.5rem!important}.pe-md-5{padding-right:3rem!important}.pb-md-0{padding-bottom:0!important}.pb-md-1{padding-bottom:.25rem!important}.pb-md-2{padding-bottom:.5rem!important}.pb-md-3{padding-bottom:1rem!important}.pb-md-4{padding-bottom:1.5rem!important}.pb-md-5{padding-bottom:3rem!important}.ps-md-0{padding-left:0!important}.ps-md-1{padding-left:.25rem!important}.ps-md-2{padding-left:.5rem!important}.ps-md-3{padding-left:1rem!important}.ps-md-4{padding-left:1.5rem!important}.ps-md-5{padding-left:3rem!important}.gap-md-0{gap:0!important}.gap-md-1{gap:.25rem!important}.gap-md-2{gap:.5rem!important}.gap-md-3{gap:1rem!important}.gap-md-4{gap:1.5rem!important}.gap-md-5{gap:3rem!important}.row-gap-md-0{row-gap:0!important}.row-gap-md-1{row-gap:.25rem!important}.row-gap-md-2{row-gap:.5rem!important}.row-gap-md-3{row-gap:1rem!important}.row-gap-md-4{row-gap:1.5rem!important}.row-gap-md-5{row-gap:3rem!important}.column-gap-md-0{-moz-column-gap:0!important;column-gap:0!important}.column-gap-md-1{-moz-column-gap:0.25rem!important;column-gap:.25rem!important}.column-gap-md-2{-moz-column-gap:0.5rem!important;column-gap:.5rem!important}.column-gap-md-3{-moz-column-gap:1rem!important;column-gap:1rem!important}.column-gap-md-4{-moz-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-md-5{-moz-column-gap:3rem!important;column-gap:3rem!important}.text-md-start{text-align:left!important}.text-md-end{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.float-lg-start{float:left!important}.float-lg-end{float:right!important}.float-lg-none{float:none!important}.object-fit-lg-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-lg-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-lg-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-lg-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-lg-none{-o-object-fit:none!important;object-fit:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-grid{display:grid!important}.d-lg-inline-grid{display:inline-grid!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:flex!important}.d-lg-inline-flex{display:inline-flex!important}.d-lg-none{display:none!important}.flex-lg-fill{flex:1 1 auto!important}.flex-lg-row{flex-direction:row!important}.flex-lg-column{flex-direction:column!important}.flex-lg-row-reverse{flex-direction:row-reverse!important}.flex-lg-column-reverse{flex-direction:column-reverse!important}.flex-lg-grow-0{flex-grow:0!important}.flex-lg-grow-1{flex-grow:1!important}.flex-lg-shrink-0{flex-shrink:0!important}.flex-lg-shrink-1{flex-shrink:1!important}.flex-lg-wrap{flex-wrap:wrap!important}.flex-lg-nowrap{flex-wrap:nowrap!important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-lg-start{justify-content:flex-start!important}.justify-content-lg-end{justify-content:flex-end!important}.justify-content-lg-center{justify-content:center!important}.justify-content-lg-between{justify-content:space-between!important}.justify-content-lg-around{justify-content:space-around!important}.justify-content-lg-evenly{justify-content:space-evenly!important}.align-items-lg-start{align-items:flex-start!important}.align-items-lg-end{align-items:flex-end!important}.align-items-lg-center{align-items:center!important}.align-items-lg-baseline{align-items:baseline!important}.align-items-lg-stretch{align-items:stretch!important}.align-content-lg-start{align-content:flex-start!important}.align-content-lg-end{align-content:flex-end!important}.align-content-lg-center{align-content:center!important}.align-content-lg-between{align-content:space-between!important}.align-content-lg-around{align-content:space-around!important}.align-content-lg-stretch{align-content:stretch!important}.align-self-lg-auto{align-self:auto!important}.align-self-lg-start{align-self:flex-start!important}.align-self-lg-end{align-self:flex-end!important}.align-self-lg-center{align-self:center!important}.align-self-lg-baseline{align-self:baseline!important}.align-self-lg-stretch{align-self:stretch!important}.order-lg-first{order:-1!important}.order-lg-0{order:0!important}.order-lg-1{order:1!important}.order-lg-2{order:2!important}.order-lg-3{order:3!important}.order-lg-4{order:4!important}.order-lg-5{order:5!important}.order-lg-last{order:6!important}.m-lg-0{margin:0!important}.m-lg-1{margin:.25rem!important}.m-lg-2{margin:.5rem!important}.m-lg-3{margin:1rem!important}.m-lg-4{margin:1.5rem!important}.m-lg-5{margin:3rem!important}.m-lg-auto{margin:auto!important}.mx-lg-0{margin-right:0!important;margin-left:0!important}.mx-lg-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-lg-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-lg-3{margin-right:1rem!important;margin-left:1rem!important}.mx-lg-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-lg-5{margin-right:3rem!important;margin-left:3rem!important}.mx-lg-auto{margin-right:auto!important;margin-left:auto!important}.my-lg-0{margin-top:0!important;margin-bottom:0!important}.my-lg-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-lg-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-lg-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-lg-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-lg-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-lg-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-lg-0{margin-top:0!important}.mt-lg-1{margin-top:.25rem!important}.mt-lg-2{margin-top:.5rem!important}.mt-lg-3{margin-top:1rem!important}.mt-lg-4{margin-top:1.5rem!important}.mt-lg-5{margin-top:3rem!important}.mt-lg-auto{margin-top:auto!important}.me-lg-0{margin-right:0!important}.me-lg-1{margin-right:.25rem!important}.me-lg-2{margin-right:.5rem!important}.me-lg-3{margin-right:1rem!important}.me-lg-4{margin-right:1.5rem!important}.me-lg-5{margin-right:3rem!important}.me-lg-auto{margin-right:auto!important}.mb-lg-0{margin-bottom:0!important}.mb-lg-1{margin-bottom:.25rem!important}.mb-lg-2{margin-bottom:.5rem!important}.mb-lg-3{margin-bottom:1rem!important}.mb-lg-4{margin-bottom:1.5rem!important}.mb-lg-5{margin-bottom:3rem!important}.mb-lg-auto{margin-bottom:auto!important}.ms-lg-0{margin-left:0!important}.ms-lg-1{margin-left:.25rem!important}.ms-lg-2{margin-left:.5rem!important}.ms-lg-3{margin-left:1rem!important}.ms-lg-4{margin-left:1.5rem!important}.ms-lg-5{margin-left:3rem!important}.ms-lg-auto{margin-left:auto!important}.p-lg-0{padding:0!important}.p-lg-1{padding:.25rem!important}.p-lg-2{padding:.5rem!important}.p-lg-3{padding:1rem!important}.p-lg-4{padding:1.5rem!important}.p-lg-5{padding:3rem!important}.px-lg-0{padding-right:0!important;padding-left:0!important}.px-lg-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-lg-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-lg-3{padding-right:1rem!important;padding-left:1rem!important}.px-lg-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-lg-5{padding-right:3rem!important;padding-left:3rem!important}.py-lg-0{padding-top:0!important;padding-bottom:0!important}.py-lg-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-lg-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-lg-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-lg-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-lg-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-lg-0{padding-top:0!important}.pt-lg-1{padding-top:.25rem!important}.pt-lg-2{padding-top:.5rem!important}.pt-lg-3{padding-top:1rem!important}.pt-lg-4{padding-top:1.5rem!important}.pt-lg-5{padding-top:3rem!important}.pe-lg-0{padding-right:0!important}.pe-lg-1{padding-right:.25rem!important}.pe-lg-2{padding-right:.5rem!important}.pe-lg-3{padding-right:1rem!important}.pe-lg-4{padding-right:1.5rem!important}.pe-lg-5{padding-right:3rem!important}.pb-lg-0{padding-bottom:0!important}.pb-lg-1{padding-bottom:.25rem!important}.pb-lg-2{padding-bottom:.5rem!important}.pb-lg-3{padding-bottom:1rem!important}.pb-lg-4{padding-bottom:1.5rem!important}.pb-lg-5{padding-bottom:3rem!important}.ps-lg-0{padding-left:0!important}.ps-lg-1{padding-left:.25rem!important}.ps-lg-2{padding-left:.5rem!important}.ps-lg-3{padding-left:1rem!important}.ps-lg-4{padding-left:1.5rem!important}.ps-lg-5{padding-left:3rem!important}.gap-lg-0{gap:0!important}.gap-lg-1{gap:.25rem!important}.gap-lg-2{gap:.5rem!important}.gap-lg-3{gap:1rem!important}.gap-lg-4{gap:1.5rem!important}.gap-lg-5{gap:3rem!important}.row-gap-lg-0{row-gap:0!important}.row-gap-lg-1{row-gap:.25rem!important}.row-gap-lg-2{row-gap:.5rem!important}.row-gap-lg-3{row-gap:1rem!important}.row-gap-lg-4{row-gap:1.5rem!important}.row-gap-lg-5{row-gap:3rem!important}.column-gap-lg-0{-moz-column-gap:0!important;column-gap:0!important}.column-gap-lg-1{-moz-column-gap:0.25rem!important;column-gap:.25rem!important}.column-gap-lg-2{-moz-column-gap:0.5rem!important;column-gap:.5rem!important}.column-gap-lg-3{-moz-column-gap:1rem!important;column-gap:1rem!important}.column-gap-lg-4{-moz-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-lg-5{-moz-column-gap:3rem!important;column-gap:3rem!important}.text-lg-start{text-align:left!important}.text-lg-end{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.float-xl-start{float:left!important}.float-xl-end{float:right!important}.float-xl-none{float:none!important}.object-fit-xl-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-xl-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-xl-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-xl-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-xl-none{-o-object-fit:none!important;object-fit:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-grid{display:grid!important}.d-xl-inline-grid{display:inline-grid!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:flex!important}.d-xl-inline-flex{display:inline-flex!important}.d-xl-none{display:none!important}.flex-xl-fill{flex:1 1 auto!important}.flex-xl-row{flex-direction:row!important}.flex-xl-column{flex-direction:column!important}.flex-xl-row-reverse{flex-direction:row-reverse!important}.flex-xl-column-reverse{flex-direction:column-reverse!important}.flex-xl-grow-0{flex-grow:0!important}.flex-xl-grow-1{flex-grow:1!important}.flex-xl-shrink-0{flex-shrink:0!important}.flex-xl-shrink-1{flex-shrink:1!important}.flex-xl-wrap{flex-wrap:wrap!important}.flex-xl-nowrap{flex-wrap:nowrap!important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-xl-start{justify-content:flex-start!important}.justify-content-xl-end{justify-content:flex-end!important}.justify-content-xl-center{justify-content:center!important}.justify-content-xl-between{justify-content:space-between!important}.justify-content-xl-around{justify-content:space-around!important}.justify-content-xl-evenly{justify-content:space-evenly!important}.align-items-xl-start{align-items:flex-start!important}.align-items-xl-end{align-items:flex-end!important}.align-items-xl-center{align-items:center!important}.align-items-xl-baseline{align-items:baseline!important}.align-items-xl-stretch{align-items:stretch!important}.align-content-xl-start{align-content:flex-start!important}.align-content-xl-end{align-content:flex-end!important}.align-content-xl-center{align-content:center!important}.align-content-xl-between{align-content:space-between!important}.align-content-xl-around{align-content:space-around!important}.align-content-xl-stretch{align-content:stretch!important}.align-self-xl-auto{align-self:auto!important}.align-self-xl-start{align-self:flex-start!important}.align-self-xl-end{align-self:flex-end!important}.align-self-xl-center{align-self:center!important}.align-self-xl-baseline{align-self:baseline!important}.align-self-xl-stretch{align-self:stretch!important}.order-xl-first{order:-1!important}.order-xl-0{order:0!important}.order-xl-1{order:1!important}.order-xl-2{order:2!important}.order-xl-3{order:3!important}.order-xl-4{order:4!important}.order-xl-5{order:5!important}.order-xl-last{order:6!important}.m-xl-0{margin:0!important}.m-xl-1{margin:.25rem!important}.m-xl-2{margin:.5rem!important}.m-xl-3{margin:1rem!important}.m-xl-4{margin:1.5rem!important}.m-xl-5{margin:3rem!important}.m-xl-auto{margin:auto!important}.mx-xl-0{margin-right:0!important;margin-left:0!important}.mx-xl-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-xl-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-xl-3{margin-right:1rem!important;margin-left:1rem!important}.mx-xl-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-xl-5{margin-right:3rem!important;margin-left:3rem!important}.mx-xl-auto{margin-right:auto!important;margin-left:auto!important}.my-xl-0{margin-top:0!important;margin-bottom:0!important}.my-xl-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-xl-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-xl-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-xl-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-xl-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-xl-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-xl-0{margin-top:0!important}.mt-xl-1{margin-top:.25rem!important}.mt-xl-2{margin-top:.5rem!important}.mt-xl-3{margin-top:1rem!important}.mt-xl-4{margin-top:1.5rem!important}.mt-xl-5{margin-top:3rem!important}.mt-xl-auto{margin-top:auto!important}.me-xl-0{margin-right:0!important}.me-xl-1{margin-right:.25rem!important}.me-xl-2{margin-right:.5rem!important}.me-xl-3{margin-right:1rem!important}.me-xl-4{margin-right:1.5rem!important}.me-xl-5{margin-right:3rem!important}.me-xl-auto{margin-right:auto!important}.mb-xl-0{margin-bottom:0!important}.mb-xl-1{margin-bottom:.25rem!important}.mb-xl-2{margin-bottom:.5rem!important}.mb-xl-3{margin-bottom:1rem!important}.mb-xl-4{margin-bottom:1.5rem!important}.mb-xl-5{margin-bottom:3rem!important}.mb-xl-auto{margin-bottom:auto!important}.ms-xl-0{margin-left:0!important}.ms-xl-1{margin-left:.25rem!important}.ms-xl-2{margin-left:.5rem!important}.ms-xl-3{margin-left:1rem!important}.ms-xl-4{margin-left:1.5rem!important}.ms-xl-5{margin-left:3rem!important}.ms-xl-auto{margin-left:auto!important}.p-xl-0{padding:0!important}.p-xl-1{padding:.25rem!important}.p-xl-2{padding:.5rem!important}.p-xl-3{padding:1rem!important}.p-xl-4{padding:1.5rem!important}.p-xl-5{padding:3rem!important}.px-xl-0{padding-right:0!important;padding-left:0!important}.px-xl-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-xl-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-xl-3{padding-right:1rem!important;padding-left:1rem!important}.px-xl-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-xl-5{padding-right:3rem!important;padding-left:3rem!important}.py-xl-0{padding-top:0!important;padding-bottom:0!important}.py-xl-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-xl-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-xl-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-xl-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-xl-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-xl-0{padding-top:0!important}.pt-xl-1{padding-top:.25rem!important}.pt-xl-2{padding-top:.5rem!important}.pt-xl-3{padding-top:1rem!important}.pt-xl-4{padding-top:1.5rem!important}.pt-xl-5{padding-top:3rem!important}.pe-xl-0{padding-right:0!important}.pe-xl-1{padding-right:.25rem!important}.pe-xl-2{padding-right:.5rem!important}.pe-xl-3{padding-right:1rem!important}.pe-xl-4{padding-right:1.5rem!important}.pe-xl-5{padding-right:3rem!important}.pb-xl-0{padding-bottom:0!important}.pb-xl-1{padding-bottom:.25rem!important}.pb-xl-2{padding-bottom:.5rem!important}.pb-xl-3{padding-bottom:1rem!important}.pb-xl-4{padding-bottom:1.5rem!important}.pb-xl-5{padding-bottom:3rem!important}.ps-xl-0{padding-left:0!important}.ps-xl-1{padding-left:.25rem!important}.ps-xl-2{padding-left:.5rem!important}.ps-xl-3{padding-left:1rem!important}.ps-xl-4{padding-left:1.5rem!important}.ps-xl-5{padding-left:3rem!important}.gap-xl-0{gap:0!important}.gap-xl-1{gap:.25rem!important}.gap-xl-2{gap:.5rem!important}.gap-xl-3{gap:1rem!important}.gap-xl-4{gap:1.5rem!important}.gap-xl-5{gap:3rem!important}.row-gap-xl-0{row-gap:0!important}.row-gap-xl-1{row-gap:.25rem!important}.row-gap-xl-2{row-gap:.5rem!important}.row-gap-xl-3{row-gap:1rem!important}.row-gap-xl-4{row-gap:1.5rem!important}.row-gap-xl-5{row-gap:3rem!important}.column-gap-xl-0{-moz-column-gap:0!important;column-gap:0!important}.column-gap-xl-1{-moz-column-gap:0.25rem!important;column-gap:.25rem!important}.column-gap-xl-2{-moz-column-gap:0.5rem!important;column-gap:.5rem!important}.column-gap-xl-3{-moz-column-gap:1rem!important;column-gap:1rem!important}.column-gap-xl-4{-moz-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-xl-5{-moz-column-gap:3rem!important;column-gap:3rem!important}.text-xl-start{text-align:left!important}.text-xl-end{text-align:right!important}.text-xl-center{text-align:center!important}}@media (min-width:1400px){.float-xxl-start{float:left!important}.float-xxl-end{float:right!important}.float-xxl-none{float:none!important}.object-fit-xxl-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-xxl-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-xxl-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-xxl-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-xxl-none{-o-object-fit:none!important;object-fit:none!important}.d-xxl-inline{display:inline!important}.d-xxl-inline-block{display:inline-block!important}.d-xxl-block{display:block!important}.d-xxl-grid{display:grid!important}.d-xxl-inline-grid{display:inline-grid!important}.d-xxl-table{display:table!important}.d-xxl-table-row{display:table-row!important}.d-xxl-table-cell{display:table-cell!important}.d-xxl-flex{display:flex!important}.d-xxl-inline-flex{display:inline-flex!important}.d-xxl-none{display:none!important}.flex-xxl-fill{flex:1 1 auto!important}.flex-xxl-row{flex-direction:row!important}.flex-xxl-column{flex-direction:column!important}.flex-xxl-row-reverse{flex-direction:row-reverse!important}.flex-xxl-column-reverse{flex-direction:column-reverse!important}.flex-xxl-grow-0{flex-grow:0!important}.flex-xxl-grow-1{flex-grow:1!important}.flex-xxl-shrink-0{flex-shrink:0!important}.flex-xxl-shrink-1{flex-shrink:1!important}.flex-xxl-wrap{flex-wrap:wrap!important}.flex-xxl-nowrap{flex-wrap:nowrap!important}.flex-xxl-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-xxl-start{justify-content:flex-start!important}.justify-content-xxl-end{justify-content:flex-end!important}.justify-content-xxl-center{justify-content:center!important}.justify-content-xxl-between{justify-content:space-between!important}.justify-content-xxl-around{justify-content:space-around!important}.justify-content-xxl-evenly{justify-content:space-evenly!important}.align-items-xxl-start{align-items:flex-start!important}.align-items-xxl-end{align-items:flex-end!important}.align-items-xxl-center{align-items:center!important}.align-items-xxl-baseline{align-items:baseline!important}.align-items-xxl-stretch{align-items:stretch!important}.align-content-xxl-start{align-content:flex-start!important}.align-content-xxl-end{align-content:flex-end!important}.align-content-xxl-center{align-content:center!important}.align-content-xxl-between{align-content:space-between!important}.align-content-xxl-around{align-content:space-around!important}.align-content-xxl-stretch{align-content:stretch!important}.align-self-xxl-auto{align-self:auto!important}.align-self-xxl-start{align-self:flex-start!important}.align-self-xxl-end{align-self:flex-end!important}.align-self-xxl-center{align-self:center!important}.align-self-xxl-baseline{align-self:baseline!important}.align-self-xxl-stretch{align-self:stretch!important}.order-xxl-first{order:-1!important}.order-xxl-0{order:0!important}.order-xxl-1{order:1!important}.order-xxl-2{order:2!important}.order-xxl-3{order:3!important}.order-xxl-4{order:4!important}.order-xxl-5{order:5!important}.order-xxl-last{order:6!important}.m-xxl-0{margin:0!important}.m-xxl-1{margin:.25rem!important}.m-xxl-2{margin:.5rem!important}.m-xxl-3{margin:1rem!important}.m-xxl-4{margin:1.5rem!important}.m-xxl-5{margin:3rem!important}.m-xxl-auto{margin:auto!important}.mx-xxl-0{margin-right:0!important;margin-left:0!important}.mx-xxl-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-xxl-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-xxl-3{margin-right:1rem!important;margin-left:1rem!important}.mx-xxl-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-xxl-5{margin-right:3rem!important;margin-left:3rem!important}.mx-xxl-auto{margin-right:auto!important;margin-left:auto!important}.my-xxl-0{margin-top:0!important;margin-bottom:0!important}.my-xxl-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-xxl-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-xxl-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-xxl-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-xxl-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-xxl-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-xxl-0{margin-top:0!important}.mt-xxl-1{margin-top:.25rem!important}.mt-xxl-2{margin-top:.5rem!important}.mt-xxl-3{margin-top:1rem!important}.mt-xxl-4{margin-top:1.5rem!important}.mt-xxl-5{margin-top:3rem!important}.mt-xxl-auto{margin-top:auto!important}.me-xxl-0{margin-right:0!important}.me-xxl-1{margin-right:.25rem!important}.me-xxl-2{margin-right:.5rem!important}.me-xxl-3{margin-right:1rem!important}.me-xxl-4{margin-right:1.5rem!important}.me-xxl-5{margin-right:3rem!important}.me-xxl-auto{margin-right:auto!important}.mb-xxl-0{margin-bottom:0!important}.mb-xxl-1{margin-bottom:.25rem!important}.mb-xxl-2{margin-bottom:.5rem!important}.mb-xxl-3{margin-bottom:1rem!important}.mb-xxl-4{margin-bottom:1.5rem!important}.mb-xxl-5{margin-bottom:3rem!important}.mb-xxl-auto{margin-bottom:auto!important}.ms-xxl-0{margin-left:0!important}.ms-xxl-1{margin-left:.25rem!important}.ms-xxl-2{margin-left:.5rem!important}.ms-xxl-3{margin-left:1rem!important}.ms-xxl-4{margin-left:1.5rem!important}.ms-xxl-5{margin-left:3rem!important}.ms-xxl-auto{margin-left:auto!important}.p-xxl-0{padding:0!important}.p-xxl-1{padding:.25rem!important}.p-xxl-2{padding:.5rem!important}.p-xxl-3{padding:1rem!important}.p-xxl-4{padding:1.5rem!important}.p-xxl-5{padding:3rem!important}.px-xxl-0{padding-right:0!important;padding-left:0!important}.px-xxl-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-xxl-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-xxl-3{padding-right:1rem!important;padding-left:1rem!important}.px-xxl-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-xxl-5{padding-right:3rem!important;padding-left:3rem!important}.py-xxl-0{padding-top:0!important;padding-bottom:0!important}.py-xxl-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-xxl-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-xxl-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-xxl-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-xxl-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-xxl-0{padding-top:0!important}.pt-xxl-1{padding-top:.25rem!important}.pt-xxl-2{padding-top:.5rem!important}.pt-xxl-3{padding-top:1rem!important}.pt-xxl-4{padding-top:1.5rem!important}.pt-xxl-5{padding-top:3rem!important}.pe-xxl-0{padding-right:0!important}.pe-xxl-1{padding-right:.25rem!important}.pe-xxl-2{padding-right:.5rem!important}.pe-xxl-3{padding-right:1rem!important}.pe-xxl-4{padding-right:1.5rem!important}.pe-xxl-5{padding-right:3rem!important}.pb-xxl-0{padding-bottom:0!important}.pb-xxl-1{padding-bottom:.25rem!important}.pb-xxl-2{padding-bottom:.5rem!important}.pb-xxl-3{padding-bottom:1rem!important}.pb-xxl-4{padding-bottom:1.5rem!important}.pb-xxl-5{padding-bottom:3rem!important}.ps-xxl-0{padding-left:0!important}.ps-xxl-1{padding-left:.25rem!important}.ps-xxl-2{padding-left:.5rem!important}.ps-xxl-3{padding-left:1rem!important}.ps-xxl-4{padding-left:1.5rem!important}.ps-xxl-5{padding-left:3rem!important}.gap-xxl-0{gap:0!important}.gap-xxl-1{gap:.25rem!important}.gap-xxl-2{gap:.5rem!important}.gap-xxl-3{gap:1rem!important}.gap-xxl-4{gap:1.5rem!important}.gap-xxl-5{gap:3rem!important}.row-gap-xxl-0{row-gap:0!important}.row-gap-xxl-1{row-gap:.25rem!important}.row-gap-xxl-2{row-gap:.5rem!important}.row-gap-xxl-3{row-gap:1rem!important}.row-gap-xxl-4{row-gap:1.5rem!important}.row-gap-xxl-5{row-gap:3rem!important}.column-gap-xxl-0{-moz-column-gap:0!important;column-gap:0!important}.column-gap-xxl-1{-moz-column-gap:0.25rem!important;column-gap:.25rem!important}.column-gap-xxl-2{-moz-column-gap:0.5rem!important;column-gap:.5rem!important}.column-gap-xxl-3{-moz-column-gap:1rem!important;column-gap:1rem!important}.column-gap-xxl-4{-moz-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-xxl-5{-moz-column-gap:3rem!important;column-gap:3rem!important}.text-xxl-start{text-align:left!important}.text-xxl-end{text-align:right!important}.text-xxl-center{text-align:center!important}}@media (min-width:1200px){.fs-1{font-size:2.5rem!important}.fs-2{font-size:2rem!important}.fs-3{font-size:1.75rem!important}.fs-4{font-size:1.5rem!important}}@media print{.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-grid{display:grid!important}.d-print-inline-grid{display:inline-grid!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:flex!important}.d-print-inline-flex{display:inline-flex!important}.d-print-none{display:none!important}}\\n/*# sourceMappingURL=bootstrap.min.css.map */\",\"@mixin bsBanner($file) {\\n /*!\\n * Bootstrap #{$file} v5.3.3 (https://getbootstrap.com/)\\n * Copyright 2011-2024 The Bootstrap Authors\\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\\n */\\n}\\n\",\":root,\\n[data-bs-theme=\\\"light\\\"] {\\n // Note: Custom variable values only support SassScript inside `#{}`.\\n\\n // Colors\\n //\\n // Generate palettes for full colors, grays, and theme colors.\\n\\n @each $color, $value in $colors {\\n --#{$prefix}#{$color}: #{$value};\\n }\\n\\n @each $color, $value in $grays {\\n --#{$prefix}gray-#{$color}: #{$value};\\n }\\n\\n @each $color, $value in $theme-colors {\\n --#{$prefix}#{$color}: #{$value};\\n }\\n\\n @each $color, $value in $theme-colors-rgb {\\n --#{$prefix}#{$color}-rgb: #{$value};\\n }\\n\\n @each $color, $value in $theme-colors-text {\\n --#{$prefix}#{$color}-text-emphasis: #{$value};\\n }\\n\\n @each $color, $value in $theme-colors-bg-subtle {\\n --#{$prefix}#{$color}-bg-subtle: #{$value};\\n }\\n\\n @each $color, $value in $theme-colors-border-subtle {\\n --#{$prefix}#{$color}-border-subtle: #{$value};\\n }\\n\\n --#{$prefix}white-rgb: #{to-rgb($white)};\\n --#{$prefix}black-rgb: #{to-rgb($black)};\\n\\n // Fonts\\n\\n // Note: Use `inspect` for lists so that quoted items keep the quotes.\\n // See https://github.com/sass/sass/issues/2383#issuecomment-336349172\\n --#{$prefix}font-sans-serif: #{inspect($font-family-sans-serif)};\\n --#{$prefix}font-monospace: #{inspect($font-family-monospace)};\\n --#{$prefix}gradient: #{$gradient};\\n\\n // Root and body\\n // scss-docs-start root-body-variables\\n @if $font-size-root != null {\\n --#{$prefix}root-font-size: #{$font-size-root};\\n }\\n --#{$prefix}body-font-family: #{inspect($font-family-base)};\\n @include rfs($font-size-base, --#{$prefix}body-font-size);\\n --#{$prefix}body-font-weight: #{$font-weight-base};\\n --#{$prefix}body-line-height: #{$line-height-base};\\n @if $body-text-align != null {\\n --#{$prefix}body-text-align: #{$body-text-align};\\n }\\n\\n --#{$prefix}body-color: #{$body-color};\\n --#{$prefix}body-color-rgb: #{to-rgb($body-color)};\\n --#{$prefix}body-bg: #{$body-bg};\\n --#{$prefix}body-bg-rgb: #{to-rgb($body-bg)};\\n\\n --#{$prefix}emphasis-color: #{$body-emphasis-color};\\n --#{$prefix}emphasis-color-rgb: #{to-rgb($body-emphasis-color)};\\n\\n --#{$prefix}secondary-color: #{$body-secondary-color};\\n --#{$prefix}secondary-color-rgb: #{to-rgb($body-secondary-color)};\\n --#{$prefix}secondary-bg: #{$body-secondary-bg};\\n --#{$prefix}secondary-bg-rgb: #{to-rgb($body-secondary-bg)};\\n\\n --#{$prefix}tertiary-color: #{$body-tertiary-color};\\n --#{$prefix}tertiary-color-rgb: #{to-rgb($body-tertiary-color)};\\n --#{$prefix}tertiary-bg: #{$body-tertiary-bg};\\n --#{$prefix}tertiary-bg-rgb: #{to-rgb($body-tertiary-bg)};\\n // scss-docs-end root-body-variables\\n\\n --#{$prefix}heading-color: #{$headings-color};\\n\\n --#{$prefix}link-color: #{$link-color};\\n --#{$prefix}link-color-rgb: #{to-rgb($link-color)};\\n --#{$prefix}link-decoration: #{$link-decoration};\\n\\n --#{$prefix}link-hover-color: #{$link-hover-color};\\n --#{$prefix}link-hover-color-rgb: #{to-rgb($link-hover-color)};\\n\\n @if $link-hover-decoration != null {\\n --#{$prefix}link-hover-decoration: #{$link-hover-decoration};\\n }\\n\\n --#{$prefix}code-color: #{$code-color};\\n --#{$prefix}highlight-color: #{$mark-color};\\n --#{$prefix}highlight-bg: #{$mark-bg};\\n\\n // scss-docs-start root-border-var\\n --#{$prefix}border-width: #{$border-width};\\n --#{$prefix}border-style: #{$border-style};\\n --#{$prefix}border-color: #{$border-color};\\n --#{$prefix}border-color-translucent: #{$border-color-translucent};\\n\\n --#{$prefix}border-radius: #{$border-radius};\\n --#{$prefix}border-radius-sm: #{$border-radius-sm};\\n --#{$prefix}border-radius-lg: #{$border-radius-lg};\\n --#{$prefix}border-radius-xl: #{$border-radius-xl};\\n --#{$prefix}border-radius-xxl: #{$border-radius-xxl};\\n --#{$prefix}border-radius-2xl: var(--#{$prefix}border-radius-xxl); // Deprecated in v5.3.0 for consistency\\n --#{$prefix}border-radius-pill: #{$border-radius-pill};\\n // scss-docs-end root-border-var\\n\\n --#{$prefix}box-shadow: #{$box-shadow};\\n --#{$prefix}box-shadow-sm: #{$box-shadow-sm};\\n --#{$prefix}box-shadow-lg: #{$box-shadow-lg};\\n --#{$prefix}box-shadow-inset: #{$box-shadow-inset};\\n\\n // Focus styles\\n // scss-docs-start root-focus-variables\\n --#{$prefix}focus-ring-width: #{$focus-ring-width};\\n --#{$prefix}focus-ring-opacity: #{$focus-ring-opacity};\\n --#{$prefix}focus-ring-color: #{$focus-ring-color};\\n // scss-docs-end root-focus-variables\\n\\n // scss-docs-start root-form-validation-variables\\n --#{$prefix}form-valid-color: #{$form-valid-color};\\n --#{$prefix}form-valid-border-color: #{$form-valid-border-color};\\n --#{$prefix}form-invalid-color: #{$form-invalid-color};\\n --#{$prefix}form-invalid-border-color: #{$form-invalid-border-color};\\n // scss-docs-end root-form-validation-variables\\n}\\n\\n@if $enable-dark-mode {\\n @include color-mode(dark, true) {\\n color-scheme: dark;\\n\\n // scss-docs-start root-dark-mode-vars\\n --#{$prefix}body-color: #{$body-color-dark};\\n --#{$prefix}body-color-rgb: #{to-rgb($body-color-dark)};\\n --#{$prefix}body-bg: #{$body-bg-dark};\\n --#{$prefix}body-bg-rgb: #{to-rgb($body-bg-dark)};\\n\\n --#{$prefix}emphasis-color: #{$body-emphasis-color-dark};\\n --#{$prefix}emphasis-color-rgb: #{to-rgb($body-emphasis-color-dark)};\\n\\n --#{$prefix}secondary-color: #{$body-secondary-color-dark};\\n --#{$prefix}secondary-color-rgb: #{to-rgb($body-secondary-color-dark)};\\n --#{$prefix}secondary-bg: #{$body-secondary-bg-dark};\\n --#{$prefix}secondary-bg-rgb: #{to-rgb($body-secondary-bg-dark)};\\n\\n --#{$prefix}tertiary-color: #{$body-tertiary-color-dark};\\n --#{$prefix}tertiary-color-rgb: #{to-rgb($body-tertiary-color-dark)};\\n --#{$prefix}tertiary-bg: #{$body-tertiary-bg-dark};\\n --#{$prefix}tertiary-bg-rgb: #{to-rgb($body-tertiary-bg-dark)};\\n\\n @each $color, $value in $theme-colors-text-dark {\\n --#{$prefix}#{$color}-text-emphasis: #{$value};\\n }\\n\\n @each $color, $value in $theme-colors-bg-subtle-dark {\\n --#{$prefix}#{$color}-bg-subtle: #{$value};\\n }\\n\\n @each $color, $value in $theme-colors-border-subtle-dark {\\n --#{$prefix}#{$color}-border-subtle: #{$value};\\n }\\n\\n --#{$prefix}heading-color: #{$headings-color-dark};\\n\\n --#{$prefix}link-color: #{$link-color-dark};\\n --#{$prefix}link-hover-color: #{$link-hover-color-dark};\\n --#{$prefix}link-color-rgb: #{to-rgb($link-color-dark)};\\n --#{$prefix}link-hover-color-rgb: #{to-rgb($link-hover-color-dark)};\\n\\n --#{$prefix}code-color: #{$code-color-dark};\\n --#{$prefix}highlight-color: #{$mark-color-dark};\\n --#{$prefix}highlight-bg: #{$mark-bg-dark};\\n\\n --#{$prefix}border-color: #{$border-color-dark};\\n --#{$prefix}border-color-translucent: #{$border-color-translucent-dark};\\n\\n --#{$prefix}form-valid-color: #{$form-valid-color-dark};\\n --#{$prefix}form-valid-border-color: #{$form-valid-border-color-dark};\\n --#{$prefix}form-invalid-color: #{$form-invalid-color-dark};\\n --#{$prefix}form-invalid-border-color: #{$form-invalid-border-color-dark};\\n // scss-docs-end root-dark-mode-vars\\n }\\n}\\n\",\"// stylelint-disable scss/dimension-no-non-numeric-values\\n\\n// SCSS RFS mixin\\n//\\n// Automated responsive values for font sizes, paddings, margins and much more\\n//\\n// Licensed under MIT (https://github.com/twbs/rfs/blob/main/LICENSE)\\n\\n// Configuration\\n\\n// Base value\\n$rfs-base-value: 1.25rem !default;\\n$rfs-unit: rem !default;\\n\\n@if $rfs-unit != rem and $rfs-unit != px {\\n @error \\\"`#{$rfs-unit}` is not a valid unit for $rfs-unit. Use `px` or `rem`.\\\";\\n}\\n\\n// Breakpoint at where values start decreasing if screen width is smaller\\n$rfs-breakpoint: 1200px !default;\\n$rfs-breakpoint-unit: px !default;\\n\\n@if $rfs-breakpoint-unit != px and $rfs-breakpoint-unit != em and $rfs-breakpoint-unit != rem {\\n @error \\\"`#{$rfs-breakpoint-unit}` is not a valid unit for $rfs-breakpoint-unit. Use `px`, `em` or `rem`.\\\";\\n}\\n\\n// Resize values based on screen height and width\\n$rfs-two-dimensional: false !default;\\n\\n// Factor of decrease\\n$rfs-factor: 10 !default;\\n\\n@if type-of($rfs-factor) != number or $rfs-factor <= 1 {\\n @error \\\"`#{$rfs-factor}` is not a valid $rfs-factor, it must be greater than 1.\\\";\\n}\\n\\n// Mode. Possibilities: \\\"min-media-query\\\", \\\"max-media-query\\\"\\n$rfs-mode: min-media-query !default;\\n\\n// Generate enable or disable classes. Possibilities: false, \\\"enable\\\" or \\\"disable\\\"\\n$rfs-class: false !default;\\n\\n// 1 rem = $rfs-rem-value px\\n$rfs-rem-value: 16 !default;\\n\\n// Safari iframe resize bug: https://github.com/twbs/rfs/issues/14\\n$rfs-safari-iframe-resize-bug-fix: false !default;\\n\\n// Disable RFS by setting $enable-rfs to false\\n$enable-rfs: true !default;\\n\\n// Cache $rfs-base-value unit\\n$rfs-base-value-unit: unit($rfs-base-value);\\n\\n@function divide($dividend, $divisor, $precision: 10) {\\n $sign: if($dividend > 0 and $divisor > 0 or $dividend < 0 and $divisor < 0, 1, -1);\\n $dividend: abs($dividend);\\n $divisor: abs($divisor);\\n @if $dividend == 0 {\\n @return 0;\\n }\\n @if $divisor == 0 {\\n @error \\\"Cannot divide by 0\\\";\\n }\\n $remainder: $dividend;\\n $result: 0;\\n $factor: 10;\\n @while ($remainder > 0 and $precision >= 0) {\\n $quotient: 0;\\n @while ($remainder >= $divisor) {\\n $remainder: $remainder - $divisor;\\n $quotient: $quotient + 1;\\n }\\n $result: $result * 10 + $quotient;\\n $factor: $factor * .1;\\n $remainder: $remainder * 10;\\n $precision: $precision - 1;\\n @if ($precision < 0 and $remainder >= $divisor * 5) {\\n $result: $result + 1;\\n }\\n }\\n $result: $result * $factor * $sign;\\n $dividend-unit: unit($dividend);\\n $divisor-unit: unit($divisor);\\n $unit-map: (\\n \\\"px\\\": 1px,\\n \\\"rem\\\": 1rem,\\n \\\"em\\\": 1em,\\n \\\"%\\\": 1%\\n );\\n @if ($dividend-unit != $divisor-unit and map-has-key($unit-map, $dividend-unit)) {\\n $result: $result * map-get($unit-map, $dividend-unit);\\n }\\n @return $result;\\n}\\n\\n// Remove px-unit from $rfs-base-value for calculations\\n@if $rfs-base-value-unit == px {\\n $rfs-base-value: divide($rfs-base-value, $rfs-base-value * 0 + 1);\\n}\\n@else if $rfs-base-value-unit == rem {\\n $rfs-base-value: divide($rfs-base-value, divide($rfs-base-value * 0 + 1, $rfs-rem-value));\\n}\\n\\n// Cache $rfs-breakpoint unit to prevent multiple calls\\n$rfs-breakpoint-unit-cache: unit($rfs-breakpoint);\\n\\n// Remove unit from $rfs-breakpoint for calculations\\n@if $rfs-breakpoint-unit-cache == px {\\n $rfs-breakpoint: divide($rfs-breakpoint, $rfs-breakpoint * 0 + 1);\\n}\\n@else if $rfs-breakpoint-unit-cache == rem or $rfs-breakpoint-unit-cache == \\\"em\\\" {\\n $rfs-breakpoint: divide($rfs-breakpoint, divide($rfs-breakpoint * 0 + 1, $rfs-rem-value));\\n}\\n\\n// Calculate the media query value\\n$rfs-mq-value: if($rfs-breakpoint-unit == px, #{$rfs-breakpoint}px, #{divide($rfs-breakpoint, $rfs-rem-value)}#{$rfs-breakpoint-unit});\\n$rfs-mq-property-width: if($rfs-mode == max-media-query, max-width, min-width);\\n$rfs-mq-property-height: if($rfs-mode == max-media-query, max-height, min-height);\\n\\n// Internal mixin used to determine which media query needs to be used\\n@mixin _rfs-media-query {\\n @if $rfs-two-dimensional {\\n @if $rfs-mode == max-media-query {\\n @media (#{$rfs-mq-property-width}: #{$rfs-mq-value}), (#{$rfs-mq-property-height}: #{$rfs-mq-value}) {\\n @content;\\n }\\n }\\n @else {\\n @media (#{$rfs-mq-property-width}: #{$rfs-mq-value}) and (#{$rfs-mq-property-height}: #{$rfs-mq-value}) {\\n @content;\\n }\\n }\\n }\\n @else {\\n @media (#{$rfs-mq-property-width}: #{$rfs-mq-value}) {\\n @content;\\n }\\n }\\n}\\n\\n// Internal mixin that adds disable classes to the selector if needed.\\n@mixin _rfs-rule {\\n @if $rfs-class == disable and $rfs-mode == max-media-query {\\n // Adding an extra class increases specificity, which prevents the media query to override the property\\n &,\\n .disable-rfs &,\\n &.disable-rfs {\\n @content;\\n }\\n }\\n @else if $rfs-class == enable and $rfs-mode == min-media-query {\\n .enable-rfs &,\\n &.enable-rfs {\\n @content;\\n }\\n } @else {\\n @content;\\n }\\n}\\n\\n// Internal mixin that adds enable classes to the selector if needed.\\n@mixin _rfs-media-query-rule {\\n\\n @if $rfs-class == enable {\\n @if $rfs-mode == min-media-query {\\n @content;\\n }\\n\\n @include _rfs-media-query () {\\n .enable-rfs &,\\n &.enable-rfs {\\n @content;\\n }\\n }\\n }\\n @else {\\n @if $rfs-class == disable and $rfs-mode == min-media-query {\\n .disable-rfs &,\\n &.disable-rfs {\\n @content;\\n }\\n }\\n @include _rfs-media-query () {\\n @content;\\n }\\n }\\n}\\n\\n// Helper function to get the formatted non-responsive value\\n@function rfs-value($values) {\\n // Convert to list\\n $values: if(type-of($values) != list, ($values,), $values);\\n\\n $val: \\\"\\\";\\n\\n // Loop over each value and calculate value\\n @each $value in $values {\\n @if $value == 0 {\\n $val: $val + \\\" 0\\\";\\n }\\n @else {\\n // Cache $value unit\\n $unit: if(type-of($value) == \\\"number\\\", unit($value), false);\\n\\n @if $unit == px {\\n // Convert to rem if needed\\n $val: $val + \\\" \\\" + if($rfs-unit == rem, #{divide($value, $value * 0 + $rfs-rem-value)}rem, $value);\\n }\\n @else if $unit == rem {\\n // Convert to px if needed\\n $val: $val + \\\" \\\" + if($rfs-unit == px, #{divide($value, $value * 0 + 1) * $rfs-rem-value}px, $value);\\n } @else {\\n // If $value isn't a number (like inherit) or $value has a unit (not px or rem, like 1.5em) or $ is 0, just print the value\\n $val: $val + \\\" \\\" + $value;\\n }\\n }\\n }\\n\\n // Remove first space\\n @return unquote(str-slice($val, 2));\\n}\\n\\n// Helper function to get the responsive value calculated by RFS\\n@function rfs-fluid-value($values) {\\n // Convert to list\\n $values: if(type-of($values) != list, ($values,), $values);\\n\\n $val: \\\"\\\";\\n\\n // Loop over each value and calculate value\\n @each $value in $values {\\n @if $value == 0 {\\n $val: $val + \\\" 0\\\";\\n } @else {\\n // Cache $value unit\\n $unit: if(type-of($value) == \\\"number\\\", unit($value), false);\\n\\n // If $value isn't a number (like inherit) or $value has a unit (not px or rem, like 1.5em) or $ is 0, just print the value\\n @if not $unit or $unit != px and $unit != rem {\\n $val: $val + \\\" \\\" + $value;\\n } @else {\\n // Remove unit from $value for calculations\\n $value: divide($value, $value * 0 + if($unit == px, 1, divide(1, $rfs-rem-value)));\\n\\n // Only add the media query if the value is greater than the minimum value\\n @if abs($value) <= $rfs-base-value or not $enable-rfs {\\n $val: $val + \\\" \\\" + if($rfs-unit == rem, #{divide($value, $rfs-rem-value)}rem, #{$value}px);\\n }\\n @else {\\n // Calculate the minimum value\\n $value-min: $rfs-base-value + divide(abs($value) - $rfs-base-value, $rfs-factor);\\n\\n // Calculate difference between $value and the minimum value\\n $value-diff: abs($value) - $value-min;\\n\\n // Base value formatting\\n $min-width: if($rfs-unit == rem, #{divide($value-min, $rfs-rem-value)}rem, #{$value-min}px);\\n\\n // Use negative value if needed\\n $min-width: if($value < 0, -$min-width, $min-width);\\n\\n // Use `vmin` if two-dimensional is enabled\\n $variable-unit: if($rfs-two-dimensional, vmin, vw);\\n\\n // Calculate the variable width between 0 and $rfs-breakpoint\\n $variable-width: #{divide($value-diff * 100, $rfs-breakpoint)}#{$variable-unit};\\n\\n // Return the calculated value\\n $val: $val + \\\" calc(\\\" + $min-width + if($value < 0, \\\" - \\\", \\\" + \\\") + $variable-width + \\\")\\\";\\n }\\n }\\n }\\n }\\n\\n // Remove first space\\n @return unquote(str-slice($val, 2));\\n}\\n\\n// RFS mixin\\n@mixin rfs($values, $property: font-size) {\\n @if $values != null {\\n $val: rfs-value($values);\\n $fluid-val: rfs-fluid-value($values);\\n\\n // Do not print the media query if responsive & non-responsive values are the same\\n @if $val == $fluid-val {\\n #{$property}: $val;\\n }\\n @else {\\n @include _rfs-rule () {\\n #{$property}: if($rfs-mode == max-media-query, $val, $fluid-val);\\n\\n // Include safari iframe resize fix if needed\\n min-width: if($rfs-safari-iframe-resize-bug-fix, (0 * 1vw), null);\\n }\\n\\n @include _rfs-media-query-rule () {\\n #{$property}: if($rfs-mode == max-media-query, $fluid-val, $val);\\n }\\n }\\n }\\n}\\n\\n// Shorthand helper mixins\\n@mixin font-size($value) {\\n @include rfs($value);\\n}\\n\\n@mixin padding($value) {\\n @include rfs($value, padding);\\n}\\n\\n@mixin padding-top($value) {\\n @include rfs($value, padding-top);\\n}\\n\\n@mixin padding-right($value) {\\n @include rfs($value, padding-right);\\n}\\n\\n@mixin padding-bottom($value) {\\n @include rfs($value, padding-bottom);\\n}\\n\\n@mixin padding-left($value) {\\n @include rfs($value, padding-left);\\n}\\n\\n@mixin margin($value) {\\n @include rfs($value, margin);\\n}\\n\\n@mixin margin-top($value) {\\n @include rfs($value, margin-top);\\n}\\n\\n@mixin margin-right($value) {\\n @include rfs($value, margin-right);\\n}\\n\\n@mixin margin-bottom($value) {\\n @include rfs($value, margin-bottom);\\n}\\n\\n@mixin margin-left($value) {\\n @include rfs($value, margin-left);\\n}\\n\",\"// scss-docs-start color-mode-mixin\\n@mixin color-mode($mode: light, $root: false) {\\n @if $color-mode-type == \\\"media-query\\\" {\\n @if $root == true {\\n @media (prefers-color-scheme: $mode) {\\n :root {\\n @content;\\n }\\n }\\n } @else {\\n @media (prefers-color-scheme: $mode) {\\n @content;\\n }\\n }\\n } @else {\\n [data-bs-theme=\\\"#{$mode}\\\"] {\\n @content;\\n }\\n }\\n}\\n// scss-docs-end color-mode-mixin\\n\",\"@charset \\\"UTF-8\\\";\\n/*!\\n * Bootstrap v5.3.3 (https://getbootstrap.com/)\\n * Copyright 2011-2024 The Bootstrap Authors\\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\\n */\\n:root,\\n[data-bs-theme=light] {\\n --bs-blue: #0d6efd;\\n --bs-indigo: #6610f2;\\n --bs-purple: #6f42c1;\\n --bs-pink: #d63384;\\n --bs-red: #dc3545;\\n --bs-orange: #fd7e14;\\n --bs-yellow: #ffc107;\\n --bs-green: #198754;\\n --bs-teal: #20c997;\\n --bs-cyan: #0dcaf0;\\n --bs-black: #000;\\n --bs-white: #fff;\\n --bs-gray: #6c757d;\\n --bs-gray-dark: #343a40;\\n --bs-gray-100: #f8f9fa;\\n --bs-gray-200: #e9ecef;\\n --bs-gray-300: #dee2e6;\\n --bs-gray-400: #ced4da;\\n --bs-gray-500: #adb5bd;\\n --bs-gray-600: #6c757d;\\n --bs-gray-700: #495057;\\n --bs-gray-800: #343a40;\\n --bs-gray-900: #212529;\\n --bs-primary: #0d6efd;\\n --bs-secondary: #6c757d;\\n --bs-success: #198754;\\n --bs-info: #0dcaf0;\\n --bs-warning: #ffc107;\\n --bs-danger: #dc3545;\\n --bs-light: #f8f9fa;\\n --bs-dark: #212529;\\n --bs-primary-rgb: 13, 110, 253;\\n --bs-secondary-rgb: 108, 117, 125;\\n --bs-success-rgb: 25, 135, 84;\\n --bs-info-rgb: 13, 202, 240;\\n --bs-warning-rgb: 255, 193, 7;\\n --bs-danger-rgb: 220, 53, 69;\\n --bs-light-rgb: 248, 249, 250;\\n --bs-dark-rgb: 33, 37, 41;\\n --bs-primary-text-emphasis: #052c65;\\n --bs-secondary-text-emphasis: #2b2f32;\\n --bs-success-text-emphasis: #0a3622;\\n --bs-info-text-emphasis: #055160;\\n --bs-warning-text-emphasis: #664d03;\\n --bs-danger-text-emphasis: #58151c;\\n --bs-light-text-emphasis: #495057;\\n --bs-dark-text-emphasis: #495057;\\n --bs-primary-bg-subtle: #cfe2ff;\\n --bs-secondary-bg-subtle: #e2e3e5;\\n --bs-success-bg-subtle: #d1e7dd;\\n --bs-info-bg-subtle: #cff4fc;\\n --bs-warning-bg-subtle: #fff3cd;\\n --bs-danger-bg-subtle: #f8d7da;\\n --bs-light-bg-subtle: #fcfcfd;\\n --bs-dark-bg-subtle: #ced4da;\\n --bs-primary-border-subtle: #9ec5fe;\\n --bs-secondary-border-subtle: #c4c8cb;\\n --bs-success-border-subtle: #a3cfbb;\\n --bs-info-border-subtle: #9eeaf9;\\n --bs-warning-border-subtle: #ffe69c;\\n --bs-danger-border-subtle: #f1aeb5;\\n --bs-light-border-subtle: #e9ecef;\\n --bs-dark-border-subtle: #adb5bd;\\n --bs-white-rgb: 255, 255, 255;\\n --bs-black-rgb: 0, 0, 0;\\n --bs-font-sans-serif: system-ui, -apple-system, \\\"Segoe UI\\\", Roboto, \\\"Helvetica Neue\\\", \\\"Noto Sans\\\", \\\"Liberation Sans\\\", Arial, sans-serif, \\\"Apple Color Emoji\\\", \\\"Segoe UI Emoji\\\", \\\"Segoe UI Symbol\\\", \\\"Noto Color Emoji\\\";\\n --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, \\\"Liberation Mono\\\", \\\"Courier New\\\", monospace;\\n --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));\\n --bs-body-font-family: var(--bs-font-sans-serif);\\n --bs-body-font-size: 1rem;\\n --bs-body-font-weight: 400;\\n --bs-body-line-height: 1.5;\\n --bs-body-color: #212529;\\n --bs-body-color-rgb: 33, 37, 41;\\n --bs-body-bg: #fff;\\n --bs-body-bg-rgb: 255, 255, 255;\\n --bs-emphasis-color: #000;\\n --bs-emphasis-color-rgb: 0, 0, 0;\\n --bs-secondary-color: rgba(33, 37, 41, 0.75);\\n --bs-secondary-color-rgb: 33, 37, 41;\\n --bs-secondary-bg: #e9ecef;\\n --bs-secondary-bg-rgb: 233, 236, 239;\\n --bs-tertiary-color: rgba(33, 37, 41, 0.5);\\n --bs-tertiary-color-rgb: 33, 37, 41;\\n --bs-tertiary-bg: #f8f9fa;\\n --bs-tertiary-bg-rgb: 248, 249, 250;\\n --bs-heading-color: inherit;\\n --bs-link-color: #0d6efd;\\n --bs-link-color-rgb: 13, 110, 253;\\n --bs-link-decoration: underline;\\n --bs-link-hover-color: #0a58ca;\\n --bs-link-hover-color-rgb: 10, 88, 202;\\n --bs-code-color: #d63384;\\n --bs-highlight-color: #212529;\\n --bs-highlight-bg: #fff3cd;\\n --bs-border-width: 1px;\\n --bs-border-style: solid;\\n --bs-border-color: #dee2e6;\\n --bs-border-color-translucent: rgba(0, 0, 0, 0.175);\\n --bs-border-radius: 0.375rem;\\n --bs-border-radius-sm: 0.25rem;\\n --bs-border-radius-lg: 0.5rem;\\n --bs-border-radius-xl: 1rem;\\n --bs-border-radius-xxl: 2rem;\\n --bs-border-radius-2xl: var(--bs-border-radius-xxl);\\n --bs-border-radius-pill: 50rem;\\n --bs-box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);\\n --bs-box-shadow-sm: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);\\n --bs-box-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, 0.175);\\n --bs-box-shadow-inset: inset 0 1px 2px rgba(0, 0, 0, 0.075);\\n --bs-focus-ring-width: 0.25rem;\\n --bs-focus-ring-opacity: 0.25;\\n --bs-focus-ring-color: rgba(13, 110, 253, 0.25);\\n --bs-form-valid-color: #198754;\\n --bs-form-valid-border-color: #198754;\\n --bs-form-invalid-color: #dc3545;\\n --bs-form-invalid-border-color: #dc3545;\\n}\\n\\n[data-bs-theme=dark] {\\n color-scheme: dark;\\n --bs-body-color: #dee2e6;\\n --bs-body-color-rgb: 222, 226, 230;\\n --bs-body-bg: #212529;\\n --bs-body-bg-rgb: 33, 37, 41;\\n --bs-emphasis-color: #fff;\\n --bs-emphasis-color-rgb: 255, 255, 255;\\n --bs-secondary-color: rgba(222, 226, 230, 0.75);\\n --bs-secondary-color-rgb: 222, 226, 230;\\n --bs-secondary-bg: #343a40;\\n --bs-secondary-bg-rgb: 52, 58, 64;\\n --bs-tertiary-color: rgba(222, 226, 230, 0.5);\\n --bs-tertiary-color-rgb: 222, 226, 230;\\n --bs-tertiary-bg: #2b3035;\\n --bs-tertiary-bg-rgb: 43, 48, 53;\\n --bs-primary-text-emphasis: #6ea8fe;\\n --bs-secondary-text-emphasis: #a7acb1;\\n --bs-success-text-emphasis: #75b798;\\n --bs-info-text-emphasis: #6edff6;\\n --bs-warning-text-emphasis: #ffda6a;\\n --bs-danger-text-emphasis: #ea868f;\\n --bs-light-text-emphasis: #f8f9fa;\\n --bs-dark-text-emphasis: #dee2e6;\\n --bs-primary-bg-subtle: #031633;\\n --bs-secondary-bg-subtle: #161719;\\n --bs-success-bg-subtle: #051b11;\\n --bs-info-bg-subtle: #032830;\\n --bs-warning-bg-subtle: #332701;\\n --bs-danger-bg-subtle: #2c0b0e;\\n --bs-light-bg-subtle: #343a40;\\n --bs-dark-bg-subtle: #1a1d20;\\n --bs-primary-border-subtle: #084298;\\n --bs-secondary-border-subtle: #41464b;\\n --bs-success-border-subtle: #0f5132;\\n --bs-info-border-subtle: #087990;\\n --bs-warning-border-subtle: #997404;\\n --bs-danger-border-subtle: #842029;\\n --bs-light-border-subtle: #495057;\\n --bs-dark-border-subtle: #343a40;\\n --bs-heading-color: inherit;\\n --bs-link-color: #6ea8fe;\\n --bs-link-hover-color: #8bb9fe;\\n --bs-link-color-rgb: 110, 168, 254;\\n --bs-link-hover-color-rgb: 139, 185, 254;\\n --bs-code-color: #e685b5;\\n --bs-highlight-color: #dee2e6;\\n --bs-highlight-bg: #664d03;\\n --bs-border-color: #495057;\\n --bs-border-color-translucent: rgba(255, 255, 255, 0.15);\\n --bs-form-valid-color: #75b798;\\n --bs-form-valid-border-color: #75b798;\\n --bs-form-invalid-color: #ea868f;\\n --bs-form-invalid-border-color: #ea868f;\\n}\\n\\n*,\\n*::before,\\n*::after {\\n box-sizing: border-box;\\n}\\n\\n@media (prefers-reduced-motion: no-preference) {\\n :root {\\n scroll-behavior: smooth;\\n }\\n}\\n\\nbody {\\n margin: 0;\\n font-family: var(--bs-body-font-family);\\n font-size: var(--bs-body-font-size);\\n font-weight: var(--bs-body-font-weight);\\n line-height: var(--bs-body-line-height);\\n color: var(--bs-body-color);\\n text-align: var(--bs-body-text-align);\\n background-color: var(--bs-body-bg);\\n -webkit-text-size-adjust: 100%;\\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\\n}\\n\\nhr {\\n margin: 1rem 0;\\n color: inherit;\\n border: 0;\\n border-top: var(--bs-border-width) solid;\\n opacity: 0.25;\\n}\\n\\nh6, .h6, h5, .h5, h4, .h4, h3, .h3, h2, .h2, h1, .h1 {\\n margin-top: 0;\\n margin-bottom: 0.5rem;\\n font-weight: 500;\\n line-height: 1.2;\\n color: var(--bs-heading-color);\\n}\\n\\nh1, .h1 {\\n font-size: calc(1.375rem + 1.5vw);\\n}\\n@media (min-width: 1200px) {\\n h1, .h1 {\\n font-size: 2.5rem;\\n }\\n}\\n\\nh2, .h2 {\\n font-size: calc(1.325rem + 0.9vw);\\n}\\n@media (min-width: 1200px) {\\n h2, .h2 {\\n font-size: 2rem;\\n }\\n}\\n\\nh3, .h3 {\\n font-size: calc(1.3rem + 0.6vw);\\n}\\n@media (min-width: 1200px) {\\n h3, .h3 {\\n font-size: 1.75rem;\\n }\\n}\\n\\nh4, .h4 {\\n font-size: calc(1.275rem + 0.3vw);\\n}\\n@media (min-width: 1200px) {\\n h4, .h4 {\\n font-size: 1.5rem;\\n }\\n}\\n\\nh5, .h5 {\\n font-size: 1.25rem;\\n}\\n\\nh6, .h6 {\\n font-size: 1rem;\\n}\\n\\np {\\n margin-top: 0;\\n margin-bottom: 1rem;\\n}\\n\\nabbr[title] {\\n -webkit-text-decoration: underline dotted;\\n text-decoration: underline dotted;\\n cursor: help;\\n -webkit-text-decoration-skip-ink: none;\\n text-decoration-skip-ink: none;\\n}\\n\\naddress {\\n margin-bottom: 1rem;\\n font-style: normal;\\n line-height: inherit;\\n}\\n\\nol,\\nul {\\n padding-left: 2rem;\\n}\\n\\nol,\\nul,\\ndl {\\n margin-top: 0;\\n margin-bottom: 1rem;\\n}\\n\\nol ol,\\nul ul,\\nol ul,\\nul ol {\\n margin-bottom: 0;\\n}\\n\\ndt {\\n font-weight: 700;\\n}\\n\\ndd {\\n margin-bottom: 0.5rem;\\n margin-left: 0;\\n}\\n\\nblockquote {\\n margin: 0 0 1rem;\\n}\\n\\nb,\\nstrong {\\n font-weight: bolder;\\n}\\n\\nsmall, .small {\\n font-size: 0.875em;\\n}\\n\\nmark, .mark {\\n padding: 0.1875em;\\n color: var(--bs-highlight-color);\\n background-color: var(--bs-highlight-bg);\\n}\\n\\nsub,\\nsup {\\n position: relative;\\n font-size: 0.75em;\\n line-height: 0;\\n vertical-align: baseline;\\n}\\n\\nsub {\\n bottom: -0.25em;\\n}\\n\\nsup {\\n top: -0.5em;\\n}\\n\\na {\\n color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 1));\\n text-decoration: underline;\\n}\\na:hover {\\n --bs-link-color-rgb: var(--bs-link-hover-color-rgb);\\n}\\n\\na:not([href]):not([class]), a:not([href]):not([class]):hover {\\n color: inherit;\\n text-decoration: none;\\n}\\n\\npre,\\ncode,\\nkbd,\\nsamp {\\n font-family: var(--bs-font-monospace);\\n font-size: 1em;\\n}\\n\\npre {\\n display: block;\\n margin-top: 0;\\n margin-bottom: 1rem;\\n overflow: auto;\\n font-size: 0.875em;\\n}\\npre code {\\n font-size: inherit;\\n color: inherit;\\n word-break: normal;\\n}\\n\\ncode {\\n font-size: 0.875em;\\n color: var(--bs-code-color);\\n word-wrap: break-word;\\n}\\na > code {\\n color: inherit;\\n}\\n\\nkbd {\\n padding: 0.1875rem 0.375rem;\\n font-size: 0.875em;\\n color: var(--bs-body-bg);\\n background-color: var(--bs-body-color);\\n border-radius: 0.25rem;\\n}\\nkbd kbd {\\n padding: 0;\\n font-size: 1em;\\n}\\n\\nfigure {\\n margin: 0 0 1rem;\\n}\\n\\nimg,\\nsvg {\\n vertical-align: middle;\\n}\\n\\ntable {\\n caption-side: bottom;\\n border-collapse: collapse;\\n}\\n\\ncaption {\\n padding-top: 0.5rem;\\n padding-bottom: 0.5rem;\\n color: var(--bs-secondary-color);\\n text-align: left;\\n}\\n\\nth {\\n text-align: inherit;\\n text-align: -webkit-match-parent;\\n}\\n\\nthead,\\ntbody,\\ntfoot,\\ntr,\\ntd,\\nth {\\n border-color: inherit;\\n border-style: solid;\\n border-width: 0;\\n}\\n\\nlabel {\\n display: inline-block;\\n}\\n\\nbutton {\\n border-radius: 0;\\n}\\n\\nbutton:focus:not(:focus-visible) {\\n outline: 0;\\n}\\n\\ninput,\\nbutton,\\nselect,\\noptgroup,\\ntextarea {\\n margin: 0;\\n font-family: inherit;\\n font-size: inherit;\\n line-height: inherit;\\n}\\n\\nbutton,\\nselect {\\n text-transform: none;\\n}\\n\\n[role=button] {\\n cursor: pointer;\\n}\\n\\nselect {\\n word-wrap: normal;\\n}\\nselect:disabled {\\n opacity: 1;\\n}\\n\\n[list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator {\\n display: none !important;\\n}\\n\\nbutton,\\n[type=button],\\n[type=reset],\\n[type=submit] {\\n -webkit-appearance: button;\\n}\\nbutton:not(:disabled),\\n[type=button]:not(:disabled),\\n[type=reset]:not(:disabled),\\n[type=submit]:not(:disabled) {\\n cursor: pointer;\\n}\\n\\n::-moz-focus-inner {\\n padding: 0;\\n border-style: none;\\n}\\n\\ntextarea {\\n resize: vertical;\\n}\\n\\nfieldset {\\n min-width: 0;\\n padding: 0;\\n margin: 0;\\n border: 0;\\n}\\n\\nlegend {\\n float: left;\\n width: 100%;\\n padding: 0;\\n margin-bottom: 0.5rem;\\n font-size: calc(1.275rem + 0.3vw);\\n line-height: inherit;\\n}\\n@media (min-width: 1200px) {\\n legend {\\n font-size: 1.5rem;\\n }\\n}\\nlegend + * {\\n clear: left;\\n}\\n\\n::-webkit-datetime-edit-fields-wrapper,\\n::-webkit-datetime-edit-text,\\n::-webkit-datetime-edit-minute,\\n::-webkit-datetime-edit-hour-field,\\n::-webkit-datetime-edit-day-field,\\n::-webkit-datetime-edit-month-field,\\n::-webkit-datetime-edit-year-field {\\n padding: 0;\\n}\\n\\n::-webkit-inner-spin-button {\\n height: auto;\\n}\\n\\n[type=search] {\\n -webkit-appearance: textfield;\\n outline-offset: -2px;\\n}\\n\\n/* rtl:raw:\\n[type=\\\"tel\\\"],\\n[type=\\\"url\\\"],\\n[type=\\\"email\\\"],\\n[type=\\\"number\\\"] {\\n direction: ltr;\\n}\\n*/\\n::-webkit-search-decoration {\\n -webkit-appearance: none;\\n}\\n\\n::-webkit-color-swatch-wrapper {\\n padding: 0;\\n}\\n\\n::-webkit-file-upload-button {\\n font: inherit;\\n -webkit-appearance: button;\\n}\\n\\n::file-selector-button {\\n font: inherit;\\n -webkit-appearance: button;\\n}\\n\\noutput {\\n display: inline-block;\\n}\\n\\niframe {\\n border: 0;\\n}\\n\\nsummary {\\n display: list-item;\\n cursor: pointer;\\n}\\n\\nprogress {\\n vertical-align: baseline;\\n}\\n\\n[hidden] {\\n display: none !important;\\n}\\n\\n.lead {\\n font-size: 1.25rem;\\n font-weight: 300;\\n}\\n\\n.display-1 {\\n font-size: calc(1.625rem + 4.5vw);\\n font-weight: 300;\\n line-height: 1.2;\\n}\\n@media (min-width: 1200px) {\\n .display-1 {\\n font-size: 5rem;\\n }\\n}\\n\\n.display-2 {\\n font-size: calc(1.575rem + 3.9vw);\\n font-weight: 300;\\n line-height: 1.2;\\n}\\n@media (min-width: 1200px) {\\n .display-2 {\\n font-size: 4.5rem;\\n }\\n}\\n\\n.display-3 {\\n font-size: calc(1.525rem + 3.3vw);\\n font-weight: 300;\\n line-height: 1.2;\\n}\\n@media (min-width: 1200px) {\\n .display-3 {\\n font-size: 4rem;\\n }\\n}\\n\\n.display-4 {\\n font-size: calc(1.475rem + 2.7vw);\\n font-weight: 300;\\n line-height: 1.2;\\n}\\n@media (min-width: 1200px) {\\n .display-4 {\\n font-size: 3.5rem;\\n }\\n}\\n\\n.display-5 {\\n font-size: calc(1.425rem + 2.1vw);\\n font-weight: 300;\\n line-height: 1.2;\\n}\\n@media (min-width: 1200px) {\\n .display-5 {\\n font-size: 3rem;\\n }\\n}\\n\\n.display-6 {\\n font-size: calc(1.375rem + 1.5vw);\\n font-weight: 300;\\n line-height: 1.2;\\n}\\n@media (min-width: 1200px) {\\n .display-6 {\\n font-size: 2.5rem;\\n }\\n}\\n\\n.list-unstyled {\\n padding-left: 0;\\n list-style: none;\\n}\\n\\n.list-inline {\\n padding-left: 0;\\n list-style: none;\\n}\\n\\n.list-inline-item {\\n display: inline-block;\\n}\\n.list-inline-item:not(:last-child) {\\n margin-right: 0.5rem;\\n}\\n\\n.initialism {\\n font-size: 0.875em;\\n text-transform: uppercase;\\n}\\n\\n.blockquote {\\n margin-bottom: 1rem;\\n font-size: 1.25rem;\\n}\\n.blockquote > :last-child {\\n margin-bottom: 0;\\n}\\n\\n.blockquote-footer {\\n margin-top: -1rem;\\n margin-bottom: 1rem;\\n font-size: 0.875em;\\n color: #6c757d;\\n}\\n.blockquote-footer::before {\\n content: \\\"— \\\";\\n}\\n\\n.img-fluid {\\n max-width: 100%;\\n height: auto;\\n}\\n\\n.img-thumbnail {\\n padding: 0.25rem;\\n background-color: var(--bs-body-bg);\\n border: var(--bs-border-width) solid var(--bs-border-color);\\n border-radius: var(--bs-border-radius);\\n max-width: 100%;\\n height: auto;\\n}\\n\\n.figure {\\n display: inline-block;\\n}\\n\\n.figure-img {\\n margin-bottom: 0.5rem;\\n line-height: 1;\\n}\\n\\n.figure-caption {\\n font-size: 0.875em;\\n color: var(--bs-secondary-color);\\n}\\n\\n.container,\\n.container-fluid,\\n.container-xxl,\\n.container-xl,\\n.container-lg,\\n.container-md,\\n.container-sm {\\n --bs-gutter-x: 1.5rem;\\n --bs-gutter-y: 0;\\n width: 100%;\\n padding-right: calc(var(--bs-gutter-x) * 0.5);\\n padding-left: calc(var(--bs-gutter-x) * 0.5);\\n margin-right: auto;\\n margin-left: auto;\\n}\\n\\n@media (min-width: 576px) {\\n .container-sm, .container {\\n max-width: 540px;\\n }\\n}\\n@media (min-width: 768px) {\\n .container-md, .container-sm, .container {\\n max-width: 720px;\\n }\\n}\\n@media (min-width: 992px) {\\n .container-lg, .container-md, .container-sm, .container {\\n max-width: 960px;\\n }\\n}\\n@media (min-width: 1200px) {\\n .container-xl, .container-lg, .container-md, .container-sm, .container {\\n max-width: 1140px;\\n }\\n}\\n@media (min-width: 1400px) {\\n .container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container {\\n max-width: 1320px;\\n }\\n}\\n:root {\\n --bs-breakpoint-xs: 0;\\n --bs-breakpoint-sm: 576px;\\n --bs-breakpoint-md: 768px;\\n --bs-breakpoint-lg: 992px;\\n --bs-breakpoint-xl: 1200px;\\n --bs-breakpoint-xxl: 1400px;\\n}\\n\\n.row {\\n --bs-gutter-x: 1.5rem;\\n --bs-gutter-y: 0;\\n display: flex;\\n flex-wrap: wrap;\\n margin-top: calc(-1 * var(--bs-gutter-y));\\n margin-right: calc(-0.5 * var(--bs-gutter-x));\\n margin-left: calc(-0.5 * var(--bs-gutter-x));\\n}\\n.row > * {\\n flex-shrink: 0;\\n width: 100%;\\n max-width: 100%;\\n padding-right: calc(var(--bs-gutter-x) * 0.5);\\n padding-left: calc(var(--bs-gutter-x) * 0.5);\\n margin-top: var(--bs-gutter-y);\\n}\\n\\n.col {\\n flex: 1 0 0%;\\n}\\n\\n.row-cols-auto > * {\\n flex: 0 0 auto;\\n width: auto;\\n}\\n\\n.row-cols-1 > * {\\n flex: 0 0 auto;\\n width: 100%;\\n}\\n\\n.row-cols-2 > * {\\n flex: 0 0 auto;\\n width: 50%;\\n}\\n\\n.row-cols-3 > * {\\n flex: 0 0 auto;\\n width: 33.33333333%;\\n}\\n\\n.row-cols-4 > * {\\n flex: 0 0 auto;\\n width: 25%;\\n}\\n\\n.row-cols-5 > * {\\n flex: 0 0 auto;\\n width: 20%;\\n}\\n\\n.row-cols-6 > * {\\n flex: 0 0 auto;\\n width: 16.66666667%;\\n}\\n\\n.col-auto {\\n flex: 0 0 auto;\\n width: auto;\\n}\\n\\n.col-1 {\\n flex: 0 0 auto;\\n width: 8.33333333%;\\n}\\n\\n.col-2 {\\n flex: 0 0 auto;\\n width: 16.66666667%;\\n}\\n\\n.col-3 {\\n flex: 0 0 auto;\\n width: 25%;\\n}\\n\\n.col-4 {\\n flex: 0 0 auto;\\n width: 33.33333333%;\\n}\\n\\n.col-5 {\\n flex: 0 0 auto;\\n width: 41.66666667%;\\n}\\n\\n.col-6 {\\n flex: 0 0 auto;\\n width: 50%;\\n}\\n\\n.col-7 {\\n flex: 0 0 auto;\\n width: 58.33333333%;\\n}\\n\\n.col-8 {\\n flex: 0 0 auto;\\n width: 66.66666667%;\\n}\\n\\n.col-9 {\\n flex: 0 0 auto;\\n width: 75%;\\n}\\n\\n.col-10 {\\n flex: 0 0 auto;\\n width: 83.33333333%;\\n}\\n\\n.col-11 {\\n flex: 0 0 auto;\\n width: 91.66666667%;\\n}\\n\\n.col-12 {\\n flex: 0 0 auto;\\n width: 100%;\\n}\\n\\n.offset-1 {\\n margin-left: 8.33333333%;\\n}\\n\\n.offset-2 {\\n margin-left: 16.66666667%;\\n}\\n\\n.offset-3 {\\n margin-left: 25%;\\n}\\n\\n.offset-4 {\\n margin-left: 33.33333333%;\\n}\\n\\n.offset-5 {\\n margin-left: 41.66666667%;\\n}\\n\\n.offset-6 {\\n margin-left: 50%;\\n}\\n\\n.offset-7 {\\n margin-left: 58.33333333%;\\n}\\n\\n.offset-8 {\\n margin-left: 66.66666667%;\\n}\\n\\n.offset-9 {\\n margin-left: 75%;\\n}\\n\\n.offset-10 {\\n margin-left: 83.33333333%;\\n}\\n\\n.offset-11 {\\n margin-left: 91.66666667%;\\n}\\n\\n.g-0,\\n.gx-0 {\\n --bs-gutter-x: 0;\\n}\\n\\n.g-0,\\n.gy-0 {\\n --bs-gutter-y: 0;\\n}\\n\\n.g-1,\\n.gx-1 {\\n --bs-gutter-x: 0.25rem;\\n}\\n\\n.g-1,\\n.gy-1 {\\n --bs-gutter-y: 0.25rem;\\n}\\n\\n.g-2,\\n.gx-2 {\\n --bs-gutter-x: 0.5rem;\\n}\\n\\n.g-2,\\n.gy-2 {\\n --bs-gutter-y: 0.5rem;\\n}\\n\\n.g-3,\\n.gx-3 {\\n --bs-gutter-x: 1rem;\\n}\\n\\n.g-3,\\n.gy-3 {\\n --bs-gutter-y: 1rem;\\n}\\n\\n.g-4,\\n.gx-4 {\\n --bs-gutter-x: 1.5rem;\\n}\\n\\n.g-4,\\n.gy-4 {\\n --bs-gutter-y: 1.5rem;\\n}\\n\\n.g-5,\\n.gx-5 {\\n --bs-gutter-x: 3rem;\\n}\\n\\n.g-5,\\n.gy-5 {\\n --bs-gutter-y: 3rem;\\n}\\n\\n@media (min-width: 576px) {\\n .col-sm {\\n flex: 1 0 0%;\\n }\\n .row-cols-sm-auto > * {\\n flex: 0 0 auto;\\n width: auto;\\n }\\n .row-cols-sm-1 > * {\\n flex: 0 0 auto;\\n width: 100%;\\n }\\n .row-cols-sm-2 > * {\\n flex: 0 0 auto;\\n width: 50%;\\n }\\n .row-cols-sm-3 > * {\\n flex: 0 0 auto;\\n width: 33.33333333%;\\n }\\n .row-cols-sm-4 > * {\\n flex: 0 0 auto;\\n width: 25%;\\n }\\n .row-cols-sm-5 > * {\\n flex: 0 0 auto;\\n width: 20%;\\n }\\n .row-cols-sm-6 > * {\\n flex: 0 0 auto;\\n width: 16.66666667%;\\n }\\n .col-sm-auto {\\n flex: 0 0 auto;\\n width: auto;\\n }\\n .col-sm-1 {\\n flex: 0 0 auto;\\n width: 8.33333333%;\\n }\\n .col-sm-2 {\\n flex: 0 0 auto;\\n width: 16.66666667%;\\n }\\n .col-sm-3 {\\n flex: 0 0 auto;\\n width: 25%;\\n }\\n .col-sm-4 {\\n flex: 0 0 auto;\\n width: 33.33333333%;\\n }\\n .col-sm-5 {\\n flex: 0 0 auto;\\n width: 41.66666667%;\\n }\\n .col-sm-6 {\\n flex: 0 0 auto;\\n width: 50%;\\n }\\n .col-sm-7 {\\n flex: 0 0 auto;\\n width: 58.33333333%;\\n }\\n .col-sm-8 {\\n flex: 0 0 auto;\\n width: 66.66666667%;\\n }\\n .col-sm-9 {\\n flex: 0 0 auto;\\n width: 75%;\\n }\\n .col-sm-10 {\\n flex: 0 0 auto;\\n width: 83.33333333%;\\n }\\n .col-sm-11 {\\n flex: 0 0 auto;\\n width: 91.66666667%;\\n }\\n .col-sm-12 {\\n flex: 0 0 auto;\\n width: 100%;\\n }\\n .offset-sm-0 {\\n margin-left: 0;\\n }\\n .offset-sm-1 {\\n margin-left: 8.33333333%;\\n }\\n .offset-sm-2 {\\n margin-left: 16.66666667%;\\n }\\n .offset-sm-3 {\\n margin-left: 25%;\\n }\\n .offset-sm-4 {\\n margin-left: 33.33333333%;\\n }\\n .offset-sm-5 {\\n margin-left: 41.66666667%;\\n }\\n .offset-sm-6 {\\n margin-left: 50%;\\n }\\n .offset-sm-7 {\\n margin-left: 58.33333333%;\\n }\\n .offset-sm-8 {\\n margin-left: 66.66666667%;\\n }\\n .offset-sm-9 {\\n margin-left: 75%;\\n }\\n .offset-sm-10 {\\n margin-left: 83.33333333%;\\n }\\n .offset-sm-11 {\\n margin-left: 91.66666667%;\\n }\\n .g-sm-0,\\n .gx-sm-0 {\\n --bs-gutter-x: 0;\\n }\\n .g-sm-0,\\n .gy-sm-0 {\\n --bs-gutter-y: 0;\\n }\\n .g-sm-1,\\n .gx-sm-1 {\\n --bs-gutter-x: 0.25rem;\\n }\\n .g-sm-1,\\n .gy-sm-1 {\\n --bs-gutter-y: 0.25rem;\\n }\\n .g-sm-2,\\n .gx-sm-2 {\\n --bs-gutter-x: 0.5rem;\\n }\\n .g-sm-2,\\n .gy-sm-2 {\\n --bs-gutter-y: 0.5rem;\\n }\\n .g-sm-3,\\n .gx-sm-3 {\\n --bs-gutter-x: 1rem;\\n }\\n .g-sm-3,\\n .gy-sm-3 {\\n --bs-gutter-y: 1rem;\\n }\\n .g-sm-4,\\n .gx-sm-4 {\\n --bs-gutter-x: 1.5rem;\\n }\\n .g-sm-4,\\n .gy-sm-4 {\\n --bs-gutter-y: 1.5rem;\\n }\\n .g-sm-5,\\n .gx-sm-5 {\\n --bs-gutter-x: 3rem;\\n }\\n .g-sm-5,\\n .gy-sm-5 {\\n --bs-gutter-y: 3rem;\\n }\\n}\\n@media (min-width: 768px) {\\n .col-md {\\n flex: 1 0 0%;\\n }\\n .row-cols-md-auto > * {\\n flex: 0 0 auto;\\n width: auto;\\n }\\n .row-cols-md-1 > * {\\n flex: 0 0 auto;\\n width: 100%;\\n }\\n .row-cols-md-2 > * {\\n flex: 0 0 auto;\\n width: 50%;\\n }\\n .row-cols-md-3 > * {\\n flex: 0 0 auto;\\n width: 33.33333333%;\\n }\\n .row-cols-md-4 > * {\\n flex: 0 0 auto;\\n width: 25%;\\n }\\n .row-cols-md-5 > * {\\n flex: 0 0 auto;\\n width: 20%;\\n }\\n .row-cols-md-6 > * {\\n flex: 0 0 auto;\\n width: 16.66666667%;\\n }\\n .col-md-auto {\\n flex: 0 0 auto;\\n width: auto;\\n }\\n .col-md-1 {\\n flex: 0 0 auto;\\n width: 8.33333333%;\\n }\\n .col-md-2 {\\n flex: 0 0 auto;\\n width: 16.66666667%;\\n }\\n .col-md-3 {\\n flex: 0 0 auto;\\n width: 25%;\\n }\\n .col-md-4 {\\n flex: 0 0 auto;\\n width: 33.33333333%;\\n }\\n .col-md-5 {\\n flex: 0 0 auto;\\n width: 41.66666667%;\\n }\\n .col-md-6 {\\n flex: 0 0 auto;\\n width: 50%;\\n }\\n .col-md-7 {\\n flex: 0 0 auto;\\n width: 58.33333333%;\\n }\\n .col-md-8 {\\n flex: 0 0 auto;\\n width: 66.66666667%;\\n }\\n .col-md-9 {\\n flex: 0 0 auto;\\n width: 75%;\\n }\\n .col-md-10 {\\n flex: 0 0 auto;\\n width: 83.33333333%;\\n }\\n .col-md-11 {\\n flex: 0 0 auto;\\n width: 91.66666667%;\\n }\\n .col-md-12 {\\n flex: 0 0 auto;\\n width: 100%;\\n }\\n .offset-md-0 {\\n margin-left: 0;\\n }\\n .offset-md-1 {\\n margin-left: 8.33333333%;\\n }\\n .offset-md-2 {\\n margin-left: 16.66666667%;\\n }\\n .offset-md-3 {\\n margin-left: 25%;\\n }\\n .offset-md-4 {\\n margin-left: 33.33333333%;\\n }\\n .offset-md-5 {\\n margin-left: 41.66666667%;\\n }\\n .offset-md-6 {\\n margin-left: 50%;\\n }\\n .offset-md-7 {\\n margin-left: 58.33333333%;\\n }\\n .offset-md-8 {\\n margin-left: 66.66666667%;\\n }\\n .offset-md-9 {\\n margin-left: 75%;\\n }\\n .offset-md-10 {\\n margin-left: 83.33333333%;\\n }\\n .offset-md-11 {\\n margin-left: 91.66666667%;\\n }\\n .g-md-0,\\n .gx-md-0 {\\n --bs-gutter-x: 0;\\n }\\n .g-md-0,\\n .gy-md-0 {\\n --bs-gutter-y: 0;\\n }\\n .g-md-1,\\n .gx-md-1 {\\n --bs-gutter-x: 0.25rem;\\n }\\n .g-md-1,\\n .gy-md-1 {\\n --bs-gutter-y: 0.25rem;\\n }\\n .g-md-2,\\n .gx-md-2 {\\n --bs-gutter-x: 0.5rem;\\n }\\n .g-md-2,\\n .gy-md-2 {\\n --bs-gutter-y: 0.5rem;\\n }\\n .g-md-3,\\n .gx-md-3 {\\n --bs-gutter-x: 1rem;\\n }\\n .g-md-3,\\n .gy-md-3 {\\n --bs-gutter-y: 1rem;\\n }\\n .g-md-4,\\n .gx-md-4 {\\n --bs-gutter-x: 1.5rem;\\n }\\n .g-md-4,\\n .gy-md-4 {\\n --bs-gutter-y: 1.5rem;\\n }\\n .g-md-5,\\n .gx-md-5 {\\n --bs-gutter-x: 3rem;\\n }\\n .g-md-5,\\n .gy-md-5 {\\n --bs-gutter-y: 3rem;\\n }\\n}\\n@media (min-width: 992px) {\\n .col-lg {\\n flex: 1 0 0%;\\n }\\n .row-cols-lg-auto > * {\\n flex: 0 0 auto;\\n width: auto;\\n }\\n .row-cols-lg-1 > * {\\n flex: 0 0 auto;\\n width: 100%;\\n }\\n .row-cols-lg-2 > * {\\n flex: 0 0 auto;\\n width: 50%;\\n }\\n .row-cols-lg-3 > * {\\n flex: 0 0 auto;\\n width: 33.33333333%;\\n }\\n .row-cols-lg-4 > * {\\n flex: 0 0 auto;\\n width: 25%;\\n }\\n .row-cols-lg-5 > * {\\n flex: 0 0 auto;\\n width: 20%;\\n }\\n .row-cols-lg-6 > * {\\n flex: 0 0 auto;\\n width: 16.66666667%;\\n }\\n .col-lg-auto {\\n flex: 0 0 auto;\\n width: auto;\\n }\\n .col-lg-1 {\\n flex: 0 0 auto;\\n width: 8.33333333%;\\n }\\n .col-lg-2 {\\n flex: 0 0 auto;\\n width: 16.66666667%;\\n }\\n .col-lg-3 {\\n flex: 0 0 auto;\\n width: 25%;\\n }\\n .col-lg-4 {\\n flex: 0 0 auto;\\n width: 33.33333333%;\\n }\\n .col-lg-5 {\\n flex: 0 0 auto;\\n width: 41.66666667%;\\n }\\n .col-lg-6 {\\n flex: 0 0 auto;\\n width: 50%;\\n }\\n .col-lg-7 {\\n flex: 0 0 auto;\\n width: 58.33333333%;\\n }\\n .col-lg-8 {\\n flex: 0 0 auto;\\n width: 66.66666667%;\\n }\\n .col-lg-9 {\\n flex: 0 0 auto;\\n width: 75%;\\n }\\n .col-lg-10 {\\n flex: 0 0 auto;\\n width: 83.33333333%;\\n }\\n .col-lg-11 {\\n flex: 0 0 auto;\\n width: 91.66666667%;\\n }\\n .col-lg-12 {\\n flex: 0 0 auto;\\n width: 100%;\\n }\\n .offset-lg-0 {\\n margin-left: 0;\\n }\\n .offset-lg-1 {\\n margin-left: 8.33333333%;\\n }\\n .offset-lg-2 {\\n margin-left: 16.66666667%;\\n }\\n .offset-lg-3 {\\n margin-left: 25%;\\n }\\n .offset-lg-4 {\\n margin-left: 33.33333333%;\\n }\\n .offset-lg-5 {\\n margin-left: 41.66666667%;\\n }\\n .offset-lg-6 {\\n margin-left: 50%;\\n }\\n .offset-lg-7 {\\n margin-left: 58.33333333%;\\n }\\n .offset-lg-8 {\\n margin-left: 66.66666667%;\\n }\\n .offset-lg-9 {\\n margin-left: 75%;\\n }\\n .offset-lg-10 {\\n margin-left: 83.33333333%;\\n }\\n .offset-lg-11 {\\n margin-left: 91.66666667%;\\n }\\n .g-lg-0,\\n .gx-lg-0 {\\n --bs-gutter-x: 0;\\n }\\n .g-lg-0,\\n .gy-lg-0 {\\n --bs-gutter-y: 0;\\n }\\n .g-lg-1,\\n .gx-lg-1 {\\n --bs-gutter-x: 0.25rem;\\n }\\n .g-lg-1,\\n .gy-lg-1 {\\n --bs-gutter-y: 0.25rem;\\n }\\n .g-lg-2,\\n .gx-lg-2 {\\n --bs-gutter-x: 0.5rem;\\n }\\n .g-lg-2,\\n .gy-lg-2 {\\n --bs-gutter-y: 0.5rem;\\n }\\n .g-lg-3,\\n .gx-lg-3 {\\n --bs-gutter-x: 1rem;\\n }\\n .g-lg-3,\\n .gy-lg-3 {\\n --bs-gutter-y: 1rem;\\n }\\n .g-lg-4,\\n .gx-lg-4 {\\n --bs-gutter-x: 1.5rem;\\n }\\n .g-lg-4,\\n .gy-lg-4 {\\n --bs-gutter-y: 1.5rem;\\n }\\n .g-lg-5,\\n .gx-lg-5 {\\n --bs-gutter-x: 3rem;\\n }\\n .g-lg-5,\\n .gy-lg-5 {\\n --bs-gutter-y: 3rem;\\n }\\n}\\n@media (min-width: 1200px) {\\n .col-xl {\\n flex: 1 0 0%;\\n }\\n .row-cols-xl-auto > * {\\n flex: 0 0 auto;\\n width: auto;\\n }\\n .row-cols-xl-1 > * {\\n flex: 0 0 auto;\\n width: 100%;\\n }\\n .row-cols-xl-2 > * {\\n flex: 0 0 auto;\\n width: 50%;\\n }\\n .row-cols-xl-3 > * {\\n flex: 0 0 auto;\\n width: 33.33333333%;\\n }\\n .row-cols-xl-4 > * {\\n flex: 0 0 auto;\\n width: 25%;\\n }\\n .row-cols-xl-5 > * {\\n flex: 0 0 auto;\\n width: 20%;\\n }\\n .row-cols-xl-6 > * {\\n flex: 0 0 auto;\\n width: 16.66666667%;\\n }\\n .col-xl-auto {\\n flex: 0 0 auto;\\n width: auto;\\n }\\n .col-xl-1 {\\n flex: 0 0 auto;\\n width: 8.33333333%;\\n }\\n .col-xl-2 {\\n flex: 0 0 auto;\\n width: 16.66666667%;\\n }\\n .col-xl-3 {\\n flex: 0 0 auto;\\n width: 25%;\\n }\\n .col-xl-4 {\\n flex: 0 0 auto;\\n width: 33.33333333%;\\n }\\n .col-xl-5 {\\n flex: 0 0 auto;\\n width: 41.66666667%;\\n }\\n .col-xl-6 {\\n flex: 0 0 auto;\\n width: 50%;\\n }\\n .col-xl-7 {\\n flex: 0 0 auto;\\n width: 58.33333333%;\\n }\\n .col-xl-8 {\\n flex: 0 0 auto;\\n width: 66.66666667%;\\n }\\n .col-xl-9 {\\n flex: 0 0 auto;\\n width: 75%;\\n }\\n .col-xl-10 {\\n flex: 0 0 auto;\\n width: 83.33333333%;\\n }\\n .col-xl-11 {\\n flex: 0 0 auto;\\n width: 91.66666667%;\\n }\\n .col-xl-12 {\\n flex: 0 0 auto;\\n width: 100%;\\n }\\n .offset-xl-0 {\\n margin-left: 0;\\n }\\n .offset-xl-1 {\\n margin-left: 8.33333333%;\\n }\\n .offset-xl-2 {\\n margin-left: 16.66666667%;\\n }\\n .offset-xl-3 {\\n margin-left: 25%;\\n }\\n .offset-xl-4 {\\n margin-left: 33.33333333%;\\n }\\n .offset-xl-5 {\\n margin-left: 41.66666667%;\\n }\\n .offset-xl-6 {\\n margin-left: 50%;\\n }\\n .offset-xl-7 {\\n margin-left: 58.33333333%;\\n }\\n .offset-xl-8 {\\n margin-left: 66.66666667%;\\n }\\n .offset-xl-9 {\\n margin-left: 75%;\\n }\\n .offset-xl-10 {\\n margin-left: 83.33333333%;\\n }\\n .offset-xl-11 {\\n margin-left: 91.66666667%;\\n }\\n .g-xl-0,\\n .gx-xl-0 {\\n --bs-gutter-x: 0;\\n }\\n .g-xl-0,\\n .gy-xl-0 {\\n --bs-gutter-y: 0;\\n }\\n .g-xl-1,\\n .gx-xl-1 {\\n --bs-gutter-x: 0.25rem;\\n }\\n .g-xl-1,\\n .gy-xl-1 {\\n --bs-gutter-y: 0.25rem;\\n }\\n .g-xl-2,\\n .gx-xl-2 {\\n --bs-gutter-x: 0.5rem;\\n }\\n .g-xl-2,\\n .gy-xl-2 {\\n --bs-gutter-y: 0.5rem;\\n }\\n .g-xl-3,\\n .gx-xl-3 {\\n --bs-gutter-x: 1rem;\\n }\\n .g-xl-3,\\n .gy-xl-3 {\\n --bs-gutter-y: 1rem;\\n }\\n .g-xl-4,\\n .gx-xl-4 {\\n --bs-gutter-x: 1.5rem;\\n }\\n .g-xl-4,\\n .gy-xl-4 {\\n --bs-gutter-y: 1.5rem;\\n }\\n .g-xl-5,\\n .gx-xl-5 {\\n --bs-gutter-x: 3rem;\\n }\\n .g-xl-5,\\n .gy-xl-5 {\\n --bs-gutter-y: 3rem;\\n }\\n}\\n@media (min-width: 1400px) {\\n .col-xxl {\\n flex: 1 0 0%;\\n }\\n .row-cols-xxl-auto > * {\\n flex: 0 0 auto;\\n width: auto;\\n }\\n .row-cols-xxl-1 > * {\\n flex: 0 0 auto;\\n width: 100%;\\n }\\n .row-cols-xxl-2 > * {\\n flex: 0 0 auto;\\n width: 50%;\\n }\\n .row-cols-xxl-3 > * {\\n flex: 0 0 auto;\\n width: 33.33333333%;\\n }\\n .row-cols-xxl-4 > * {\\n flex: 0 0 auto;\\n width: 25%;\\n }\\n .row-cols-xxl-5 > * {\\n flex: 0 0 auto;\\n width: 20%;\\n }\\n .row-cols-xxl-6 > * {\\n flex: 0 0 auto;\\n width: 16.66666667%;\\n }\\n .col-xxl-auto {\\n flex: 0 0 auto;\\n width: auto;\\n }\\n .col-xxl-1 {\\n flex: 0 0 auto;\\n width: 8.33333333%;\\n }\\n .col-xxl-2 {\\n flex: 0 0 auto;\\n width: 16.66666667%;\\n }\\n .col-xxl-3 {\\n flex: 0 0 auto;\\n width: 25%;\\n }\\n .col-xxl-4 {\\n flex: 0 0 auto;\\n width: 33.33333333%;\\n }\\n .col-xxl-5 {\\n flex: 0 0 auto;\\n width: 41.66666667%;\\n }\\n .col-xxl-6 {\\n flex: 0 0 auto;\\n width: 50%;\\n }\\n .col-xxl-7 {\\n flex: 0 0 auto;\\n width: 58.33333333%;\\n }\\n .col-xxl-8 {\\n flex: 0 0 auto;\\n width: 66.66666667%;\\n }\\n .col-xxl-9 {\\n flex: 0 0 auto;\\n width: 75%;\\n }\\n .col-xxl-10 {\\n flex: 0 0 auto;\\n width: 83.33333333%;\\n }\\n .col-xxl-11 {\\n flex: 0 0 auto;\\n width: 91.66666667%;\\n }\\n .col-xxl-12 {\\n flex: 0 0 auto;\\n width: 100%;\\n }\\n .offset-xxl-0 {\\n margin-left: 0;\\n }\\n .offset-xxl-1 {\\n margin-left: 8.33333333%;\\n }\\n .offset-xxl-2 {\\n margin-left: 16.66666667%;\\n }\\n .offset-xxl-3 {\\n margin-left: 25%;\\n }\\n .offset-xxl-4 {\\n margin-left: 33.33333333%;\\n }\\n .offset-xxl-5 {\\n margin-left: 41.66666667%;\\n }\\n .offset-xxl-6 {\\n margin-left: 50%;\\n }\\n .offset-xxl-7 {\\n margin-left: 58.33333333%;\\n }\\n .offset-xxl-8 {\\n margin-left: 66.66666667%;\\n }\\n .offset-xxl-9 {\\n margin-left: 75%;\\n }\\n .offset-xxl-10 {\\n margin-left: 83.33333333%;\\n }\\n .offset-xxl-11 {\\n margin-left: 91.66666667%;\\n }\\n .g-xxl-0,\\n .gx-xxl-0 {\\n --bs-gutter-x: 0;\\n }\\n .g-xxl-0,\\n .gy-xxl-0 {\\n --bs-gutter-y: 0;\\n }\\n .g-xxl-1,\\n .gx-xxl-1 {\\n --bs-gutter-x: 0.25rem;\\n }\\n .g-xxl-1,\\n .gy-xxl-1 {\\n --bs-gutter-y: 0.25rem;\\n }\\n .g-xxl-2,\\n .gx-xxl-2 {\\n --bs-gutter-x: 0.5rem;\\n }\\n .g-xxl-2,\\n .gy-xxl-2 {\\n --bs-gutter-y: 0.5rem;\\n }\\n .g-xxl-3,\\n .gx-xxl-3 {\\n --bs-gutter-x: 1rem;\\n }\\n .g-xxl-3,\\n .gy-xxl-3 {\\n --bs-gutter-y: 1rem;\\n }\\n .g-xxl-4,\\n .gx-xxl-4 {\\n --bs-gutter-x: 1.5rem;\\n }\\n .g-xxl-4,\\n .gy-xxl-4 {\\n --bs-gutter-y: 1.5rem;\\n }\\n .g-xxl-5,\\n .gx-xxl-5 {\\n --bs-gutter-x: 3rem;\\n }\\n .g-xxl-5,\\n .gy-xxl-5 {\\n --bs-gutter-y: 3rem;\\n }\\n}\\n.table {\\n --bs-table-color-type: initial;\\n --bs-table-bg-type: initial;\\n --bs-table-color-state: initial;\\n --bs-table-bg-state: initial;\\n --bs-table-color: var(--bs-emphasis-color);\\n --bs-table-bg: var(--bs-body-bg);\\n --bs-table-border-color: var(--bs-border-color);\\n --bs-table-accent-bg: transparent;\\n --bs-table-striped-color: var(--bs-emphasis-color);\\n --bs-table-striped-bg: rgba(var(--bs-emphasis-color-rgb), 0.05);\\n --bs-table-active-color: var(--bs-emphasis-color);\\n --bs-table-active-bg: rgba(var(--bs-emphasis-color-rgb), 0.1);\\n --bs-table-hover-color: var(--bs-emphasis-color);\\n --bs-table-hover-bg: rgba(var(--bs-emphasis-color-rgb), 0.075);\\n width: 100%;\\n margin-bottom: 1rem;\\n vertical-align: top;\\n border-color: var(--bs-table-border-color);\\n}\\n.table > :not(caption) > * > * {\\n padding: 0.5rem 0.5rem;\\n color: var(--bs-table-color-state, var(--bs-table-color-type, var(--bs-table-color)));\\n background-color: var(--bs-table-bg);\\n border-bottom-width: var(--bs-border-width);\\n box-shadow: inset 0 0 0 9999px var(--bs-table-bg-state, var(--bs-table-bg-type, var(--bs-table-accent-bg)));\\n}\\n.table > tbody {\\n vertical-align: inherit;\\n}\\n.table > thead {\\n vertical-align: bottom;\\n}\\n\\n.table-group-divider {\\n border-top: calc(var(--bs-border-width) * 2) solid currentcolor;\\n}\\n\\n.caption-top {\\n caption-side: top;\\n}\\n\\n.table-sm > :not(caption) > * > * {\\n padding: 0.25rem 0.25rem;\\n}\\n\\n.table-bordered > :not(caption) > * {\\n border-width: var(--bs-border-width) 0;\\n}\\n.table-bordered > :not(caption) > * > * {\\n border-width: 0 var(--bs-border-width);\\n}\\n\\n.table-borderless > :not(caption) > * > * {\\n border-bottom-width: 0;\\n}\\n.table-borderless > :not(:first-child) {\\n border-top-width: 0;\\n}\\n\\n.table-striped > tbody > tr:nth-of-type(odd) > * {\\n --bs-table-color-type: var(--bs-table-striped-color);\\n --bs-table-bg-type: var(--bs-table-striped-bg);\\n}\\n\\n.table-striped-columns > :not(caption) > tr > :nth-child(even) {\\n --bs-table-color-type: var(--bs-table-striped-color);\\n --bs-table-bg-type: var(--bs-table-striped-bg);\\n}\\n\\n.table-active {\\n --bs-table-color-state: var(--bs-table-active-color);\\n --bs-table-bg-state: var(--bs-table-active-bg);\\n}\\n\\n.table-hover > tbody > tr:hover > * {\\n --bs-table-color-state: var(--bs-table-hover-color);\\n --bs-table-bg-state: var(--bs-table-hover-bg);\\n}\\n\\n.table-primary {\\n --bs-table-color: #000;\\n --bs-table-bg: #cfe2ff;\\n --bs-table-border-color: #a6b5cc;\\n --bs-table-striped-bg: #c5d7f2;\\n --bs-table-striped-color: #000;\\n --bs-table-active-bg: #bacbe6;\\n --bs-table-active-color: #000;\\n --bs-table-hover-bg: #bfd1ec;\\n --bs-table-hover-color: #000;\\n color: var(--bs-table-color);\\n border-color: var(--bs-table-border-color);\\n}\\n\\n.table-secondary {\\n --bs-table-color: #000;\\n --bs-table-bg: #e2e3e5;\\n --bs-table-border-color: #b5b6b7;\\n --bs-table-striped-bg: #d7d8da;\\n --bs-table-striped-color: #000;\\n --bs-table-active-bg: #cbccce;\\n --bs-table-active-color: #000;\\n --bs-table-hover-bg: #d1d2d4;\\n --bs-table-hover-color: #000;\\n color: var(--bs-table-color);\\n border-color: var(--bs-table-border-color);\\n}\\n\\n.table-success {\\n --bs-table-color: #000;\\n --bs-table-bg: #d1e7dd;\\n --bs-table-border-color: #a7b9b1;\\n --bs-table-striped-bg: #c7dbd2;\\n --bs-table-striped-color: #000;\\n --bs-table-active-bg: #bcd0c7;\\n --bs-table-active-color: #000;\\n --bs-table-hover-bg: #c1d6cc;\\n --bs-table-hover-color: #000;\\n color: var(--bs-table-color);\\n border-color: var(--bs-table-border-color);\\n}\\n\\n.table-info {\\n --bs-table-color: #000;\\n --bs-table-bg: #cff4fc;\\n --bs-table-border-color: #a6c3ca;\\n --bs-table-striped-bg: #c5e8ef;\\n --bs-table-striped-color: #000;\\n --bs-table-active-bg: #badce3;\\n --bs-table-active-color: #000;\\n --bs-table-hover-bg: #bfe2e9;\\n --bs-table-hover-color: #000;\\n color: var(--bs-table-color);\\n border-color: var(--bs-table-border-color);\\n}\\n\\n.table-warning {\\n --bs-table-color: #000;\\n --bs-table-bg: #fff3cd;\\n --bs-table-border-color: #ccc2a4;\\n --bs-table-striped-bg: #f2e7c3;\\n --bs-table-striped-color: #000;\\n --bs-table-active-bg: #e6dbb9;\\n --bs-table-active-color: #000;\\n --bs-table-hover-bg: #ece1be;\\n --bs-table-hover-color: #000;\\n color: var(--bs-table-color);\\n border-color: var(--bs-table-border-color);\\n}\\n\\n.table-danger {\\n --bs-table-color: #000;\\n --bs-table-bg: #f8d7da;\\n --bs-table-border-color: #c6acae;\\n --bs-table-striped-bg: #eccccf;\\n --bs-table-striped-color: #000;\\n --bs-table-active-bg: #dfc2c4;\\n --bs-table-active-color: #000;\\n --bs-table-hover-bg: #e5c7ca;\\n --bs-table-hover-color: #000;\\n color: var(--bs-table-color);\\n border-color: var(--bs-table-border-color);\\n}\\n\\n.table-light {\\n --bs-table-color: #000;\\n --bs-table-bg: #f8f9fa;\\n --bs-table-border-color: #c6c7c8;\\n --bs-table-striped-bg: #ecedee;\\n --bs-table-striped-color: #000;\\n --bs-table-active-bg: #dfe0e1;\\n --bs-table-active-color: #000;\\n --bs-table-hover-bg: #e5e6e7;\\n --bs-table-hover-color: #000;\\n color: var(--bs-table-color);\\n border-color: var(--bs-table-border-color);\\n}\\n\\n.table-dark {\\n --bs-table-color: #fff;\\n --bs-table-bg: #212529;\\n --bs-table-border-color: #4d5154;\\n --bs-table-striped-bg: #2c3034;\\n --bs-table-striped-color: #fff;\\n --bs-table-active-bg: #373b3e;\\n --bs-table-active-color: #fff;\\n --bs-table-hover-bg: #323539;\\n --bs-table-hover-color: #fff;\\n color: var(--bs-table-color);\\n border-color: var(--bs-table-border-color);\\n}\\n\\n.table-responsive {\\n overflow-x: auto;\\n -webkit-overflow-scrolling: touch;\\n}\\n\\n@media (max-width: 575.98px) {\\n .table-responsive-sm {\\n overflow-x: auto;\\n -webkit-overflow-scrolling: touch;\\n }\\n}\\n@media (max-width: 767.98px) {\\n .table-responsive-md {\\n overflow-x: auto;\\n -webkit-overflow-scrolling: touch;\\n }\\n}\\n@media (max-width: 991.98px) {\\n .table-responsive-lg {\\n overflow-x: auto;\\n -webkit-overflow-scrolling: touch;\\n }\\n}\\n@media (max-width: 1199.98px) {\\n .table-responsive-xl {\\n overflow-x: auto;\\n -webkit-overflow-scrolling: touch;\\n }\\n}\\n@media (max-width: 1399.98px) {\\n .table-responsive-xxl {\\n overflow-x: auto;\\n -webkit-overflow-scrolling: touch;\\n }\\n}\\n.form-label {\\n margin-bottom: 0.5rem;\\n}\\n\\n.col-form-label {\\n padding-top: calc(0.375rem + var(--bs-border-width));\\n padding-bottom: calc(0.375rem + var(--bs-border-width));\\n margin-bottom: 0;\\n font-size: inherit;\\n line-height: 1.5;\\n}\\n\\n.col-form-label-lg {\\n padding-top: calc(0.5rem + var(--bs-border-width));\\n padding-bottom: calc(0.5rem + var(--bs-border-width));\\n font-size: 1.25rem;\\n}\\n\\n.col-form-label-sm {\\n padding-top: calc(0.25rem + var(--bs-border-width));\\n padding-bottom: calc(0.25rem + var(--bs-border-width));\\n font-size: 0.875rem;\\n}\\n\\n.form-text {\\n margin-top: 0.25rem;\\n font-size: 0.875em;\\n color: var(--bs-secondary-color);\\n}\\n\\n.form-control {\\n display: block;\\n width: 100%;\\n padding: 0.375rem 0.75rem;\\n font-size: 1rem;\\n font-weight: 400;\\n line-height: 1.5;\\n color: var(--bs-body-color);\\n -webkit-appearance: none;\\n -moz-appearance: none;\\n appearance: none;\\n background-color: var(--bs-body-bg);\\n background-clip: padding-box;\\n border: var(--bs-border-width) solid var(--bs-border-color);\\n border-radius: var(--bs-border-radius);\\n transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\\n}\\n@media (prefers-reduced-motion: reduce) {\\n .form-control {\\n transition: none;\\n }\\n}\\n.form-control[type=file] {\\n overflow: hidden;\\n}\\n.form-control[type=file]:not(:disabled):not([readonly]) {\\n cursor: pointer;\\n}\\n.form-control:focus {\\n color: var(--bs-body-color);\\n background-color: var(--bs-body-bg);\\n border-color: #86b7fe;\\n outline: 0;\\n box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\\n}\\n.form-control::-webkit-date-and-time-value {\\n min-width: 85px;\\n height: 1.5em;\\n margin: 0;\\n}\\n.form-control::-webkit-datetime-edit {\\n display: block;\\n padding: 0;\\n}\\n.form-control::-moz-placeholder {\\n color: var(--bs-secondary-color);\\n opacity: 1;\\n}\\n.form-control::placeholder {\\n color: var(--bs-secondary-color);\\n opacity: 1;\\n}\\n.form-control:disabled {\\n background-color: var(--bs-secondary-bg);\\n opacity: 1;\\n}\\n.form-control::-webkit-file-upload-button {\\n padding: 0.375rem 0.75rem;\\n margin: -0.375rem -0.75rem;\\n -webkit-margin-end: 0.75rem;\\n margin-inline-end: 0.75rem;\\n color: var(--bs-body-color);\\n background-color: var(--bs-tertiary-bg);\\n pointer-events: none;\\n border-color: inherit;\\n border-style: solid;\\n border-width: 0;\\n border-inline-end-width: var(--bs-border-width);\\n border-radius: 0;\\n -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\\n}\\n.form-control::file-selector-button {\\n padding: 0.375rem 0.75rem;\\n margin: -0.375rem -0.75rem;\\n -webkit-margin-end: 0.75rem;\\n margin-inline-end: 0.75rem;\\n color: var(--bs-body-color);\\n background-color: var(--bs-tertiary-bg);\\n pointer-events: none;\\n border-color: inherit;\\n border-style: solid;\\n border-width: 0;\\n border-inline-end-width: var(--bs-border-width);\\n border-radius: 0;\\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\\n}\\n@media (prefers-reduced-motion: reduce) {\\n .form-control::-webkit-file-upload-button {\\n -webkit-transition: none;\\n transition: none;\\n }\\n .form-control::file-selector-button {\\n transition: none;\\n }\\n}\\n.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button {\\n background-color: var(--bs-secondary-bg);\\n}\\n.form-control:hover:not(:disabled):not([readonly])::file-selector-button {\\n background-color: var(--bs-secondary-bg);\\n}\\n\\n.form-control-plaintext {\\n display: block;\\n width: 100%;\\n padding: 0.375rem 0;\\n margin-bottom: 0;\\n line-height: 1.5;\\n color: var(--bs-body-color);\\n background-color: transparent;\\n border: solid transparent;\\n border-width: var(--bs-border-width) 0;\\n}\\n.form-control-plaintext:focus {\\n outline: 0;\\n}\\n.form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {\\n padding-right: 0;\\n padding-left: 0;\\n}\\n\\n.form-control-sm {\\n min-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));\\n padding: 0.25rem 0.5rem;\\n font-size: 0.875rem;\\n border-radius: var(--bs-border-radius-sm);\\n}\\n.form-control-sm::-webkit-file-upload-button {\\n padding: 0.25rem 0.5rem;\\n margin: -0.25rem -0.5rem;\\n -webkit-margin-end: 0.5rem;\\n margin-inline-end: 0.5rem;\\n}\\n.form-control-sm::file-selector-button {\\n padding: 0.25rem 0.5rem;\\n margin: -0.25rem -0.5rem;\\n -webkit-margin-end: 0.5rem;\\n margin-inline-end: 0.5rem;\\n}\\n\\n.form-control-lg {\\n min-height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));\\n padding: 0.5rem 1rem;\\n font-size: 1.25rem;\\n border-radius: var(--bs-border-radius-lg);\\n}\\n.form-control-lg::-webkit-file-upload-button {\\n padding: 0.5rem 1rem;\\n margin: -0.5rem -1rem;\\n -webkit-margin-end: 1rem;\\n margin-inline-end: 1rem;\\n}\\n.form-control-lg::file-selector-button {\\n padding: 0.5rem 1rem;\\n margin: -0.5rem -1rem;\\n -webkit-margin-end: 1rem;\\n margin-inline-end: 1rem;\\n}\\n\\ntextarea.form-control {\\n min-height: calc(1.5em + 0.75rem + calc(var(--bs-border-width) * 2));\\n}\\ntextarea.form-control-sm {\\n min-height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));\\n}\\ntextarea.form-control-lg {\\n min-height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));\\n}\\n\\n.form-control-color {\\n width: 3rem;\\n height: calc(1.5em + 0.75rem + calc(var(--bs-border-width) * 2));\\n padding: 0.375rem;\\n}\\n.form-control-color:not(:disabled):not([readonly]) {\\n cursor: pointer;\\n}\\n.form-control-color::-moz-color-swatch {\\n border: 0 !important;\\n border-radius: var(--bs-border-radius);\\n}\\n.form-control-color::-webkit-color-swatch {\\n border: 0 !important;\\n border-radius: var(--bs-border-radius);\\n}\\n.form-control-color.form-control-sm {\\n height: calc(1.5em + 0.5rem + calc(var(--bs-border-width) * 2));\\n}\\n.form-control-color.form-control-lg {\\n height: calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));\\n}\\n\\n.form-select {\\n --bs-form-select-bg-img: url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e\\\");\\n display: block;\\n width: 100%;\\n padding: 0.375rem 2.25rem 0.375rem 0.75rem;\\n font-size: 1rem;\\n font-weight: 400;\\n line-height: 1.5;\\n color: var(--bs-body-color);\\n -webkit-appearance: none;\\n -moz-appearance: none;\\n appearance: none;\\n background-color: var(--bs-body-bg);\\n background-image: var(--bs-form-select-bg-img), var(--bs-form-select-bg-icon, none);\\n background-repeat: no-repeat;\\n background-position: right 0.75rem center;\\n background-size: 16px 12px;\\n border: var(--bs-border-width) solid var(--bs-border-color);\\n border-radius: var(--bs-border-radius);\\n transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\\n}\\n@media (prefers-reduced-motion: reduce) {\\n .form-select {\\n transition: none;\\n }\\n}\\n.form-select:focus {\\n border-color: #86b7fe;\\n outline: 0;\\n box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\\n}\\n.form-select[multiple], .form-select[size]:not([size=\\\"1\\\"]) {\\n padding-right: 0.75rem;\\n background-image: none;\\n}\\n.form-select:disabled {\\n background-color: var(--bs-secondary-bg);\\n}\\n.form-select:-moz-focusring {\\n color: transparent;\\n text-shadow: 0 0 0 var(--bs-body-color);\\n}\\n\\n.form-select-sm {\\n padding-top: 0.25rem;\\n padding-bottom: 0.25rem;\\n padding-left: 0.5rem;\\n font-size: 0.875rem;\\n border-radius: var(--bs-border-radius-sm);\\n}\\n\\n.form-select-lg {\\n padding-top: 0.5rem;\\n padding-bottom: 0.5rem;\\n padding-left: 1rem;\\n font-size: 1.25rem;\\n border-radius: var(--bs-border-radius-lg);\\n}\\n\\n[data-bs-theme=dark] .form-select {\\n --bs-form-select-bg-img: url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23dee2e6' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e\\\");\\n}\\n\\n.form-check {\\n display: block;\\n min-height: 1.5rem;\\n padding-left: 1.5em;\\n margin-bottom: 0.125rem;\\n}\\n.form-check .form-check-input {\\n float: left;\\n margin-left: -1.5em;\\n}\\n\\n.form-check-reverse {\\n padding-right: 1.5em;\\n padding-left: 0;\\n text-align: right;\\n}\\n.form-check-reverse .form-check-input {\\n float: right;\\n margin-right: -1.5em;\\n margin-left: 0;\\n}\\n\\n.form-check-input {\\n --bs-form-check-bg: var(--bs-body-bg);\\n flex-shrink: 0;\\n width: 1em;\\n height: 1em;\\n margin-top: 0.25em;\\n vertical-align: top;\\n -webkit-appearance: none;\\n -moz-appearance: none;\\n appearance: none;\\n background-color: var(--bs-form-check-bg);\\n background-image: var(--bs-form-check-bg-image);\\n background-repeat: no-repeat;\\n background-position: center;\\n background-size: contain;\\n border: var(--bs-border-width) solid var(--bs-border-color);\\n -webkit-print-color-adjust: exact;\\n color-adjust: exact;\\n print-color-adjust: exact;\\n}\\n.form-check-input[type=checkbox] {\\n border-radius: 0.25em;\\n}\\n.form-check-input[type=radio] {\\n border-radius: 50%;\\n}\\n.form-check-input:active {\\n filter: brightness(90%);\\n}\\n.form-check-input:focus {\\n border-color: #86b7fe;\\n outline: 0;\\n box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\\n}\\n.form-check-input:checked {\\n background-color: #0d6efd;\\n border-color: #0d6efd;\\n}\\n.form-check-input:checked[type=checkbox] {\\n --bs-form-check-bg-image: url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e\\\");\\n}\\n.form-check-input:checked[type=radio] {\\n --bs-form-check-bg-image: url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e\\\");\\n}\\n.form-check-input[type=checkbox]:indeterminate {\\n background-color: #0d6efd;\\n border-color: #0d6efd;\\n --bs-form-check-bg-image: url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e\\\");\\n}\\n.form-check-input:disabled {\\n pointer-events: none;\\n filter: none;\\n opacity: 0.5;\\n}\\n.form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label {\\n cursor: default;\\n opacity: 0.5;\\n}\\n\\n.form-switch {\\n padding-left: 2.5em;\\n}\\n.form-switch .form-check-input {\\n --bs-form-switch-bg: url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e\\\");\\n width: 2em;\\n margin-left: -2.5em;\\n background-image: var(--bs-form-switch-bg);\\n background-position: left center;\\n border-radius: 2em;\\n transition: background-position 0.15s ease-in-out;\\n}\\n@media (prefers-reduced-motion: reduce) {\\n .form-switch .form-check-input {\\n transition: none;\\n }\\n}\\n.form-switch .form-check-input:focus {\\n --bs-form-switch-bg: url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2386b7fe'/%3e%3c/svg%3e\\\");\\n}\\n.form-switch .form-check-input:checked {\\n background-position: right center;\\n --bs-form-switch-bg: url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e\\\");\\n}\\n.form-switch.form-check-reverse {\\n padding-right: 2.5em;\\n padding-left: 0;\\n}\\n.form-switch.form-check-reverse .form-check-input {\\n margin-right: -2.5em;\\n margin-left: 0;\\n}\\n\\n.form-check-inline {\\n display: inline-block;\\n margin-right: 1rem;\\n}\\n\\n.btn-check {\\n position: absolute;\\n clip: rect(0, 0, 0, 0);\\n pointer-events: none;\\n}\\n.btn-check[disabled] + .btn, .btn-check:disabled + .btn {\\n pointer-events: none;\\n filter: none;\\n opacity: 0.65;\\n}\\n\\n[data-bs-theme=dark] .form-switch .form-check-input:not(:checked):not(:focus) {\\n --bs-form-switch-bg: url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%28255, 255, 255, 0.25%29'/%3e%3c/svg%3e\\\");\\n}\\n\\n.form-range {\\n width: 100%;\\n height: 1.5rem;\\n padding: 0;\\n -webkit-appearance: none;\\n -moz-appearance: none;\\n appearance: none;\\n background-color: transparent;\\n}\\n.form-range:focus {\\n outline: 0;\\n}\\n.form-range:focus::-webkit-slider-thumb {\\n box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\\n}\\n.form-range:focus::-moz-range-thumb {\\n box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\\n}\\n.form-range::-moz-focus-outer {\\n border: 0;\\n}\\n.form-range::-webkit-slider-thumb {\\n width: 1rem;\\n height: 1rem;\\n margin-top: -0.25rem;\\n -webkit-appearance: none;\\n appearance: none;\\n background-color: #0d6efd;\\n border: 0;\\n border-radius: 1rem;\\n -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\\n}\\n@media (prefers-reduced-motion: reduce) {\\n .form-range::-webkit-slider-thumb {\\n -webkit-transition: none;\\n transition: none;\\n }\\n}\\n.form-range::-webkit-slider-thumb:active {\\n background-color: #b6d4fe;\\n}\\n.form-range::-webkit-slider-runnable-track {\\n width: 100%;\\n height: 0.5rem;\\n color: transparent;\\n cursor: pointer;\\n background-color: var(--bs-secondary-bg);\\n border-color: transparent;\\n border-radius: 1rem;\\n}\\n.form-range::-moz-range-thumb {\\n width: 1rem;\\n height: 1rem;\\n -moz-appearance: none;\\n appearance: none;\\n background-color: #0d6efd;\\n border: 0;\\n border-radius: 1rem;\\n -moz-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\\n}\\n@media (prefers-reduced-motion: reduce) {\\n .form-range::-moz-range-thumb {\\n -moz-transition: none;\\n transition: none;\\n }\\n}\\n.form-range::-moz-range-thumb:active {\\n background-color: #b6d4fe;\\n}\\n.form-range::-moz-range-track {\\n width: 100%;\\n height: 0.5rem;\\n color: transparent;\\n cursor: pointer;\\n background-color: var(--bs-secondary-bg);\\n border-color: transparent;\\n border-radius: 1rem;\\n}\\n.form-range:disabled {\\n pointer-events: none;\\n}\\n.form-range:disabled::-webkit-slider-thumb {\\n background-color: var(--bs-secondary-color);\\n}\\n.form-range:disabled::-moz-range-thumb {\\n background-color: var(--bs-secondary-color);\\n}\\n\\n.form-floating {\\n position: relative;\\n}\\n.form-floating > .form-control,\\n.form-floating > .form-control-plaintext,\\n.form-floating > .form-select {\\n height: calc(3.5rem + calc(var(--bs-border-width) * 2));\\n min-height: calc(3.5rem + calc(var(--bs-border-width) * 2));\\n line-height: 1.25;\\n}\\n.form-floating > label {\\n position: absolute;\\n top: 0;\\n left: 0;\\n z-index: 2;\\n height: 100%;\\n padding: 1rem 0.75rem;\\n overflow: hidden;\\n text-align: start;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n pointer-events: none;\\n border: var(--bs-border-width) solid transparent;\\n transform-origin: 0 0;\\n transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out;\\n}\\n@media (prefers-reduced-motion: reduce) {\\n .form-floating > label {\\n transition: none;\\n }\\n}\\n.form-floating > .form-control,\\n.form-floating > .form-control-plaintext {\\n padding: 1rem 0.75rem;\\n}\\n.form-floating > .form-control::-moz-placeholder, .form-floating > .form-control-plaintext::-moz-placeholder {\\n color: transparent;\\n}\\n.form-floating > .form-control::placeholder,\\n.form-floating > .form-control-plaintext::placeholder {\\n color: transparent;\\n}\\n.form-floating > .form-control:not(:-moz-placeholder-shown), .form-floating > .form-control-plaintext:not(:-moz-placeholder-shown) {\\n padding-top: 1.625rem;\\n padding-bottom: 0.625rem;\\n}\\n.form-floating > .form-control:focus, .form-floating > .form-control:not(:placeholder-shown),\\n.form-floating > .form-control-plaintext:focus,\\n.form-floating > .form-control-plaintext:not(:placeholder-shown) {\\n padding-top: 1.625rem;\\n padding-bottom: 0.625rem;\\n}\\n.form-floating > .form-control:-webkit-autofill,\\n.form-floating > .form-control-plaintext:-webkit-autofill {\\n padding-top: 1.625rem;\\n padding-bottom: 0.625rem;\\n}\\n.form-floating > .form-select {\\n padding-top: 1.625rem;\\n padding-bottom: 0.625rem;\\n}\\n.form-floating > .form-control:not(:-moz-placeholder-shown) ~ label {\\n color: rgba(var(--bs-body-color-rgb), 0.65);\\n transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);\\n}\\n.form-floating > .form-control:focus ~ label,\\n.form-floating > .form-control:not(:placeholder-shown) ~ label,\\n.form-floating > .form-control-plaintext ~ label,\\n.form-floating > .form-select ~ label {\\n color: rgba(var(--bs-body-color-rgb), 0.65);\\n transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);\\n}\\n.form-floating > .form-control:not(:-moz-placeholder-shown) ~ label::after {\\n position: absolute;\\n inset: 1rem 0.375rem;\\n z-index: -1;\\n height: 1.5em;\\n content: \\\"\\\";\\n background-color: var(--bs-body-bg);\\n border-radius: var(--bs-border-radius);\\n}\\n.form-floating > .form-control:focus ~ label::after,\\n.form-floating > .form-control:not(:placeholder-shown) ~ label::after,\\n.form-floating > .form-control-plaintext ~ label::after,\\n.form-floating > .form-select ~ label::after {\\n position: absolute;\\n inset: 1rem 0.375rem;\\n z-index: -1;\\n height: 1.5em;\\n content: \\\"\\\";\\n background-color: var(--bs-body-bg);\\n border-radius: var(--bs-border-radius);\\n}\\n.form-floating > .form-control:-webkit-autofill ~ label {\\n color: rgba(var(--bs-body-color-rgb), 0.65);\\n transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);\\n}\\n.form-floating > .form-control-plaintext ~ label {\\n border-width: var(--bs-border-width) 0;\\n}\\n.form-floating > :disabled ~ label,\\n.form-floating > .form-control:disabled ~ label {\\n color: #6c757d;\\n}\\n.form-floating > :disabled ~ label::after,\\n.form-floating > .form-control:disabled ~ label::after {\\n background-color: var(--bs-secondary-bg);\\n}\\n\\n.input-group {\\n position: relative;\\n display: flex;\\n flex-wrap: wrap;\\n align-items: stretch;\\n width: 100%;\\n}\\n.input-group > .form-control,\\n.input-group > .form-select,\\n.input-group > .form-floating {\\n position: relative;\\n flex: 1 1 auto;\\n width: 1%;\\n min-width: 0;\\n}\\n.input-group > .form-control:focus,\\n.input-group > .form-select:focus,\\n.input-group > .form-floating:focus-within {\\n z-index: 5;\\n}\\n.input-group .btn {\\n position: relative;\\n z-index: 2;\\n}\\n.input-group .btn:focus {\\n z-index: 5;\\n}\\n\\n.input-group-text {\\n display: flex;\\n align-items: center;\\n padding: 0.375rem 0.75rem;\\n font-size: 1rem;\\n font-weight: 400;\\n line-height: 1.5;\\n color: var(--bs-body-color);\\n text-align: center;\\n white-space: nowrap;\\n background-color: var(--bs-tertiary-bg);\\n border: var(--bs-border-width) solid var(--bs-border-color);\\n border-radius: var(--bs-border-radius);\\n}\\n\\n.input-group-lg > .form-control,\\n.input-group-lg > .form-select,\\n.input-group-lg > .input-group-text,\\n.input-group-lg > .btn {\\n padding: 0.5rem 1rem;\\n font-size: 1.25rem;\\n border-radius: var(--bs-border-radius-lg);\\n}\\n\\n.input-group-sm > .form-control,\\n.input-group-sm > .form-select,\\n.input-group-sm > .input-group-text,\\n.input-group-sm > .btn {\\n padding: 0.25rem 0.5rem;\\n font-size: 0.875rem;\\n border-radius: var(--bs-border-radius-sm);\\n}\\n\\n.input-group-lg > .form-select,\\n.input-group-sm > .form-select {\\n padding-right: 3rem;\\n}\\n\\n.input-group:not(.has-validation) > :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),\\n.input-group:not(.has-validation) > .dropdown-toggle:nth-last-child(n+3),\\n.input-group:not(.has-validation) > .form-floating:not(:last-child) > .form-control,\\n.input-group:not(.has-validation) > .form-floating:not(:last-child) > .form-select {\\n border-top-right-radius: 0;\\n border-bottom-right-radius: 0;\\n}\\n.input-group.has-validation > :nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),\\n.input-group.has-validation > .dropdown-toggle:nth-last-child(n+4),\\n.input-group.has-validation > .form-floating:nth-last-child(n+3) > .form-control,\\n.input-group.has-validation > .form-floating:nth-last-child(n+3) > .form-select {\\n border-top-right-radius: 0;\\n border-bottom-right-radius: 0;\\n}\\n.input-group > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {\\n margin-left: calc(var(--bs-border-width) * -1);\\n border-top-left-radius: 0;\\n border-bottom-left-radius: 0;\\n}\\n.input-group > .form-floating:not(:first-child) > .form-control,\\n.input-group > .form-floating:not(:first-child) > .form-select {\\n border-top-left-radius: 0;\\n border-bottom-left-radius: 0;\\n}\\n\\n.valid-feedback {\\n display: none;\\n width: 100%;\\n margin-top: 0.25rem;\\n font-size: 0.875em;\\n color: var(--bs-form-valid-color);\\n}\\n\\n.valid-tooltip {\\n position: absolute;\\n top: 100%;\\n z-index: 5;\\n display: none;\\n max-width: 100%;\\n padding: 0.25rem 0.5rem;\\n margin-top: 0.1rem;\\n font-size: 0.875rem;\\n color: #fff;\\n background-color: var(--bs-success);\\n border-radius: var(--bs-border-radius);\\n}\\n\\n.was-validated :valid ~ .valid-feedback,\\n.was-validated :valid ~ .valid-tooltip,\\n.is-valid ~ .valid-feedback,\\n.is-valid ~ .valid-tooltip {\\n display: block;\\n}\\n\\n.was-validated .form-control:valid, .form-control.is-valid {\\n border-color: var(--bs-form-valid-border-color);\\n padding-right: calc(1.5em + 0.75rem);\\n background-image: url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e\\\");\\n background-repeat: no-repeat;\\n background-position: right calc(0.375em + 0.1875rem) center;\\n background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\\n}\\n.was-validated .form-control:valid:focus, .form-control.is-valid:focus {\\n border-color: var(--bs-form-valid-border-color);\\n box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);\\n}\\n\\n.was-validated textarea.form-control:valid, textarea.form-control.is-valid {\\n padding-right: calc(1.5em + 0.75rem);\\n background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);\\n}\\n\\n.was-validated .form-select:valid, .form-select.is-valid {\\n border-color: var(--bs-form-valid-border-color);\\n}\\n.was-validated .form-select:valid:not([multiple]):not([size]), .was-validated .form-select:valid:not([multiple])[size=\\\"1\\\"], .form-select.is-valid:not([multiple]):not([size]), .form-select.is-valid:not([multiple])[size=\\\"1\\\"] {\\n --bs-form-select-bg-icon: url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e\\\");\\n padding-right: 4.125rem;\\n background-position: right 0.75rem center, center right 2.25rem;\\n background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\\n}\\n.was-validated .form-select:valid:focus, .form-select.is-valid:focus {\\n border-color: var(--bs-form-valid-border-color);\\n box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);\\n}\\n\\n.was-validated .form-control-color:valid, .form-control-color.is-valid {\\n width: calc(3rem + calc(1.5em + 0.75rem));\\n}\\n\\n.was-validated .form-check-input:valid, .form-check-input.is-valid {\\n border-color: var(--bs-form-valid-border-color);\\n}\\n.was-validated .form-check-input:valid:checked, .form-check-input.is-valid:checked {\\n background-color: var(--bs-form-valid-color);\\n}\\n.was-validated .form-check-input:valid:focus, .form-check-input.is-valid:focus {\\n box-shadow: 0 0 0 0.25rem rgba(var(--bs-success-rgb), 0.25);\\n}\\n.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {\\n color: var(--bs-form-valid-color);\\n}\\n\\n.form-check-inline .form-check-input ~ .valid-feedback {\\n margin-left: 0.5em;\\n}\\n\\n.was-validated .input-group > .form-control:not(:focus):valid, .input-group > .form-control:not(:focus).is-valid,\\n.was-validated .input-group > .form-select:not(:focus):valid,\\n.input-group > .form-select:not(:focus).is-valid,\\n.was-validated .input-group > .form-floating:not(:focus-within):valid,\\n.input-group > .form-floating:not(:focus-within).is-valid {\\n z-index: 3;\\n}\\n\\n.invalid-feedback {\\n display: none;\\n width: 100%;\\n margin-top: 0.25rem;\\n font-size: 0.875em;\\n color: var(--bs-form-invalid-color);\\n}\\n\\n.invalid-tooltip {\\n position: absolute;\\n top: 100%;\\n z-index: 5;\\n display: none;\\n max-width: 100%;\\n padding: 0.25rem 0.5rem;\\n margin-top: 0.1rem;\\n font-size: 0.875rem;\\n color: #fff;\\n background-color: var(--bs-danger);\\n border-radius: var(--bs-border-radius);\\n}\\n\\n.was-validated :invalid ~ .invalid-feedback,\\n.was-validated :invalid ~ .invalid-tooltip,\\n.is-invalid ~ .invalid-feedback,\\n.is-invalid ~ .invalid-tooltip {\\n display: block;\\n}\\n\\n.was-validated .form-control:invalid, .form-control.is-invalid {\\n border-color: var(--bs-form-invalid-border-color);\\n padding-right: calc(1.5em + 0.75rem);\\n background-image: url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e\\\");\\n background-repeat: no-repeat;\\n background-position: right calc(0.375em + 0.1875rem) center;\\n background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\\n}\\n.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {\\n border-color: var(--bs-form-invalid-border-color);\\n box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);\\n}\\n\\n.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid {\\n padding-right: calc(1.5em + 0.75rem);\\n background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);\\n}\\n\\n.was-validated .form-select:invalid, .form-select.is-invalid {\\n border-color: var(--bs-form-invalid-border-color);\\n}\\n.was-validated .form-select:invalid:not([multiple]):not([size]), .was-validated .form-select:invalid:not([multiple])[size=\\\"1\\\"], .form-select.is-invalid:not([multiple]):not([size]), .form-select.is-invalid:not([multiple])[size=\\\"1\\\"] {\\n --bs-form-select-bg-icon: url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e\\\");\\n padding-right: 4.125rem;\\n background-position: right 0.75rem center, center right 2.25rem;\\n background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\\n}\\n.was-validated .form-select:invalid:focus, .form-select.is-invalid:focus {\\n border-color: var(--bs-form-invalid-border-color);\\n box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);\\n}\\n\\n.was-validated .form-control-color:invalid, .form-control-color.is-invalid {\\n width: calc(3rem + calc(1.5em + 0.75rem));\\n}\\n\\n.was-validated .form-check-input:invalid, .form-check-input.is-invalid {\\n border-color: var(--bs-form-invalid-border-color);\\n}\\n.was-validated .form-check-input:invalid:checked, .form-check-input.is-invalid:checked {\\n background-color: var(--bs-form-invalid-color);\\n}\\n.was-validated .form-check-input:invalid:focus, .form-check-input.is-invalid:focus {\\n box-shadow: 0 0 0 0.25rem rgba(var(--bs-danger-rgb), 0.25);\\n}\\n.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {\\n color: var(--bs-form-invalid-color);\\n}\\n\\n.form-check-inline .form-check-input ~ .invalid-feedback {\\n margin-left: 0.5em;\\n}\\n\\n.was-validated .input-group > .form-control:not(:focus):invalid, .input-group > .form-control:not(:focus).is-invalid,\\n.was-validated .input-group > .form-select:not(:focus):invalid,\\n.input-group > .form-select:not(:focus).is-invalid,\\n.was-validated .input-group > .form-floating:not(:focus-within):invalid,\\n.input-group > .form-floating:not(:focus-within).is-invalid {\\n z-index: 4;\\n}\\n\\n.btn {\\n --bs-btn-padding-x: 0.75rem;\\n --bs-btn-padding-y: 0.375rem;\\n --bs-btn-font-family: ;\\n --bs-btn-font-size: 1rem;\\n --bs-btn-font-weight: 400;\\n --bs-btn-line-height: 1.5;\\n --bs-btn-color: var(--bs-body-color);\\n --bs-btn-bg: transparent;\\n --bs-btn-border-width: var(--bs-border-width);\\n --bs-btn-border-color: transparent;\\n --bs-btn-border-radius: var(--bs-border-radius);\\n --bs-btn-hover-border-color: transparent;\\n --bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);\\n --bs-btn-disabled-opacity: 0.65;\\n --bs-btn-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);\\n display: inline-block;\\n padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);\\n font-family: var(--bs-btn-font-family);\\n font-size: var(--bs-btn-font-size);\\n font-weight: var(--bs-btn-font-weight);\\n line-height: var(--bs-btn-line-height);\\n color: var(--bs-btn-color);\\n text-align: center;\\n text-decoration: none;\\n vertical-align: middle;\\n cursor: pointer;\\n -webkit-user-select: none;\\n -moz-user-select: none;\\n user-select: none;\\n border: var(--bs-btn-border-width) solid var(--bs-btn-border-color);\\n border-radius: var(--bs-btn-border-radius);\\n background-color: var(--bs-btn-bg);\\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\\n}\\n@media (prefers-reduced-motion: reduce) {\\n .btn {\\n transition: none;\\n }\\n}\\n.btn:hover {\\n color: var(--bs-btn-hover-color);\\n background-color: var(--bs-btn-hover-bg);\\n border-color: var(--bs-btn-hover-border-color);\\n}\\n.btn-check + .btn:hover {\\n color: var(--bs-btn-color);\\n background-color: var(--bs-btn-bg);\\n border-color: var(--bs-btn-border-color);\\n}\\n.btn:focus-visible {\\n color: var(--bs-btn-hover-color);\\n background-color: var(--bs-btn-hover-bg);\\n border-color: var(--bs-btn-hover-border-color);\\n outline: 0;\\n box-shadow: var(--bs-btn-focus-box-shadow);\\n}\\n.btn-check:focus-visible + .btn {\\n border-color: var(--bs-btn-hover-border-color);\\n outline: 0;\\n box-shadow: var(--bs-btn-focus-box-shadow);\\n}\\n.btn-check:checked + .btn, :not(.btn-check) + .btn:active, .btn:first-child:active, .btn.active, .btn.show {\\n color: var(--bs-btn-active-color);\\n background-color: var(--bs-btn-active-bg);\\n border-color: var(--bs-btn-active-border-color);\\n}\\n.btn-check:checked + .btn:focus-visible, :not(.btn-check) + .btn:active:focus-visible, .btn:first-child:active:focus-visible, .btn.active:focus-visible, .btn.show:focus-visible {\\n box-shadow: var(--bs-btn-focus-box-shadow);\\n}\\n.btn-check:checked:focus-visible + .btn {\\n box-shadow: var(--bs-btn-focus-box-shadow);\\n}\\n.btn:disabled, .btn.disabled, fieldset:disabled .btn {\\n color: var(--bs-btn-disabled-color);\\n pointer-events: none;\\n background-color: var(--bs-btn-disabled-bg);\\n border-color: var(--bs-btn-disabled-border-color);\\n opacity: var(--bs-btn-disabled-opacity);\\n}\\n\\n.btn-primary {\\n --bs-btn-color: #fff;\\n --bs-btn-bg: #0d6efd;\\n --bs-btn-border-color: #0d6efd;\\n --bs-btn-hover-color: #fff;\\n --bs-btn-hover-bg: #0b5ed7;\\n --bs-btn-hover-border-color: #0a58ca;\\n --bs-btn-focus-shadow-rgb: 49, 132, 253;\\n --bs-btn-active-color: #fff;\\n --bs-btn-active-bg: #0a58ca;\\n --bs-btn-active-border-color: #0a53be;\\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\\n --bs-btn-disabled-color: #fff;\\n --bs-btn-disabled-bg: #0d6efd;\\n --bs-btn-disabled-border-color: #0d6efd;\\n}\\n\\n.btn-secondary {\\n --bs-btn-color: #fff;\\n --bs-btn-bg: #6c757d;\\n --bs-btn-border-color: #6c757d;\\n --bs-btn-hover-color: #fff;\\n --bs-btn-hover-bg: #5c636a;\\n --bs-btn-hover-border-color: #565e64;\\n --bs-btn-focus-shadow-rgb: 130, 138, 145;\\n --bs-btn-active-color: #fff;\\n --bs-btn-active-bg: #565e64;\\n --bs-btn-active-border-color: #51585e;\\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\\n --bs-btn-disabled-color: #fff;\\n --bs-btn-disabled-bg: #6c757d;\\n --bs-btn-disabled-border-color: #6c757d;\\n}\\n\\n.btn-success {\\n --bs-btn-color: #fff;\\n --bs-btn-bg: #198754;\\n --bs-btn-border-color: #198754;\\n --bs-btn-hover-color: #fff;\\n --bs-btn-hover-bg: #157347;\\n --bs-btn-hover-border-color: #146c43;\\n --bs-btn-focus-shadow-rgb: 60, 153, 110;\\n --bs-btn-active-color: #fff;\\n --bs-btn-active-bg: #146c43;\\n --bs-btn-active-border-color: #13653f;\\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\\n --bs-btn-disabled-color: #fff;\\n --bs-btn-disabled-bg: #198754;\\n --bs-btn-disabled-border-color: #198754;\\n}\\n\\n.btn-info {\\n --bs-btn-color: #000;\\n --bs-btn-bg: #0dcaf0;\\n --bs-btn-border-color: #0dcaf0;\\n --bs-btn-hover-color: #000;\\n --bs-btn-hover-bg: #31d2f2;\\n --bs-btn-hover-border-color: #25cff2;\\n --bs-btn-focus-shadow-rgb: 11, 172, 204;\\n --bs-btn-active-color: #000;\\n --bs-btn-active-bg: #3dd5f3;\\n --bs-btn-active-border-color: #25cff2;\\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\\n --bs-btn-disabled-color: #000;\\n --bs-btn-disabled-bg: #0dcaf0;\\n --bs-btn-disabled-border-color: #0dcaf0;\\n}\\n\\n.btn-warning {\\n --bs-btn-color: #000;\\n --bs-btn-bg: #ffc107;\\n --bs-btn-border-color: #ffc107;\\n --bs-btn-hover-color: #000;\\n --bs-btn-hover-bg: #ffca2c;\\n --bs-btn-hover-border-color: #ffc720;\\n --bs-btn-focus-shadow-rgb: 217, 164, 6;\\n --bs-btn-active-color: #000;\\n --bs-btn-active-bg: #ffcd39;\\n --bs-btn-active-border-color: #ffc720;\\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\\n --bs-btn-disabled-color: #000;\\n --bs-btn-disabled-bg: #ffc107;\\n --bs-btn-disabled-border-color: #ffc107;\\n}\\n\\n.btn-danger {\\n --bs-btn-color: #fff;\\n --bs-btn-bg: #dc3545;\\n --bs-btn-border-color: #dc3545;\\n --bs-btn-hover-color: #fff;\\n --bs-btn-hover-bg: #bb2d3b;\\n --bs-btn-hover-border-color: #b02a37;\\n --bs-btn-focus-shadow-rgb: 225, 83, 97;\\n --bs-btn-active-color: #fff;\\n --bs-btn-active-bg: #b02a37;\\n --bs-btn-active-border-color: #a52834;\\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\\n --bs-btn-disabled-color: #fff;\\n --bs-btn-disabled-bg: #dc3545;\\n --bs-btn-disabled-border-color: #dc3545;\\n}\\n\\n.btn-light {\\n --bs-btn-color: #000;\\n --bs-btn-bg: #f8f9fa;\\n --bs-btn-border-color: #f8f9fa;\\n --bs-btn-hover-color: #000;\\n --bs-btn-hover-bg: #d3d4d5;\\n --bs-btn-hover-border-color: #c6c7c8;\\n --bs-btn-focus-shadow-rgb: 211, 212, 213;\\n --bs-btn-active-color: #000;\\n --bs-btn-active-bg: #c6c7c8;\\n --bs-btn-active-border-color: #babbbc;\\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\\n --bs-btn-disabled-color: #000;\\n --bs-btn-disabled-bg: #f8f9fa;\\n --bs-btn-disabled-border-color: #f8f9fa;\\n}\\n\\n.btn-dark {\\n --bs-btn-color: #fff;\\n --bs-btn-bg: #212529;\\n --bs-btn-border-color: #212529;\\n --bs-btn-hover-color: #fff;\\n --bs-btn-hover-bg: #424649;\\n --bs-btn-hover-border-color: #373b3e;\\n --bs-btn-focus-shadow-rgb: 66, 70, 73;\\n --bs-btn-active-color: #fff;\\n --bs-btn-active-bg: #4d5154;\\n --bs-btn-active-border-color: #373b3e;\\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\\n --bs-btn-disabled-color: #fff;\\n --bs-btn-disabled-bg: #212529;\\n --bs-btn-disabled-border-color: #212529;\\n}\\n\\n.btn-outline-primary {\\n --bs-btn-color: #0d6efd;\\n --bs-btn-border-color: #0d6efd;\\n --bs-btn-hover-color: #fff;\\n --bs-btn-hover-bg: #0d6efd;\\n --bs-btn-hover-border-color: #0d6efd;\\n --bs-btn-focus-shadow-rgb: 13, 110, 253;\\n --bs-btn-active-color: #fff;\\n --bs-btn-active-bg: #0d6efd;\\n --bs-btn-active-border-color: #0d6efd;\\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\\n --bs-btn-disabled-color: #0d6efd;\\n --bs-btn-disabled-bg: transparent;\\n --bs-btn-disabled-border-color: #0d6efd;\\n --bs-gradient: none;\\n}\\n\\n.btn-outline-secondary {\\n --bs-btn-color: #6c757d;\\n --bs-btn-border-color: #6c757d;\\n --bs-btn-hover-color: #fff;\\n --bs-btn-hover-bg: #6c757d;\\n --bs-btn-hover-border-color: #6c757d;\\n --bs-btn-focus-shadow-rgb: 108, 117, 125;\\n --bs-btn-active-color: #fff;\\n --bs-btn-active-bg: #6c757d;\\n --bs-btn-active-border-color: #6c757d;\\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\\n --bs-btn-disabled-color: #6c757d;\\n --bs-btn-disabled-bg: transparent;\\n --bs-btn-disabled-border-color: #6c757d;\\n --bs-gradient: none;\\n}\\n\\n.btn-outline-success {\\n --bs-btn-color: #198754;\\n --bs-btn-border-color: #198754;\\n --bs-btn-hover-color: #fff;\\n --bs-btn-hover-bg: #198754;\\n --bs-btn-hover-border-color: #198754;\\n --bs-btn-focus-shadow-rgb: 25, 135, 84;\\n --bs-btn-active-color: #fff;\\n --bs-btn-active-bg: #198754;\\n --bs-btn-active-border-color: #198754;\\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\\n --bs-btn-disabled-color: #198754;\\n --bs-btn-disabled-bg: transparent;\\n --bs-btn-disabled-border-color: #198754;\\n --bs-gradient: none;\\n}\\n\\n.btn-outline-info {\\n --bs-btn-color: #0dcaf0;\\n --bs-btn-border-color: #0dcaf0;\\n --bs-btn-hover-color: #000;\\n --bs-btn-hover-bg: #0dcaf0;\\n --bs-btn-hover-border-color: #0dcaf0;\\n --bs-btn-focus-shadow-rgb: 13, 202, 240;\\n --bs-btn-active-color: #000;\\n --bs-btn-active-bg: #0dcaf0;\\n --bs-btn-active-border-color: #0dcaf0;\\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\\n --bs-btn-disabled-color: #0dcaf0;\\n --bs-btn-disabled-bg: transparent;\\n --bs-btn-disabled-border-color: #0dcaf0;\\n --bs-gradient: none;\\n}\\n\\n.btn-outline-warning {\\n --bs-btn-color: #ffc107;\\n --bs-btn-border-color: #ffc107;\\n --bs-btn-hover-color: #000;\\n --bs-btn-hover-bg: #ffc107;\\n --bs-btn-hover-border-color: #ffc107;\\n --bs-btn-focus-shadow-rgb: 255, 193, 7;\\n --bs-btn-active-color: #000;\\n --bs-btn-active-bg: #ffc107;\\n --bs-btn-active-border-color: #ffc107;\\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\\n --bs-btn-disabled-color: #ffc107;\\n --bs-btn-disabled-bg: transparent;\\n --bs-btn-disabled-border-color: #ffc107;\\n --bs-gradient: none;\\n}\\n\\n.btn-outline-danger {\\n --bs-btn-color: #dc3545;\\n --bs-btn-border-color: #dc3545;\\n --bs-btn-hover-color: #fff;\\n --bs-btn-hover-bg: #dc3545;\\n --bs-btn-hover-border-color: #dc3545;\\n --bs-btn-focus-shadow-rgb: 220, 53, 69;\\n --bs-btn-active-color: #fff;\\n --bs-btn-active-bg: #dc3545;\\n --bs-btn-active-border-color: #dc3545;\\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\\n --bs-btn-disabled-color: #dc3545;\\n --bs-btn-disabled-bg: transparent;\\n --bs-btn-disabled-border-color: #dc3545;\\n --bs-gradient: none;\\n}\\n\\n.btn-outline-light {\\n --bs-btn-color: #f8f9fa;\\n --bs-btn-border-color: #f8f9fa;\\n --bs-btn-hover-color: #000;\\n --bs-btn-hover-bg: #f8f9fa;\\n --bs-btn-hover-border-color: #f8f9fa;\\n --bs-btn-focus-shadow-rgb: 248, 249, 250;\\n --bs-btn-active-color: #000;\\n --bs-btn-active-bg: #f8f9fa;\\n --bs-btn-active-border-color: #f8f9fa;\\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\\n --bs-btn-disabled-color: #f8f9fa;\\n --bs-btn-disabled-bg: transparent;\\n --bs-btn-disabled-border-color: #f8f9fa;\\n --bs-gradient: none;\\n}\\n\\n.btn-outline-dark {\\n --bs-btn-color: #212529;\\n --bs-btn-border-color: #212529;\\n --bs-btn-hover-color: #fff;\\n --bs-btn-hover-bg: #212529;\\n --bs-btn-hover-border-color: #212529;\\n --bs-btn-focus-shadow-rgb: 33, 37, 41;\\n --bs-btn-active-color: #fff;\\n --bs-btn-active-bg: #212529;\\n --bs-btn-active-border-color: #212529;\\n --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);\\n --bs-btn-disabled-color: #212529;\\n --bs-btn-disabled-bg: transparent;\\n --bs-btn-disabled-border-color: #212529;\\n --bs-gradient: none;\\n}\\n\\n.btn-link {\\n --bs-btn-font-weight: 400;\\n --bs-btn-color: var(--bs-link-color);\\n --bs-btn-bg: transparent;\\n --bs-btn-border-color: transparent;\\n --bs-btn-hover-color: var(--bs-link-hover-color);\\n --bs-btn-hover-border-color: transparent;\\n --bs-btn-active-color: var(--bs-link-hover-color);\\n --bs-btn-active-border-color: transparent;\\n --bs-btn-disabled-color: #6c757d;\\n --bs-btn-disabled-border-color: transparent;\\n --bs-btn-box-shadow: 0 0 0 #000;\\n --bs-btn-focus-shadow-rgb: 49, 132, 253;\\n text-decoration: underline;\\n}\\n.btn-link:focus-visible {\\n color: var(--bs-btn-color);\\n}\\n.btn-link:hover {\\n color: var(--bs-btn-hover-color);\\n}\\n\\n.btn-lg, .btn-group-lg > .btn {\\n --bs-btn-padding-y: 0.5rem;\\n --bs-btn-padding-x: 1rem;\\n --bs-btn-font-size: 1.25rem;\\n --bs-btn-border-radius: var(--bs-border-radius-lg);\\n}\\n\\n.btn-sm, .btn-group-sm > .btn {\\n --bs-btn-padding-y: 0.25rem;\\n --bs-btn-padding-x: 0.5rem;\\n --bs-btn-font-size: 0.875rem;\\n --bs-btn-border-radius: var(--bs-border-radius-sm);\\n}\\n\\n.fade {\\n transition: opacity 0.15s linear;\\n}\\n@media (prefers-reduced-motion: reduce) {\\n .fade {\\n transition: none;\\n }\\n}\\n.fade:not(.show) {\\n opacity: 0;\\n}\\n\\n.collapse:not(.show) {\\n display: none;\\n}\\n\\n.collapsing {\\n height: 0;\\n overflow: hidden;\\n transition: height 0.35s ease;\\n}\\n@media (prefers-reduced-motion: reduce) {\\n .collapsing {\\n transition: none;\\n }\\n}\\n.collapsing.collapse-horizontal {\\n width: 0;\\n height: auto;\\n transition: width 0.35s ease;\\n}\\n@media (prefers-reduced-motion: reduce) {\\n .collapsing.collapse-horizontal {\\n transition: none;\\n }\\n}\\n\\n.dropup,\\n.dropend,\\n.dropdown,\\n.dropstart,\\n.dropup-center,\\n.dropdown-center {\\n position: relative;\\n}\\n\\n.dropdown-toggle {\\n white-space: nowrap;\\n}\\n.dropdown-toggle::after {\\n display: inline-block;\\n margin-left: 0.255em;\\n vertical-align: 0.255em;\\n content: \\\"\\\";\\n border-top: 0.3em solid;\\n border-right: 0.3em solid transparent;\\n border-bottom: 0;\\n border-left: 0.3em solid transparent;\\n}\\n.dropdown-toggle:empty::after {\\n margin-left: 0;\\n}\\n\\n.dropdown-menu {\\n --bs-dropdown-zindex: 1000;\\n --bs-dropdown-min-width: 10rem;\\n --bs-dropdown-padding-x: 0;\\n --bs-dropdown-padding-y: 0.5rem;\\n --bs-dropdown-spacer: 0.125rem;\\n --bs-dropdown-font-size: 1rem;\\n --bs-dropdown-color: var(--bs-body-color);\\n --bs-dropdown-bg: var(--bs-body-bg);\\n --bs-dropdown-border-color: var(--bs-border-color-translucent);\\n --bs-dropdown-border-radius: var(--bs-border-radius);\\n --bs-dropdown-border-width: var(--bs-border-width);\\n --bs-dropdown-inner-border-radius: calc(var(--bs-border-radius) - var(--bs-border-width));\\n --bs-dropdown-divider-bg: var(--bs-border-color-translucent);\\n --bs-dropdown-divider-margin-y: 0.5rem;\\n --bs-dropdown-box-shadow: var(--bs-box-shadow);\\n --bs-dropdown-link-color: var(--bs-body-color);\\n --bs-dropdown-link-hover-color: var(--bs-body-color);\\n --bs-dropdown-link-hover-bg: var(--bs-tertiary-bg);\\n --bs-dropdown-link-active-color: #fff;\\n --bs-dropdown-link-active-bg: #0d6efd;\\n --bs-dropdown-link-disabled-color: var(--bs-tertiary-color);\\n --bs-dropdown-item-padding-x: 1rem;\\n --bs-dropdown-item-padding-y: 0.25rem;\\n --bs-dropdown-header-color: #6c757d;\\n --bs-dropdown-header-padding-x: 1rem;\\n --bs-dropdown-header-padding-y: 0.5rem;\\n position: absolute;\\n z-index: var(--bs-dropdown-zindex);\\n display: none;\\n min-width: var(--bs-dropdown-min-width);\\n padding: var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);\\n margin: 0;\\n font-size: var(--bs-dropdown-font-size);\\n color: var(--bs-dropdown-color);\\n text-align: left;\\n list-style: none;\\n background-color: var(--bs-dropdown-bg);\\n background-clip: padding-box;\\n border: var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);\\n border-radius: var(--bs-dropdown-border-radius);\\n}\\n.dropdown-menu[data-bs-popper] {\\n top: 100%;\\n left: 0;\\n margin-top: var(--bs-dropdown-spacer);\\n}\\n\\n.dropdown-menu-start {\\n --bs-position: start;\\n}\\n.dropdown-menu-start[data-bs-popper] {\\n right: auto;\\n left: 0;\\n}\\n\\n.dropdown-menu-end {\\n --bs-position: end;\\n}\\n.dropdown-menu-end[data-bs-popper] {\\n right: 0;\\n left: auto;\\n}\\n\\n@media (min-width: 576px) {\\n .dropdown-menu-sm-start {\\n --bs-position: start;\\n }\\n .dropdown-menu-sm-start[data-bs-popper] {\\n right: auto;\\n left: 0;\\n }\\n .dropdown-menu-sm-end {\\n --bs-position: end;\\n }\\n .dropdown-menu-sm-end[data-bs-popper] {\\n right: 0;\\n left: auto;\\n }\\n}\\n@media (min-width: 768px) {\\n .dropdown-menu-md-start {\\n --bs-position: start;\\n }\\n .dropdown-menu-md-start[data-bs-popper] {\\n right: auto;\\n left: 0;\\n }\\n .dropdown-menu-md-end {\\n --bs-position: end;\\n }\\n .dropdown-menu-md-end[data-bs-popper] {\\n right: 0;\\n left: auto;\\n }\\n}\\n@media (min-width: 992px) {\\n .dropdown-menu-lg-start {\\n --bs-position: start;\\n }\\n .dropdown-menu-lg-start[data-bs-popper] {\\n right: auto;\\n left: 0;\\n }\\n .dropdown-menu-lg-end {\\n --bs-position: end;\\n }\\n .dropdown-menu-lg-end[data-bs-popper] {\\n right: 0;\\n left: auto;\\n }\\n}\\n@media (min-width: 1200px) {\\n .dropdown-menu-xl-start {\\n --bs-position: start;\\n }\\n .dropdown-menu-xl-start[data-bs-popper] {\\n right: auto;\\n left: 0;\\n }\\n .dropdown-menu-xl-end {\\n --bs-position: end;\\n }\\n .dropdown-menu-xl-end[data-bs-popper] {\\n right: 0;\\n left: auto;\\n }\\n}\\n@media (min-width: 1400px) {\\n .dropdown-menu-xxl-start {\\n --bs-position: start;\\n }\\n .dropdown-menu-xxl-start[data-bs-popper] {\\n right: auto;\\n left: 0;\\n }\\n .dropdown-menu-xxl-end {\\n --bs-position: end;\\n }\\n .dropdown-menu-xxl-end[data-bs-popper] {\\n right: 0;\\n left: auto;\\n }\\n}\\n.dropup .dropdown-menu[data-bs-popper] {\\n top: auto;\\n bottom: 100%;\\n margin-top: 0;\\n margin-bottom: var(--bs-dropdown-spacer);\\n}\\n.dropup .dropdown-toggle::after {\\n display: inline-block;\\n margin-left: 0.255em;\\n vertical-align: 0.255em;\\n content: \\\"\\\";\\n border-top: 0;\\n border-right: 0.3em solid transparent;\\n border-bottom: 0.3em solid;\\n border-left: 0.3em solid transparent;\\n}\\n.dropup .dropdown-toggle:empty::after {\\n margin-left: 0;\\n}\\n\\n.dropend .dropdown-menu[data-bs-popper] {\\n top: 0;\\n right: auto;\\n left: 100%;\\n margin-top: 0;\\n margin-left: var(--bs-dropdown-spacer);\\n}\\n.dropend .dropdown-toggle::after {\\n display: inline-block;\\n margin-left: 0.255em;\\n vertical-align: 0.255em;\\n content: \\\"\\\";\\n border-top: 0.3em solid transparent;\\n border-right: 0;\\n border-bottom: 0.3em solid transparent;\\n border-left: 0.3em solid;\\n}\\n.dropend .dropdown-toggle:empty::after {\\n margin-left: 0;\\n}\\n.dropend .dropdown-toggle::after {\\n vertical-align: 0;\\n}\\n\\n.dropstart .dropdown-menu[data-bs-popper] {\\n top: 0;\\n right: 100%;\\n left: auto;\\n margin-top: 0;\\n margin-right: var(--bs-dropdown-spacer);\\n}\\n.dropstart .dropdown-toggle::after {\\n display: inline-block;\\n margin-left: 0.255em;\\n vertical-align: 0.255em;\\n content: \\\"\\\";\\n}\\n.dropstart .dropdown-toggle::after {\\n display: none;\\n}\\n.dropstart .dropdown-toggle::before {\\n display: inline-block;\\n margin-right: 0.255em;\\n vertical-align: 0.255em;\\n content: \\\"\\\";\\n border-top: 0.3em solid transparent;\\n border-right: 0.3em solid;\\n border-bottom: 0.3em solid transparent;\\n}\\n.dropstart .dropdown-toggle:empty::after {\\n margin-left: 0;\\n}\\n.dropstart .dropdown-toggle::before {\\n vertical-align: 0;\\n}\\n\\n.dropdown-divider {\\n height: 0;\\n margin: var(--bs-dropdown-divider-margin-y) 0;\\n overflow: hidden;\\n border-top: 1px solid var(--bs-dropdown-divider-bg);\\n opacity: 1;\\n}\\n\\n.dropdown-item {\\n display: block;\\n width: 100%;\\n padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);\\n clear: both;\\n font-weight: 400;\\n color: var(--bs-dropdown-link-color);\\n text-align: inherit;\\n text-decoration: none;\\n white-space: nowrap;\\n background-color: transparent;\\n border: 0;\\n border-radius: var(--bs-dropdown-item-border-radius, 0);\\n}\\n.dropdown-item:hover, .dropdown-item:focus {\\n color: var(--bs-dropdown-link-hover-color);\\n background-color: var(--bs-dropdown-link-hover-bg);\\n}\\n.dropdown-item.active, .dropdown-item:active {\\n color: var(--bs-dropdown-link-active-color);\\n text-decoration: none;\\n background-color: var(--bs-dropdown-link-active-bg);\\n}\\n.dropdown-item.disabled, .dropdown-item:disabled {\\n color: var(--bs-dropdown-link-disabled-color);\\n pointer-events: none;\\n background-color: transparent;\\n}\\n\\n.dropdown-menu.show {\\n display: block;\\n}\\n\\n.dropdown-header {\\n display: block;\\n padding: var(--bs-dropdown-header-padding-y) var(--bs-dropdown-header-padding-x);\\n margin-bottom: 0;\\n font-size: 0.875rem;\\n color: var(--bs-dropdown-header-color);\\n white-space: nowrap;\\n}\\n\\n.dropdown-item-text {\\n display: block;\\n padding: var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);\\n color: var(--bs-dropdown-link-color);\\n}\\n\\n.dropdown-menu-dark {\\n --bs-dropdown-color: #dee2e6;\\n --bs-dropdown-bg: #343a40;\\n --bs-dropdown-border-color: var(--bs-border-color-translucent);\\n --bs-dropdown-box-shadow: ;\\n --bs-dropdown-link-color: #dee2e6;\\n --bs-dropdown-link-hover-color: #fff;\\n --bs-dropdown-divider-bg: var(--bs-border-color-translucent);\\n --bs-dropdown-link-hover-bg: rgba(255, 255, 255, 0.15);\\n --bs-dropdown-link-active-color: #fff;\\n --bs-dropdown-link-active-bg: #0d6efd;\\n --bs-dropdown-link-disabled-color: #adb5bd;\\n --bs-dropdown-header-color: #adb5bd;\\n}\\n\\n.btn-group,\\n.btn-group-vertical {\\n position: relative;\\n display: inline-flex;\\n vertical-align: middle;\\n}\\n.btn-group > .btn,\\n.btn-group-vertical > .btn {\\n position: relative;\\n flex: 1 1 auto;\\n}\\n.btn-group > .btn-check:checked + .btn,\\n.btn-group > .btn-check:focus + .btn,\\n.btn-group > .btn:hover,\\n.btn-group > .btn:focus,\\n.btn-group > .btn:active,\\n.btn-group > .btn.active,\\n.btn-group-vertical > .btn-check:checked + .btn,\\n.btn-group-vertical > .btn-check:focus + .btn,\\n.btn-group-vertical > .btn:hover,\\n.btn-group-vertical > .btn:focus,\\n.btn-group-vertical > .btn:active,\\n.btn-group-vertical > .btn.active {\\n z-index: 1;\\n}\\n\\n.btn-toolbar {\\n display: flex;\\n flex-wrap: wrap;\\n justify-content: flex-start;\\n}\\n.btn-toolbar .input-group {\\n width: auto;\\n}\\n\\n.btn-group {\\n border-radius: var(--bs-border-radius);\\n}\\n.btn-group > :not(.btn-check:first-child) + .btn,\\n.btn-group > .btn-group:not(:first-child) {\\n margin-left: calc(var(--bs-border-width) * -1);\\n}\\n.btn-group > .btn:not(:last-child):not(.dropdown-toggle),\\n.btn-group > .btn.dropdown-toggle-split:first-child,\\n.btn-group > .btn-group:not(:last-child) > .btn {\\n border-top-right-radius: 0;\\n border-bottom-right-radius: 0;\\n}\\n.btn-group > .btn:nth-child(n+3),\\n.btn-group > :not(.btn-check) + .btn,\\n.btn-group > .btn-group:not(:first-child) > .btn {\\n border-top-left-radius: 0;\\n border-bottom-left-radius: 0;\\n}\\n\\n.dropdown-toggle-split {\\n padding-right: 0.5625rem;\\n padding-left: 0.5625rem;\\n}\\n.dropdown-toggle-split::after, .dropup .dropdown-toggle-split::after, .dropend .dropdown-toggle-split::after {\\n margin-left: 0;\\n}\\n.dropstart .dropdown-toggle-split::before {\\n margin-right: 0;\\n}\\n\\n.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split {\\n padding-right: 0.375rem;\\n padding-left: 0.375rem;\\n}\\n\\n.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split {\\n padding-right: 0.75rem;\\n padding-left: 0.75rem;\\n}\\n\\n.btn-group-vertical {\\n flex-direction: column;\\n align-items: flex-start;\\n justify-content: center;\\n}\\n.btn-group-vertical > .btn,\\n.btn-group-vertical > .btn-group {\\n width: 100%;\\n}\\n.btn-group-vertical > .btn:not(:first-child),\\n.btn-group-vertical > .btn-group:not(:first-child) {\\n margin-top: calc(var(--bs-border-width) * -1);\\n}\\n.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle),\\n.btn-group-vertical > .btn-group:not(:last-child) > .btn {\\n border-bottom-right-radius: 0;\\n border-bottom-left-radius: 0;\\n}\\n.btn-group-vertical > .btn ~ .btn,\\n.btn-group-vertical > .btn-group:not(:first-child) > .btn {\\n border-top-left-radius: 0;\\n border-top-right-radius: 0;\\n}\\n\\n.nav {\\n --bs-nav-link-padding-x: 1rem;\\n --bs-nav-link-padding-y: 0.5rem;\\n --bs-nav-link-font-weight: ;\\n --bs-nav-link-color: var(--bs-link-color);\\n --bs-nav-link-hover-color: var(--bs-link-hover-color);\\n --bs-nav-link-disabled-color: var(--bs-secondary-color);\\n display: flex;\\n flex-wrap: wrap;\\n padding-left: 0;\\n margin-bottom: 0;\\n list-style: none;\\n}\\n\\n.nav-link {\\n display: block;\\n padding: var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);\\n font-size: var(--bs-nav-link-font-size);\\n font-weight: var(--bs-nav-link-font-weight);\\n color: var(--bs-nav-link-color);\\n text-decoration: none;\\n background: none;\\n border: 0;\\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;\\n}\\n@media (prefers-reduced-motion: reduce) {\\n .nav-link {\\n transition: none;\\n }\\n}\\n.nav-link:hover, .nav-link:focus {\\n color: var(--bs-nav-link-hover-color);\\n}\\n.nav-link:focus-visible {\\n outline: 0;\\n box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\\n}\\n.nav-link.disabled, .nav-link:disabled {\\n color: var(--bs-nav-link-disabled-color);\\n pointer-events: none;\\n cursor: default;\\n}\\n\\n.nav-tabs {\\n --bs-nav-tabs-border-width: var(--bs-border-width);\\n --bs-nav-tabs-border-color: var(--bs-border-color);\\n --bs-nav-tabs-border-radius: var(--bs-border-radius);\\n --bs-nav-tabs-link-hover-border-color: var(--bs-secondary-bg) var(--bs-secondary-bg) var(--bs-border-color);\\n --bs-nav-tabs-link-active-color: var(--bs-emphasis-color);\\n --bs-nav-tabs-link-active-bg: var(--bs-body-bg);\\n --bs-nav-tabs-link-active-border-color: var(--bs-border-color) var(--bs-border-color) var(--bs-body-bg);\\n border-bottom: var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color);\\n}\\n.nav-tabs .nav-link {\\n margin-bottom: calc(-1 * var(--bs-nav-tabs-border-width));\\n border: var(--bs-nav-tabs-border-width) solid transparent;\\n border-top-left-radius: var(--bs-nav-tabs-border-radius);\\n border-top-right-radius: var(--bs-nav-tabs-border-radius);\\n}\\n.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {\\n isolation: isolate;\\n border-color: var(--bs-nav-tabs-link-hover-border-color);\\n}\\n.nav-tabs .nav-link.active,\\n.nav-tabs .nav-item.show .nav-link {\\n color: var(--bs-nav-tabs-link-active-color);\\n background-color: var(--bs-nav-tabs-link-active-bg);\\n border-color: var(--bs-nav-tabs-link-active-border-color);\\n}\\n.nav-tabs .dropdown-menu {\\n margin-top: calc(-1 * var(--bs-nav-tabs-border-width));\\n border-top-left-radius: 0;\\n border-top-right-radius: 0;\\n}\\n\\n.nav-pills {\\n --bs-nav-pills-border-radius: var(--bs-border-radius);\\n --bs-nav-pills-link-active-color: #fff;\\n --bs-nav-pills-link-active-bg: #0d6efd;\\n}\\n.nav-pills .nav-link {\\n border-radius: var(--bs-nav-pills-border-radius);\\n}\\n.nav-pills .nav-link.active,\\n.nav-pills .show > .nav-link {\\n color: var(--bs-nav-pills-link-active-color);\\n background-color: var(--bs-nav-pills-link-active-bg);\\n}\\n\\n.nav-underline {\\n --bs-nav-underline-gap: 1rem;\\n --bs-nav-underline-border-width: 0.125rem;\\n --bs-nav-underline-link-active-color: var(--bs-emphasis-color);\\n gap: var(--bs-nav-underline-gap);\\n}\\n.nav-underline .nav-link {\\n padding-right: 0;\\n padding-left: 0;\\n border-bottom: var(--bs-nav-underline-border-width) solid transparent;\\n}\\n.nav-underline .nav-link:hover, .nav-underline .nav-link:focus {\\n border-bottom-color: currentcolor;\\n}\\n.nav-underline .nav-link.active,\\n.nav-underline .show > .nav-link {\\n font-weight: 700;\\n color: var(--bs-nav-underline-link-active-color);\\n border-bottom-color: currentcolor;\\n}\\n\\n.nav-fill > .nav-link,\\n.nav-fill .nav-item {\\n flex: 1 1 auto;\\n text-align: center;\\n}\\n\\n.nav-justified > .nav-link,\\n.nav-justified .nav-item {\\n flex-basis: 0;\\n flex-grow: 1;\\n text-align: center;\\n}\\n\\n.nav-fill .nav-item .nav-link,\\n.nav-justified .nav-item .nav-link {\\n width: 100%;\\n}\\n\\n.tab-content > .tab-pane {\\n display: none;\\n}\\n.tab-content > .active {\\n display: block;\\n}\\n\\n.navbar {\\n --bs-navbar-padding-x: 0;\\n --bs-navbar-padding-y: 0.5rem;\\n --bs-navbar-color: rgba(var(--bs-emphasis-color-rgb), 0.65);\\n --bs-navbar-hover-color: rgba(var(--bs-emphasis-color-rgb), 0.8);\\n --bs-navbar-disabled-color: rgba(var(--bs-emphasis-color-rgb), 0.3);\\n --bs-navbar-active-color: rgba(var(--bs-emphasis-color-rgb), 1);\\n --bs-navbar-brand-padding-y: 0.3125rem;\\n --bs-navbar-brand-margin-end: 1rem;\\n --bs-navbar-brand-font-size: 1.25rem;\\n --bs-navbar-brand-color: rgba(var(--bs-emphasis-color-rgb), 1);\\n --bs-navbar-brand-hover-color: rgba(var(--bs-emphasis-color-rgb), 1);\\n --bs-navbar-nav-link-padding-x: 0.5rem;\\n --bs-navbar-toggler-padding-y: 0.25rem;\\n --bs-navbar-toggler-padding-x: 0.75rem;\\n --bs-navbar-toggler-font-size: 1.25rem;\\n --bs-navbar-toggler-icon-bg: url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%2833, 37, 41, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\\\");\\n --bs-navbar-toggler-border-color: rgba(var(--bs-emphasis-color-rgb), 0.15);\\n --bs-navbar-toggler-border-radius: var(--bs-border-radius);\\n --bs-navbar-toggler-focus-width: 0.25rem;\\n --bs-navbar-toggler-transition: box-shadow 0.15s ease-in-out;\\n position: relative;\\n display: flex;\\n flex-wrap: wrap;\\n align-items: center;\\n justify-content: space-between;\\n padding: var(--bs-navbar-padding-y) var(--bs-navbar-padding-x);\\n}\\n.navbar > .container,\\n.navbar > .container-fluid,\\n.navbar > .container-sm,\\n.navbar > .container-md,\\n.navbar > .container-lg,\\n.navbar > .container-xl,\\n.navbar > .container-xxl {\\n display: flex;\\n flex-wrap: inherit;\\n align-items: center;\\n justify-content: space-between;\\n}\\n.navbar-brand {\\n padding-top: var(--bs-navbar-brand-padding-y);\\n padding-bottom: var(--bs-navbar-brand-padding-y);\\n margin-right: var(--bs-navbar-brand-margin-end);\\n font-size: var(--bs-navbar-brand-font-size);\\n color: var(--bs-navbar-brand-color);\\n text-decoration: none;\\n white-space: nowrap;\\n}\\n.navbar-brand:hover, .navbar-brand:focus {\\n color: var(--bs-navbar-brand-hover-color);\\n}\\n\\n.navbar-nav {\\n --bs-nav-link-padding-x: 0;\\n --bs-nav-link-padding-y: 0.5rem;\\n --bs-nav-link-font-weight: ;\\n --bs-nav-link-color: var(--bs-navbar-color);\\n --bs-nav-link-hover-color: var(--bs-navbar-hover-color);\\n --bs-nav-link-disabled-color: var(--bs-navbar-disabled-color);\\n display: flex;\\n flex-direction: column;\\n padding-left: 0;\\n margin-bottom: 0;\\n list-style: none;\\n}\\n.navbar-nav .nav-link.active, .navbar-nav .nav-link.show {\\n color: var(--bs-navbar-active-color);\\n}\\n.navbar-nav .dropdown-menu {\\n position: static;\\n}\\n\\n.navbar-text {\\n padding-top: 0.5rem;\\n padding-bottom: 0.5rem;\\n color: var(--bs-navbar-color);\\n}\\n.navbar-text a,\\n.navbar-text a:hover,\\n.navbar-text a:focus {\\n color: var(--bs-navbar-active-color);\\n}\\n\\n.navbar-collapse {\\n flex-basis: 100%;\\n flex-grow: 1;\\n align-items: center;\\n}\\n\\n.navbar-toggler {\\n padding: var(--bs-navbar-toggler-padding-y) var(--bs-navbar-toggler-padding-x);\\n font-size: var(--bs-navbar-toggler-font-size);\\n line-height: 1;\\n color: var(--bs-navbar-color);\\n background-color: transparent;\\n border: var(--bs-border-width) solid var(--bs-navbar-toggler-border-color);\\n border-radius: var(--bs-navbar-toggler-border-radius);\\n transition: var(--bs-navbar-toggler-transition);\\n}\\n@media (prefers-reduced-motion: reduce) {\\n .navbar-toggler {\\n transition: none;\\n }\\n}\\n.navbar-toggler:hover {\\n text-decoration: none;\\n}\\n.navbar-toggler:focus {\\n text-decoration: none;\\n outline: 0;\\n box-shadow: 0 0 0 var(--bs-navbar-toggler-focus-width);\\n}\\n\\n.navbar-toggler-icon {\\n display: inline-block;\\n width: 1.5em;\\n height: 1.5em;\\n vertical-align: middle;\\n background-image: var(--bs-navbar-toggler-icon-bg);\\n background-repeat: no-repeat;\\n background-position: center;\\n background-size: 100%;\\n}\\n\\n.navbar-nav-scroll {\\n max-height: var(--bs-scroll-height, 75vh);\\n overflow-y: auto;\\n}\\n\\n@media (min-width: 576px) {\\n .navbar-expand-sm {\\n flex-wrap: nowrap;\\n justify-content: flex-start;\\n }\\n .navbar-expand-sm .navbar-nav {\\n flex-direction: row;\\n }\\n .navbar-expand-sm .navbar-nav .dropdown-menu {\\n position: absolute;\\n }\\n .navbar-expand-sm .navbar-nav .nav-link {\\n padding-right: var(--bs-navbar-nav-link-padding-x);\\n padding-left: var(--bs-navbar-nav-link-padding-x);\\n }\\n .navbar-expand-sm .navbar-nav-scroll {\\n overflow: visible;\\n }\\n .navbar-expand-sm .navbar-collapse {\\n display: flex !important;\\n flex-basis: auto;\\n }\\n .navbar-expand-sm .navbar-toggler {\\n display: none;\\n }\\n .navbar-expand-sm .offcanvas {\\n position: static;\\n z-index: auto;\\n flex-grow: 1;\\n width: auto !important;\\n height: auto !important;\\n visibility: visible !important;\\n background-color: transparent !important;\\n border: 0 !important;\\n transform: none !important;\\n transition: none;\\n }\\n .navbar-expand-sm .offcanvas .offcanvas-header {\\n display: none;\\n }\\n .navbar-expand-sm .offcanvas .offcanvas-body {\\n display: flex;\\n flex-grow: 0;\\n padding: 0;\\n overflow-y: visible;\\n }\\n}\\n@media (min-width: 768px) {\\n .navbar-expand-md {\\n flex-wrap: nowrap;\\n justify-content: flex-start;\\n }\\n .navbar-expand-md .navbar-nav {\\n flex-direction: row;\\n }\\n .navbar-expand-md .navbar-nav .dropdown-menu {\\n position: absolute;\\n }\\n .navbar-expand-md .navbar-nav .nav-link {\\n padding-right: var(--bs-navbar-nav-link-padding-x);\\n padding-left: var(--bs-navbar-nav-link-padding-x);\\n }\\n .navbar-expand-md .navbar-nav-scroll {\\n overflow: visible;\\n }\\n .navbar-expand-md .navbar-collapse {\\n display: flex !important;\\n flex-basis: auto;\\n }\\n .navbar-expand-md .navbar-toggler {\\n display: none;\\n }\\n .navbar-expand-md .offcanvas {\\n position: static;\\n z-index: auto;\\n flex-grow: 1;\\n width: auto !important;\\n height: auto !important;\\n visibility: visible !important;\\n background-color: transparent !important;\\n border: 0 !important;\\n transform: none !important;\\n transition: none;\\n }\\n .navbar-expand-md .offcanvas .offcanvas-header {\\n display: none;\\n }\\n .navbar-expand-md .offcanvas .offcanvas-body {\\n display: flex;\\n flex-grow: 0;\\n padding: 0;\\n overflow-y: visible;\\n }\\n}\\n@media (min-width: 992px) {\\n .navbar-expand-lg {\\n flex-wrap: nowrap;\\n justify-content: flex-start;\\n }\\n .navbar-expand-lg .navbar-nav {\\n flex-direction: row;\\n }\\n .navbar-expand-lg .navbar-nav .dropdown-menu {\\n position: absolute;\\n }\\n .navbar-expand-lg .navbar-nav .nav-link {\\n padding-right: var(--bs-navbar-nav-link-padding-x);\\n padding-left: var(--bs-navbar-nav-link-padding-x);\\n }\\n .navbar-expand-lg .navbar-nav-scroll {\\n overflow: visible;\\n }\\n .navbar-expand-lg .navbar-collapse {\\n display: flex !important;\\n flex-basis: auto;\\n }\\n .navbar-expand-lg .navbar-toggler {\\n display: none;\\n }\\n .navbar-expand-lg .offcanvas {\\n position: static;\\n z-index: auto;\\n flex-grow: 1;\\n width: auto !important;\\n height: auto !important;\\n visibility: visible !important;\\n background-color: transparent !important;\\n border: 0 !important;\\n transform: none !important;\\n transition: none;\\n }\\n .navbar-expand-lg .offcanvas .offcanvas-header {\\n display: none;\\n }\\n .navbar-expand-lg .offcanvas .offcanvas-body {\\n display: flex;\\n flex-grow: 0;\\n padding: 0;\\n overflow-y: visible;\\n }\\n}\\n@media (min-width: 1200px) {\\n .navbar-expand-xl {\\n flex-wrap: nowrap;\\n justify-content: flex-start;\\n }\\n .navbar-expand-xl .navbar-nav {\\n flex-direction: row;\\n }\\n .navbar-expand-xl .navbar-nav .dropdown-menu {\\n position: absolute;\\n }\\n .navbar-expand-xl .navbar-nav .nav-link {\\n padding-right: var(--bs-navbar-nav-link-padding-x);\\n padding-left: var(--bs-navbar-nav-link-padding-x);\\n }\\n .navbar-expand-xl .navbar-nav-scroll {\\n overflow: visible;\\n }\\n .navbar-expand-xl .navbar-collapse {\\n display: flex !important;\\n flex-basis: auto;\\n }\\n .navbar-expand-xl .navbar-toggler {\\n display: none;\\n }\\n .navbar-expand-xl .offcanvas {\\n position: static;\\n z-index: auto;\\n flex-grow: 1;\\n width: auto !important;\\n height: auto !important;\\n visibility: visible !important;\\n background-color: transparent !important;\\n border: 0 !important;\\n transform: none !important;\\n transition: none;\\n }\\n .navbar-expand-xl .offcanvas .offcanvas-header {\\n display: none;\\n }\\n .navbar-expand-xl .offcanvas .offcanvas-body {\\n display: flex;\\n flex-grow: 0;\\n padding: 0;\\n overflow-y: visible;\\n }\\n}\\n@media (min-width: 1400px) {\\n .navbar-expand-xxl {\\n flex-wrap: nowrap;\\n justify-content: flex-start;\\n }\\n .navbar-expand-xxl .navbar-nav {\\n flex-direction: row;\\n }\\n .navbar-expand-xxl .navbar-nav .dropdown-menu {\\n position: absolute;\\n }\\n .navbar-expand-xxl .navbar-nav .nav-link {\\n padding-right: var(--bs-navbar-nav-link-padding-x);\\n padding-left: var(--bs-navbar-nav-link-padding-x);\\n }\\n .navbar-expand-xxl .navbar-nav-scroll {\\n overflow: visible;\\n }\\n .navbar-expand-xxl .navbar-collapse {\\n display: flex !important;\\n flex-basis: auto;\\n }\\n .navbar-expand-xxl .navbar-toggler {\\n display: none;\\n }\\n .navbar-expand-xxl .offcanvas {\\n position: static;\\n z-index: auto;\\n flex-grow: 1;\\n width: auto !important;\\n height: auto !important;\\n visibility: visible !important;\\n background-color: transparent !important;\\n border: 0 !important;\\n transform: none !important;\\n transition: none;\\n }\\n .navbar-expand-xxl .offcanvas .offcanvas-header {\\n display: none;\\n }\\n .navbar-expand-xxl .offcanvas .offcanvas-body {\\n display: flex;\\n flex-grow: 0;\\n padding: 0;\\n overflow-y: visible;\\n }\\n}\\n.navbar-expand {\\n flex-wrap: nowrap;\\n justify-content: flex-start;\\n}\\n.navbar-expand .navbar-nav {\\n flex-direction: row;\\n}\\n.navbar-expand .navbar-nav .dropdown-menu {\\n position: absolute;\\n}\\n.navbar-expand .navbar-nav .nav-link {\\n padding-right: var(--bs-navbar-nav-link-padding-x);\\n padding-left: var(--bs-navbar-nav-link-padding-x);\\n}\\n.navbar-expand .navbar-nav-scroll {\\n overflow: visible;\\n}\\n.navbar-expand .navbar-collapse {\\n display: flex !important;\\n flex-basis: auto;\\n}\\n.navbar-expand .navbar-toggler {\\n display: none;\\n}\\n.navbar-expand .offcanvas {\\n position: static;\\n z-index: auto;\\n flex-grow: 1;\\n width: auto !important;\\n height: auto !important;\\n visibility: visible !important;\\n background-color: transparent !important;\\n border: 0 !important;\\n transform: none !important;\\n transition: none;\\n}\\n.navbar-expand .offcanvas .offcanvas-header {\\n display: none;\\n}\\n.navbar-expand .offcanvas .offcanvas-body {\\n display: flex;\\n flex-grow: 0;\\n padding: 0;\\n overflow-y: visible;\\n}\\n\\n.navbar-dark,\\n.navbar[data-bs-theme=dark] {\\n --bs-navbar-color: rgba(255, 255, 255, 0.55);\\n --bs-navbar-hover-color: rgba(255, 255, 255, 0.75);\\n --bs-navbar-disabled-color: rgba(255, 255, 255, 0.25);\\n --bs-navbar-active-color: #fff;\\n --bs-navbar-brand-color: #fff;\\n --bs-navbar-brand-hover-color: #fff;\\n --bs-navbar-toggler-border-color: rgba(255, 255, 255, 0.1);\\n --bs-navbar-toggler-icon-bg: url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\\\");\\n}\\n\\n[data-bs-theme=dark] .navbar-toggler-icon {\\n --bs-navbar-toggler-icon-bg: url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\\\");\\n}\\n\\n.card {\\n --bs-card-spacer-y: 1rem;\\n --bs-card-spacer-x: 1rem;\\n --bs-card-title-spacer-y: 0.5rem;\\n --bs-card-title-color: ;\\n --bs-card-subtitle-color: ;\\n --bs-card-border-width: var(--bs-border-width);\\n --bs-card-border-color: var(--bs-border-color-translucent);\\n --bs-card-border-radius: var(--bs-border-radius);\\n --bs-card-box-shadow: ;\\n --bs-card-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));\\n --bs-card-cap-padding-y: 0.5rem;\\n --bs-card-cap-padding-x: 1rem;\\n --bs-card-cap-bg: rgba(var(--bs-body-color-rgb), 0.03);\\n --bs-card-cap-color: ;\\n --bs-card-height: ;\\n --bs-card-color: ;\\n --bs-card-bg: var(--bs-body-bg);\\n --bs-card-img-overlay-padding: 1rem;\\n --bs-card-group-margin: 0.75rem;\\n position: relative;\\n display: flex;\\n flex-direction: column;\\n min-width: 0;\\n height: var(--bs-card-height);\\n color: var(--bs-body-color);\\n word-wrap: break-word;\\n background-color: var(--bs-card-bg);\\n background-clip: border-box;\\n border: var(--bs-card-border-width) solid var(--bs-card-border-color);\\n border-radius: var(--bs-card-border-radius);\\n}\\n.card > hr {\\n margin-right: 0;\\n margin-left: 0;\\n}\\n.card > .list-group {\\n border-top: inherit;\\n border-bottom: inherit;\\n}\\n.card > .list-group:first-child {\\n border-top-width: 0;\\n border-top-left-radius: var(--bs-card-inner-border-radius);\\n border-top-right-radius: var(--bs-card-inner-border-radius);\\n}\\n.card > .list-group:last-child {\\n border-bottom-width: 0;\\n border-bottom-right-radius: var(--bs-card-inner-border-radius);\\n border-bottom-left-radius: var(--bs-card-inner-border-radius);\\n}\\n.card > .card-header + .list-group,\\n.card > .list-group + .card-footer {\\n border-top: 0;\\n}\\n\\n.card-body {\\n flex: 1 1 auto;\\n padding: var(--bs-card-spacer-y) var(--bs-card-spacer-x);\\n color: var(--bs-card-color);\\n}\\n\\n.card-title {\\n margin-bottom: var(--bs-card-title-spacer-y);\\n color: var(--bs-card-title-color);\\n}\\n\\n.card-subtitle {\\n margin-top: calc(-0.5 * var(--bs-card-title-spacer-y));\\n margin-bottom: 0;\\n color: var(--bs-card-subtitle-color);\\n}\\n\\n.card-text:last-child {\\n margin-bottom: 0;\\n}\\n\\n.card-link + .card-link {\\n margin-left: var(--bs-card-spacer-x);\\n}\\n\\n.card-header {\\n padding: var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);\\n margin-bottom: 0;\\n color: var(--bs-card-cap-color);\\n background-color: var(--bs-card-cap-bg);\\n border-bottom: var(--bs-card-border-width) solid var(--bs-card-border-color);\\n}\\n.card-header:first-child {\\n border-radius: var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius) 0 0;\\n}\\n\\n.card-footer {\\n padding: var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);\\n color: var(--bs-card-cap-color);\\n background-color: var(--bs-card-cap-bg);\\n border-top: var(--bs-card-border-width) solid var(--bs-card-border-color);\\n}\\n.card-footer:last-child {\\n border-radius: 0 0 var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius);\\n}\\n\\n.card-header-tabs {\\n margin-right: calc(-0.5 * var(--bs-card-cap-padding-x));\\n margin-bottom: calc(-1 * var(--bs-card-cap-padding-y));\\n margin-left: calc(-0.5 * var(--bs-card-cap-padding-x));\\n border-bottom: 0;\\n}\\n.card-header-tabs .nav-link.active {\\n background-color: var(--bs-card-bg);\\n border-bottom-color: var(--bs-card-bg);\\n}\\n\\n.card-header-pills {\\n margin-right: calc(-0.5 * var(--bs-card-cap-padding-x));\\n margin-left: calc(-0.5 * var(--bs-card-cap-padding-x));\\n}\\n\\n.card-img-overlay {\\n position: absolute;\\n top: 0;\\n right: 0;\\n bottom: 0;\\n left: 0;\\n padding: var(--bs-card-img-overlay-padding);\\n border-radius: var(--bs-card-inner-border-radius);\\n}\\n\\n.card-img,\\n.card-img-top,\\n.card-img-bottom {\\n width: 100%;\\n}\\n\\n.card-img,\\n.card-img-top {\\n border-top-left-radius: var(--bs-card-inner-border-radius);\\n border-top-right-radius: var(--bs-card-inner-border-radius);\\n}\\n\\n.card-img,\\n.card-img-bottom {\\n border-bottom-right-radius: var(--bs-card-inner-border-radius);\\n border-bottom-left-radius: var(--bs-card-inner-border-radius);\\n}\\n\\n.card-group > .card {\\n margin-bottom: var(--bs-card-group-margin);\\n}\\n@media (min-width: 576px) {\\n .card-group {\\n display: flex;\\n flex-flow: row wrap;\\n }\\n .card-group > .card {\\n flex: 1 0 0%;\\n margin-bottom: 0;\\n }\\n .card-group > .card + .card {\\n margin-left: 0;\\n border-left: 0;\\n }\\n .card-group > .card:not(:last-child) {\\n border-top-right-radius: 0;\\n border-bottom-right-radius: 0;\\n }\\n .card-group > .card:not(:last-child) .card-img-top,\\n .card-group > .card:not(:last-child) .card-header {\\n border-top-right-radius: 0;\\n }\\n .card-group > .card:not(:last-child) .card-img-bottom,\\n .card-group > .card:not(:last-child) .card-footer {\\n border-bottom-right-radius: 0;\\n }\\n .card-group > .card:not(:first-child) {\\n border-top-left-radius: 0;\\n border-bottom-left-radius: 0;\\n }\\n .card-group > .card:not(:first-child) .card-img-top,\\n .card-group > .card:not(:first-child) .card-header {\\n border-top-left-radius: 0;\\n }\\n .card-group > .card:not(:first-child) .card-img-bottom,\\n .card-group > .card:not(:first-child) .card-footer {\\n border-bottom-left-radius: 0;\\n }\\n}\\n\\n.accordion {\\n --bs-accordion-color: var(--bs-body-color);\\n --bs-accordion-bg: var(--bs-body-bg);\\n --bs-accordion-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease;\\n --bs-accordion-border-color: var(--bs-border-color);\\n --bs-accordion-border-width: var(--bs-border-width);\\n --bs-accordion-border-radius: var(--bs-border-radius);\\n --bs-accordion-inner-border-radius: calc(var(--bs-border-radius) - (var(--bs-border-width)));\\n --bs-accordion-btn-padding-x: 1.25rem;\\n --bs-accordion-btn-padding-y: 1rem;\\n --bs-accordion-btn-color: var(--bs-body-color);\\n --bs-accordion-btn-bg: var(--bs-accordion-bg);\\n --bs-accordion-btn-icon: url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23212529' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='M2 5L8 11L14 5'/%3e%3c/svg%3e\\\");\\n --bs-accordion-btn-icon-width: 1.25rem;\\n --bs-accordion-btn-icon-transform: rotate(-180deg);\\n --bs-accordion-btn-icon-transition: transform 0.2s ease-in-out;\\n --bs-accordion-btn-active-icon: url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23052c65' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='M2 5L8 11L14 5'/%3e%3c/svg%3e\\\");\\n --bs-accordion-btn-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\\n --bs-accordion-body-padding-x: 1.25rem;\\n --bs-accordion-body-padding-y: 1rem;\\n --bs-accordion-active-color: var(--bs-primary-text-emphasis);\\n --bs-accordion-active-bg: var(--bs-primary-bg-subtle);\\n}\\n\\n.accordion-button {\\n position: relative;\\n display: flex;\\n align-items: center;\\n width: 100%;\\n padding: var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);\\n font-size: 1rem;\\n color: var(--bs-accordion-btn-color);\\n text-align: left;\\n background-color: var(--bs-accordion-btn-bg);\\n border: 0;\\n border-radius: 0;\\n overflow-anchor: none;\\n transition: var(--bs-accordion-transition);\\n}\\n@media (prefers-reduced-motion: reduce) {\\n .accordion-button {\\n transition: none;\\n }\\n}\\n.accordion-button:not(.collapsed) {\\n color: var(--bs-accordion-active-color);\\n background-color: var(--bs-accordion-active-bg);\\n box-shadow: inset 0 calc(-1 * var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color);\\n}\\n.accordion-button:not(.collapsed)::after {\\n background-image: var(--bs-accordion-btn-active-icon);\\n transform: var(--bs-accordion-btn-icon-transform);\\n}\\n.accordion-button::after {\\n flex-shrink: 0;\\n width: var(--bs-accordion-btn-icon-width);\\n height: var(--bs-accordion-btn-icon-width);\\n margin-left: auto;\\n content: \\\"\\\";\\n background-image: var(--bs-accordion-btn-icon);\\n background-repeat: no-repeat;\\n background-size: var(--bs-accordion-btn-icon-width);\\n transition: var(--bs-accordion-btn-icon-transition);\\n}\\n@media (prefers-reduced-motion: reduce) {\\n .accordion-button::after {\\n transition: none;\\n }\\n}\\n.accordion-button:hover {\\n z-index: 2;\\n}\\n.accordion-button:focus {\\n z-index: 3;\\n outline: 0;\\n box-shadow: var(--bs-accordion-btn-focus-box-shadow);\\n}\\n\\n.accordion-header {\\n margin-bottom: 0;\\n}\\n\\n.accordion-item {\\n color: var(--bs-accordion-color);\\n background-color: var(--bs-accordion-bg);\\n border: var(--bs-accordion-border-width) solid var(--bs-accordion-border-color);\\n}\\n.accordion-item:first-of-type {\\n border-top-left-radius: var(--bs-accordion-border-radius);\\n border-top-right-radius: var(--bs-accordion-border-radius);\\n}\\n.accordion-item:first-of-type > .accordion-header .accordion-button {\\n border-top-left-radius: var(--bs-accordion-inner-border-radius);\\n border-top-right-radius: var(--bs-accordion-inner-border-radius);\\n}\\n.accordion-item:not(:first-of-type) {\\n border-top: 0;\\n}\\n.accordion-item:last-of-type {\\n border-bottom-right-radius: var(--bs-accordion-border-radius);\\n border-bottom-left-radius: var(--bs-accordion-border-radius);\\n}\\n.accordion-item:last-of-type > .accordion-header .accordion-button.collapsed {\\n border-bottom-right-radius: var(--bs-accordion-inner-border-radius);\\n border-bottom-left-radius: var(--bs-accordion-inner-border-radius);\\n}\\n.accordion-item:last-of-type > .accordion-collapse {\\n border-bottom-right-radius: var(--bs-accordion-border-radius);\\n border-bottom-left-radius: var(--bs-accordion-border-radius);\\n}\\n\\n.accordion-body {\\n padding: var(--bs-accordion-body-padding-y) var(--bs-accordion-body-padding-x);\\n}\\n\\n.accordion-flush > .accordion-item {\\n border-right: 0;\\n border-left: 0;\\n border-radius: 0;\\n}\\n.accordion-flush > .accordion-item:first-child {\\n border-top: 0;\\n}\\n.accordion-flush > .accordion-item:last-child {\\n border-bottom: 0;\\n}\\n.accordion-flush > .accordion-item > .accordion-header .accordion-button, .accordion-flush > .accordion-item > .accordion-header .accordion-button.collapsed {\\n border-radius: 0;\\n}\\n.accordion-flush > .accordion-item > .accordion-collapse {\\n border-radius: 0;\\n}\\n\\n[data-bs-theme=dark] .accordion-button::after {\\n --bs-accordion-btn-icon: url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236ea8fe'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e\\\");\\n --bs-accordion-btn-active-icon: url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236ea8fe'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e\\\");\\n}\\n\\n.breadcrumb {\\n --bs-breadcrumb-padding-x: 0;\\n --bs-breadcrumb-padding-y: 0;\\n --bs-breadcrumb-margin-bottom: 1rem;\\n --bs-breadcrumb-bg: ;\\n --bs-breadcrumb-border-radius: ;\\n --bs-breadcrumb-divider-color: var(--bs-secondary-color);\\n --bs-breadcrumb-item-padding-x: 0.5rem;\\n --bs-breadcrumb-item-active-color: var(--bs-secondary-color);\\n display: flex;\\n flex-wrap: wrap;\\n padding: var(--bs-breadcrumb-padding-y) var(--bs-breadcrumb-padding-x);\\n margin-bottom: var(--bs-breadcrumb-margin-bottom);\\n font-size: var(--bs-breadcrumb-font-size);\\n list-style: none;\\n background-color: var(--bs-breadcrumb-bg);\\n border-radius: var(--bs-breadcrumb-border-radius);\\n}\\n\\n.breadcrumb-item + .breadcrumb-item {\\n padding-left: var(--bs-breadcrumb-item-padding-x);\\n}\\n.breadcrumb-item + .breadcrumb-item::before {\\n float: left;\\n padding-right: var(--bs-breadcrumb-item-padding-x);\\n color: var(--bs-breadcrumb-divider-color);\\n content: var(--bs-breadcrumb-divider, \\\"/\\\") /* rtl: var(--bs-breadcrumb-divider, \\\"/\\\") */;\\n}\\n.breadcrumb-item.active {\\n color: var(--bs-breadcrumb-item-active-color);\\n}\\n\\n.pagination {\\n --bs-pagination-padding-x: 0.75rem;\\n --bs-pagination-padding-y: 0.375rem;\\n --bs-pagination-font-size: 1rem;\\n --bs-pagination-color: var(--bs-link-color);\\n --bs-pagination-bg: var(--bs-body-bg);\\n --bs-pagination-border-width: var(--bs-border-width);\\n --bs-pagination-border-color: var(--bs-border-color);\\n --bs-pagination-border-radius: var(--bs-border-radius);\\n --bs-pagination-hover-color: var(--bs-link-hover-color);\\n --bs-pagination-hover-bg: var(--bs-tertiary-bg);\\n --bs-pagination-hover-border-color: var(--bs-border-color);\\n --bs-pagination-focus-color: var(--bs-link-hover-color);\\n --bs-pagination-focus-bg: var(--bs-secondary-bg);\\n --bs-pagination-focus-box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\\n --bs-pagination-active-color: #fff;\\n --bs-pagination-active-bg: #0d6efd;\\n --bs-pagination-active-border-color: #0d6efd;\\n --bs-pagination-disabled-color: var(--bs-secondary-color);\\n --bs-pagination-disabled-bg: var(--bs-secondary-bg);\\n --bs-pagination-disabled-border-color: var(--bs-border-color);\\n display: flex;\\n padding-left: 0;\\n list-style: none;\\n}\\n\\n.page-link {\\n position: relative;\\n display: block;\\n padding: var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);\\n font-size: var(--bs-pagination-font-size);\\n color: var(--bs-pagination-color);\\n text-decoration: none;\\n background-color: var(--bs-pagination-bg);\\n border: var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);\\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\\n}\\n@media (prefers-reduced-motion: reduce) {\\n .page-link {\\n transition: none;\\n }\\n}\\n.page-link:hover {\\n z-index: 2;\\n color: var(--bs-pagination-hover-color);\\n background-color: var(--bs-pagination-hover-bg);\\n border-color: var(--bs-pagination-hover-border-color);\\n}\\n.page-link:focus {\\n z-index: 3;\\n color: var(--bs-pagination-focus-color);\\n background-color: var(--bs-pagination-focus-bg);\\n outline: 0;\\n box-shadow: var(--bs-pagination-focus-box-shadow);\\n}\\n.page-link.active, .active > .page-link {\\n z-index: 3;\\n color: var(--bs-pagination-active-color);\\n background-color: var(--bs-pagination-active-bg);\\n border-color: var(--bs-pagination-active-border-color);\\n}\\n.page-link.disabled, .disabled > .page-link {\\n color: var(--bs-pagination-disabled-color);\\n pointer-events: none;\\n background-color: var(--bs-pagination-disabled-bg);\\n border-color: var(--bs-pagination-disabled-border-color);\\n}\\n\\n.page-item:not(:first-child) .page-link {\\n margin-left: calc(var(--bs-border-width) * -1);\\n}\\n.page-item:first-child .page-link {\\n border-top-left-radius: var(--bs-pagination-border-radius);\\n border-bottom-left-radius: var(--bs-pagination-border-radius);\\n}\\n.page-item:last-child .page-link {\\n border-top-right-radius: var(--bs-pagination-border-radius);\\n border-bottom-right-radius: var(--bs-pagination-border-radius);\\n}\\n\\n.pagination-lg {\\n --bs-pagination-padding-x: 1.5rem;\\n --bs-pagination-padding-y: 0.75rem;\\n --bs-pagination-font-size: 1.25rem;\\n --bs-pagination-border-radius: var(--bs-border-radius-lg);\\n}\\n\\n.pagination-sm {\\n --bs-pagination-padding-x: 0.5rem;\\n --bs-pagination-padding-y: 0.25rem;\\n --bs-pagination-font-size: 0.875rem;\\n --bs-pagination-border-radius: var(--bs-border-radius-sm);\\n}\\n\\n.badge {\\n --bs-badge-padding-x: 0.65em;\\n --bs-badge-padding-y: 0.35em;\\n --bs-badge-font-size: 0.75em;\\n --bs-badge-font-weight: 700;\\n --bs-badge-color: #fff;\\n --bs-badge-border-radius: var(--bs-border-radius);\\n display: inline-block;\\n padding: var(--bs-badge-padding-y) var(--bs-badge-padding-x);\\n font-size: var(--bs-badge-font-size);\\n font-weight: var(--bs-badge-font-weight);\\n line-height: 1;\\n color: var(--bs-badge-color);\\n text-align: center;\\n white-space: nowrap;\\n vertical-align: baseline;\\n border-radius: var(--bs-badge-border-radius);\\n}\\n.badge:empty {\\n display: none;\\n}\\n\\n.btn .badge {\\n position: relative;\\n top: -1px;\\n}\\n\\n.alert {\\n --bs-alert-bg: transparent;\\n --bs-alert-padding-x: 1rem;\\n --bs-alert-padding-y: 1rem;\\n --bs-alert-margin-bottom: 1rem;\\n --bs-alert-color: inherit;\\n --bs-alert-border-color: transparent;\\n --bs-alert-border: var(--bs-border-width) solid var(--bs-alert-border-color);\\n --bs-alert-border-radius: var(--bs-border-radius);\\n --bs-alert-link-color: inherit;\\n position: relative;\\n padding: var(--bs-alert-padding-y) var(--bs-alert-padding-x);\\n margin-bottom: var(--bs-alert-margin-bottom);\\n color: var(--bs-alert-color);\\n background-color: var(--bs-alert-bg);\\n border: var(--bs-alert-border);\\n border-radius: var(--bs-alert-border-radius);\\n}\\n\\n.alert-heading {\\n color: inherit;\\n}\\n\\n.alert-link {\\n font-weight: 700;\\n color: var(--bs-alert-link-color);\\n}\\n\\n.alert-dismissible {\\n padding-right: 3rem;\\n}\\n.alert-dismissible .btn-close {\\n position: absolute;\\n top: 0;\\n right: 0;\\n z-index: 2;\\n padding: 1.25rem 1rem;\\n}\\n\\n.alert-primary {\\n --bs-alert-color: var(--bs-primary-text-emphasis);\\n --bs-alert-bg: var(--bs-primary-bg-subtle);\\n --bs-alert-border-color: var(--bs-primary-border-subtle);\\n --bs-alert-link-color: var(--bs-primary-text-emphasis);\\n}\\n\\n.alert-secondary {\\n --bs-alert-color: var(--bs-secondary-text-emphasis);\\n --bs-alert-bg: var(--bs-secondary-bg-subtle);\\n --bs-alert-border-color: var(--bs-secondary-border-subtle);\\n --bs-alert-link-color: var(--bs-secondary-text-emphasis);\\n}\\n\\n.alert-success {\\n --bs-alert-color: var(--bs-success-text-emphasis);\\n --bs-alert-bg: var(--bs-success-bg-subtle);\\n --bs-alert-border-color: var(--bs-success-border-subtle);\\n --bs-alert-link-color: var(--bs-success-text-emphasis);\\n}\\n\\n.alert-info {\\n --bs-alert-color: var(--bs-info-text-emphasis);\\n --bs-alert-bg: var(--bs-info-bg-subtle);\\n --bs-alert-border-color: var(--bs-info-border-subtle);\\n --bs-alert-link-color: var(--bs-info-text-emphasis);\\n}\\n\\n.alert-warning {\\n --bs-alert-color: var(--bs-warning-text-emphasis);\\n --bs-alert-bg: var(--bs-warning-bg-subtle);\\n --bs-alert-border-color: var(--bs-warning-border-subtle);\\n --bs-alert-link-color: var(--bs-warning-text-emphasis);\\n}\\n\\n.alert-danger {\\n --bs-alert-color: var(--bs-danger-text-emphasis);\\n --bs-alert-bg: var(--bs-danger-bg-subtle);\\n --bs-alert-border-color: var(--bs-danger-border-subtle);\\n --bs-alert-link-color: var(--bs-danger-text-emphasis);\\n}\\n\\n.alert-light {\\n --bs-alert-color: var(--bs-light-text-emphasis);\\n --bs-alert-bg: var(--bs-light-bg-subtle);\\n --bs-alert-border-color: var(--bs-light-border-subtle);\\n --bs-alert-link-color: var(--bs-light-text-emphasis);\\n}\\n\\n.alert-dark {\\n --bs-alert-color: var(--bs-dark-text-emphasis);\\n --bs-alert-bg: var(--bs-dark-bg-subtle);\\n --bs-alert-border-color: var(--bs-dark-border-subtle);\\n --bs-alert-link-color: var(--bs-dark-text-emphasis);\\n}\\n\\n@keyframes progress-bar-stripes {\\n 0% {\\n background-position-x: 1rem;\\n }\\n}\\n.progress,\\n.progress-stacked {\\n --bs-progress-height: 1rem;\\n --bs-progress-font-size: 0.75rem;\\n --bs-progress-bg: var(--bs-secondary-bg);\\n --bs-progress-border-radius: var(--bs-border-radius);\\n --bs-progress-box-shadow: var(--bs-box-shadow-inset);\\n --bs-progress-bar-color: #fff;\\n --bs-progress-bar-bg: #0d6efd;\\n --bs-progress-bar-transition: width 0.6s ease;\\n display: flex;\\n height: var(--bs-progress-height);\\n overflow: hidden;\\n font-size: var(--bs-progress-font-size);\\n background-color: var(--bs-progress-bg);\\n border-radius: var(--bs-progress-border-radius);\\n}\\n\\n.progress-bar {\\n display: flex;\\n flex-direction: column;\\n justify-content: center;\\n overflow: hidden;\\n color: var(--bs-progress-bar-color);\\n text-align: center;\\n white-space: nowrap;\\n background-color: var(--bs-progress-bar-bg);\\n transition: var(--bs-progress-bar-transition);\\n}\\n@media (prefers-reduced-motion: reduce) {\\n .progress-bar {\\n transition: none;\\n }\\n}\\n\\n.progress-bar-striped {\\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\\n background-size: var(--bs-progress-height) var(--bs-progress-height);\\n}\\n\\n.progress-stacked > .progress {\\n overflow: visible;\\n}\\n\\n.progress-stacked > .progress > .progress-bar {\\n width: 100%;\\n}\\n\\n.progress-bar-animated {\\n animation: 1s linear infinite progress-bar-stripes;\\n}\\n@media (prefers-reduced-motion: reduce) {\\n .progress-bar-animated {\\n animation: none;\\n }\\n}\\n\\n.list-group {\\n --bs-list-group-color: var(--bs-body-color);\\n --bs-list-group-bg: var(--bs-body-bg);\\n --bs-list-group-border-color: var(--bs-border-color);\\n --bs-list-group-border-width: var(--bs-border-width);\\n --bs-list-group-border-radius: var(--bs-border-radius);\\n --bs-list-group-item-padding-x: 1rem;\\n --bs-list-group-item-padding-y: 0.5rem;\\n --bs-list-group-action-color: var(--bs-secondary-color);\\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\\n --bs-list-group-action-hover-bg: var(--bs-tertiary-bg);\\n --bs-list-group-action-active-color: var(--bs-body-color);\\n --bs-list-group-action-active-bg: var(--bs-secondary-bg);\\n --bs-list-group-disabled-color: var(--bs-secondary-color);\\n --bs-list-group-disabled-bg: var(--bs-body-bg);\\n --bs-list-group-active-color: #fff;\\n --bs-list-group-active-bg: #0d6efd;\\n --bs-list-group-active-border-color: #0d6efd;\\n display: flex;\\n flex-direction: column;\\n padding-left: 0;\\n margin-bottom: 0;\\n border-radius: var(--bs-list-group-border-radius);\\n}\\n\\n.list-group-numbered {\\n list-style-type: none;\\n counter-reset: section;\\n}\\n.list-group-numbered > .list-group-item::before {\\n content: counters(section, \\\".\\\") \\\". \\\";\\n counter-increment: section;\\n}\\n\\n.list-group-item-action {\\n width: 100%;\\n color: var(--bs-list-group-action-color);\\n text-align: inherit;\\n}\\n.list-group-item-action:hover, .list-group-item-action:focus {\\n z-index: 1;\\n color: var(--bs-list-group-action-hover-color);\\n text-decoration: none;\\n background-color: var(--bs-list-group-action-hover-bg);\\n}\\n.list-group-item-action:active {\\n color: var(--bs-list-group-action-active-color);\\n background-color: var(--bs-list-group-action-active-bg);\\n}\\n\\n.list-group-item {\\n position: relative;\\n display: block;\\n padding: var(--bs-list-group-item-padding-y) var(--bs-list-group-item-padding-x);\\n color: var(--bs-list-group-color);\\n text-decoration: none;\\n background-color: var(--bs-list-group-bg);\\n border: var(--bs-list-group-border-width) solid var(--bs-list-group-border-color);\\n}\\n.list-group-item:first-child {\\n border-top-left-radius: inherit;\\n border-top-right-radius: inherit;\\n}\\n.list-group-item:last-child {\\n border-bottom-right-radius: inherit;\\n border-bottom-left-radius: inherit;\\n}\\n.list-group-item.disabled, .list-group-item:disabled {\\n color: var(--bs-list-group-disabled-color);\\n pointer-events: none;\\n background-color: var(--bs-list-group-disabled-bg);\\n}\\n.list-group-item.active {\\n z-index: 2;\\n color: var(--bs-list-group-active-color);\\n background-color: var(--bs-list-group-active-bg);\\n border-color: var(--bs-list-group-active-border-color);\\n}\\n.list-group-item + .list-group-item {\\n border-top-width: 0;\\n}\\n.list-group-item + .list-group-item.active {\\n margin-top: calc(-1 * var(--bs-list-group-border-width));\\n border-top-width: var(--bs-list-group-border-width);\\n}\\n\\n.list-group-horizontal {\\n flex-direction: row;\\n}\\n.list-group-horizontal > .list-group-item:first-child:not(:last-child) {\\n border-bottom-left-radius: var(--bs-list-group-border-radius);\\n border-top-right-radius: 0;\\n}\\n.list-group-horizontal > .list-group-item:last-child:not(:first-child) {\\n border-top-right-radius: var(--bs-list-group-border-radius);\\n border-bottom-left-radius: 0;\\n}\\n.list-group-horizontal > .list-group-item.active {\\n margin-top: 0;\\n}\\n.list-group-horizontal > .list-group-item + .list-group-item {\\n border-top-width: var(--bs-list-group-border-width);\\n border-left-width: 0;\\n}\\n.list-group-horizontal > .list-group-item + .list-group-item.active {\\n margin-left: calc(-1 * var(--bs-list-group-border-width));\\n border-left-width: var(--bs-list-group-border-width);\\n}\\n\\n@media (min-width: 576px) {\\n .list-group-horizontal-sm {\\n flex-direction: row;\\n }\\n .list-group-horizontal-sm > .list-group-item:first-child:not(:last-child) {\\n border-bottom-left-radius: var(--bs-list-group-border-radius);\\n border-top-right-radius: 0;\\n }\\n .list-group-horizontal-sm > .list-group-item:last-child:not(:first-child) {\\n border-top-right-radius: var(--bs-list-group-border-radius);\\n border-bottom-left-radius: 0;\\n }\\n .list-group-horizontal-sm > .list-group-item.active {\\n margin-top: 0;\\n }\\n .list-group-horizontal-sm > .list-group-item + .list-group-item {\\n border-top-width: var(--bs-list-group-border-width);\\n border-left-width: 0;\\n }\\n .list-group-horizontal-sm > .list-group-item + .list-group-item.active {\\n margin-left: calc(-1 * var(--bs-list-group-border-width));\\n border-left-width: var(--bs-list-group-border-width);\\n }\\n}\\n@media (min-width: 768px) {\\n .list-group-horizontal-md {\\n flex-direction: row;\\n }\\n .list-group-horizontal-md > .list-group-item:first-child:not(:last-child) {\\n border-bottom-left-radius: var(--bs-list-group-border-radius);\\n border-top-right-radius: 0;\\n }\\n .list-group-horizontal-md > .list-group-item:last-child:not(:first-child) {\\n border-top-right-radius: var(--bs-list-group-border-radius);\\n border-bottom-left-radius: 0;\\n }\\n .list-group-horizontal-md > .list-group-item.active {\\n margin-top: 0;\\n }\\n .list-group-horizontal-md > .list-group-item + .list-group-item {\\n border-top-width: var(--bs-list-group-border-width);\\n border-left-width: 0;\\n }\\n .list-group-horizontal-md > .list-group-item + .list-group-item.active {\\n margin-left: calc(-1 * var(--bs-list-group-border-width));\\n border-left-width: var(--bs-list-group-border-width);\\n }\\n}\\n@media (min-width: 992px) {\\n .list-group-horizontal-lg {\\n flex-direction: row;\\n }\\n .list-group-horizontal-lg > .list-group-item:first-child:not(:last-child) {\\n border-bottom-left-radius: var(--bs-list-group-border-radius);\\n border-top-right-radius: 0;\\n }\\n .list-group-horizontal-lg > .list-group-item:last-child:not(:first-child) {\\n border-top-right-radius: var(--bs-list-group-border-radius);\\n border-bottom-left-radius: 0;\\n }\\n .list-group-horizontal-lg > .list-group-item.active {\\n margin-top: 0;\\n }\\n .list-group-horizontal-lg > .list-group-item + .list-group-item {\\n border-top-width: var(--bs-list-group-border-width);\\n border-left-width: 0;\\n }\\n .list-group-horizontal-lg > .list-group-item + .list-group-item.active {\\n margin-left: calc(-1 * var(--bs-list-group-border-width));\\n border-left-width: var(--bs-list-group-border-width);\\n }\\n}\\n@media (min-width: 1200px) {\\n .list-group-horizontal-xl {\\n flex-direction: row;\\n }\\n .list-group-horizontal-xl > .list-group-item:first-child:not(:last-child) {\\n border-bottom-left-radius: var(--bs-list-group-border-radius);\\n border-top-right-radius: 0;\\n }\\n .list-group-horizontal-xl > .list-group-item:last-child:not(:first-child) {\\n border-top-right-radius: var(--bs-list-group-border-radius);\\n border-bottom-left-radius: 0;\\n }\\n .list-group-horizontal-xl > .list-group-item.active {\\n margin-top: 0;\\n }\\n .list-group-horizontal-xl > .list-group-item + .list-group-item {\\n border-top-width: var(--bs-list-group-border-width);\\n border-left-width: 0;\\n }\\n .list-group-horizontal-xl > .list-group-item + .list-group-item.active {\\n margin-left: calc(-1 * var(--bs-list-group-border-width));\\n border-left-width: var(--bs-list-group-border-width);\\n }\\n}\\n@media (min-width: 1400px) {\\n .list-group-horizontal-xxl {\\n flex-direction: row;\\n }\\n .list-group-horizontal-xxl > .list-group-item:first-child:not(:last-child) {\\n border-bottom-left-radius: var(--bs-list-group-border-radius);\\n border-top-right-radius: 0;\\n }\\n .list-group-horizontal-xxl > .list-group-item:last-child:not(:first-child) {\\n border-top-right-radius: var(--bs-list-group-border-radius);\\n border-bottom-left-radius: 0;\\n }\\n .list-group-horizontal-xxl > .list-group-item.active {\\n margin-top: 0;\\n }\\n .list-group-horizontal-xxl > .list-group-item + .list-group-item {\\n border-top-width: var(--bs-list-group-border-width);\\n border-left-width: 0;\\n }\\n .list-group-horizontal-xxl > .list-group-item + .list-group-item.active {\\n margin-left: calc(-1 * var(--bs-list-group-border-width));\\n border-left-width: var(--bs-list-group-border-width);\\n }\\n}\\n.list-group-flush {\\n border-radius: 0;\\n}\\n.list-group-flush > .list-group-item {\\n border-width: 0 0 var(--bs-list-group-border-width);\\n}\\n.list-group-flush > .list-group-item:last-child {\\n border-bottom-width: 0;\\n}\\n\\n.list-group-item-primary {\\n --bs-list-group-color: var(--bs-primary-text-emphasis);\\n --bs-list-group-bg: var(--bs-primary-bg-subtle);\\n --bs-list-group-border-color: var(--bs-primary-border-subtle);\\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\\n --bs-list-group-action-hover-bg: var(--bs-primary-border-subtle);\\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\\n --bs-list-group-action-active-bg: var(--bs-primary-border-subtle);\\n --bs-list-group-active-color: var(--bs-primary-bg-subtle);\\n --bs-list-group-active-bg: var(--bs-primary-text-emphasis);\\n --bs-list-group-active-border-color: var(--bs-primary-text-emphasis);\\n}\\n\\n.list-group-item-secondary {\\n --bs-list-group-color: var(--bs-secondary-text-emphasis);\\n --bs-list-group-bg: var(--bs-secondary-bg-subtle);\\n --bs-list-group-border-color: var(--bs-secondary-border-subtle);\\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\\n --bs-list-group-action-hover-bg: var(--bs-secondary-border-subtle);\\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\\n --bs-list-group-action-active-bg: var(--bs-secondary-border-subtle);\\n --bs-list-group-active-color: var(--bs-secondary-bg-subtle);\\n --bs-list-group-active-bg: var(--bs-secondary-text-emphasis);\\n --bs-list-group-active-border-color: var(--bs-secondary-text-emphasis);\\n}\\n\\n.list-group-item-success {\\n --bs-list-group-color: var(--bs-success-text-emphasis);\\n --bs-list-group-bg: var(--bs-success-bg-subtle);\\n --bs-list-group-border-color: var(--bs-success-border-subtle);\\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\\n --bs-list-group-action-hover-bg: var(--bs-success-border-subtle);\\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\\n --bs-list-group-action-active-bg: var(--bs-success-border-subtle);\\n --bs-list-group-active-color: var(--bs-success-bg-subtle);\\n --bs-list-group-active-bg: var(--bs-success-text-emphasis);\\n --bs-list-group-active-border-color: var(--bs-success-text-emphasis);\\n}\\n\\n.list-group-item-info {\\n --bs-list-group-color: var(--bs-info-text-emphasis);\\n --bs-list-group-bg: var(--bs-info-bg-subtle);\\n --bs-list-group-border-color: var(--bs-info-border-subtle);\\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\\n --bs-list-group-action-hover-bg: var(--bs-info-border-subtle);\\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\\n --bs-list-group-action-active-bg: var(--bs-info-border-subtle);\\n --bs-list-group-active-color: var(--bs-info-bg-subtle);\\n --bs-list-group-active-bg: var(--bs-info-text-emphasis);\\n --bs-list-group-active-border-color: var(--bs-info-text-emphasis);\\n}\\n\\n.list-group-item-warning {\\n --bs-list-group-color: var(--bs-warning-text-emphasis);\\n --bs-list-group-bg: var(--bs-warning-bg-subtle);\\n --bs-list-group-border-color: var(--bs-warning-border-subtle);\\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\\n --bs-list-group-action-hover-bg: var(--bs-warning-border-subtle);\\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\\n --bs-list-group-action-active-bg: var(--bs-warning-border-subtle);\\n --bs-list-group-active-color: var(--bs-warning-bg-subtle);\\n --bs-list-group-active-bg: var(--bs-warning-text-emphasis);\\n --bs-list-group-active-border-color: var(--bs-warning-text-emphasis);\\n}\\n\\n.list-group-item-danger {\\n --bs-list-group-color: var(--bs-danger-text-emphasis);\\n --bs-list-group-bg: var(--bs-danger-bg-subtle);\\n --bs-list-group-border-color: var(--bs-danger-border-subtle);\\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\\n --bs-list-group-action-hover-bg: var(--bs-danger-border-subtle);\\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\\n --bs-list-group-action-active-bg: var(--bs-danger-border-subtle);\\n --bs-list-group-active-color: var(--bs-danger-bg-subtle);\\n --bs-list-group-active-bg: var(--bs-danger-text-emphasis);\\n --bs-list-group-active-border-color: var(--bs-danger-text-emphasis);\\n}\\n\\n.list-group-item-light {\\n --bs-list-group-color: var(--bs-light-text-emphasis);\\n --bs-list-group-bg: var(--bs-light-bg-subtle);\\n --bs-list-group-border-color: var(--bs-light-border-subtle);\\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\\n --bs-list-group-action-hover-bg: var(--bs-light-border-subtle);\\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\\n --bs-list-group-action-active-bg: var(--bs-light-border-subtle);\\n --bs-list-group-active-color: var(--bs-light-bg-subtle);\\n --bs-list-group-active-bg: var(--bs-light-text-emphasis);\\n --bs-list-group-active-border-color: var(--bs-light-text-emphasis);\\n}\\n\\n.list-group-item-dark {\\n --bs-list-group-color: var(--bs-dark-text-emphasis);\\n --bs-list-group-bg: var(--bs-dark-bg-subtle);\\n --bs-list-group-border-color: var(--bs-dark-border-subtle);\\n --bs-list-group-action-hover-color: var(--bs-emphasis-color);\\n --bs-list-group-action-hover-bg: var(--bs-dark-border-subtle);\\n --bs-list-group-action-active-color: var(--bs-emphasis-color);\\n --bs-list-group-action-active-bg: var(--bs-dark-border-subtle);\\n --bs-list-group-active-color: var(--bs-dark-bg-subtle);\\n --bs-list-group-active-bg: var(--bs-dark-text-emphasis);\\n --bs-list-group-active-border-color: var(--bs-dark-text-emphasis);\\n}\\n\\n.btn-close {\\n --bs-btn-close-color: #000;\\n --bs-btn-close-bg: url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e\\\");\\n --bs-btn-close-opacity: 0.5;\\n --bs-btn-close-hover-opacity: 0.75;\\n --bs-btn-close-focus-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\\n --bs-btn-close-focus-opacity: 1;\\n --bs-btn-close-disabled-opacity: 0.25;\\n --bs-btn-close-white-filter: invert(1) grayscale(100%) brightness(200%);\\n box-sizing: content-box;\\n width: 1em;\\n height: 1em;\\n padding: 0.25em 0.25em;\\n color: var(--bs-btn-close-color);\\n background: transparent var(--bs-btn-close-bg) center/1em auto no-repeat;\\n border: 0;\\n border-radius: 0.375rem;\\n opacity: var(--bs-btn-close-opacity);\\n}\\n.btn-close:hover {\\n color: var(--bs-btn-close-color);\\n text-decoration: none;\\n opacity: var(--bs-btn-close-hover-opacity);\\n}\\n.btn-close:focus {\\n outline: 0;\\n box-shadow: var(--bs-btn-close-focus-shadow);\\n opacity: var(--bs-btn-close-focus-opacity);\\n}\\n.btn-close:disabled, .btn-close.disabled {\\n pointer-events: none;\\n -webkit-user-select: none;\\n -moz-user-select: none;\\n user-select: none;\\n opacity: var(--bs-btn-close-disabled-opacity);\\n}\\n\\n.btn-close-white {\\n filter: var(--bs-btn-close-white-filter);\\n}\\n\\n[data-bs-theme=dark] .btn-close {\\n filter: var(--bs-btn-close-white-filter);\\n}\\n\\n.toast {\\n --bs-toast-zindex: 1090;\\n --bs-toast-padding-x: 0.75rem;\\n --bs-toast-padding-y: 0.5rem;\\n --bs-toast-spacing: 1.5rem;\\n --bs-toast-max-width: 350px;\\n --bs-toast-font-size: 0.875rem;\\n --bs-toast-color: ;\\n --bs-toast-bg: rgba(var(--bs-body-bg-rgb), 0.85);\\n --bs-toast-border-width: var(--bs-border-width);\\n --bs-toast-border-color: var(--bs-border-color-translucent);\\n --bs-toast-border-radius: var(--bs-border-radius);\\n --bs-toast-box-shadow: var(--bs-box-shadow);\\n --bs-toast-header-color: var(--bs-secondary-color);\\n --bs-toast-header-bg: rgba(var(--bs-body-bg-rgb), 0.85);\\n --bs-toast-header-border-color: var(--bs-border-color-translucent);\\n width: var(--bs-toast-max-width);\\n max-width: 100%;\\n font-size: var(--bs-toast-font-size);\\n color: var(--bs-toast-color);\\n pointer-events: auto;\\n background-color: var(--bs-toast-bg);\\n background-clip: padding-box;\\n border: var(--bs-toast-border-width) solid var(--bs-toast-border-color);\\n box-shadow: var(--bs-toast-box-shadow);\\n border-radius: var(--bs-toast-border-radius);\\n}\\n.toast.showing {\\n opacity: 0;\\n}\\n.toast:not(.show) {\\n display: none;\\n}\\n\\n.toast-container {\\n --bs-toast-zindex: 1090;\\n position: absolute;\\n z-index: var(--bs-toast-zindex);\\n width: -webkit-max-content;\\n width: -moz-max-content;\\n width: max-content;\\n max-width: 100%;\\n pointer-events: none;\\n}\\n.toast-container > :not(:last-child) {\\n margin-bottom: var(--bs-toast-spacing);\\n}\\n\\n.toast-header {\\n display: flex;\\n align-items: center;\\n padding: var(--bs-toast-padding-y) var(--bs-toast-padding-x);\\n color: var(--bs-toast-header-color);\\n background-color: var(--bs-toast-header-bg);\\n background-clip: padding-box;\\n border-bottom: var(--bs-toast-border-width) solid var(--bs-toast-header-border-color);\\n border-top-left-radius: calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));\\n border-top-right-radius: calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));\\n}\\n.toast-header .btn-close {\\n margin-right: calc(-0.5 * var(--bs-toast-padding-x));\\n margin-left: var(--bs-toast-padding-x);\\n}\\n\\n.toast-body {\\n padding: var(--bs-toast-padding-x);\\n word-wrap: break-word;\\n}\\n\\n.modal {\\n --bs-modal-zindex: 1055;\\n --bs-modal-width: 500px;\\n --bs-modal-padding: 1rem;\\n --bs-modal-margin: 0.5rem;\\n --bs-modal-color: ;\\n --bs-modal-bg: var(--bs-body-bg);\\n --bs-modal-border-color: var(--bs-border-color-translucent);\\n --bs-modal-border-width: var(--bs-border-width);\\n --bs-modal-border-radius: var(--bs-border-radius-lg);\\n --bs-modal-box-shadow: var(--bs-box-shadow-sm);\\n --bs-modal-inner-border-radius: calc(var(--bs-border-radius-lg) - (var(--bs-border-width)));\\n --bs-modal-header-padding-x: 1rem;\\n --bs-modal-header-padding-y: 1rem;\\n --bs-modal-header-padding: 1rem 1rem;\\n --bs-modal-header-border-color: var(--bs-border-color);\\n --bs-modal-header-border-width: var(--bs-border-width);\\n --bs-modal-title-line-height: 1.5;\\n --bs-modal-footer-gap: 0.5rem;\\n --bs-modal-footer-bg: ;\\n --bs-modal-footer-border-color: var(--bs-border-color);\\n --bs-modal-footer-border-width: var(--bs-border-width);\\n position: fixed;\\n top: 0;\\n left: 0;\\n z-index: var(--bs-modal-zindex);\\n display: none;\\n width: 100%;\\n height: 100%;\\n overflow-x: hidden;\\n overflow-y: auto;\\n outline: 0;\\n}\\n\\n.modal-dialog {\\n position: relative;\\n width: auto;\\n margin: var(--bs-modal-margin);\\n pointer-events: none;\\n}\\n.modal.fade .modal-dialog {\\n transition: transform 0.3s ease-out;\\n transform: translate(0, -50px);\\n}\\n@media (prefers-reduced-motion: reduce) {\\n .modal.fade .modal-dialog {\\n transition: none;\\n }\\n}\\n.modal.show .modal-dialog {\\n transform: none;\\n}\\n.modal.modal-static .modal-dialog {\\n transform: scale(1.02);\\n}\\n\\n.modal-dialog-scrollable {\\n height: calc(100% - var(--bs-modal-margin) * 2);\\n}\\n.modal-dialog-scrollable .modal-content {\\n max-height: 100%;\\n overflow: hidden;\\n}\\n.modal-dialog-scrollable .modal-body {\\n overflow-y: auto;\\n}\\n\\n.modal-dialog-centered {\\n display: flex;\\n align-items: center;\\n min-height: calc(100% - var(--bs-modal-margin) * 2);\\n}\\n\\n.modal-content {\\n position: relative;\\n display: flex;\\n flex-direction: column;\\n width: 100%;\\n color: var(--bs-modal-color);\\n pointer-events: auto;\\n background-color: var(--bs-modal-bg);\\n background-clip: padding-box;\\n border: var(--bs-modal-border-width) solid var(--bs-modal-border-color);\\n border-radius: var(--bs-modal-border-radius);\\n outline: 0;\\n}\\n\\n.modal-backdrop {\\n --bs-backdrop-zindex: 1050;\\n --bs-backdrop-bg: #000;\\n --bs-backdrop-opacity: 0.5;\\n position: fixed;\\n top: 0;\\n left: 0;\\n z-index: var(--bs-backdrop-zindex);\\n width: 100vw;\\n height: 100vh;\\n background-color: var(--bs-backdrop-bg);\\n}\\n.modal-backdrop.fade {\\n opacity: 0;\\n}\\n.modal-backdrop.show {\\n opacity: var(--bs-backdrop-opacity);\\n}\\n\\n.modal-header {\\n display: flex;\\n flex-shrink: 0;\\n align-items: center;\\n padding: var(--bs-modal-header-padding);\\n border-bottom: var(--bs-modal-header-border-width) solid var(--bs-modal-header-border-color);\\n border-top-left-radius: var(--bs-modal-inner-border-radius);\\n border-top-right-radius: var(--bs-modal-inner-border-radius);\\n}\\n.modal-header .btn-close {\\n padding: calc(var(--bs-modal-header-padding-y) * 0.5) calc(var(--bs-modal-header-padding-x) * 0.5);\\n margin: calc(-0.5 * var(--bs-modal-header-padding-y)) calc(-0.5 * var(--bs-modal-header-padding-x)) calc(-0.5 * var(--bs-modal-header-padding-y)) auto;\\n}\\n\\n.modal-title {\\n margin-bottom: 0;\\n line-height: var(--bs-modal-title-line-height);\\n}\\n\\n.modal-body {\\n position: relative;\\n flex: 1 1 auto;\\n padding: var(--bs-modal-padding);\\n}\\n\\n.modal-footer {\\n display: flex;\\n flex-shrink: 0;\\n flex-wrap: wrap;\\n align-items: center;\\n justify-content: flex-end;\\n padding: calc(var(--bs-modal-padding) - var(--bs-modal-footer-gap) * 0.5);\\n background-color: var(--bs-modal-footer-bg);\\n border-top: var(--bs-modal-footer-border-width) solid var(--bs-modal-footer-border-color);\\n border-bottom-right-radius: var(--bs-modal-inner-border-radius);\\n border-bottom-left-radius: var(--bs-modal-inner-border-radius);\\n}\\n.modal-footer > * {\\n margin: calc(var(--bs-modal-footer-gap) * 0.5);\\n}\\n\\n@media (min-width: 576px) {\\n .modal {\\n --bs-modal-margin: 1.75rem;\\n --bs-modal-box-shadow: var(--bs-box-shadow);\\n }\\n .modal-dialog {\\n max-width: var(--bs-modal-width);\\n margin-right: auto;\\n margin-left: auto;\\n }\\n .modal-sm {\\n --bs-modal-width: 300px;\\n }\\n}\\n@media (min-width: 992px) {\\n .modal-lg,\\n .modal-xl {\\n --bs-modal-width: 800px;\\n }\\n}\\n@media (min-width: 1200px) {\\n .modal-xl {\\n --bs-modal-width: 1140px;\\n }\\n}\\n.modal-fullscreen {\\n width: 100vw;\\n max-width: none;\\n height: 100%;\\n margin: 0;\\n}\\n.modal-fullscreen .modal-content {\\n height: 100%;\\n border: 0;\\n border-radius: 0;\\n}\\n.modal-fullscreen .modal-header,\\n.modal-fullscreen .modal-footer {\\n border-radius: 0;\\n}\\n.modal-fullscreen .modal-body {\\n overflow-y: auto;\\n}\\n\\n@media (max-width: 575.98px) {\\n .modal-fullscreen-sm-down {\\n width: 100vw;\\n max-width: none;\\n height: 100%;\\n margin: 0;\\n }\\n .modal-fullscreen-sm-down .modal-content {\\n height: 100%;\\n border: 0;\\n border-radius: 0;\\n }\\n .modal-fullscreen-sm-down .modal-header,\\n .modal-fullscreen-sm-down .modal-footer {\\n border-radius: 0;\\n }\\n .modal-fullscreen-sm-down .modal-body {\\n overflow-y: auto;\\n }\\n}\\n@media (max-width: 767.98px) {\\n .modal-fullscreen-md-down {\\n width: 100vw;\\n max-width: none;\\n height: 100%;\\n margin: 0;\\n }\\n .modal-fullscreen-md-down .modal-content {\\n height: 100%;\\n border: 0;\\n border-radius: 0;\\n }\\n .modal-fullscreen-md-down .modal-header,\\n .modal-fullscreen-md-down .modal-footer {\\n border-radius: 0;\\n }\\n .modal-fullscreen-md-down .modal-body {\\n overflow-y: auto;\\n }\\n}\\n@media (max-width: 991.98px) {\\n .modal-fullscreen-lg-down {\\n width: 100vw;\\n max-width: none;\\n height: 100%;\\n margin: 0;\\n }\\n .modal-fullscreen-lg-down .modal-content {\\n height: 100%;\\n border: 0;\\n border-radius: 0;\\n }\\n .modal-fullscreen-lg-down .modal-header,\\n .modal-fullscreen-lg-down .modal-footer {\\n border-radius: 0;\\n }\\n .modal-fullscreen-lg-down .modal-body {\\n overflow-y: auto;\\n }\\n}\\n@media (max-width: 1199.98px) {\\n .modal-fullscreen-xl-down {\\n width: 100vw;\\n max-width: none;\\n height: 100%;\\n margin: 0;\\n }\\n .modal-fullscreen-xl-down .modal-content {\\n height: 100%;\\n border: 0;\\n border-radius: 0;\\n }\\n .modal-fullscreen-xl-down .modal-header,\\n .modal-fullscreen-xl-down .modal-footer {\\n border-radius: 0;\\n }\\n .modal-fullscreen-xl-down .modal-body {\\n overflow-y: auto;\\n }\\n}\\n@media (max-width: 1399.98px) {\\n .modal-fullscreen-xxl-down {\\n width: 100vw;\\n max-width: none;\\n height: 100%;\\n margin: 0;\\n }\\n .modal-fullscreen-xxl-down .modal-content {\\n height: 100%;\\n border: 0;\\n border-radius: 0;\\n }\\n .modal-fullscreen-xxl-down .modal-header,\\n .modal-fullscreen-xxl-down .modal-footer {\\n border-radius: 0;\\n }\\n .modal-fullscreen-xxl-down .modal-body {\\n overflow-y: auto;\\n }\\n}\\n.tooltip {\\n --bs-tooltip-zindex: 1080;\\n --bs-tooltip-max-width: 200px;\\n --bs-tooltip-padding-x: 0.5rem;\\n --bs-tooltip-padding-y: 0.25rem;\\n --bs-tooltip-margin: ;\\n --bs-tooltip-font-size: 0.875rem;\\n --bs-tooltip-color: var(--bs-body-bg);\\n --bs-tooltip-bg: var(--bs-emphasis-color);\\n --bs-tooltip-border-radius: var(--bs-border-radius);\\n --bs-tooltip-opacity: 0.9;\\n --bs-tooltip-arrow-width: 0.8rem;\\n --bs-tooltip-arrow-height: 0.4rem;\\n z-index: var(--bs-tooltip-zindex);\\n display: block;\\n margin: var(--bs-tooltip-margin);\\n font-family: var(--bs-font-sans-serif);\\n font-style: normal;\\n font-weight: 400;\\n line-height: 1.5;\\n text-align: left;\\n text-align: start;\\n text-decoration: none;\\n text-shadow: none;\\n text-transform: none;\\n letter-spacing: normal;\\n word-break: normal;\\n white-space: normal;\\n word-spacing: normal;\\n line-break: auto;\\n font-size: var(--bs-tooltip-font-size);\\n word-wrap: break-word;\\n opacity: 0;\\n}\\n.tooltip.show {\\n opacity: var(--bs-tooltip-opacity);\\n}\\n.tooltip .tooltip-arrow {\\n display: block;\\n width: var(--bs-tooltip-arrow-width);\\n height: var(--bs-tooltip-arrow-height);\\n}\\n.tooltip .tooltip-arrow::before {\\n position: absolute;\\n content: \\\"\\\";\\n border-color: transparent;\\n border-style: solid;\\n}\\n\\n.bs-tooltip-top .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow {\\n bottom: calc(-1 * var(--bs-tooltip-arrow-height));\\n}\\n.bs-tooltip-top .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before {\\n top: -1px;\\n border-width: var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * 0.5) 0;\\n border-top-color: var(--bs-tooltip-bg);\\n}\\n\\n/* rtl:begin:ignore */\\n.bs-tooltip-end .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow {\\n left: calc(-1 * var(--bs-tooltip-arrow-height));\\n width: var(--bs-tooltip-arrow-height);\\n height: var(--bs-tooltip-arrow-width);\\n}\\n.bs-tooltip-end .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before {\\n right: -1px;\\n border-width: calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * 0.5) 0;\\n border-right-color: var(--bs-tooltip-bg);\\n}\\n\\n/* rtl:end:ignore */\\n.bs-tooltip-bottom .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow {\\n top: calc(-1 * var(--bs-tooltip-arrow-height));\\n}\\n.bs-tooltip-bottom .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before {\\n bottom: -1px;\\n border-width: 0 calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height);\\n border-bottom-color: var(--bs-tooltip-bg);\\n}\\n\\n/* rtl:begin:ignore */\\n.bs-tooltip-start .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow {\\n right: calc(-1 * var(--bs-tooltip-arrow-height));\\n width: var(--bs-tooltip-arrow-height);\\n height: var(--bs-tooltip-arrow-width);\\n}\\n.bs-tooltip-start .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before {\\n left: -1px;\\n border-width: calc(var(--bs-tooltip-arrow-width) * 0.5) 0 calc(var(--bs-tooltip-arrow-width) * 0.5) var(--bs-tooltip-arrow-height);\\n border-left-color: var(--bs-tooltip-bg);\\n}\\n\\n/* rtl:end:ignore */\\n.tooltip-inner {\\n max-width: var(--bs-tooltip-max-width);\\n padding: var(--bs-tooltip-padding-y) var(--bs-tooltip-padding-x);\\n color: var(--bs-tooltip-color);\\n text-align: center;\\n background-color: var(--bs-tooltip-bg);\\n border-radius: var(--bs-tooltip-border-radius);\\n}\\n\\n.popover {\\n --bs-popover-zindex: 1070;\\n --bs-popover-max-width: 276px;\\n --bs-popover-font-size: 0.875rem;\\n --bs-popover-bg: var(--bs-body-bg);\\n --bs-popover-border-width: var(--bs-border-width);\\n --bs-popover-border-color: var(--bs-border-color-translucent);\\n --bs-popover-border-radius: var(--bs-border-radius-lg);\\n --bs-popover-inner-border-radius: calc(var(--bs-border-radius-lg) - var(--bs-border-width));\\n --bs-popover-box-shadow: var(--bs-box-shadow);\\n --bs-popover-header-padding-x: 1rem;\\n --bs-popover-header-padding-y: 0.5rem;\\n --bs-popover-header-font-size: 1rem;\\n --bs-popover-header-color: inherit;\\n --bs-popover-header-bg: var(--bs-secondary-bg);\\n --bs-popover-body-padding-x: 1rem;\\n --bs-popover-body-padding-y: 1rem;\\n --bs-popover-body-color: var(--bs-body-color);\\n --bs-popover-arrow-width: 1rem;\\n --bs-popover-arrow-height: 0.5rem;\\n --bs-popover-arrow-border: var(--bs-popover-border-color);\\n z-index: var(--bs-popover-zindex);\\n display: block;\\n max-width: var(--bs-popover-max-width);\\n font-family: var(--bs-font-sans-serif);\\n font-style: normal;\\n font-weight: 400;\\n line-height: 1.5;\\n text-align: left;\\n text-align: start;\\n text-decoration: none;\\n text-shadow: none;\\n text-transform: none;\\n letter-spacing: normal;\\n word-break: normal;\\n white-space: normal;\\n word-spacing: normal;\\n line-break: auto;\\n font-size: var(--bs-popover-font-size);\\n word-wrap: break-word;\\n background-color: var(--bs-popover-bg);\\n background-clip: padding-box;\\n border: var(--bs-popover-border-width) solid var(--bs-popover-border-color);\\n border-radius: var(--bs-popover-border-radius);\\n}\\n.popover .popover-arrow {\\n display: block;\\n width: var(--bs-popover-arrow-width);\\n height: var(--bs-popover-arrow-height);\\n}\\n.popover .popover-arrow::before, .popover .popover-arrow::after {\\n position: absolute;\\n display: block;\\n content: \\\"\\\";\\n border-color: transparent;\\n border-style: solid;\\n border-width: 0;\\n}\\n\\n.bs-popover-top > .popover-arrow, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow {\\n bottom: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));\\n}\\n.bs-popover-top > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::before, .bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::after {\\n border-width: var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * 0.5) 0;\\n}\\n.bs-popover-top > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::before {\\n bottom: 0;\\n border-top-color: var(--bs-popover-arrow-border);\\n}\\n.bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::after {\\n bottom: var(--bs-popover-border-width);\\n border-top-color: var(--bs-popover-bg);\\n}\\n\\n/* rtl:begin:ignore */\\n.bs-popover-end > .popover-arrow, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow {\\n left: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));\\n width: var(--bs-popover-arrow-height);\\n height: var(--bs-popover-arrow-width);\\n}\\n.bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::before, .bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::after {\\n border-width: calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * 0.5) 0;\\n}\\n.bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::before {\\n left: 0;\\n border-right-color: var(--bs-popover-arrow-border);\\n}\\n.bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::after {\\n left: var(--bs-popover-border-width);\\n border-right-color: var(--bs-popover-bg);\\n}\\n\\n/* rtl:end:ignore */\\n.bs-popover-bottom > .popover-arrow, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow {\\n top: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));\\n}\\n.bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::before, .bs-popover-bottom > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::after {\\n border-width: 0 calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height);\\n}\\n.bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::before {\\n top: 0;\\n border-bottom-color: var(--bs-popover-arrow-border);\\n}\\n.bs-popover-bottom > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::after {\\n top: var(--bs-popover-border-width);\\n border-bottom-color: var(--bs-popover-bg);\\n}\\n.bs-popover-bottom .popover-header::before, .bs-popover-auto[data-popper-placement^=bottom] .popover-header::before {\\n position: absolute;\\n top: 0;\\n left: 50%;\\n display: block;\\n width: var(--bs-popover-arrow-width);\\n margin-left: calc(-0.5 * var(--bs-popover-arrow-width));\\n content: \\\"\\\";\\n border-bottom: var(--bs-popover-border-width) solid var(--bs-popover-header-bg);\\n}\\n\\n/* rtl:begin:ignore */\\n.bs-popover-start > .popover-arrow, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow {\\n right: calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));\\n width: var(--bs-popover-arrow-height);\\n height: var(--bs-popover-arrow-width);\\n}\\n.bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::before, .bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::after {\\n border-width: calc(var(--bs-popover-arrow-width) * 0.5) 0 calc(var(--bs-popover-arrow-width) * 0.5) var(--bs-popover-arrow-height);\\n}\\n.bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::before {\\n right: 0;\\n border-left-color: var(--bs-popover-arrow-border);\\n}\\n.bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::after {\\n right: var(--bs-popover-border-width);\\n border-left-color: var(--bs-popover-bg);\\n}\\n\\n/* rtl:end:ignore */\\n.popover-header {\\n padding: var(--bs-popover-header-padding-y) var(--bs-popover-header-padding-x);\\n margin-bottom: 0;\\n font-size: var(--bs-popover-header-font-size);\\n color: var(--bs-popover-header-color);\\n background-color: var(--bs-popover-header-bg);\\n border-bottom: var(--bs-popover-border-width) solid var(--bs-popover-border-color);\\n border-top-left-radius: var(--bs-popover-inner-border-radius);\\n border-top-right-radius: var(--bs-popover-inner-border-radius);\\n}\\n.popover-header:empty {\\n display: none;\\n}\\n\\n.popover-body {\\n padding: var(--bs-popover-body-padding-y) var(--bs-popover-body-padding-x);\\n color: var(--bs-popover-body-color);\\n}\\n\\n.carousel {\\n position: relative;\\n}\\n\\n.carousel.pointer-event {\\n touch-action: pan-y;\\n}\\n\\n.carousel-inner {\\n position: relative;\\n width: 100%;\\n overflow: hidden;\\n}\\n.carousel-inner::after {\\n display: block;\\n clear: both;\\n content: \\\"\\\";\\n}\\n\\n.carousel-item {\\n position: relative;\\n display: none;\\n float: left;\\n width: 100%;\\n margin-right: -100%;\\n -webkit-backface-visibility: hidden;\\n backface-visibility: hidden;\\n transition: transform 0.6s ease-in-out;\\n}\\n@media (prefers-reduced-motion: reduce) {\\n .carousel-item {\\n transition: none;\\n }\\n}\\n\\n.carousel-item.active,\\n.carousel-item-next,\\n.carousel-item-prev {\\n display: block;\\n}\\n\\n.carousel-item-next:not(.carousel-item-start),\\n.active.carousel-item-end {\\n transform: translateX(100%);\\n}\\n\\n.carousel-item-prev:not(.carousel-item-end),\\n.active.carousel-item-start {\\n transform: translateX(-100%);\\n}\\n\\n.carousel-fade .carousel-item {\\n opacity: 0;\\n transition-property: opacity;\\n transform: none;\\n}\\n.carousel-fade .carousel-item.active,\\n.carousel-fade .carousel-item-next.carousel-item-start,\\n.carousel-fade .carousel-item-prev.carousel-item-end {\\n z-index: 1;\\n opacity: 1;\\n}\\n.carousel-fade .active.carousel-item-start,\\n.carousel-fade .active.carousel-item-end {\\n z-index: 0;\\n opacity: 0;\\n transition: opacity 0s 0.6s;\\n}\\n@media (prefers-reduced-motion: reduce) {\\n .carousel-fade .active.carousel-item-start,\\n .carousel-fade .active.carousel-item-end {\\n transition: none;\\n }\\n}\\n\\n.carousel-control-prev,\\n.carousel-control-next {\\n position: absolute;\\n top: 0;\\n bottom: 0;\\n z-index: 1;\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n width: 15%;\\n padding: 0;\\n color: #fff;\\n text-align: center;\\n background: none;\\n border: 0;\\n opacity: 0.5;\\n transition: opacity 0.15s ease;\\n}\\n@media (prefers-reduced-motion: reduce) {\\n .carousel-control-prev,\\n .carousel-control-next {\\n transition: none;\\n }\\n}\\n.carousel-control-prev:hover, .carousel-control-prev:focus,\\n.carousel-control-next:hover,\\n.carousel-control-next:focus {\\n color: #fff;\\n text-decoration: none;\\n outline: 0;\\n opacity: 0.9;\\n}\\n\\n.carousel-control-prev {\\n left: 0;\\n}\\n\\n.carousel-control-next {\\n right: 0;\\n}\\n\\n.carousel-control-prev-icon,\\n.carousel-control-next-icon {\\n display: inline-block;\\n width: 2rem;\\n height: 2rem;\\n background-repeat: no-repeat;\\n background-position: 50%;\\n background-size: 100% 100%;\\n}\\n\\n.carousel-control-prev-icon {\\n background-image: url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e\\\") /*rtl:url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e\\\")*/;\\n}\\n\\n.carousel-control-next-icon {\\n background-image: url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e\\\") /*rtl:url(\\\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e\\\")*/;\\n}\\n\\n.carousel-indicators {\\n position: absolute;\\n right: 0;\\n bottom: 0;\\n left: 0;\\n z-index: 2;\\n display: flex;\\n justify-content: center;\\n padding: 0;\\n margin-right: 15%;\\n margin-bottom: 1rem;\\n margin-left: 15%;\\n}\\n.carousel-indicators [data-bs-target] {\\n box-sizing: content-box;\\n flex: 0 1 auto;\\n width: 30px;\\n height: 3px;\\n padding: 0;\\n margin-right: 3px;\\n margin-left: 3px;\\n text-indent: -999px;\\n cursor: pointer;\\n background-color: #fff;\\n background-clip: padding-box;\\n border: 0;\\n border-top: 10px solid transparent;\\n border-bottom: 10px solid transparent;\\n opacity: 0.5;\\n transition: opacity 0.6s ease;\\n}\\n@media (prefers-reduced-motion: reduce) {\\n .carousel-indicators [data-bs-target] {\\n transition: none;\\n }\\n}\\n.carousel-indicators .active {\\n opacity: 1;\\n}\\n\\n.carousel-caption {\\n position: absolute;\\n right: 15%;\\n bottom: 1.25rem;\\n left: 15%;\\n padding-top: 1.25rem;\\n padding-bottom: 1.25rem;\\n color: #fff;\\n text-align: center;\\n}\\n\\n.carousel-dark .carousel-control-prev-icon,\\n.carousel-dark .carousel-control-next-icon {\\n filter: invert(1) grayscale(100);\\n}\\n.carousel-dark .carousel-indicators [data-bs-target] {\\n background-color: #000;\\n}\\n.carousel-dark .carousel-caption {\\n color: #000;\\n}\\n\\n[data-bs-theme=dark] .carousel .carousel-control-prev-icon,\\n[data-bs-theme=dark] .carousel .carousel-control-next-icon, [data-bs-theme=dark].carousel .carousel-control-prev-icon,\\n[data-bs-theme=dark].carousel .carousel-control-next-icon {\\n filter: invert(1) grayscale(100);\\n}\\n[data-bs-theme=dark] .carousel .carousel-indicators [data-bs-target], [data-bs-theme=dark].carousel .carousel-indicators [data-bs-target] {\\n background-color: #000;\\n}\\n[data-bs-theme=dark] .carousel .carousel-caption, [data-bs-theme=dark].carousel .carousel-caption {\\n color: #000;\\n}\\n\\n.spinner-grow,\\n.spinner-border {\\n display: inline-block;\\n width: var(--bs-spinner-width);\\n height: var(--bs-spinner-height);\\n vertical-align: var(--bs-spinner-vertical-align);\\n border-radius: 50%;\\n animation: var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name);\\n}\\n\\n@keyframes spinner-border {\\n to {\\n transform: rotate(360deg) /* rtl:ignore */;\\n }\\n}\\n.spinner-border {\\n --bs-spinner-width: 2rem;\\n --bs-spinner-height: 2rem;\\n --bs-spinner-vertical-align: -0.125em;\\n --bs-spinner-border-width: 0.25em;\\n --bs-spinner-animation-speed: 0.75s;\\n --bs-spinner-animation-name: spinner-border;\\n border: var(--bs-spinner-border-width) solid currentcolor;\\n border-right-color: transparent;\\n}\\n\\n.spinner-border-sm {\\n --bs-spinner-width: 1rem;\\n --bs-spinner-height: 1rem;\\n --bs-spinner-border-width: 0.2em;\\n}\\n\\n@keyframes spinner-grow {\\n 0% {\\n transform: scale(0);\\n }\\n 50% {\\n opacity: 1;\\n transform: none;\\n }\\n}\\n.spinner-grow {\\n --bs-spinner-width: 2rem;\\n --bs-spinner-height: 2rem;\\n --bs-spinner-vertical-align: -0.125em;\\n --bs-spinner-animation-speed: 0.75s;\\n --bs-spinner-animation-name: spinner-grow;\\n background-color: currentcolor;\\n opacity: 0;\\n}\\n\\n.spinner-grow-sm {\\n --bs-spinner-width: 1rem;\\n --bs-spinner-height: 1rem;\\n}\\n\\n@media (prefers-reduced-motion: reduce) {\\n .spinner-border,\\n .spinner-grow {\\n --bs-spinner-animation-speed: 1.5s;\\n }\\n}\\n.offcanvas, .offcanvas-xxl, .offcanvas-xl, .offcanvas-lg, .offcanvas-md, .offcanvas-sm {\\n --bs-offcanvas-zindex: 1045;\\n --bs-offcanvas-width: 400px;\\n --bs-offcanvas-height: 30vh;\\n --bs-offcanvas-padding-x: 1rem;\\n --bs-offcanvas-padding-y: 1rem;\\n --bs-offcanvas-color: var(--bs-body-color);\\n --bs-offcanvas-bg: var(--bs-body-bg);\\n --bs-offcanvas-border-width: var(--bs-border-width);\\n --bs-offcanvas-border-color: var(--bs-border-color-translucent);\\n --bs-offcanvas-box-shadow: var(--bs-box-shadow-sm);\\n --bs-offcanvas-transition: transform 0.3s ease-in-out;\\n --bs-offcanvas-title-line-height: 1.5;\\n}\\n\\n@media (max-width: 575.98px) {\\n .offcanvas-sm {\\n position: fixed;\\n bottom: 0;\\n z-index: var(--bs-offcanvas-zindex);\\n display: flex;\\n flex-direction: column;\\n max-width: 100%;\\n color: var(--bs-offcanvas-color);\\n visibility: hidden;\\n background-color: var(--bs-offcanvas-bg);\\n background-clip: padding-box;\\n outline: 0;\\n transition: var(--bs-offcanvas-transition);\\n }\\n}\\n@media (max-width: 575.98px) and (prefers-reduced-motion: reduce) {\\n .offcanvas-sm {\\n transition: none;\\n }\\n}\\n@media (max-width: 575.98px) {\\n .offcanvas-sm.offcanvas-start {\\n top: 0;\\n left: 0;\\n width: var(--bs-offcanvas-width);\\n border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\\n transform: translateX(-100%);\\n }\\n .offcanvas-sm.offcanvas-end {\\n top: 0;\\n right: 0;\\n width: var(--bs-offcanvas-width);\\n border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\\n transform: translateX(100%);\\n }\\n .offcanvas-sm.offcanvas-top {\\n top: 0;\\n right: 0;\\n left: 0;\\n height: var(--bs-offcanvas-height);\\n max-height: 100%;\\n border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\\n transform: translateY(-100%);\\n }\\n .offcanvas-sm.offcanvas-bottom {\\n right: 0;\\n left: 0;\\n height: var(--bs-offcanvas-height);\\n max-height: 100%;\\n border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\\n transform: translateY(100%);\\n }\\n .offcanvas-sm.showing, .offcanvas-sm.show:not(.hiding) {\\n transform: none;\\n }\\n .offcanvas-sm.showing, .offcanvas-sm.hiding, .offcanvas-sm.show {\\n visibility: visible;\\n }\\n}\\n@media (min-width: 576px) {\\n .offcanvas-sm {\\n --bs-offcanvas-height: auto;\\n --bs-offcanvas-border-width: 0;\\n background-color: transparent !important;\\n }\\n .offcanvas-sm .offcanvas-header {\\n display: none;\\n }\\n .offcanvas-sm .offcanvas-body {\\n display: flex;\\n flex-grow: 0;\\n padding: 0;\\n overflow-y: visible;\\n background-color: transparent !important;\\n }\\n}\\n\\n@media (max-width: 767.98px) {\\n .offcanvas-md {\\n position: fixed;\\n bottom: 0;\\n z-index: var(--bs-offcanvas-zindex);\\n display: flex;\\n flex-direction: column;\\n max-width: 100%;\\n color: var(--bs-offcanvas-color);\\n visibility: hidden;\\n background-color: var(--bs-offcanvas-bg);\\n background-clip: padding-box;\\n outline: 0;\\n transition: var(--bs-offcanvas-transition);\\n }\\n}\\n@media (max-width: 767.98px) and (prefers-reduced-motion: reduce) {\\n .offcanvas-md {\\n transition: none;\\n }\\n}\\n@media (max-width: 767.98px) {\\n .offcanvas-md.offcanvas-start {\\n top: 0;\\n left: 0;\\n width: var(--bs-offcanvas-width);\\n border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\\n transform: translateX(-100%);\\n }\\n .offcanvas-md.offcanvas-end {\\n top: 0;\\n right: 0;\\n width: var(--bs-offcanvas-width);\\n border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\\n transform: translateX(100%);\\n }\\n .offcanvas-md.offcanvas-top {\\n top: 0;\\n right: 0;\\n left: 0;\\n height: var(--bs-offcanvas-height);\\n max-height: 100%;\\n border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\\n transform: translateY(-100%);\\n }\\n .offcanvas-md.offcanvas-bottom {\\n right: 0;\\n left: 0;\\n height: var(--bs-offcanvas-height);\\n max-height: 100%;\\n border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\\n transform: translateY(100%);\\n }\\n .offcanvas-md.showing, .offcanvas-md.show:not(.hiding) {\\n transform: none;\\n }\\n .offcanvas-md.showing, .offcanvas-md.hiding, .offcanvas-md.show {\\n visibility: visible;\\n }\\n}\\n@media (min-width: 768px) {\\n .offcanvas-md {\\n --bs-offcanvas-height: auto;\\n --bs-offcanvas-border-width: 0;\\n background-color: transparent !important;\\n }\\n .offcanvas-md .offcanvas-header {\\n display: none;\\n }\\n .offcanvas-md .offcanvas-body {\\n display: flex;\\n flex-grow: 0;\\n padding: 0;\\n overflow-y: visible;\\n background-color: transparent !important;\\n }\\n}\\n\\n@media (max-width: 991.98px) {\\n .offcanvas-lg {\\n position: fixed;\\n bottom: 0;\\n z-index: var(--bs-offcanvas-zindex);\\n display: flex;\\n flex-direction: column;\\n max-width: 100%;\\n color: var(--bs-offcanvas-color);\\n visibility: hidden;\\n background-color: var(--bs-offcanvas-bg);\\n background-clip: padding-box;\\n outline: 0;\\n transition: var(--bs-offcanvas-transition);\\n }\\n}\\n@media (max-width: 991.98px) and (prefers-reduced-motion: reduce) {\\n .offcanvas-lg {\\n transition: none;\\n }\\n}\\n@media (max-width: 991.98px) {\\n .offcanvas-lg.offcanvas-start {\\n top: 0;\\n left: 0;\\n width: var(--bs-offcanvas-width);\\n border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\\n transform: translateX(-100%);\\n }\\n .offcanvas-lg.offcanvas-end {\\n top: 0;\\n right: 0;\\n width: var(--bs-offcanvas-width);\\n border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\\n transform: translateX(100%);\\n }\\n .offcanvas-lg.offcanvas-top {\\n top: 0;\\n right: 0;\\n left: 0;\\n height: var(--bs-offcanvas-height);\\n max-height: 100%;\\n border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\\n transform: translateY(-100%);\\n }\\n .offcanvas-lg.offcanvas-bottom {\\n right: 0;\\n left: 0;\\n height: var(--bs-offcanvas-height);\\n max-height: 100%;\\n border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\\n transform: translateY(100%);\\n }\\n .offcanvas-lg.showing, .offcanvas-lg.show:not(.hiding) {\\n transform: none;\\n }\\n .offcanvas-lg.showing, .offcanvas-lg.hiding, .offcanvas-lg.show {\\n visibility: visible;\\n }\\n}\\n@media (min-width: 992px) {\\n .offcanvas-lg {\\n --bs-offcanvas-height: auto;\\n --bs-offcanvas-border-width: 0;\\n background-color: transparent !important;\\n }\\n .offcanvas-lg .offcanvas-header {\\n display: none;\\n }\\n .offcanvas-lg .offcanvas-body {\\n display: flex;\\n flex-grow: 0;\\n padding: 0;\\n overflow-y: visible;\\n background-color: transparent !important;\\n }\\n}\\n\\n@media (max-width: 1199.98px) {\\n .offcanvas-xl {\\n position: fixed;\\n bottom: 0;\\n z-index: var(--bs-offcanvas-zindex);\\n display: flex;\\n flex-direction: column;\\n max-width: 100%;\\n color: var(--bs-offcanvas-color);\\n visibility: hidden;\\n background-color: var(--bs-offcanvas-bg);\\n background-clip: padding-box;\\n outline: 0;\\n transition: var(--bs-offcanvas-transition);\\n }\\n}\\n@media (max-width: 1199.98px) and (prefers-reduced-motion: reduce) {\\n .offcanvas-xl {\\n transition: none;\\n }\\n}\\n@media (max-width: 1199.98px) {\\n .offcanvas-xl.offcanvas-start {\\n top: 0;\\n left: 0;\\n width: var(--bs-offcanvas-width);\\n border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\\n transform: translateX(-100%);\\n }\\n .offcanvas-xl.offcanvas-end {\\n top: 0;\\n right: 0;\\n width: var(--bs-offcanvas-width);\\n border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\\n transform: translateX(100%);\\n }\\n .offcanvas-xl.offcanvas-top {\\n top: 0;\\n right: 0;\\n left: 0;\\n height: var(--bs-offcanvas-height);\\n max-height: 100%;\\n border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\\n transform: translateY(-100%);\\n }\\n .offcanvas-xl.offcanvas-bottom {\\n right: 0;\\n left: 0;\\n height: var(--bs-offcanvas-height);\\n max-height: 100%;\\n border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\\n transform: translateY(100%);\\n }\\n .offcanvas-xl.showing, .offcanvas-xl.show:not(.hiding) {\\n transform: none;\\n }\\n .offcanvas-xl.showing, .offcanvas-xl.hiding, .offcanvas-xl.show {\\n visibility: visible;\\n }\\n}\\n@media (min-width: 1200px) {\\n .offcanvas-xl {\\n --bs-offcanvas-height: auto;\\n --bs-offcanvas-border-width: 0;\\n background-color: transparent !important;\\n }\\n .offcanvas-xl .offcanvas-header {\\n display: none;\\n }\\n .offcanvas-xl .offcanvas-body {\\n display: flex;\\n flex-grow: 0;\\n padding: 0;\\n overflow-y: visible;\\n background-color: transparent !important;\\n }\\n}\\n\\n@media (max-width: 1399.98px) {\\n .offcanvas-xxl {\\n position: fixed;\\n bottom: 0;\\n z-index: var(--bs-offcanvas-zindex);\\n display: flex;\\n flex-direction: column;\\n max-width: 100%;\\n color: var(--bs-offcanvas-color);\\n visibility: hidden;\\n background-color: var(--bs-offcanvas-bg);\\n background-clip: padding-box;\\n outline: 0;\\n transition: var(--bs-offcanvas-transition);\\n }\\n}\\n@media (max-width: 1399.98px) and (prefers-reduced-motion: reduce) {\\n .offcanvas-xxl {\\n transition: none;\\n }\\n}\\n@media (max-width: 1399.98px) {\\n .offcanvas-xxl.offcanvas-start {\\n top: 0;\\n left: 0;\\n width: var(--bs-offcanvas-width);\\n border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\\n transform: translateX(-100%);\\n }\\n .offcanvas-xxl.offcanvas-end {\\n top: 0;\\n right: 0;\\n width: var(--bs-offcanvas-width);\\n border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\\n transform: translateX(100%);\\n }\\n .offcanvas-xxl.offcanvas-top {\\n top: 0;\\n right: 0;\\n left: 0;\\n height: var(--bs-offcanvas-height);\\n max-height: 100%;\\n border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\\n transform: translateY(-100%);\\n }\\n .offcanvas-xxl.offcanvas-bottom {\\n right: 0;\\n left: 0;\\n height: var(--bs-offcanvas-height);\\n max-height: 100%;\\n border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\\n transform: translateY(100%);\\n }\\n .offcanvas-xxl.showing, .offcanvas-xxl.show:not(.hiding) {\\n transform: none;\\n }\\n .offcanvas-xxl.showing, .offcanvas-xxl.hiding, .offcanvas-xxl.show {\\n visibility: visible;\\n }\\n}\\n@media (min-width: 1400px) {\\n .offcanvas-xxl {\\n --bs-offcanvas-height: auto;\\n --bs-offcanvas-border-width: 0;\\n background-color: transparent !important;\\n }\\n .offcanvas-xxl .offcanvas-header {\\n display: none;\\n }\\n .offcanvas-xxl .offcanvas-body {\\n display: flex;\\n flex-grow: 0;\\n padding: 0;\\n overflow-y: visible;\\n background-color: transparent !important;\\n }\\n}\\n\\n.offcanvas {\\n position: fixed;\\n bottom: 0;\\n z-index: var(--bs-offcanvas-zindex);\\n display: flex;\\n flex-direction: column;\\n max-width: 100%;\\n color: var(--bs-offcanvas-color);\\n visibility: hidden;\\n background-color: var(--bs-offcanvas-bg);\\n background-clip: padding-box;\\n outline: 0;\\n transition: var(--bs-offcanvas-transition);\\n}\\n@media (prefers-reduced-motion: reduce) {\\n .offcanvas {\\n transition: none;\\n }\\n}\\n.offcanvas.offcanvas-start {\\n top: 0;\\n left: 0;\\n width: var(--bs-offcanvas-width);\\n border-right: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\\n transform: translateX(-100%);\\n}\\n.offcanvas.offcanvas-end {\\n top: 0;\\n right: 0;\\n width: var(--bs-offcanvas-width);\\n border-left: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\\n transform: translateX(100%);\\n}\\n.offcanvas.offcanvas-top {\\n top: 0;\\n right: 0;\\n left: 0;\\n height: var(--bs-offcanvas-height);\\n max-height: 100%;\\n border-bottom: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\\n transform: translateY(-100%);\\n}\\n.offcanvas.offcanvas-bottom {\\n right: 0;\\n left: 0;\\n height: var(--bs-offcanvas-height);\\n max-height: 100%;\\n border-top: var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);\\n transform: translateY(100%);\\n}\\n.offcanvas.showing, .offcanvas.show:not(.hiding) {\\n transform: none;\\n}\\n.offcanvas.showing, .offcanvas.hiding, .offcanvas.show {\\n visibility: visible;\\n}\\n\\n.offcanvas-backdrop {\\n position: fixed;\\n top: 0;\\n left: 0;\\n z-index: 1040;\\n width: 100vw;\\n height: 100vh;\\n background-color: #000;\\n}\\n.offcanvas-backdrop.fade {\\n opacity: 0;\\n}\\n.offcanvas-backdrop.show {\\n opacity: 0.5;\\n}\\n\\n.offcanvas-header {\\n display: flex;\\n align-items: center;\\n padding: var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);\\n}\\n.offcanvas-header .btn-close {\\n padding: calc(var(--bs-offcanvas-padding-y) * 0.5) calc(var(--bs-offcanvas-padding-x) * 0.5);\\n margin: calc(-0.5 * var(--bs-offcanvas-padding-y)) calc(-0.5 * var(--bs-offcanvas-padding-x)) calc(-0.5 * var(--bs-offcanvas-padding-y)) auto;\\n}\\n\\n.offcanvas-title {\\n margin-bottom: 0;\\n line-height: var(--bs-offcanvas-title-line-height);\\n}\\n\\n.offcanvas-body {\\n flex-grow: 1;\\n padding: var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);\\n overflow-y: auto;\\n}\\n\\n.placeholder {\\n display: inline-block;\\n min-height: 1em;\\n vertical-align: middle;\\n cursor: wait;\\n background-color: currentcolor;\\n opacity: 0.5;\\n}\\n.placeholder.btn::before {\\n display: inline-block;\\n content: \\\"\\\";\\n}\\n\\n.placeholder-xs {\\n min-height: 0.6em;\\n}\\n\\n.placeholder-sm {\\n min-height: 0.8em;\\n}\\n\\n.placeholder-lg {\\n min-height: 1.2em;\\n}\\n\\n.placeholder-glow .placeholder {\\n animation: placeholder-glow 2s ease-in-out infinite;\\n}\\n\\n@keyframes placeholder-glow {\\n 50% {\\n opacity: 0.2;\\n }\\n}\\n.placeholder-wave {\\n -webkit-mask-image: linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);\\n mask-image: linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);\\n -webkit-mask-size: 200% 100%;\\n mask-size: 200% 100%;\\n animation: placeholder-wave 2s linear infinite;\\n}\\n\\n@keyframes placeholder-wave {\\n 100% {\\n -webkit-mask-position: -200% 0%;\\n mask-position: -200% 0%;\\n }\\n}\\n.clearfix::after {\\n display: block;\\n clear: both;\\n content: \\\"\\\";\\n}\\n\\n.text-bg-primary {\\n color: #fff !important;\\n background-color: RGBA(var(--bs-primary-rgb), var(--bs-bg-opacity, 1)) !important;\\n}\\n\\n.text-bg-secondary {\\n color: #fff !important;\\n background-color: RGBA(var(--bs-secondary-rgb), var(--bs-bg-opacity, 1)) !important;\\n}\\n\\n.text-bg-success {\\n color: #fff !important;\\n background-color: RGBA(var(--bs-success-rgb), var(--bs-bg-opacity, 1)) !important;\\n}\\n\\n.text-bg-info {\\n color: #000 !important;\\n background-color: RGBA(var(--bs-info-rgb), var(--bs-bg-opacity, 1)) !important;\\n}\\n\\n.text-bg-warning {\\n color: #000 !important;\\n background-color: RGBA(var(--bs-warning-rgb), var(--bs-bg-opacity, 1)) !important;\\n}\\n\\n.text-bg-danger {\\n color: #fff !important;\\n background-color: RGBA(var(--bs-danger-rgb), var(--bs-bg-opacity, 1)) !important;\\n}\\n\\n.text-bg-light {\\n color: #000 !important;\\n background-color: RGBA(var(--bs-light-rgb), var(--bs-bg-opacity, 1)) !important;\\n}\\n\\n.text-bg-dark {\\n color: #fff !important;\\n background-color: RGBA(var(--bs-dark-rgb), var(--bs-bg-opacity, 1)) !important;\\n}\\n\\n.link-primary {\\n color: RGBA(var(--bs-primary-rgb), var(--bs-link-opacity, 1)) !important;\\n -webkit-text-decoration-color: RGBA(var(--bs-primary-rgb), var(--bs-link-underline-opacity, 1)) !important;\\n text-decoration-color: RGBA(var(--bs-primary-rgb), var(--bs-link-underline-opacity, 1)) !important;\\n}\\n.link-primary:hover, .link-primary:focus {\\n color: RGBA(10, 88, 202, var(--bs-link-opacity, 1)) !important;\\n -webkit-text-decoration-color: RGBA(10, 88, 202, var(--bs-link-underline-opacity, 1)) !important;\\n text-decoration-color: RGBA(10, 88, 202, var(--bs-link-underline-opacity, 1)) !important;\\n}\\n\\n.link-secondary {\\n color: RGBA(var(--bs-secondary-rgb), var(--bs-link-opacity, 1)) !important;\\n -webkit-text-decoration-color: RGBA(var(--bs-secondary-rgb), var(--bs-link-underline-opacity, 1)) !important;\\n text-decoration-color: RGBA(var(--bs-secondary-rgb), var(--bs-link-underline-opacity, 1)) !important;\\n}\\n.link-secondary:hover, .link-secondary:focus {\\n color: RGBA(86, 94, 100, var(--bs-link-opacity, 1)) !important;\\n -webkit-text-decoration-color: RGBA(86, 94, 100, var(--bs-link-underline-opacity, 1)) !important;\\n text-decoration-color: RGBA(86, 94, 100, var(--bs-link-underline-opacity, 1)) !important;\\n}\\n\\n.link-success {\\n color: RGBA(var(--bs-success-rgb), var(--bs-link-opacity, 1)) !important;\\n -webkit-text-decoration-color: RGBA(var(--bs-success-rgb), var(--bs-link-underline-opacity, 1)) !important;\\n text-decoration-color: RGBA(var(--bs-success-rgb), var(--bs-link-underline-opacity, 1)) !important;\\n}\\n.link-success:hover, .link-success:focus {\\n color: RGBA(20, 108, 67, var(--bs-link-opacity, 1)) !important;\\n -webkit-text-decoration-color: RGBA(20, 108, 67, var(--bs-link-underline-opacity, 1)) !important;\\n text-decoration-color: RGBA(20, 108, 67, var(--bs-link-underline-opacity, 1)) !important;\\n}\\n\\n.link-info {\\n color: RGBA(var(--bs-info-rgb), var(--bs-link-opacity, 1)) !important;\\n -webkit-text-decoration-color: RGBA(var(--bs-info-rgb), var(--bs-link-underline-opacity, 1)) !important;\\n text-decoration-color: RGBA(var(--bs-info-rgb), var(--bs-link-underline-opacity, 1)) !important;\\n}\\n.link-info:hover, .link-info:focus {\\n color: RGBA(61, 213, 243, var(--bs-link-opacity, 1)) !important;\\n -webkit-text-decoration-color: RGBA(61, 213, 243, var(--bs-link-underline-opacity, 1)) !important;\\n text-decoration-color: RGBA(61, 213, 243, var(--bs-link-underline-opacity, 1)) !important;\\n}\\n\\n.link-warning {\\n color: RGBA(var(--bs-warning-rgb), var(--bs-link-opacity, 1)) !important;\\n -webkit-text-decoration-color: RGBA(var(--bs-warning-rgb), var(--bs-link-underline-opacity, 1)) !important;\\n text-decoration-color: RGBA(var(--bs-warning-rgb), var(--bs-link-underline-opacity, 1)) !important;\\n}\\n.link-warning:hover, .link-warning:focus {\\n color: RGBA(255, 205, 57, var(--bs-link-opacity, 1)) !important;\\n -webkit-text-decoration-color: RGBA(255, 205, 57, var(--bs-link-underline-opacity, 1)) !important;\\n text-decoration-color: RGBA(255, 205, 57, var(--bs-link-underline-opacity, 1)) !important;\\n}\\n\\n.link-danger {\\n color: RGBA(var(--bs-danger-rgb), var(--bs-link-opacity, 1)) !important;\\n -webkit-text-decoration-color: RGBA(var(--bs-danger-rgb), var(--bs-link-underline-opacity, 1)) !important;\\n text-decoration-color: RGBA(var(--bs-danger-rgb), var(--bs-link-underline-opacity, 1)) !important;\\n}\\n.link-danger:hover, .link-danger:focus {\\n color: RGBA(176, 42, 55, var(--bs-link-opacity, 1)) !important;\\n -webkit-text-decoration-color: RGBA(176, 42, 55, var(--bs-link-underline-opacity, 1)) !important;\\n text-decoration-color: RGBA(176, 42, 55, var(--bs-link-underline-opacity, 1)) !important;\\n}\\n\\n.link-light {\\n color: RGBA(var(--bs-light-rgb), var(--bs-link-opacity, 1)) !important;\\n -webkit-text-decoration-color: RGBA(var(--bs-light-rgb), var(--bs-link-underline-opacity, 1)) !important;\\n text-decoration-color: RGBA(var(--bs-light-rgb), var(--bs-link-underline-opacity, 1)) !important;\\n}\\n.link-light:hover, .link-light:focus {\\n color: RGBA(249, 250, 251, var(--bs-link-opacity, 1)) !important;\\n -webkit-text-decoration-color: RGBA(249, 250, 251, var(--bs-link-underline-opacity, 1)) !important;\\n text-decoration-color: RGBA(249, 250, 251, var(--bs-link-underline-opacity, 1)) !important;\\n}\\n\\n.link-dark {\\n color: RGBA(var(--bs-dark-rgb), var(--bs-link-opacity, 1)) !important;\\n -webkit-text-decoration-color: RGBA(var(--bs-dark-rgb), var(--bs-link-underline-opacity, 1)) !important;\\n text-decoration-color: RGBA(var(--bs-dark-rgb), var(--bs-link-underline-opacity, 1)) !important;\\n}\\n.link-dark:hover, .link-dark:focus {\\n color: RGBA(26, 30, 33, var(--bs-link-opacity, 1)) !important;\\n -webkit-text-decoration-color: RGBA(26, 30, 33, var(--bs-link-underline-opacity, 1)) !important;\\n text-decoration-color: RGBA(26, 30, 33, var(--bs-link-underline-opacity, 1)) !important;\\n}\\n\\n.link-body-emphasis {\\n color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 1)) !important;\\n -webkit-text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 1)) !important;\\n text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 1)) !important;\\n}\\n.link-body-emphasis:hover, .link-body-emphasis:focus {\\n color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 0.75)) !important;\\n -webkit-text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 0.75)) !important;\\n text-decoration-color: RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 0.75)) !important;\\n}\\n\\n.focus-ring:focus {\\n outline: 0;\\n box-shadow: var(--bs-focus-ring-x, 0) var(--bs-focus-ring-y, 0) var(--bs-focus-ring-blur, 0) var(--bs-focus-ring-width) var(--bs-focus-ring-color);\\n}\\n\\n.icon-link {\\n display: inline-flex;\\n gap: 0.375rem;\\n align-items: center;\\n -webkit-text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 0.5));\\n text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 0.5));\\n text-underline-offset: 0.25em;\\n -webkit-backface-visibility: hidden;\\n backface-visibility: hidden;\\n}\\n.icon-link > .bi {\\n flex-shrink: 0;\\n width: 1em;\\n height: 1em;\\n fill: currentcolor;\\n transition: 0.2s ease-in-out transform;\\n}\\n@media (prefers-reduced-motion: reduce) {\\n .icon-link > .bi {\\n transition: none;\\n }\\n}\\n\\n.icon-link-hover:hover > .bi, .icon-link-hover:focus-visible > .bi {\\n transform: var(--bs-icon-link-transform, translate3d(0.25em, 0, 0));\\n}\\n\\n.ratio {\\n position: relative;\\n width: 100%;\\n}\\n.ratio::before {\\n display: block;\\n padding-top: var(--bs-aspect-ratio);\\n content: \\\"\\\";\\n}\\n.ratio > * {\\n position: absolute;\\n top: 0;\\n left: 0;\\n width: 100%;\\n height: 100%;\\n}\\n\\n.ratio-1x1 {\\n --bs-aspect-ratio: 100%;\\n}\\n\\n.ratio-4x3 {\\n --bs-aspect-ratio: 75%;\\n}\\n\\n.ratio-16x9 {\\n --bs-aspect-ratio: 56.25%;\\n}\\n\\n.ratio-21x9 {\\n --bs-aspect-ratio: 42.8571428571%;\\n}\\n\\n.fixed-top {\\n position: fixed;\\n top: 0;\\n right: 0;\\n left: 0;\\n z-index: 1030;\\n}\\n\\n.fixed-bottom {\\n position: fixed;\\n right: 0;\\n bottom: 0;\\n left: 0;\\n z-index: 1030;\\n}\\n\\n.sticky-top {\\n position: -webkit-sticky;\\n position: sticky;\\n top: 0;\\n z-index: 1020;\\n}\\n\\n.sticky-bottom {\\n position: -webkit-sticky;\\n position: sticky;\\n bottom: 0;\\n z-index: 1020;\\n}\\n\\n@media (min-width: 576px) {\\n .sticky-sm-top {\\n position: -webkit-sticky;\\n position: sticky;\\n top: 0;\\n z-index: 1020;\\n }\\n .sticky-sm-bottom {\\n position: -webkit-sticky;\\n position: sticky;\\n bottom: 0;\\n z-index: 1020;\\n }\\n}\\n@media (min-width: 768px) {\\n .sticky-md-top {\\n position: -webkit-sticky;\\n position: sticky;\\n top: 0;\\n z-index: 1020;\\n }\\n .sticky-md-bottom {\\n position: -webkit-sticky;\\n position: sticky;\\n bottom: 0;\\n z-index: 1020;\\n }\\n}\\n@media (min-width: 992px) {\\n .sticky-lg-top {\\n position: -webkit-sticky;\\n position: sticky;\\n top: 0;\\n z-index: 1020;\\n }\\n .sticky-lg-bottom {\\n position: -webkit-sticky;\\n position: sticky;\\n bottom: 0;\\n z-index: 1020;\\n }\\n}\\n@media (min-width: 1200px) {\\n .sticky-xl-top {\\n position: -webkit-sticky;\\n position: sticky;\\n top: 0;\\n z-index: 1020;\\n }\\n .sticky-xl-bottom {\\n position: -webkit-sticky;\\n position: sticky;\\n bottom: 0;\\n z-index: 1020;\\n }\\n}\\n@media (min-width: 1400px) {\\n .sticky-xxl-top {\\n position: -webkit-sticky;\\n position: sticky;\\n top: 0;\\n z-index: 1020;\\n }\\n .sticky-xxl-bottom {\\n position: -webkit-sticky;\\n position: sticky;\\n bottom: 0;\\n z-index: 1020;\\n }\\n}\\n.hstack {\\n display: flex;\\n flex-direction: row;\\n align-items: center;\\n align-self: stretch;\\n}\\n\\n.vstack {\\n display: flex;\\n flex: 1 1 auto;\\n flex-direction: column;\\n align-self: stretch;\\n}\\n\\n.visually-hidden,\\n.visually-hidden-focusable:not(:focus):not(:focus-within) {\\n width: 1px !important;\\n height: 1px !important;\\n padding: 0 !important;\\n margin: -1px !important;\\n overflow: hidden !important;\\n clip: rect(0, 0, 0, 0) !important;\\n white-space: nowrap !important;\\n border: 0 !important;\\n}\\n.visually-hidden:not(caption),\\n.visually-hidden-focusable:not(:focus):not(:focus-within):not(caption) {\\n position: absolute !important;\\n}\\n\\n.stretched-link::after {\\n position: absolute;\\n top: 0;\\n right: 0;\\n bottom: 0;\\n left: 0;\\n z-index: 1;\\n content: \\\"\\\";\\n}\\n\\n.text-truncate {\\n overflow: hidden;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n}\\n\\n.vr {\\n display: inline-block;\\n align-self: stretch;\\n width: var(--bs-border-width);\\n min-height: 1em;\\n background-color: currentcolor;\\n opacity: 0.25;\\n}\\n\\n.align-baseline {\\n vertical-align: baseline !important;\\n}\\n\\n.align-top {\\n vertical-align: top !important;\\n}\\n\\n.align-middle {\\n vertical-align: middle !important;\\n}\\n\\n.align-bottom {\\n vertical-align: bottom !important;\\n}\\n\\n.align-text-bottom {\\n vertical-align: text-bottom !important;\\n}\\n\\n.align-text-top {\\n vertical-align: text-top !important;\\n}\\n\\n.float-start {\\n float: left !important;\\n}\\n\\n.float-end {\\n float: right !important;\\n}\\n\\n.float-none {\\n float: none !important;\\n}\\n\\n.object-fit-contain {\\n -o-object-fit: contain !important;\\n object-fit: contain !important;\\n}\\n\\n.object-fit-cover {\\n -o-object-fit: cover !important;\\n object-fit: cover !important;\\n}\\n\\n.object-fit-fill {\\n -o-object-fit: fill !important;\\n object-fit: fill !important;\\n}\\n\\n.object-fit-scale {\\n -o-object-fit: scale-down !important;\\n object-fit: scale-down !important;\\n}\\n\\n.object-fit-none {\\n -o-object-fit: none !important;\\n object-fit: none !important;\\n}\\n\\n.opacity-0 {\\n opacity: 0 !important;\\n}\\n\\n.opacity-25 {\\n opacity: 0.25 !important;\\n}\\n\\n.opacity-50 {\\n opacity: 0.5 !important;\\n}\\n\\n.opacity-75 {\\n opacity: 0.75 !important;\\n}\\n\\n.opacity-100 {\\n opacity: 1 !important;\\n}\\n\\n.overflow-auto {\\n overflow: auto !important;\\n}\\n\\n.overflow-hidden {\\n overflow: hidden !important;\\n}\\n\\n.overflow-visible {\\n overflow: visible !important;\\n}\\n\\n.overflow-scroll {\\n overflow: scroll !important;\\n}\\n\\n.overflow-x-auto {\\n overflow-x: auto !important;\\n}\\n\\n.overflow-x-hidden {\\n overflow-x: hidden !important;\\n}\\n\\n.overflow-x-visible {\\n overflow-x: visible !important;\\n}\\n\\n.overflow-x-scroll {\\n overflow-x: scroll !important;\\n}\\n\\n.overflow-y-auto {\\n overflow-y: auto !important;\\n}\\n\\n.overflow-y-hidden {\\n overflow-y: hidden !important;\\n}\\n\\n.overflow-y-visible {\\n overflow-y: visible !important;\\n}\\n\\n.overflow-y-scroll {\\n overflow-y: scroll !important;\\n}\\n\\n.d-inline {\\n display: inline !important;\\n}\\n\\n.d-inline-block {\\n display: inline-block !important;\\n}\\n\\n.d-block {\\n display: block !important;\\n}\\n\\n.d-grid {\\n display: grid !important;\\n}\\n\\n.d-inline-grid {\\n display: inline-grid !important;\\n}\\n\\n.d-table {\\n display: table !important;\\n}\\n\\n.d-table-row {\\n display: table-row !important;\\n}\\n\\n.d-table-cell {\\n display: table-cell !important;\\n}\\n\\n.d-flex {\\n display: flex !important;\\n}\\n\\n.d-inline-flex {\\n display: inline-flex !important;\\n}\\n\\n.d-none {\\n display: none !important;\\n}\\n\\n.shadow {\\n box-shadow: var(--bs-box-shadow) !important;\\n}\\n\\n.shadow-sm {\\n box-shadow: var(--bs-box-shadow-sm) !important;\\n}\\n\\n.shadow-lg {\\n box-shadow: var(--bs-box-shadow-lg) !important;\\n}\\n\\n.shadow-none {\\n box-shadow: none !important;\\n}\\n\\n.focus-ring-primary {\\n --bs-focus-ring-color: rgba(var(--bs-primary-rgb), var(--bs-focus-ring-opacity));\\n}\\n\\n.focus-ring-secondary {\\n --bs-focus-ring-color: rgba(var(--bs-secondary-rgb), var(--bs-focus-ring-opacity));\\n}\\n\\n.focus-ring-success {\\n --bs-focus-ring-color: rgba(var(--bs-success-rgb), var(--bs-focus-ring-opacity));\\n}\\n\\n.focus-ring-info {\\n --bs-focus-ring-color: rgba(var(--bs-info-rgb), var(--bs-focus-ring-opacity));\\n}\\n\\n.focus-ring-warning {\\n --bs-focus-ring-color: rgba(var(--bs-warning-rgb), var(--bs-focus-ring-opacity));\\n}\\n\\n.focus-ring-danger {\\n --bs-focus-ring-color: rgba(var(--bs-danger-rgb), var(--bs-focus-ring-opacity));\\n}\\n\\n.focus-ring-light {\\n --bs-focus-ring-color: rgba(var(--bs-light-rgb), var(--bs-focus-ring-opacity));\\n}\\n\\n.focus-ring-dark {\\n --bs-focus-ring-color: rgba(var(--bs-dark-rgb), var(--bs-focus-ring-opacity));\\n}\\n\\n.position-static {\\n position: static !important;\\n}\\n\\n.position-relative {\\n position: relative !important;\\n}\\n\\n.position-absolute {\\n position: absolute !important;\\n}\\n\\n.position-fixed {\\n position: fixed !important;\\n}\\n\\n.position-sticky {\\n position: -webkit-sticky !important;\\n position: sticky !important;\\n}\\n\\n.top-0 {\\n top: 0 !important;\\n}\\n\\n.top-50 {\\n top: 50% !important;\\n}\\n\\n.top-100 {\\n top: 100% !important;\\n}\\n\\n.bottom-0 {\\n bottom: 0 !important;\\n}\\n\\n.bottom-50 {\\n bottom: 50% !important;\\n}\\n\\n.bottom-100 {\\n bottom: 100% !important;\\n}\\n\\n.start-0 {\\n left: 0 !important;\\n}\\n\\n.start-50 {\\n left: 50% !important;\\n}\\n\\n.start-100 {\\n left: 100% !important;\\n}\\n\\n.end-0 {\\n right: 0 !important;\\n}\\n\\n.end-50 {\\n right: 50% !important;\\n}\\n\\n.end-100 {\\n right: 100% !important;\\n}\\n\\n.translate-middle {\\n transform: translate(-50%, -50%) !important;\\n}\\n\\n.translate-middle-x {\\n transform: translateX(-50%) !important;\\n}\\n\\n.translate-middle-y {\\n transform: translateY(-50%) !important;\\n}\\n\\n.border {\\n border: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;\\n}\\n\\n.border-0 {\\n border: 0 !important;\\n}\\n\\n.border-top {\\n border-top: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;\\n}\\n\\n.border-top-0 {\\n border-top: 0 !important;\\n}\\n\\n.border-end {\\n border-right: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;\\n}\\n\\n.border-end-0 {\\n border-right: 0 !important;\\n}\\n\\n.border-bottom {\\n border-bottom: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;\\n}\\n\\n.border-bottom-0 {\\n border-bottom: 0 !important;\\n}\\n\\n.border-start {\\n border-left: var(--bs-border-width) var(--bs-border-style) var(--bs-border-color) !important;\\n}\\n\\n.border-start-0 {\\n border-left: 0 !important;\\n}\\n\\n.border-primary {\\n --bs-border-opacity: 1;\\n border-color: rgba(var(--bs-primary-rgb), var(--bs-border-opacity)) !important;\\n}\\n\\n.border-secondary {\\n --bs-border-opacity: 1;\\n border-color: rgba(var(--bs-secondary-rgb), var(--bs-border-opacity)) !important;\\n}\\n\\n.border-success {\\n --bs-border-opacity: 1;\\n border-color: rgba(var(--bs-success-rgb), var(--bs-border-opacity)) !important;\\n}\\n\\n.border-info {\\n --bs-border-opacity: 1;\\n border-color: rgba(var(--bs-info-rgb), var(--bs-border-opacity)) !important;\\n}\\n\\n.border-warning {\\n --bs-border-opacity: 1;\\n border-color: rgba(var(--bs-warning-rgb), var(--bs-border-opacity)) !important;\\n}\\n\\n.border-danger {\\n --bs-border-opacity: 1;\\n border-color: rgba(var(--bs-danger-rgb), var(--bs-border-opacity)) !important;\\n}\\n\\n.border-light {\\n --bs-border-opacity: 1;\\n border-color: rgba(var(--bs-light-rgb), var(--bs-border-opacity)) !important;\\n}\\n\\n.border-dark {\\n --bs-border-opacity: 1;\\n border-color: rgba(var(--bs-dark-rgb), var(--bs-border-opacity)) !important;\\n}\\n\\n.border-black {\\n --bs-border-opacity: 1;\\n border-color: rgba(var(--bs-black-rgb), var(--bs-border-opacity)) !important;\\n}\\n\\n.border-white {\\n --bs-border-opacity: 1;\\n border-color: rgba(var(--bs-white-rgb), var(--bs-border-opacity)) !important;\\n}\\n\\n.border-primary-subtle {\\n border-color: var(--bs-primary-border-subtle) !important;\\n}\\n\\n.border-secondary-subtle {\\n border-color: var(--bs-secondary-border-subtle) !important;\\n}\\n\\n.border-success-subtle {\\n border-color: var(--bs-success-border-subtle) !important;\\n}\\n\\n.border-info-subtle {\\n border-color: var(--bs-info-border-subtle) !important;\\n}\\n\\n.border-warning-subtle {\\n border-color: var(--bs-warning-border-subtle) !important;\\n}\\n\\n.border-danger-subtle {\\n border-color: var(--bs-danger-border-subtle) !important;\\n}\\n\\n.border-light-subtle {\\n border-color: var(--bs-light-border-subtle) !important;\\n}\\n\\n.border-dark-subtle {\\n border-color: var(--bs-dark-border-subtle) !important;\\n}\\n\\n.border-1 {\\n border-width: 1px !important;\\n}\\n\\n.border-2 {\\n border-width: 2px !important;\\n}\\n\\n.border-3 {\\n border-width: 3px !important;\\n}\\n\\n.border-4 {\\n border-width: 4px !important;\\n}\\n\\n.border-5 {\\n border-width: 5px !important;\\n}\\n\\n.border-opacity-10 {\\n --bs-border-opacity: 0.1;\\n}\\n\\n.border-opacity-25 {\\n --bs-border-opacity: 0.25;\\n}\\n\\n.border-opacity-50 {\\n --bs-border-opacity: 0.5;\\n}\\n\\n.border-opacity-75 {\\n --bs-border-opacity: 0.75;\\n}\\n\\n.border-opacity-100 {\\n --bs-border-opacity: 1;\\n}\\n\\n.w-25 {\\n width: 25% !important;\\n}\\n\\n.w-50 {\\n width: 50% !important;\\n}\\n\\n.w-75 {\\n width: 75% !important;\\n}\\n\\n.w-100 {\\n width: 100% !important;\\n}\\n\\n.w-auto {\\n width: auto !important;\\n}\\n\\n.mw-100 {\\n max-width: 100% !important;\\n}\\n\\n.vw-100 {\\n width: 100vw !important;\\n}\\n\\n.min-vw-100 {\\n min-width: 100vw !important;\\n}\\n\\n.h-25 {\\n height: 25% !important;\\n}\\n\\n.h-50 {\\n height: 50% !important;\\n}\\n\\n.h-75 {\\n height: 75% !important;\\n}\\n\\n.h-100 {\\n height: 100% !important;\\n}\\n\\n.h-auto {\\n height: auto !important;\\n}\\n\\n.mh-100 {\\n max-height: 100% !important;\\n}\\n\\n.vh-100 {\\n height: 100vh !important;\\n}\\n\\n.min-vh-100 {\\n min-height: 100vh !important;\\n}\\n\\n.flex-fill {\\n flex: 1 1 auto !important;\\n}\\n\\n.flex-row {\\n flex-direction: row !important;\\n}\\n\\n.flex-column {\\n flex-direction: column !important;\\n}\\n\\n.flex-row-reverse {\\n flex-direction: row-reverse !important;\\n}\\n\\n.flex-column-reverse {\\n flex-direction: column-reverse !important;\\n}\\n\\n.flex-grow-0 {\\n flex-grow: 0 !important;\\n}\\n\\n.flex-grow-1 {\\n flex-grow: 1 !important;\\n}\\n\\n.flex-shrink-0 {\\n flex-shrink: 0 !important;\\n}\\n\\n.flex-shrink-1 {\\n flex-shrink: 1 !important;\\n}\\n\\n.flex-wrap {\\n flex-wrap: wrap !important;\\n}\\n\\n.flex-nowrap {\\n flex-wrap: nowrap !important;\\n}\\n\\n.flex-wrap-reverse {\\n flex-wrap: wrap-reverse !important;\\n}\\n\\n.justify-content-start {\\n justify-content: flex-start !important;\\n}\\n\\n.justify-content-end {\\n justify-content: flex-end !important;\\n}\\n\\n.justify-content-center {\\n justify-content: center !important;\\n}\\n\\n.justify-content-between {\\n justify-content: space-between !important;\\n}\\n\\n.justify-content-around {\\n justify-content: space-around !important;\\n}\\n\\n.justify-content-evenly {\\n justify-content: space-evenly !important;\\n}\\n\\n.align-items-start {\\n align-items: flex-start !important;\\n}\\n\\n.align-items-end {\\n align-items: flex-end !important;\\n}\\n\\n.align-items-center {\\n align-items: center !important;\\n}\\n\\n.align-items-baseline {\\n align-items: baseline !important;\\n}\\n\\n.align-items-stretch {\\n align-items: stretch !important;\\n}\\n\\n.align-content-start {\\n align-content: flex-start !important;\\n}\\n\\n.align-content-end {\\n align-content: flex-end !important;\\n}\\n\\n.align-content-center {\\n align-content: center !important;\\n}\\n\\n.align-content-between {\\n align-content: space-between !important;\\n}\\n\\n.align-content-around {\\n align-content: space-around !important;\\n}\\n\\n.align-content-stretch {\\n align-content: stretch !important;\\n}\\n\\n.align-self-auto {\\n align-self: auto !important;\\n}\\n\\n.align-self-start {\\n align-self: flex-start !important;\\n}\\n\\n.align-self-end {\\n align-self: flex-end !important;\\n}\\n\\n.align-self-center {\\n align-self: center !important;\\n}\\n\\n.align-self-baseline {\\n align-self: baseline !important;\\n}\\n\\n.align-self-stretch {\\n align-self: stretch !important;\\n}\\n\\n.order-first {\\n order: -1 !important;\\n}\\n\\n.order-0 {\\n order: 0 !important;\\n}\\n\\n.order-1 {\\n order: 1 !important;\\n}\\n\\n.order-2 {\\n order: 2 !important;\\n}\\n\\n.order-3 {\\n order: 3 !important;\\n}\\n\\n.order-4 {\\n order: 4 !important;\\n}\\n\\n.order-5 {\\n order: 5 !important;\\n}\\n\\n.order-last {\\n order: 6 !important;\\n}\\n\\n.m-0 {\\n margin: 0 !important;\\n}\\n\\n.m-1 {\\n margin: 0.25rem !important;\\n}\\n\\n.m-2 {\\n margin: 0.5rem !important;\\n}\\n\\n.m-3 {\\n margin: 1rem !important;\\n}\\n\\n.m-4 {\\n margin: 1.5rem !important;\\n}\\n\\n.m-5 {\\n margin: 3rem !important;\\n}\\n\\n.m-auto {\\n margin: auto !important;\\n}\\n\\n.mx-0 {\\n margin-right: 0 !important;\\n margin-left: 0 !important;\\n}\\n\\n.mx-1 {\\n margin-right: 0.25rem !important;\\n margin-left: 0.25rem !important;\\n}\\n\\n.mx-2 {\\n margin-right: 0.5rem !important;\\n margin-left: 0.5rem !important;\\n}\\n\\n.mx-3 {\\n margin-right: 1rem !important;\\n margin-left: 1rem !important;\\n}\\n\\n.mx-4 {\\n margin-right: 1.5rem !important;\\n margin-left: 1.5rem !important;\\n}\\n\\n.mx-5 {\\n margin-right: 3rem !important;\\n margin-left: 3rem !important;\\n}\\n\\n.mx-auto {\\n margin-right: auto !important;\\n margin-left: auto !important;\\n}\\n\\n.my-0 {\\n margin-top: 0 !important;\\n margin-bottom: 0 !important;\\n}\\n\\n.my-1 {\\n margin-top: 0.25rem !important;\\n margin-bottom: 0.25rem !important;\\n}\\n\\n.my-2 {\\n margin-top: 0.5rem !important;\\n margin-bottom: 0.5rem !important;\\n}\\n\\n.my-3 {\\n margin-top: 1rem !important;\\n margin-bottom: 1rem !important;\\n}\\n\\n.my-4 {\\n margin-top: 1.5rem !important;\\n margin-bottom: 1.5rem !important;\\n}\\n\\n.my-5 {\\n margin-top: 3rem !important;\\n margin-bottom: 3rem !important;\\n}\\n\\n.my-auto {\\n margin-top: auto !important;\\n margin-bottom: auto !important;\\n}\\n\\n.mt-0 {\\n margin-top: 0 !important;\\n}\\n\\n.mt-1 {\\n margin-top: 0.25rem !important;\\n}\\n\\n.mt-2 {\\n margin-top: 0.5rem !important;\\n}\\n\\n.mt-3 {\\n margin-top: 1rem !important;\\n}\\n\\n.mt-4 {\\n margin-top: 1.5rem !important;\\n}\\n\\n.mt-5 {\\n margin-top: 3rem !important;\\n}\\n\\n.mt-auto {\\n margin-top: auto !important;\\n}\\n\\n.me-0 {\\n margin-right: 0 !important;\\n}\\n\\n.me-1 {\\n margin-right: 0.25rem !important;\\n}\\n\\n.me-2 {\\n margin-right: 0.5rem !important;\\n}\\n\\n.me-3 {\\n margin-right: 1rem !important;\\n}\\n\\n.me-4 {\\n margin-right: 1.5rem !important;\\n}\\n\\n.me-5 {\\n margin-right: 3rem !important;\\n}\\n\\n.me-auto {\\n margin-right: auto !important;\\n}\\n\\n.mb-0 {\\n margin-bottom: 0 !important;\\n}\\n\\n.mb-1 {\\n margin-bottom: 0.25rem !important;\\n}\\n\\n.mb-2 {\\n margin-bottom: 0.5rem !important;\\n}\\n\\n.mb-3 {\\n margin-bottom: 1rem !important;\\n}\\n\\n.mb-4 {\\n margin-bottom: 1.5rem !important;\\n}\\n\\n.mb-5 {\\n margin-bottom: 3rem !important;\\n}\\n\\n.mb-auto {\\n margin-bottom: auto !important;\\n}\\n\\n.ms-0 {\\n margin-left: 0 !important;\\n}\\n\\n.ms-1 {\\n margin-left: 0.25rem !important;\\n}\\n\\n.ms-2 {\\n margin-left: 0.5rem !important;\\n}\\n\\n.ms-3 {\\n margin-left: 1rem !important;\\n}\\n\\n.ms-4 {\\n margin-left: 1.5rem !important;\\n}\\n\\n.ms-5 {\\n margin-left: 3rem !important;\\n}\\n\\n.ms-auto {\\n margin-left: auto !important;\\n}\\n\\n.p-0 {\\n padding: 0 !important;\\n}\\n\\n.p-1 {\\n padding: 0.25rem !important;\\n}\\n\\n.p-2 {\\n padding: 0.5rem !important;\\n}\\n\\n.p-3 {\\n padding: 1rem !important;\\n}\\n\\n.p-4 {\\n padding: 1.5rem !important;\\n}\\n\\n.p-5 {\\n padding: 3rem !important;\\n}\\n\\n.px-0 {\\n padding-right: 0 !important;\\n padding-left: 0 !important;\\n}\\n\\n.px-1 {\\n padding-right: 0.25rem !important;\\n padding-left: 0.25rem !important;\\n}\\n\\n.px-2 {\\n padding-right: 0.5rem !important;\\n padding-left: 0.5rem !important;\\n}\\n\\n.px-3 {\\n padding-right: 1rem !important;\\n padding-left: 1rem !important;\\n}\\n\\n.px-4 {\\n padding-right: 1.5rem !important;\\n padding-left: 1.5rem !important;\\n}\\n\\n.px-5 {\\n padding-right: 3rem !important;\\n padding-left: 3rem !important;\\n}\\n\\n.py-0 {\\n padding-top: 0 !important;\\n padding-bottom: 0 !important;\\n}\\n\\n.py-1 {\\n padding-top: 0.25rem !important;\\n padding-bottom: 0.25rem !important;\\n}\\n\\n.py-2 {\\n padding-top: 0.5rem !important;\\n padding-bottom: 0.5rem !important;\\n}\\n\\n.py-3 {\\n padding-top: 1rem !important;\\n padding-bottom: 1rem !important;\\n}\\n\\n.py-4 {\\n padding-top: 1.5rem !important;\\n padding-bottom: 1.5rem !important;\\n}\\n\\n.py-5 {\\n padding-top: 3rem !important;\\n padding-bottom: 3rem !important;\\n}\\n\\n.pt-0 {\\n padding-top: 0 !important;\\n}\\n\\n.pt-1 {\\n padding-top: 0.25rem !important;\\n}\\n\\n.pt-2 {\\n padding-top: 0.5rem !important;\\n}\\n\\n.pt-3 {\\n padding-top: 1rem !important;\\n}\\n\\n.pt-4 {\\n padding-top: 1.5rem !important;\\n}\\n\\n.pt-5 {\\n padding-top: 3rem !important;\\n}\\n\\n.pe-0 {\\n padding-right: 0 !important;\\n}\\n\\n.pe-1 {\\n padding-right: 0.25rem !important;\\n}\\n\\n.pe-2 {\\n padding-right: 0.5rem !important;\\n}\\n\\n.pe-3 {\\n padding-right: 1rem !important;\\n}\\n\\n.pe-4 {\\n padding-right: 1.5rem !important;\\n}\\n\\n.pe-5 {\\n padding-right: 3rem !important;\\n}\\n\\n.pb-0 {\\n padding-bottom: 0 !important;\\n}\\n\\n.pb-1 {\\n padding-bottom: 0.25rem !important;\\n}\\n\\n.pb-2 {\\n padding-bottom: 0.5rem !important;\\n}\\n\\n.pb-3 {\\n padding-bottom: 1rem !important;\\n}\\n\\n.pb-4 {\\n padding-bottom: 1.5rem !important;\\n}\\n\\n.pb-5 {\\n padding-bottom: 3rem !important;\\n}\\n\\n.ps-0 {\\n padding-left: 0 !important;\\n}\\n\\n.ps-1 {\\n padding-left: 0.25rem !important;\\n}\\n\\n.ps-2 {\\n padding-left: 0.5rem !important;\\n}\\n\\n.ps-3 {\\n padding-left: 1rem !important;\\n}\\n\\n.ps-4 {\\n padding-left: 1.5rem !important;\\n}\\n\\n.ps-5 {\\n padding-left: 3rem !important;\\n}\\n\\n.gap-0 {\\n gap: 0 !important;\\n}\\n\\n.gap-1 {\\n gap: 0.25rem !important;\\n}\\n\\n.gap-2 {\\n gap: 0.5rem !important;\\n}\\n\\n.gap-3 {\\n gap: 1rem !important;\\n}\\n\\n.gap-4 {\\n gap: 1.5rem !important;\\n}\\n\\n.gap-5 {\\n gap: 3rem !important;\\n}\\n\\n.row-gap-0 {\\n row-gap: 0 !important;\\n}\\n\\n.row-gap-1 {\\n row-gap: 0.25rem !important;\\n}\\n\\n.row-gap-2 {\\n row-gap: 0.5rem !important;\\n}\\n\\n.row-gap-3 {\\n row-gap: 1rem !important;\\n}\\n\\n.row-gap-4 {\\n row-gap: 1.5rem !important;\\n}\\n\\n.row-gap-5 {\\n row-gap: 3rem !important;\\n}\\n\\n.column-gap-0 {\\n -moz-column-gap: 0 !important;\\n column-gap: 0 !important;\\n}\\n\\n.column-gap-1 {\\n -moz-column-gap: 0.25rem !important;\\n column-gap: 0.25rem !important;\\n}\\n\\n.column-gap-2 {\\n -moz-column-gap: 0.5rem !important;\\n column-gap: 0.5rem !important;\\n}\\n\\n.column-gap-3 {\\n -moz-column-gap: 1rem !important;\\n column-gap: 1rem !important;\\n}\\n\\n.column-gap-4 {\\n -moz-column-gap: 1.5rem !important;\\n column-gap: 1.5rem !important;\\n}\\n\\n.column-gap-5 {\\n -moz-column-gap: 3rem !important;\\n column-gap: 3rem !important;\\n}\\n\\n.font-monospace {\\n font-family: var(--bs-font-monospace) !important;\\n}\\n\\n.fs-1 {\\n font-size: calc(1.375rem + 1.5vw) !important;\\n}\\n\\n.fs-2 {\\n font-size: calc(1.325rem + 0.9vw) !important;\\n}\\n\\n.fs-3 {\\n font-size: calc(1.3rem + 0.6vw) !important;\\n}\\n\\n.fs-4 {\\n font-size: calc(1.275rem + 0.3vw) !important;\\n}\\n\\n.fs-5 {\\n font-size: 1.25rem !important;\\n}\\n\\n.fs-6 {\\n font-size: 1rem !important;\\n}\\n\\n.fst-italic {\\n font-style: italic !important;\\n}\\n\\n.fst-normal {\\n font-style: normal !important;\\n}\\n\\n.fw-lighter {\\n font-weight: lighter !important;\\n}\\n\\n.fw-light {\\n font-weight: 300 !important;\\n}\\n\\n.fw-normal {\\n font-weight: 400 !important;\\n}\\n\\n.fw-medium {\\n font-weight: 500 !important;\\n}\\n\\n.fw-semibold {\\n font-weight: 600 !important;\\n}\\n\\n.fw-bold {\\n font-weight: 700 !important;\\n}\\n\\n.fw-bolder {\\n font-weight: bolder !important;\\n}\\n\\n.lh-1 {\\n line-height: 1 !important;\\n}\\n\\n.lh-sm {\\n line-height: 1.25 !important;\\n}\\n\\n.lh-base {\\n line-height: 1.5 !important;\\n}\\n\\n.lh-lg {\\n line-height: 2 !important;\\n}\\n\\n.text-start {\\n text-align: left !important;\\n}\\n\\n.text-end {\\n text-align: right !important;\\n}\\n\\n.text-center {\\n text-align: center !important;\\n}\\n\\n.text-decoration-none {\\n text-decoration: none !important;\\n}\\n\\n.text-decoration-underline {\\n text-decoration: underline !important;\\n}\\n\\n.text-decoration-line-through {\\n text-decoration: line-through !important;\\n}\\n\\n.text-lowercase {\\n text-transform: lowercase !important;\\n}\\n\\n.text-uppercase {\\n text-transform: uppercase !important;\\n}\\n\\n.text-capitalize {\\n text-transform: capitalize !important;\\n}\\n\\n.text-wrap {\\n white-space: normal !important;\\n}\\n\\n.text-nowrap {\\n white-space: nowrap !important;\\n}\\n\\n/* rtl:begin:remove */\\n.text-break {\\n word-wrap: break-word !important;\\n word-break: break-word !important;\\n}\\n\\n/* rtl:end:remove */\\n.text-primary {\\n --bs-text-opacity: 1;\\n color: rgba(var(--bs-primary-rgb), var(--bs-text-opacity)) !important;\\n}\\n\\n.text-secondary {\\n --bs-text-opacity: 1;\\n color: rgba(var(--bs-secondary-rgb), var(--bs-text-opacity)) !important;\\n}\\n\\n.text-success {\\n --bs-text-opacity: 1;\\n color: rgba(var(--bs-success-rgb), var(--bs-text-opacity)) !important;\\n}\\n\\n.text-info {\\n --bs-text-opacity: 1;\\n color: rgba(var(--bs-info-rgb), var(--bs-text-opacity)) !important;\\n}\\n\\n.text-warning {\\n --bs-text-opacity: 1;\\n color: rgba(var(--bs-warning-rgb), var(--bs-text-opacity)) !important;\\n}\\n\\n.text-danger {\\n --bs-text-opacity: 1;\\n color: rgba(var(--bs-danger-rgb), var(--bs-text-opacity)) !important;\\n}\\n\\n.text-light {\\n --bs-text-opacity: 1;\\n color: rgba(var(--bs-light-rgb), var(--bs-text-opacity)) !important;\\n}\\n\\n.text-dark {\\n --bs-text-opacity: 1;\\n color: rgba(var(--bs-dark-rgb), var(--bs-text-opacity)) !important;\\n}\\n\\n.text-black {\\n --bs-text-opacity: 1;\\n color: rgba(var(--bs-black-rgb), var(--bs-text-opacity)) !important;\\n}\\n\\n.text-white {\\n --bs-text-opacity: 1;\\n color: rgba(var(--bs-white-rgb), var(--bs-text-opacity)) !important;\\n}\\n\\n.text-body {\\n --bs-text-opacity: 1;\\n color: rgba(var(--bs-body-color-rgb), var(--bs-text-opacity)) !important;\\n}\\n\\n.text-muted {\\n --bs-text-opacity: 1;\\n color: var(--bs-secondary-color) !important;\\n}\\n\\n.text-black-50 {\\n --bs-text-opacity: 1;\\n color: rgba(0, 0, 0, 0.5) !important;\\n}\\n\\n.text-white-50 {\\n --bs-text-opacity: 1;\\n color: rgba(255, 255, 255, 0.5) !important;\\n}\\n\\n.text-body-secondary {\\n --bs-text-opacity: 1;\\n color: var(--bs-secondary-color) !important;\\n}\\n\\n.text-body-tertiary {\\n --bs-text-opacity: 1;\\n color: var(--bs-tertiary-color) !important;\\n}\\n\\n.text-body-emphasis {\\n --bs-text-opacity: 1;\\n color: var(--bs-emphasis-color) !important;\\n}\\n\\n.text-reset {\\n --bs-text-opacity: 1;\\n color: inherit !important;\\n}\\n\\n.text-opacity-25 {\\n --bs-text-opacity: 0.25;\\n}\\n\\n.text-opacity-50 {\\n --bs-text-opacity: 0.5;\\n}\\n\\n.text-opacity-75 {\\n --bs-text-opacity: 0.75;\\n}\\n\\n.text-opacity-100 {\\n --bs-text-opacity: 1;\\n}\\n\\n.text-primary-emphasis {\\n color: var(--bs-primary-text-emphasis) !important;\\n}\\n\\n.text-secondary-emphasis {\\n color: var(--bs-secondary-text-emphasis) !important;\\n}\\n\\n.text-success-emphasis {\\n color: var(--bs-success-text-emphasis) !important;\\n}\\n\\n.text-info-emphasis {\\n color: var(--bs-info-text-emphasis) !important;\\n}\\n\\n.text-warning-emphasis {\\n color: var(--bs-warning-text-emphasis) !important;\\n}\\n\\n.text-danger-emphasis {\\n color: var(--bs-danger-text-emphasis) !important;\\n}\\n\\n.text-light-emphasis {\\n color: var(--bs-light-text-emphasis) !important;\\n}\\n\\n.text-dark-emphasis {\\n color: var(--bs-dark-text-emphasis) !important;\\n}\\n\\n.link-opacity-10 {\\n --bs-link-opacity: 0.1;\\n}\\n\\n.link-opacity-10-hover:hover {\\n --bs-link-opacity: 0.1;\\n}\\n\\n.link-opacity-25 {\\n --bs-link-opacity: 0.25;\\n}\\n\\n.link-opacity-25-hover:hover {\\n --bs-link-opacity: 0.25;\\n}\\n\\n.link-opacity-50 {\\n --bs-link-opacity: 0.5;\\n}\\n\\n.link-opacity-50-hover:hover {\\n --bs-link-opacity: 0.5;\\n}\\n\\n.link-opacity-75 {\\n --bs-link-opacity: 0.75;\\n}\\n\\n.link-opacity-75-hover:hover {\\n --bs-link-opacity: 0.75;\\n}\\n\\n.link-opacity-100 {\\n --bs-link-opacity: 1;\\n}\\n\\n.link-opacity-100-hover:hover {\\n --bs-link-opacity: 1;\\n}\\n\\n.link-offset-1 {\\n text-underline-offset: 0.125em !important;\\n}\\n\\n.link-offset-1-hover:hover {\\n text-underline-offset: 0.125em !important;\\n}\\n\\n.link-offset-2 {\\n text-underline-offset: 0.25em !important;\\n}\\n\\n.link-offset-2-hover:hover {\\n text-underline-offset: 0.25em !important;\\n}\\n\\n.link-offset-3 {\\n text-underline-offset: 0.375em !important;\\n}\\n\\n.link-offset-3-hover:hover {\\n text-underline-offset: 0.375em !important;\\n}\\n\\n.link-underline-primary {\\n --bs-link-underline-opacity: 1;\\n -webkit-text-decoration-color: rgba(var(--bs-primary-rgb), var(--bs-link-underline-opacity)) !important;\\n text-decoration-color: rgba(var(--bs-primary-rgb), var(--bs-link-underline-opacity)) !important;\\n}\\n\\n.link-underline-secondary {\\n --bs-link-underline-opacity: 1;\\n -webkit-text-decoration-color: rgba(var(--bs-secondary-rgb), var(--bs-link-underline-opacity)) !important;\\n text-decoration-color: rgba(var(--bs-secondary-rgb), var(--bs-link-underline-opacity)) !important;\\n}\\n\\n.link-underline-success {\\n --bs-link-underline-opacity: 1;\\n -webkit-text-decoration-color: rgba(var(--bs-success-rgb), var(--bs-link-underline-opacity)) !important;\\n text-decoration-color: rgba(var(--bs-success-rgb), var(--bs-link-underline-opacity)) !important;\\n}\\n\\n.link-underline-info {\\n --bs-link-underline-opacity: 1;\\n -webkit-text-decoration-color: rgba(var(--bs-info-rgb), var(--bs-link-underline-opacity)) !important;\\n text-decoration-color: rgba(var(--bs-info-rgb), var(--bs-link-underline-opacity)) !important;\\n}\\n\\n.link-underline-warning {\\n --bs-link-underline-opacity: 1;\\n -webkit-text-decoration-color: rgba(var(--bs-warning-rgb), var(--bs-link-underline-opacity)) !important;\\n text-decoration-color: rgba(var(--bs-warning-rgb), var(--bs-link-underline-opacity)) !important;\\n}\\n\\n.link-underline-danger {\\n --bs-link-underline-opacity: 1;\\n -webkit-text-decoration-color: rgba(var(--bs-danger-rgb), var(--bs-link-underline-opacity)) !important;\\n text-decoration-color: rgba(var(--bs-danger-rgb), var(--bs-link-underline-opacity)) !important;\\n}\\n\\n.link-underline-light {\\n --bs-link-underline-opacity: 1;\\n -webkit-text-decoration-color: rgba(var(--bs-light-rgb), var(--bs-link-underline-opacity)) !important;\\n text-decoration-color: rgba(var(--bs-light-rgb), var(--bs-link-underline-opacity)) !important;\\n}\\n\\n.link-underline-dark {\\n --bs-link-underline-opacity: 1;\\n -webkit-text-decoration-color: rgba(var(--bs-dark-rgb), var(--bs-link-underline-opacity)) !important;\\n text-decoration-color: rgba(var(--bs-dark-rgb), var(--bs-link-underline-opacity)) !important;\\n}\\n\\n.link-underline {\\n --bs-link-underline-opacity: 1;\\n -webkit-text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-underline-opacity, 1)) !important;\\n text-decoration-color: rgba(var(--bs-link-color-rgb), var(--bs-link-underline-opacity, 1)) !important;\\n}\\n\\n.link-underline-opacity-0 {\\n --bs-link-underline-opacity: 0;\\n}\\n\\n.link-underline-opacity-0-hover:hover {\\n --bs-link-underline-opacity: 0;\\n}\\n\\n.link-underline-opacity-10 {\\n --bs-link-underline-opacity: 0.1;\\n}\\n\\n.link-underline-opacity-10-hover:hover {\\n --bs-link-underline-opacity: 0.1;\\n}\\n\\n.link-underline-opacity-25 {\\n --bs-link-underline-opacity: 0.25;\\n}\\n\\n.link-underline-opacity-25-hover:hover {\\n --bs-link-underline-opacity: 0.25;\\n}\\n\\n.link-underline-opacity-50 {\\n --bs-link-underline-opacity: 0.5;\\n}\\n\\n.link-underline-opacity-50-hover:hover {\\n --bs-link-underline-opacity: 0.5;\\n}\\n\\n.link-underline-opacity-75 {\\n --bs-link-underline-opacity: 0.75;\\n}\\n\\n.link-underline-opacity-75-hover:hover {\\n --bs-link-underline-opacity: 0.75;\\n}\\n\\n.link-underline-opacity-100 {\\n --bs-link-underline-opacity: 1;\\n}\\n\\n.link-underline-opacity-100-hover:hover {\\n --bs-link-underline-opacity: 1;\\n}\\n\\n.bg-primary {\\n --bs-bg-opacity: 1;\\n background-color: rgba(var(--bs-primary-rgb), var(--bs-bg-opacity)) !important;\\n}\\n\\n.bg-secondary {\\n --bs-bg-opacity: 1;\\n background-color: rgba(var(--bs-secondary-rgb), var(--bs-bg-opacity)) !important;\\n}\\n\\n.bg-success {\\n --bs-bg-opacity: 1;\\n background-color: rgba(var(--bs-success-rgb), var(--bs-bg-opacity)) !important;\\n}\\n\\n.bg-info {\\n --bs-bg-opacity: 1;\\n background-color: rgba(var(--bs-info-rgb), var(--bs-bg-opacity)) !important;\\n}\\n\\n.bg-warning {\\n --bs-bg-opacity: 1;\\n background-color: rgba(var(--bs-warning-rgb), var(--bs-bg-opacity)) !important;\\n}\\n\\n.bg-danger {\\n --bs-bg-opacity: 1;\\n background-color: rgba(var(--bs-danger-rgb), var(--bs-bg-opacity)) !important;\\n}\\n\\n.bg-light {\\n --bs-bg-opacity: 1;\\n background-color: rgba(var(--bs-light-rgb), var(--bs-bg-opacity)) !important;\\n}\\n\\n.bg-dark {\\n --bs-bg-opacity: 1;\\n background-color: rgba(var(--bs-dark-rgb), var(--bs-bg-opacity)) !important;\\n}\\n\\n.bg-black {\\n --bs-bg-opacity: 1;\\n background-color: rgba(var(--bs-black-rgb), var(--bs-bg-opacity)) !important;\\n}\\n\\n.bg-white {\\n --bs-bg-opacity: 1;\\n background-color: rgba(var(--bs-white-rgb), var(--bs-bg-opacity)) !important;\\n}\\n\\n.bg-body {\\n --bs-bg-opacity: 1;\\n background-color: rgba(var(--bs-body-bg-rgb), var(--bs-bg-opacity)) !important;\\n}\\n\\n.bg-transparent {\\n --bs-bg-opacity: 1;\\n background-color: transparent !important;\\n}\\n\\n.bg-body-secondary {\\n --bs-bg-opacity: 1;\\n background-color: rgba(var(--bs-secondary-bg-rgb), var(--bs-bg-opacity)) !important;\\n}\\n\\n.bg-body-tertiary {\\n --bs-bg-opacity: 1;\\n background-color: rgba(var(--bs-tertiary-bg-rgb), var(--bs-bg-opacity)) !important;\\n}\\n\\n.bg-opacity-10 {\\n --bs-bg-opacity: 0.1;\\n}\\n\\n.bg-opacity-25 {\\n --bs-bg-opacity: 0.25;\\n}\\n\\n.bg-opacity-50 {\\n --bs-bg-opacity: 0.5;\\n}\\n\\n.bg-opacity-75 {\\n --bs-bg-opacity: 0.75;\\n}\\n\\n.bg-opacity-100 {\\n --bs-bg-opacity: 1;\\n}\\n\\n.bg-primary-subtle {\\n background-color: var(--bs-primary-bg-subtle) !important;\\n}\\n\\n.bg-secondary-subtle {\\n background-color: var(--bs-secondary-bg-subtle) !important;\\n}\\n\\n.bg-success-subtle {\\n background-color: var(--bs-success-bg-subtle) !important;\\n}\\n\\n.bg-info-subtle {\\n background-color: var(--bs-info-bg-subtle) !important;\\n}\\n\\n.bg-warning-subtle {\\n background-color: var(--bs-warning-bg-subtle) !important;\\n}\\n\\n.bg-danger-subtle {\\n background-color: var(--bs-danger-bg-subtle) !important;\\n}\\n\\n.bg-light-subtle {\\n background-color: var(--bs-light-bg-subtle) !important;\\n}\\n\\n.bg-dark-subtle {\\n background-color: var(--bs-dark-bg-subtle) !important;\\n}\\n\\n.bg-gradient {\\n background-image: var(--bs-gradient) !important;\\n}\\n\\n.user-select-all {\\n -webkit-user-select: all !important;\\n -moz-user-select: all !important;\\n user-select: all !important;\\n}\\n\\n.user-select-auto {\\n -webkit-user-select: auto !important;\\n -moz-user-select: auto !important;\\n user-select: auto !important;\\n}\\n\\n.user-select-none {\\n -webkit-user-select: none !important;\\n -moz-user-select: none !important;\\n user-select: none !important;\\n}\\n\\n.pe-none {\\n pointer-events: none !important;\\n}\\n\\n.pe-auto {\\n pointer-events: auto !important;\\n}\\n\\n.rounded {\\n border-radius: var(--bs-border-radius) !important;\\n}\\n\\n.rounded-0 {\\n border-radius: 0 !important;\\n}\\n\\n.rounded-1 {\\n border-radius: var(--bs-border-radius-sm) !important;\\n}\\n\\n.rounded-2 {\\n border-radius: var(--bs-border-radius) !important;\\n}\\n\\n.rounded-3 {\\n border-radius: var(--bs-border-radius-lg) !important;\\n}\\n\\n.rounded-4 {\\n border-radius: var(--bs-border-radius-xl) !important;\\n}\\n\\n.rounded-5 {\\n border-radius: var(--bs-border-radius-xxl) !important;\\n}\\n\\n.rounded-circle {\\n border-radius: 50% !important;\\n}\\n\\n.rounded-pill {\\n border-radius: var(--bs-border-radius-pill) !important;\\n}\\n\\n.rounded-top {\\n border-top-left-radius: var(--bs-border-radius) !important;\\n border-top-right-radius: var(--bs-border-radius) !important;\\n}\\n\\n.rounded-top-0 {\\n border-top-left-radius: 0 !important;\\n border-top-right-radius: 0 !important;\\n}\\n\\n.rounded-top-1 {\\n border-top-left-radius: var(--bs-border-radius-sm) !important;\\n border-top-right-radius: var(--bs-border-radius-sm) !important;\\n}\\n\\n.rounded-top-2 {\\n border-top-left-radius: var(--bs-border-radius) !important;\\n border-top-right-radius: var(--bs-border-radius) !important;\\n}\\n\\n.rounded-top-3 {\\n border-top-left-radius: var(--bs-border-radius-lg) !important;\\n border-top-right-radius: var(--bs-border-radius-lg) !important;\\n}\\n\\n.rounded-top-4 {\\n border-top-left-radius: var(--bs-border-radius-xl) !important;\\n border-top-right-radius: var(--bs-border-radius-xl) !important;\\n}\\n\\n.rounded-top-5 {\\n border-top-left-radius: var(--bs-border-radius-xxl) !important;\\n border-top-right-radius: var(--bs-border-radius-xxl) !important;\\n}\\n\\n.rounded-top-circle {\\n border-top-left-radius: 50% !important;\\n border-top-right-radius: 50% !important;\\n}\\n\\n.rounded-top-pill {\\n border-top-left-radius: var(--bs-border-radius-pill) !important;\\n border-top-right-radius: var(--bs-border-radius-pill) !important;\\n}\\n\\n.rounded-end {\\n border-top-right-radius: var(--bs-border-radius) !important;\\n border-bottom-right-radius: var(--bs-border-radius) !important;\\n}\\n\\n.rounded-end-0 {\\n border-top-right-radius: 0 !important;\\n border-bottom-right-radius: 0 !important;\\n}\\n\\n.rounded-end-1 {\\n border-top-right-radius: var(--bs-border-radius-sm) !important;\\n border-bottom-right-radius: var(--bs-border-radius-sm) !important;\\n}\\n\\n.rounded-end-2 {\\n border-top-right-radius: var(--bs-border-radius) !important;\\n border-bottom-right-radius: var(--bs-border-radius) !important;\\n}\\n\\n.rounded-end-3 {\\n border-top-right-radius: var(--bs-border-radius-lg) !important;\\n border-bottom-right-radius: var(--bs-border-radius-lg) !important;\\n}\\n\\n.rounded-end-4 {\\n border-top-right-radius: var(--bs-border-radius-xl) !important;\\n border-bottom-right-radius: var(--bs-border-radius-xl) !important;\\n}\\n\\n.rounded-end-5 {\\n border-top-right-radius: var(--bs-border-radius-xxl) !important;\\n border-bottom-right-radius: var(--bs-border-radius-xxl) !important;\\n}\\n\\n.rounded-end-circle {\\n border-top-right-radius: 50% !important;\\n border-bottom-right-radius: 50% !important;\\n}\\n\\n.rounded-end-pill {\\n border-top-right-radius: var(--bs-border-radius-pill) !important;\\n border-bottom-right-radius: var(--bs-border-radius-pill) !important;\\n}\\n\\n.rounded-bottom {\\n border-bottom-right-radius: var(--bs-border-radius) !important;\\n border-bottom-left-radius: var(--bs-border-radius) !important;\\n}\\n\\n.rounded-bottom-0 {\\n border-bottom-right-radius: 0 !important;\\n border-bottom-left-radius: 0 !important;\\n}\\n\\n.rounded-bottom-1 {\\n border-bottom-right-radius: var(--bs-border-radius-sm) !important;\\n border-bottom-left-radius: var(--bs-border-radius-sm) !important;\\n}\\n\\n.rounded-bottom-2 {\\n border-bottom-right-radius: var(--bs-border-radius) !important;\\n border-bottom-left-radius: var(--bs-border-radius) !important;\\n}\\n\\n.rounded-bottom-3 {\\n border-bottom-right-radius: var(--bs-border-radius-lg) !important;\\n border-bottom-left-radius: var(--bs-border-radius-lg) !important;\\n}\\n\\n.rounded-bottom-4 {\\n border-bottom-right-radius: var(--bs-border-radius-xl) !important;\\n border-bottom-left-radius: var(--bs-border-radius-xl) !important;\\n}\\n\\n.rounded-bottom-5 {\\n border-bottom-right-radius: var(--bs-border-radius-xxl) !important;\\n border-bottom-left-radius: var(--bs-border-radius-xxl) !important;\\n}\\n\\n.rounded-bottom-circle {\\n border-bottom-right-radius: 50% !important;\\n border-bottom-left-radius: 50% !important;\\n}\\n\\n.rounded-bottom-pill {\\n border-bottom-right-radius: var(--bs-border-radius-pill) !important;\\n border-bottom-left-radius: var(--bs-border-radius-pill) !important;\\n}\\n\\n.rounded-start {\\n border-bottom-left-radius: var(--bs-border-radius) !important;\\n border-top-left-radius: var(--bs-border-radius) !important;\\n}\\n\\n.rounded-start-0 {\\n border-bottom-left-radius: 0 !important;\\n border-top-left-radius: 0 !important;\\n}\\n\\n.rounded-start-1 {\\n border-bottom-left-radius: var(--bs-border-radius-sm) !important;\\n border-top-left-radius: var(--bs-border-radius-sm) !important;\\n}\\n\\n.rounded-start-2 {\\n border-bottom-left-radius: var(--bs-border-radius) !important;\\n border-top-left-radius: var(--bs-border-radius) !important;\\n}\\n\\n.rounded-start-3 {\\n border-bottom-left-radius: var(--bs-border-radius-lg) !important;\\n border-top-left-radius: var(--bs-border-radius-lg) !important;\\n}\\n\\n.rounded-start-4 {\\n border-bottom-left-radius: var(--bs-border-radius-xl) !important;\\n border-top-left-radius: var(--bs-border-radius-xl) !important;\\n}\\n\\n.rounded-start-5 {\\n border-bottom-left-radius: var(--bs-border-radius-xxl) !important;\\n border-top-left-radius: var(--bs-border-radius-xxl) !important;\\n}\\n\\n.rounded-start-circle {\\n border-bottom-left-radius: 50% !important;\\n border-top-left-radius: 50% !important;\\n}\\n\\n.rounded-start-pill {\\n border-bottom-left-radius: var(--bs-border-radius-pill) !important;\\n border-top-left-radius: var(--bs-border-radius-pill) !important;\\n}\\n\\n.visible {\\n visibility: visible !important;\\n}\\n\\n.invisible {\\n visibility: hidden !important;\\n}\\n\\n.z-n1 {\\n z-index: -1 !important;\\n}\\n\\n.z-0 {\\n z-index: 0 !important;\\n}\\n\\n.z-1 {\\n z-index: 1 !important;\\n}\\n\\n.z-2 {\\n z-index: 2 !important;\\n}\\n\\n.z-3 {\\n z-index: 3 !important;\\n}\\n\\n@media (min-width: 576px) {\\n .float-sm-start {\\n float: left !important;\\n }\\n .float-sm-end {\\n float: right !important;\\n }\\n .float-sm-none {\\n float: none !important;\\n }\\n .object-fit-sm-contain {\\n -o-object-fit: contain !important;\\n object-fit: contain !important;\\n }\\n .object-fit-sm-cover {\\n -o-object-fit: cover !important;\\n object-fit: cover !important;\\n }\\n .object-fit-sm-fill {\\n -o-object-fit: fill !important;\\n object-fit: fill !important;\\n }\\n .object-fit-sm-scale {\\n -o-object-fit: scale-down !important;\\n object-fit: scale-down !important;\\n }\\n .object-fit-sm-none {\\n -o-object-fit: none !important;\\n object-fit: none !important;\\n }\\n .d-sm-inline {\\n display: inline !important;\\n }\\n .d-sm-inline-block {\\n display: inline-block !important;\\n }\\n .d-sm-block {\\n display: block !important;\\n }\\n .d-sm-grid {\\n display: grid !important;\\n }\\n .d-sm-inline-grid {\\n display: inline-grid !important;\\n }\\n .d-sm-table {\\n display: table !important;\\n }\\n .d-sm-table-row {\\n display: table-row !important;\\n }\\n .d-sm-table-cell {\\n display: table-cell !important;\\n }\\n .d-sm-flex {\\n display: flex !important;\\n }\\n .d-sm-inline-flex {\\n display: inline-flex !important;\\n }\\n .d-sm-none {\\n display: none !important;\\n }\\n .flex-sm-fill {\\n flex: 1 1 auto !important;\\n }\\n .flex-sm-row {\\n flex-direction: row !important;\\n }\\n .flex-sm-column {\\n flex-direction: column !important;\\n }\\n .flex-sm-row-reverse {\\n flex-direction: row-reverse !important;\\n }\\n .flex-sm-column-reverse {\\n flex-direction: column-reverse !important;\\n }\\n .flex-sm-grow-0 {\\n flex-grow: 0 !important;\\n }\\n .flex-sm-grow-1 {\\n flex-grow: 1 !important;\\n }\\n .flex-sm-shrink-0 {\\n flex-shrink: 0 !important;\\n }\\n .flex-sm-shrink-1 {\\n flex-shrink: 1 !important;\\n }\\n .flex-sm-wrap {\\n flex-wrap: wrap !important;\\n }\\n .flex-sm-nowrap {\\n flex-wrap: nowrap !important;\\n }\\n .flex-sm-wrap-reverse {\\n flex-wrap: wrap-reverse !important;\\n }\\n .justify-content-sm-start {\\n justify-content: flex-start !important;\\n }\\n .justify-content-sm-end {\\n justify-content: flex-end !important;\\n }\\n .justify-content-sm-center {\\n justify-content: center !important;\\n }\\n .justify-content-sm-between {\\n justify-content: space-between !important;\\n }\\n .justify-content-sm-around {\\n justify-content: space-around !important;\\n }\\n .justify-content-sm-evenly {\\n justify-content: space-evenly !important;\\n }\\n .align-items-sm-start {\\n align-items: flex-start !important;\\n }\\n .align-items-sm-end {\\n align-items: flex-end !important;\\n }\\n .align-items-sm-center {\\n align-items: center !important;\\n }\\n .align-items-sm-baseline {\\n align-items: baseline !important;\\n }\\n .align-items-sm-stretch {\\n align-items: stretch !important;\\n }\\n .align-content-sm-start {\\n align-content: flex-start !important;\\n }\\n .align-content-sm-end {\\n align-content: flex-end !important;\\n }\\n .align-content-sm-center {\\n align-content: center !important;\\n }\\n .align-content-sm-between {\\n align-content: space-between !important;\\n }\\n .align-content-sm-around {\\n align-content: space-around !important;\\n }\\n .align-content-sm-stretch {\\n align-content: stretch !important;\\n }\\n .align-self-sm-auto {\\n align-self: auto !important;\\n }\\n .align-self-sm-start {\\n align-self: flex-start !important;\\n }\\n .align-self-sm-end {\\n align-self: flex-end !important;\\n }\\n .align-self-sm-center {\\n align-self: center !important;\\n }\\n .align-self-sm-baseline {\\n align-self: baseline !important;\\n }\\n .align-self-sm-stretch {\\n align-self: stretch !important;\\n }\\n .order-sm-first {\\n order: -1 !important;\\n }\\n .order-sm-0 {\\n order: 0 !important;\\n }\\n .order-sm-1 {\\n order: 1 !important;\\n }\\n .order-sm-2 {\\n order: 2 !important;\\n }\\n .order-sm-3 {\\n order: 3 !important;\\n }\\n .order-sm-4 {\\n order: 4 !important;\\n }\\n .order-sm-5 {\\n order: 5 !important;\\n }\\n .order-sm-last {\\n order: 6 !important;\\n }\\n .m-sm-0 {\\n margin: 0 !important;\\n }\\n .m-sm-1 {\\n margin: 0.25rem !important;\\n }\\n .m-sm-2 {\\n margin: 0.5rem !important;\\n }\\n .m-sm-3 {\\n margin: 1rem !important;\\n }\\n .m-sm-4 {\\n margin: 1.5rem !important;\\n }\\n .m-sm-5 {\\n margin: 3rem !important;\\n }\\n .m-sm-auto {\\n margin: auto !important;\\n }\\n .mx-sm-0 {\\n margin-right: 0 !important;\\n margin-left: 0 !important;\\n }\\n .mx-sm-1 {\\n margin-right: 0.25rem !important;\\n margin-left: 0.25rem !important;\\n }\\n .mx-sm-2 {\\n margin-right: 0.5rem !important;\\n margin-left: 0.5rem !important;\\n }\\n .mx-sm-3 {\\n margin-right: 1rem !important;\\n margin-left: 1rem !important;\\n }\\n .mx-sm-4 {\\n margin-right: 1.5rem !important;\\n margin-left: 1.5rem !important;\\n }\\n .mx-sm-5 {\\n margin-right: 3rem !important;\\n margin-left: 3rem !important;\\n }\\n .mx-sm-auto {\\n margin-right: auto !important;\\n margin-left: auto !important;\\n }\\n .my-sm-0 {\\n margin-top: 0 !important;\\n margin-bottom: 0 !important;\\n }\\n .my-sm-1 {\\n margin-top: 0.25rem !important;\\n margin-bottom: 0.25rem !important;\\n }\\n .my-sm-2 {\\n margin-top: 0.5rem !important;\\n margin-bottom: 0.5rem !important;\\n }\\n .my-sm-3 {\\n margin-top: 1rem !important;\\n margin-bottom: 1rem !important;\\n }\\n .my-sm-4 {\\n margin-top: 1.5rem !important;\\n margin-bottom: 1.5rem !important;\\n }\\n .my-sm-5 {\\n margin-top: 3rem !important;\\n margin-bottom: 3rem !important;\\n }\\n .my-sm-auto {\\n margin-top: auto !important;\\n margin-bottom: auto !important;\\n }\\n .mt-sm-0 {\\n margin-top: 0 !important;\\n }\\n .mt-sm-1 {\\n margin-top: 0.25rem !important;\\n }\\n .mt-sm-2 {\\n margin-top: 0.5rem !important;\\n }\\n .mt-sm-3 {\\n margin-top: 1rem !important;\\n }\\n .mt-sm-4 {\\n margin-top: 1.5rem !important;\\n }\\n .mt-sm-5 {\\n margin-top: 3rem !important;\\n }\\n .mt-sm-auto {\\n margin-top: auto !important;\\n }\\n .me-sm-0 {\\n margin-right: 0 !important;\\n }\\n .me-sm-1 {\\n margin-right: 0.25rem !important;\\n }\\n .me-sm-2 {\\n margin-right: 0.5rem !important;\\n }\\n .me-sm-3 {\\n margin-right: 1rem !important;\\n }\\n .me-sm-4 {\\n margin-right: 1.5rem !important;\\n }\\n .me-sm-5 {\\n margin-right: 3rem !important;\\n }\\n .me-sm-auto {\\n margin-right: auto !important;\\n }\\n .mb-sm-0 {\\n margin-bottom: 0 !important;\\n }\\n .mb-sm-1 {\\n margin-bottom: 0.25rem !important;\\n }\\n .mb-sm-2 {\\n margin-bottom: 0.5rem !important;\\n }\\n .mb-sm-3 {\\n margin-bottom: 1rem !important;\\n }\\n .mb-sm-4 {\\n margin-bottom: 1.5rem !important;\\n }\\n .mb-sm-5 {\\n margin-bottom: 3rem !important;\\n }\\n .mb-sm-auto {\\n margin-bottom: auto !important;\\n }\\n .ms-sm-0 {\\n margin-left: 0 !important;\\n }\\n .ms-sm-1 {\\n margin-left: 0.25rem !important;\\n }\\n .ms-sm-2 {\\n margin-left: 0.5rem !important;\\n }\\n .ms-sm-3 {\\n margin-left: 1rem !important;\\n }\\n .ms-sm-4 {\\n margin-left: 1.5rem !important;\\n }\\n .ms-sm-5 {\\n margin-left: 3rem !important;\\n }\\n .ms-sm-auto {\\n margin-left: auto !important;\\n }\\n .p-sm-0 {\\n padding: 0 !important;\\n }\\n .p-sm-1 {\\n padding: 0.25rem !important;\\n }\\n .p-sm-2 {\\n padding: 0.5rem !important;\\n }\\n .p-sm-3 {\\n padding: 1rem !important;\\n }\\n .p-sm-4 {\\n padding: 1.5rem !important;\\n }\\n .p-sm-5 {\\n padding: 3rem !important;\\n }\\n .px-sm-0 {\\n padding-right: 0 !important;\\n padding-left: 0 !important;\\n }\\n .px-sm-1 {\\n padding-right: 0.25rem !important;\\n padding-left: 0.25rem !important;\\n }\\n .px-sm-2 {\\n padding-right: 0.5rem !important;\\n padding-left: 0.5rem !important;\\n }\\n .px-sm-3 {\\n padding-right: 1rem !important;\\n padding-left: 1rem !important;\\n }\\n .px-sm-4 {\\n padding-right: 1.5rem !important;\\n padding-left: 1.5rem !important;\\n }\\n .px-sm-5 {\\n padding-right: 3rem !important;\\n padding-left: 3rem !important;\\n }\\n .py-sm-0 {\\n padding-top: 0 !important;\\n padding-bottom: 0 !important;\\n }\\n .py-sm-1 {\\n padding-top: 0.25rem !important;\\n padding-bottom: 0.25rem !important;\\n }\\n .py-sm-2 {\\n padding-top: 0.5rem !important;\\n padding-bottom: 0.5rem !important;\\n }\\n .py-sm-3 {\\n padding-top: 1rem !important;\\n padding-bottom: 1rem !important;\\n }\\n .py-sm-4 {\\n padding-top: 1.5rem !important;\\n padding-bottom: 1.5rem !important;\\n }\\n .py-sm-5 {\\n padding-top: 3rem !important;\\n padding-bottom: 3rem !important;\\n }\\n .pt-sm-0 {\\n padding-top: 0 !important;\\n }\\n .pt-sm-1 {\\n padding-top: 0.25rem !important;\\n }\\n .pt-sm-2 {\\n padding-top: 0.5rem !important;\\n }\\n .pt-sm-3 {\\n padding-top: 1rem !important;\\n }\\n .pt-sm-4 {\\n padding-top: 1.5rem !important;\\n }\\n .pt-sm-5 {\\n padding-top: 3rem !important;\\n }\\n .pe-sm-0 {\\n padding-right: 0 !important;\\n }\\n .pe-sm-1 {\\n padding-right: 0.25rem !important;\\n }\\n .pe-sm-2 {\\n padding-right: 0.5rem !important;\\n }\\n .pe-sm-3 {\\n padding-right: 1rem !important;\\n }\\n .pe-sm-4 {\\n padding-right: 1.5rem !important;\\n }\\n .pe-sm-5 {\\n padding-right: 3rem !important;\\n }\\n .pb-sm-0 {\\n padding-bottom: 0 !important;\\n }\\n .pb-sm-1 {\\n padding-bottom: 0.25rem !important;\\n }\\n .pb-sm-2 {\\n padding-bottom: 0.5rem !important;\\n }\\n .pb-sm-3 {\\n padding-bottom: 1rem !important;\\n }\\n .pb-sm-4 {\\n padding-bottom: 1.5rem !important;\\n }\\n .pb-sm-5 {\\n padding-bottom: 3rem !important;\\n }\\n .ps-sm-0 {\\n padding-left: 0 !important;\\n }\\n .ps-sm-1 {\\n padding-left: 0.25rem !important;\\n }\\n .ps-sm-2 {\\n padding-left: 0.5rem !important;\\n }\\n .ps-sm-3 {\\n padding-left: 1rem !important;\\n }\\n .ps-sm-4 {\\n padding-left: 1.5rem !important;\\n }\\n .ps-sm-5 {\\n padding-left: 3rem !important;\\n }\\n .gap-sm-0 {\\n gap: 0 !important;\\n }\\n .gap-sm-1 {\\n gap: 0.25rem !important;\\n }\\n .gap-sm-2 {\\n gap: 0.5rem !important;\\n }\\n .gap-sm-3 {\\n gap: 1rem !important;\\n }\\n .gap-sm-4 {\\n gap: 1.5rem !important;\\n }\\n .gap-sm-5 {\\n gap: 3rem !important;\\n }\\n .row-gap-sm-0 {\\n row-gap: 0 !important;\\n }\\n .row-gap-sm-1 {\\n row-gap: 0.25rem !important;\\n }\\n .row-gap-sm-2 {\\n row-gap: 0.5rem !important;\\n }\\n .row-gap-sm-3 {\\n row-gap: 1rem !important;\\n }\\n .row-gap-sm-4 {\\n row-gap: 1.5rem !important;\\n }\\n .row-gap-sm-5 {\\n row-gap: 3rem !important;\\n }\\n .column-gap-sm-0 {\\n -moz-column-gap: 0 !important;\\n column-gap: 0 !important;\\n }\\n .column-gap-sm-1 {\\n -moz-column-gap: 0.25rem !important;\\n column-gap: 0.25rem !important;\\n }\\n .column-gap-sm-2 {\\n -moz-column-gap: 0.5rem !important;\\n column-gap: 0.5rem !important;\\n }\\n .column-gap-sm-3 {\\n -moz-column-gap: 1rem !important;\\n column-gap: 1rem !important;\\n }\\n .column-gap-sm-4 {\\n -moz-column-gap: 1.5rem !important;\\n column-gap: 1.5rem !important;\\n }\\n .column-gap-sm-5 {\\n -moz-column-gap: 3rem !important;\\n column-gap: 3rem !important;\\n }\\n .text-sm-start {\\n text-align: left !important;\\n }\\n .text-sm-end {\\n text-align: right !important;\\n }\\n .text-sm-center {\\n text-align: center !important;\\n }\\n}\\n@media (min-width: 768px) {\\n .float-md-start {\\n float: left !important;\\n }\\n .float-md-end {\\n float: right !important;\\n }\\n .float-md-none {\\n float: none !important;\\n }\\n .object-fit-md-contain {\\n -o-object-fit: contain !important;\\n object-fit: contain !important;\\n }\\n .object-fit-md-cover {\\n -o-object-fit: cover !important;\\n object-fit: cover !important;\\n }\\n .object-fit-md-fill {\\n -o-object-fit: fill !important;\\n object-fit: fill !important;\\n }\\n .object-fit-md-scale {\\n -o-object-fit: scale-down !important;\\n object-fit: scale-down !important;\\n }\\n .object-fit-md-none {\\n -o-object-fit: none !important;\\n object-fit: none !important;\\n }\\n .d-md-inline {\\n display: inline !important;\\n }\\n .d-md-inline-block {\\n display: inline-block !important;\\n }\\n .d-md-block {\\n display: block !important;\\n }\\n .d-md-grid {\\n display: grid !important;\\n }\\n .d-md-inline-grid {\\n display: inline-grid !important;\\n }\\n .d-md-table {\\n display: table !important;\\n }\\n .d-md-table-row {\\n display: table-row !important;\\n }\\n .d-md-table-cell {\\n display: table-cell !important;\\n }\\n .d-md-flex {\\n display: flex !important;\\n }\\n .d-md-inline-flex {\\n display: inline-flex !important;\\n }\\n .d-md-none {\\n display: none !important;\\n }\\n .flex-md-fill {\\n flex: 1 1 auto !important;\\n }\\n .flex-md-row {\\n flex-direction: row !important;\\n }\\n .flex-md-column {\\n flex-direction: column !important;\\n }\\n .flex-md-row-reverse {\\n flex-direction: row-reverse !important;\\n }\\n .flex-md-column-reverse {\\n flex-direction: column-reverse !important;\\n }\\n .flex-md-grow-0 {\\n flex-grow: 0 !important;\\n }\\n .flex-md-grow-1 {\\n flex-grow: 1 !important;\\n }\\n .flex-md-shrink-0 {\\n flex-shrink: 0 !important;\\n }\\n .flex-md-shrink-1 {\\n flex-shrink: 1 !important;\\n }\\n .flex-md-wrap {\\n flex-wrap: wrap !important;\\n }\\n .flex-md-nowrap {\\n flex-wrap: nowrap !important;\\n }\\n .flex-md-wrap-reverse {\\n flex-wrap: wrap-reverse !important;\\n }\\n .justify-content-md-start {\\n justify-content: flex-start !important;\\n }\\n .justify-content-md-end {\\n justify-content: flex-end !important;\\n }\\n .justify-content-md-center {\\n justify-content: center !important;\\n }\\n .justify-content-md-between {\\n justify-content: space-between !important;\\n }\\n .justify-content-md-around {\\n justify-content: space-around !important;\\n }\\n .justify-content-md-evenly {\\n justify-content: space-evenly !important;\\n }\\n .align-items-md-start {\\n align-items: flex-start !important;\\n }\\n .align-items-md-end {\\n align-items: flex-end !important;\\n }\\n .align-items-md-center {\\n align-items: center !important;\\n }\\n .align-items-md-baseline {\\n align-items: baseline !important;\\n }\\n .align-items-md-stretch {\\n align-items: stretch !important;\\n }\\n .align-content-md-start {\\n align-content: flex-start !important;\\n }\\n .align-content-md-end {\\n align-content: flex-end !important;\\n }\\n .align-content-md-center {\\n align-content: center !important;\\n }\\n .align-content-md-between {\\n align-content: space-between !important;\\n }\\n .align-content-md-around {\\n align-content: space-around !important;\\n }\\n .align-content-md-stretch {\\n align-content: stretch !important;\\n }\\n .align-self-md-auto {\\n align-self: auto !important;\\n }\\n .align-self-md-start {\\n align-self: flex-start !important;\\n }\\n .align-self-md-end {\\n align-self: flex-end !important;\\n }\\n .align-self-md-center {\\n align-self: center !important;\\n }\\n .align-self-md-baseline {\\n align-self: baseline !important;\\n }\\n .align-self-md-stretch {\\n align-self: stretch !important;\\n }\\n .order-md-first {\\n order: -1 !important;\\n }\\n .order-md-0 {\\n order: 0 !important;\\n }\\n .order-md-1 {\\n order: 1 !important;\\n }\\n .order-md-2 {\\n order: 2 !important;\\n }\\n .order-md-3 {\\n order: 3 !important;\\n }\\n .order-md-4 {\\n order: 4 !important;\\n }\\n .order-md-5 {\\n order: 5 !important;\\n }\\n .order-md-last {\\n order: 6 !important;\\n }\\n .m-md-0 {\\n margin: 0 !important;\\n }\\n .m-md-1 {\\n margin: 0.25rem !important;\\n }\\n .m-md-2 {\\n margin: 0.5rem !important;\\n }\\n .m-md-3 {\\n margin: 1rem !important;\\n }\\n .m-md-4 {\\n margin: 1.5rem !important;\\n }\\n .m-md-5 {\\n margin: 3rem !important;\\n }\\n .m-md-auto {\\n margin: auto !important;\\n }\\n .mx-md-0 {\\n margin-right: 0 !important;\\n margin-left: 0 !important;\\n }\\n .mx-md-1 {\\n margin-right: 0.25rem !important;\\n margin-left: 0.25rem !important;\\n }\\n .mx-md-2 {\\n margin-right: 0.5rem !important;\\n margin-left: 0.5rem !important;\\n }\\n .mx-md-3 {\\n margin-right: 1rem !important;\\n margin-left: 1rem !important;\\n }\\n .mx-md-4 {\\n margin-right: 1.5rem !important;\\n margin-left: 1.5rem !important;\\n }\\n .mx-md-5 {\\n margin-right: 3rem !important;\\n margin-left: 3rem !important;\\n }\\n .mx-md-auto {\\n margin-right: auto !important;\\n margin-left: auto !important;\\n }\\n .my-md-0 {\\n margin-top: 0 !important;\\n margin-bottom: 0 !important;\\n }\\n .my-md-1 {\\n margin-top: 0.25rem !important;\\n margin-bottom: 0.25rem !important;\\n }\\n .my-md-2 {\\n margin-top: 0.5rem !important;\\n margin-bottom: 0.5rem !important;\\n }\\n .my-md-3 {\\n margin-top: 1rem !important;\\n margin-bottom: 1rem !important;\\n }\\n .my-md-4 {\\n margin-top: 1.5rem !important;\\n margin-bottom: 1.5rem !important;\\n }\\n .my-md-5 {\\n margin-top: 3rem !important;\\n margin-bottom: 3rem !important;\\n }\\n .my-md-auto {\\n margin-top: auto !important;\\n margin-bottom: auto !important;\\n }\\n .mt-md-0 {\\n margin-top: 0 !important;\\n }\\n .mt-md-1 {\\n margin-top: 0.25rem !important;\\n }\\n .mt-md-2 {\\n margin-top: 0.5rem !important;\\n }\\n .mt-md-3 {\\n margin-top: 1rem !important;\\n }\\n .mt-md-4 {\\n margin-top: 1.5rem !important;\\n }\\n .mt-md-5 {\\n margin-top: 3rem !important;\\n }\\n .mt-md-auto {\\n margin-top: auto !important;\\n }\\n .me-md-0 {\\n margin-right: 0 !important;\\n }\\n .me-md-1 {\\n margin-right: 0.25rem !important;\\n }\\n .me-md-2 {\\n margin-right: 0.5rem !important;\\n }\\n .me-md-3 {\\n margin-right: 1rem !important;\\n }\\n .me-md-4 {\\n margin-right: 1.5rem !important;\\n }\\n .me-md-5 {\\n margin-right: 3rem !important;\\n }\\n .me-md-auto {\\n margin-right: auto !important;\\n }\\n .mb-md-0 {\\n margin-bottom: 0 !important;\\n }\\n .mb-md-1 {\\n margin-bottom: 0.25rem !important;\\n }\\n .mb-md-2 {\\n margin-bottom: 0.5rem !important;\\n }\\n .mb-md-3 {\\n margin-bottom: 1rem !important;\\n }\\n .mb-md-4 {\\n margin-bottom: 1.5rem !important;\\n }\\n .mb-md-5 {\\n margin-bottom: 3rem !important;\\n }\\n .mb-md-auto {\\n margin-bottom: auto !important;\\n }\\n .ms-md-0 {\\n margin-left: 0 !important;\\n }\\n .ms-md-1 {\\n margin-left: 0.25rem !important;\\n }\\n .ms-md-2 {\\n margin-left: 0.5rem !important;\\n }\\n .ms-md-3 {\\n margin-left: 1rem !important;\\n }\\n .ms-md-4 {\\n margin-left: 1.5rem !important;\\n }\\n .ms-md-5 {\\n margin-left: 3rem !important;\\n }\\n .ms-md-auto {\\n margin-left: auto !important;\\n }\\n .p-md-0 {\\n padding: 0 !important;\\n }\\n .p-md-1 {\\n padding: 0.25rem !important;\\n }\\n .p-md-2 {\\n padding: 0.5rem !important;\\n }\\n .p-md-3 {\\n padding: 1rem !important;\\n }\\n .p-md-4 {\\n padding: 1.5rem !important;\\n }\\n .p-md-5 {\\n padding: 3rem !important;\\n }\\n .px-md-0 {\\n padding-right: 0 !important;\\n padding-left: 0 !important;\\n }\\n .px-md-1 {\\n padding-right: 0.25rem !important;\\n padding-left: 0.25rem !important;\\n }\\n .px-md-2 {\\n padding-right: 0.5rem !important;\\n padding-left: 0.5rem !important;\\n }\\n .px-md-3 {\\n padding-right: 1rem !important;\\n padding-left: 1rem !important;\\n }\\n .px-md-4 {\\n padding-right: 1.5rem !important;\\n padding-left: 1.5rem !important;\\n }\\n .px-md-5 {\\n padding-right: 3rem !important;\\n padding-left: 3rem !important;\\n }\\n .py-md-0 {\\n padding-top: 0 !important;\\n padding-bottom: 0 !important;\\n }\\n .py-md-1 {\\n padding-top: 0.25rem !important;\\n padding-bottom: 0.25rem !important;\\n }\\n .py-md-2 {\\n padding-top: 0.5rem !important;\\n padding-bottom: 0.5rem !important;\\n }\\n .py-md-3 {\\n padding-top: 1rem !important;\\n padding-bottom: 1rem !important;\\n }\\n .py-md-4 {\\n padding-top: 1.5rem !important;\\n padding-bottom: 1.5rem !important;\\n }\\n .py-md-5 {\\n padding-top: 3rem !important;\\n padding-bottom: 3rem !important;\\n }\\n .pt-md-0 {\\n padding-top: 0 !important;\\n }\\n .pt-md-1 {\\n padding-top: 0.25rem !important;\\n }\\n .pt-md-2 {\\n padding-top: 0.5rem !important;\\n }\\n .pt-md-3 {\\n padding-top: 1rem !important;\\n }\\n .pt-md-4 {\\n padding-top: 1.5rem !important;\\n }\\n .pt-md-5 {\\n padding-top: 3rem !important;\\n }\\n .pe-md-0 {\\n padding-right: 0 !important;\\n }\\n .pe-md-1 {\\n padding-right: 0.25rem !important;\\n }\\n .pe-md-2 {\\n padding-right: 0.5rem !important;\\n }\\n .pe-md-3 {\\n padding-right: 1rem !important;\\n }\\n .pe-md-4 {\\n padding-right: 1.5rem !important;\\n }\\n .pe-md-5 {\\n padding-right: 3rem !important;\\n }\\n .pb-md-0 {\\n padding-bottom: 0 !important;\\n }\\n .pb-md-1 {\\n padding-bottom: 0.25rem !important;\\n }\\n .pb-md-2 {\\n padding-bottom: 0.5rem !important;\\n }\\n .pb-md-3 {\\n padding-bottom: 1rem !important;\\n }\\n .pb-md-4 {\\n padding-bottom: 1.5rem !important;\\n }\\n .pb-md-5 {\\n padding-bottom: 3rem !important;\\n }\\n .ps-md-0 {\\n padding-left: 0 !important;\\n }\\n .ps-md-1 {\\n padding-left: 0.25rem !important;\\n }\\n .ps-md-2 {\\n padding-left: 0.5rem !important;\\n }\\n .ps-md-3 {\\n padding-left: 1rem !important;\\n }\\n .ps-md-4 {\\n padding-left: 1.5rem !important;\\n }\\n .ps-md-5 {\\n padding-left: 3rem !important;\\n }\\n .gap-md-0 {\\n gap: 0 !important;\\n }\\n .gap-md-1 {\\n gap: 0.25rem !important;\\n }\\n .gap-md-2 {\\n gap: 0.5rem !important;\\n }\\n .gap-md-3 {\\n gap: 1rem !important;\\n }\\n .gap-md-4 {\\n gap: 1.5rem !important;\\n }\\n .gap-md-5 {\\n gap: 3rem !important;\\n }\\n .row-gap-md-0 {\\n row-gap: 0 !important;\\n }\\n .row-gap-md-1 {\\n row-gap: 0.25rem !important;\\n }\\n .row-gap-md-2 {\\n row-gap: 0.5rem !important;\\n }\\n .row-gap-md-3 {\\n row-gap: 1rem !important;\\n }\\n .row-gap-md-4 {\\n row-gap: 1.5rem !important;\\n }\\n .row-gap-md-5 {\\n row-gap: 3rem !important;\\n }\\n .column-gap-md-0 {\\n -moz-column-gap: 0 !important;\\n column-gap: 0 !important;\\n }\\n .column-gap-md-1 {\\n -moz-column-gap: 0.25rem !important;\\n column-gap: 0.25rem !important;\\n }\\n .column-gap-md-2 {\\n -moz-column-gap: 0.5rem !important;\\n column-gap: 0.5rem !important;\\n }\\n .column-gap-md-3 {\\n -moz-column-gap: 1rem !important;\\n column-gap: 1rem !important;\\n }\\n .column-gap-md-4 {\\n -moz-column-gap: 1.5rem !important;\\n column-gap: 1.5rem !important;\\n }\\n .column-gap-md-5 {\\n -moz-column-gap: 3rem !important;\\n column-gap: 3rem !important;\\n }\\n .text-md-start {\\n text-align: left !important;\\n }\\n .text-md-end {\\n text-align: right !important;\\n }\\n .text-md-center {\\n text-align: center !important;\\n }\\n}\\n@media (min-width: 992px) {\\n .float-lg-start {\\n float: left !important;\\n }\\n .float-lg-end {\\n float: right !important;\\n }\\n .float-lg-none {\\n float: none !important;\\n }\\n .object-fit-lg-contain {\\n -o-object-fit: contain !important;\\n object-fit: contain !important;\\n }\\n .object-fit-lg-cover {\\n -o-object-fit: cover !important;\\n object-fit: cover !important;\\n }\\n .object-fit-lg-fill {\\n -o-object-fit: fill !important;\\n object-fit: fill !important;\\n }\\n .object-fit-lg-scale {\\n -o-object-fit: scale-down !important;\\n object-fit: scale-down !important;\\n }\\n .object-fit-lg-none {\\n -o-object-fit: none !important;\\n object-fit: none !important;\\n }\\n .d-lg-inline {\\n display: inline !important;\\n }\\n .d-lg-inline-block {\\n display: inline-block !important;\\n }\\n .d-lg-block {\\n display: block !important;\\n }\\n .d-lg-grid {\\n display: grid !important;\\n }\\n .d-lg-inline-grid {\\n display: inline-grid !important;\\n }\\n .d-lg-table {\\n display: table !important;\\n }\\n .d-lg-table-row {\\n display: table-row !important;\\n }\\n .d-lg-table-cell {\\n display: table-cell !important;\\n }\\n .d-lg-flex {\\n display: flex !important;\\n }\\n .d-lg-inline-flex {\\n display: inline-flex !important;\\n }\\n .d-lg-none {\\n display: none !important;\\n }\\n .flex-lg-fill {\\n flex: 1 1 auto !important;\\n }\\n .flex-lg-row {\\n flex-direction: row !important;\\n }\\n .flex-lg-column {\\n flex-direction: column !important;\\n }\\n .flex-lg-row-reverse {\\n flex-direction: row-reverse !important;\\n }\\n .flex-lg-column-reverse {\\n flex-direction: column-reverse !important;\\n }\\n .flex-lg-grow-0 {\\n flex-grow: 0 !important;\\n }\\n .flex-lg-grow-1 {\\n flex-grow: 1 !important;\\n }\\n .flex-lg-shrink-0 {\\n flex-shrink: 0 !important;\\n }\\n .flex-lg-shrink-1 {\\n flex-shrink: 1 !important;\\n }\\n .flex-lg-wrap {\\n flex-wrap: wrap !important;\\n }\\n .flex-lg-nowrap {\\n flex-wrap: nowrap !important;\\n }\\n .flex-lg-wrap-reverse {\\n flex-wrap: wrap-reverse !important;\\n }\\n .justify-content-lg-start {\\n justify-content: flex-start !important;\\n }\\n .justify-content-lg-end {\\n justify-content: flex-end !important;\\n }\\n .justify-content-lg-center {\\n justify-content: center !important;\\n }\\n .justify-content-lg-between {\\n justify-content: space-between !important;\\n }\\n .justify-content-lg-around {\\n justify-content: space-around !important;\\n }\\n .justify-content-lg-evenly {\\n justify-content: space-evenly !important;\\n }\\n .align-items-lg-start {\\n align-items: flex-start !important;\\n }\\n .align-items-lg-end {\\n align-items: flex-end !important;\\n }\\n .align-items-lg-center {\\n align-items: center !important;\\n }\\n .align-items-lg-baseline {\\n align-items: baseline !important;\\n }\\n .align-items-lg-stretch {\\n align-items: stretch !important;\\n }\\n .align-content-lg-start {\\n align-content: flex-start !important;\\n }\\n .align-content-lg-end {\\n align-content: flex-end !important;\\n }\\n .align-content-lg-center {\\n align-content: center !important;\\n }\\n .align-content-lg-between {\\n align-content: space-between !important;\\n }\\n .align-content-lg-around {\\n align-content: space-around !important;\\n }\\n .align-content-lg-stretch {\\n align-content: stretch !important;\\n }\\n .align-self-lg-auto {\\n align-self: auto !important;\\n }\\n .align-self-lg-start {\\n align-self: flex-start !important;\\n }\\n .align-self-lg-end {\\n align-self: flex-end !important;\\n }\\n .align-self-lg-center {\\n align-self: center !important;\\n }\\n .align-self-lg-baseline {\\n align-self: baseline !important;\\n }\\n .align-self-lg-stretch {\\n align-self: stretch !important;\\n }\\n .order-lg-first {\\n order: -1 !important;\\n }\\n .order-lg-0 {\\n order: 0 !important;\\n }\\n .order-lg-1 {\\n order: 1 !important;\\n }\\n .order-lg-2 {\\n order: 2 !important;\\n }\\n .order-lg-3 {\\n order: 3 !important;\\n }\\n .order-lg-4 {\\n order: 4 !important;\\n }\\n .order-lg-5 {\\n order: 5 !important;\\n }\\n .order-lg-last {\\n order: 6 !important;\\n }\\n .m-lg-0 {\\n margin: 0 !important;\\n }\\n .m-lg-1 {\\n margin: 0.25rem !important;\\n }\\n .m-lg-2 {\\n margin: 0.5rem !important;\\n }\\n .m-lg-3 {\\n margin: 1rem !important;\\n }\\n .m-lg-4 {\\n margin: 1.5rem !important;\\n }\\n .m-lg-5 {\\n margin: 3rem !important;\\n }\\n .m-lg-auto {\\n margin: auto !important;\\n }\\n .mx-lg-0 {\\n margin-right: 0 !important;\\n margin-left: 0 !important;\\n }\\n .mx-lg-1 {\\n margin-right: 0.25rem !important;\\n margin-left: 0.25rem !important;\\n }\\n .mx-lg-2 {\\n margin-right: 0.5rem !important;\\n margin-left: 0.5rem !important;\\n }\\n .mx-lg-3 {\\n margin-right: 1rem !important;\\n margin-left: 1rem !important;\\n }\\n .mx-lg-4 {\\n margin-right: 1.5rem !important;\\n margin-left: 1.5rem !important;\\n }\\n .mx-lg-5 {\\n margin-right: 3rem !important;\\n margin-left: 3rem !important;\\n }\\n .mx-lg-auto {\\n margin-right: auto !important;\\n margin-left: auto !important;\\n }\\n .my-lg-0 {\\n margin-top: 0 !important;\\n margin-bottom: 0 !important;\\n }\\n .my-lg-1 {\\n margin-top: 0.25rem !important;\\n margin-bottom: 0.25rem !important;\\n }\\n .my-lg-2 {\\n margin-top: 0.5rem !important;\\n margin-bottom: 0.5rem !important;\\n }\\n .my-lg-3 {\\n margin-top: 1rem !important;\\n margin-bottom: 1rem !important;\\n }\\n .my-lg-4 {\\n margin-top: 1.5rem !important;\\n margin-bottom: 1.5rem !important;\\n }\\n .my-lg-5 {\\n margin-top: 3rem !important;\\n margin-bottom: 3rem !important;\\n }\\n .my-lg-auto {\\n margin-top: auto !important;\\n margin-bottom: auto !important;\\n }\\n .mt-lg-0 {\\n margin-top: 0 !important;\\n }\\n .mt-lg-1 {\\n margin-top: 0.25rem !important;\\n }\\n .mt-lg-2 {\\n margin-top: 0.5rem !important;\\n }\\n .mt-lg-3 {\\n margin-top: 1rem !important;\\n }\\n .mt-lg-4 {\\n margin-top: 1.5rem !important;\\n }\\n .mt-lg-5 {\\n margin-top: 3rem !important;\\n }\\n .mt-lg-auto {\\n margin-top: auto !important;\\n }\\n .me-lg-0 {\\n margin-right: 0 !important;\\n }\\n .me-lg-1 {\\n margin-right: 0.25rem !important;\\n }\\n .me-lg-2 {\\n margin-right: 0.5rem !important;\\n }\\n .me-lg-3 {\\n margin-right: 1rem !important;\\n }\\n .me-lg-4 {\\n margin-right: 1.5rem !important;\\n }\\n .me-lg-5 {\\n margin-right: 3rem !important;\\n }\\n .me-lg-auto {\\n margin-right: auto !important;\\n }\\n .mb-lg-0 {\\n margin-bottom: 0 !important;\\n }\\n .mb-lg-1 {\\n margin-bottom: 0.25rem !important;\\n }\\n .mb-lg-2 {\\n margin-bottom: 0.5rem !important;\\n }\\n .mb-lg-3 {\\n margin-bottom: 1rem !important;\\n }\\n .mb-lg-4 {\\n margin-bottom: 1.5rem !important;\\n }\\n .mb-lg-5 {\\n margin-bottom: 3rem !important;\\n }\\n .mb-lg-auto {\\n margin-bottom: auto !important;\\n }\\n .ms-lg-0 {\\n margin-left: 0 !important;\\n }\\n .ms-lg-1 {\\n margin-left: 0.25rem !important;\\n }\\n .ms-lg-2 {\\n margin-left: 0.5rem !important;\\n }\\n .ms-lg-3 {\\n margin-left: 1rem !important;\\n }\\n .ms-lg-4 {\\n margin-left: 1.5rem !important;\\n }\\n .ms-lg-5 {\\n margin-left: 3rem !important;\\n }\\n .ms-lg-auto {\\n margin-left: auto !important;\\n }\\n .p-lg-0 {\\n padding: 0 !important;\\n }\\n .p-lg-1 {\\n padding: 0.25rem !important;\\n }\\n .p-lg-2 {\\n padding: 0.5rem !important;\\n }\\n .p-lg-3 {\\n padding: 1rem !important;\\n }\\n .p-lg-4 {\\n padding: 1.5rem !important;\\n }\\n .p-lg-5 {\\n padding: 3rem !important;\\n }\\n .px-lg-0 {\\n padding-right: 0 !important;\\n padding-left: 0 !important;\\n }\\n .px-lg-1 {\\n padding-right: 0.25rem !important;\\n padding-left: 0.25rem !important;\\n }\\n .px-lg-2 {\\n padding-right: 0.5rem !important;\\n padding-left: 0.5rem !important;\\n }\\n .px-lg-3 {\\n padding-right: 1rem !important;\\n padding-left: 1rem !important;\\n }\\n .px-lg-4 {\\n padding-right: 1.5rem !important;\\n padding-left: 1.5rem !important;\\n }\\n .px-lg-5 {\\n padding-right: 3rem !important;\\n padding-left: 3rem !important;\\n }\\n .py-lg-0 {\\n padding-top: 0 !important;\\n padding-bottom: 0 !important;\\n }\\n .py-lg-1 {\\n padding-top: 0.25rem !important;\\n padding-bottom: 0.25rem !important;\\n }\\n .py-lg-2 {\\n padding-top: 0.5rem !important;\\n padding-bottom: 0.5rem !important;\\n }\\n .py-lg-3 {\\n padding-top: 1rem !important;\\n padding-bottom: 1rem !important;\\n }\\n .py-lg-4 {\\n padding-top: 1.5rem !important;\\n padding-bottom: 1.5rem !important;\\n }\\n .py-lg-5 {\\n padding-top: 3rem !important;\\n padding-bottom: 3rem !important;\\n }\\n .pt-lg-0 {\\n padding-top: 0 !important;\\n }\\n .pt-lg-1 {\\n padding-top: 0.25rem !important;\\n }\\n .pt-lg-2 {\\n padding-top: 0.5rem !important;\\n }\\n .pt-lg-3 {\\n padding-top: 1rem !important;\\n }\\n .pt-lg-4 {\\n padding-top: 1.5rem !important;\\n }\\n .pt-lg-5 {\\n padding-top: 3rem !important;\\n }\\n .pe-lg-0 {\\n padding-right: 0 !important;\\n }\\n .pe-lg-1 {\\n padding-right: 0.25rem !important;\\n }\\n .pe-lg-2 {\\n padding-right: 0.5rem !important;\\n }\\n .pe-lg-3 {\\n padding-right: 1rem !important;\\n }\\n .pe-lg-4 {\\n padding-right: 1.5rem !important;\\n }\\n .pe-lg-5 {\\n padding-right: 3rem !important;\\n }\\n .pb-lg-0 {\\n padding-bottom: 0 !important;\\n }\\n .pb-lg-1 {\\n padding-bottom: 0.25rem !important;\\n }\\n .pb-lg-2 {\\n padding-bottom: 0.5rem !important;\\n }\\n .pb-lg-3 {\\n padding-bottom: 1rem !important;\\n }\\n .pb-lg-4 {\\n padding-bottom: 1.5rem !important;\\n }\\n .pb-lg-5 {\\n padding-bottom: 3rem !important;\\n }\\n .ps-lg-0 {\\n padding-left: 0 !important;\\n }\\n .ps-lg-1 {\\n padding-left: 0.25rem !important;\\n }\\n .ps-lg-2 {\\n padding-left: 0.5rem !important;\\n }\\n .ps-lg-3 {\\n padding-left: 1rem !important;\\n }\\n .ps-lg-4 {\\n padding-left: 1.5rem !important;\\n }\\n .ps-lg-5 {\\n padding-left: 3rem !important;\\n }\\n .gap-lg-0 {\\n gap: 0 !important;\\n }\\n .gap-lg-1 {\\n gap: 0.25rem !important;\\n }\\n .gap-lg-2 {\\n gap: 0.5rem !important;\\n }\\n .gap-lg-3 {\\n gap: 1rem !important;\\n }\\n .gap-lg-4 {\\n gap: 1.5rem !important;\\n }\\n .gap-lg-5 {\\n gap: 3rem !important;\\n }\\n .row-gap-lg-0 {\\n row-gap: 0 !important;\\n }\\n .row-gap-lg-1 {\\n row-gap: 0.25rem !important;\\n }\\n .row-gap-lg-2 {\\n row-gap: 0.5rem !important;\\n }\\n .row-gap-lg-3 {\\n row-gap: 1rem !important;\\n }\\n .row-gap-lg-4 {\\n row-gap: 1.5rem !important;\\n }\\n .row-gap-lg-5 {\\n row-gap: 3rem !important;\\n }\\n .column-gap-lg-0 {\\n -moz-column-gap: 0 !important;\\n column-gap: 0 !important;\\n }\\n .column-gap-lg-1 {\\n -moz-column-gap: 0.25rem !important;\\n column-gap: 0.25rem !important;\\n }\\n .column-gap-lg-2 {\\n -moz-column-gap: 0.5rem !important;\\n column-gap: 0.5rem !important;\\n }\\n .column-gap-lg-3 {\\n -moz-column-gap: 1rem !important;\\n column-gap: 1rem !important;\\n }\\n .column-gap-lg-4 {\\n -moz-column-gap: 1.5rem !important;\\n column-gap: 1.5rem !important;\\n }\\n .column-gap-lg-5 {\\n -moz-column-gap: 3rem !important;\\n column-gap: 3rem !important;\\n }\\n .text-lg-start {\\n text-align: left !important;\\n }\\n .text-lg-end {\\n text-align: right !important;\\n }\\n .text-lg-center {\\n text-align: center !important;\\n }\\n}\\n@media (min-width: 1200px) {\\n .float-xl-start {\\n float: left !important;\\n }\\n .float-xl-end {\\n float: right !important;\\n }\\n .float-xl-none {\\n float: none !important;\\n }\\n .object-fit-xl-contain {\\n -o-object-fit: contain !important;\\n object-fit: contain !important;\\n }\\n .object-fit-xl-cover {\\n -o-object-fit: cover !important;\\n object-fit: cover !important;\\n }\\n .object-fit-xl-fill {\\n -o-object-fit: fill !important;\\n object-fit: fill !important;\\n }\\n .object-fit-xl-scale {\\n -o-object-fit: scale-down !important;\\n object-fit: scale-down !important;\\n }\\n .object-fit-xl-none {\\n -o-object-fit: none !important;\\n object-fit: none !important;\\n }\\n .d-xl-inline {\\n display: inline !important;\\n }\\n .d-xl-inline-block {\\n display: inline-block !important;\\n }\\n .d-xl-block {\\n display: block !important;\\n }\\n .d-xl-grid {\\n display: grid !important;\\n }\\n .d-xl-inline-grid {\\n display: inline-grid !important;\\n }\\n .d-xl-table {\\n display: table !important;\\n }\\n .d-xl-table-row {\\n display: table-row !important;\\n }\\n .d-xl-table-cell {\\n display: table-cell !important;\\n }\\n .d-xl-flex {\\n display: flex !important;\\n }\\n .d-xl-inline-flex {\\n display: inline-flex !important;\\n }\\n .d-xl-none {\\n display: none !important;\\n }\\n .flex-xl-fill {\\n flex: 1 1 auto !important;\\n }\\n .flex-xl-row {\\n flex-direction: row !important;\\n }\\n .flex-xl-column {\\n flex-direction: column !important;\\n }\\n .flex-xl-row-reverse {\\n flex-direction: row-reverse !important;\\n }\\n .flex-xl-column-reverse {\\n flex-direction: column-reverse !important;\\n }\\n .flex-xl-grow-0 {\\n flex-grow: 0 !important;\\n }\\n .flex-xl-grow-1 {\\n flex-grow: 1 !important;\\n }\\n .flex-xl-shrink-0 {\\n flex-shrink: 0 !important;\\n }\\n .flex-xl-shrink-1 {\\n flex-shrink: 1 !important;\\n }\\n .flex-xl-wrap {\\n flex-wrap: wrap !important;\\n }\\n .flex-xl-nowrap {\\n flex-wrap: nowrap !important;\\n }\\n .flex-xl-wrap-reverse {\\n flex-wrap: wrap-reverse !important;\\n }\\n .justify-content-xl-start {\\n justify-content: flex-start !important;\\n }\\n .justify-content-xl-end {\\n justify-content: flex-end !important;\\n }\\n .justify-content-xl-center {\\n justify-content: center !important;\\n }\\n .justify-content-xl-between {\\n justify-content: space-between !important;\\n }\\n .justify-content-xl-around {\\n justify-content: space-around !important;\\n }\\n .justify-content-xl-evenly {\\n justify-content: space-evenly !important;\\n }\\n .align-items-xl-start {\\n align-items: flex-start !important;\\n }\\n .align-items-xl-end {\\n align-items: flex-end !important;\\n }\\n .align-items-xl-center {\\n align-items: center !important;\\n }\\n .align-items-xl-baseline {\\n align-items: baseline !important;\\n }\\n .align-items-xl-stretch {\\n align-items: stretch !important;\\n }\\n .align-content-xl-start {\\n align-content: flex-start !important;\\n }\\n .align-content-xl-end {\\n align-content: flex-end !important;\\n }\\n .align-content-xl-center {\\n align-content: center !important;\\n }\\n .align-content-xl-between {\\n align-content: space-between !important;\\n }\\n .align-content-xl-around {\\n align-content: space-around !important;\\n }\\n .align-content-xl-stretch {\\n align-content: stretch !important;\\n }\\n .align-self-xl-auto {\\n align-self: auto !important;\\n }\\n .align-self-xl-start {\\n align-self: flex-start !important;\\n }\\n .align-self-xl-end {\\n align-self: flex-end !important;\\n }\\n .align-self-xl-center {\\n align-self: center !important;\\n }\\n .align-self-xl-baseline {\\n align-self: baseline !important;\\n }\\n .align-self-xl-stretch {\\n align-self: stretch !important;\\n }\\n .order-xl-first {\\n order: -1 !important;\\n }\\n .order-xl-0 {\\n order: 0 !important;\\n }\\n .order-xl-1 {\\n order: 1 !important;\\n }\\n .order-xl-2 {\\n order: 2 !important;\\n }\\n .order-xl-3 {\\n order: 3 !important;\\n }\\n .order-xl-4 {\\n order: 4 !important;\\n }\\n .order-xl-5 {\\n order: 5 !important;\\n }\\n .order-xl-last {\\n order: 6 !important;\\n }\\n .m-xl-0 {\\n margin: 0 !important;\\n }\\n .m-xl-1 {\\n margin: 0.25rem !important;\\n }\\n .m-xl-2 {\\n margin: 0.5rem !important;\\n }\\n .m-xl-3 {\\n margin: 1rem !important;\\n }\\n .m-xl-4 {\\n margin: 1.5rem !important;\\n }\\n .m-xl-5 {\\n margin: 3rem !important;\\n }\\n .m-xl-auto {\\n margin: auto !important;\\n }\\n .mx-xl-0 {\\n margin-right: 0 !important;\\n margin-left: 0 !important;\\n }\\n .mx-xl-1 {\\n margin-right: 0.25rem !important;\\n margin-left: 0.25rem !important;\\n }\\n .mx-xl-2 {\\n margin-right: 0.5rem !important;\\n margin-left: 0.5rem !important;\\n }\\n .mx-xl-3 {\\n margin-right: 1rem !important;\\n margin-left: 1rem !important;\\n }\\n .mx-xl-4 {\\n margin-right: 1.5rem !important;\\n margin-left: 1.5rem !important;\\n }\\n .mx-xl-5 {\\n margin-right: 3rem !important;\\n margin-left: 3rem !important;\\n }\\n .mx-xl-auto {\\n margin-right: auto !important;\\n margin-left: auto !important;\\n }\\n .my-xl-0 {\\n margin-top: 0 !important;\\n margin-bottom: 0 !important;\\n }\\n .my-xl-1 {\\n margin-top: 0.25rem !important;\\n margin-bottom: 0.25rem !important;\\n }\\n .my-xl-2 {\\n margin-top: 0.5rem !important;\\n margin-bottom: 0.5rem !important;\\n }\\n .my-xl-3 {\\n margin-top: 1rem !important;\\n margin-bottom: 1rem !important;\\n }\\n .my-xl-4 {\\n margin-top: 1.5rem !important;\\n margin-bottom: 1.5rem !important;\\n }\\n .my-xl-5 {\\n margin-top: 3rem !important;\\n margin-bottom: 3rem !important;\\n }\\n .my-xl-auto {\\n margin-top: auto !important;\\n margin-bottom: auto !important;\\n }\\n .mt-xl-0 {\\n margin-top: 0 !important;\\n }\\n .mt-xl-1 {\\n margin-top: 0.25rem !important;\\n }\\n .mt-xl-2 {\\n margin-top: 0.5rem !important;\\n }\\n .mt-xl-3 {\\n margin-top: 1rem !important;\\n }\\n .mt-xl-4 {\\n margin-top: 1.5rem !important;\\n }\\n .mt-xl-5 {\\n margin-top: 3rem !important;\\n }\\n .mt-xl-auto {\\n margin-top: auto !important;\\n }\\n .me-xl-0 {\\n margin-right: 0 !important;\\n }\\n .me-xl-1 {\\n margin-right: 0.25rem !important;\\n }\\n .me-xl-2 {\\n margin-right: 0.5rem !important;\\n }\\n .me-xl-3 {\\n margin-right: 1rem !important;\\n }\\n .me-xl-4 {\\n margin-right: 1.5rem !important;\\n }\\n .me-xl-5 {\\n margin-right: 3rem !important;\\n }\\n .me-xl-auto {\\n margin-right: auto !important;\\n }\\n .mb-xl-0 {\\n margin-bottom: 0 !important;\\n }\\n .mb-xl-1 {\\n margin-bottom: 0.25rem !important;\\n }\\n .mb-xl-2 {\\n margin-bottom: 0.5rem !important;\\n }\\n .mb-xl-3 {\\n margin-bottom: 1rem !important;\\n }\\n .mb-xl-4 {\\n margin-bottom: 1.5rem !important;\\n }\\n .mb-xl-5 {\\n margin-bottom: 3rem !important;\\n }\\n .mb-xl-auto {\\n margin-bottom: auto !important;\\n }\\n .ms-xl-0 {\\n margin-left: 0 !important;\\n }\\n .ms-xl-1 {\\n margin-left: 0.25rem !important;\\n }\\n .ms-xl-2 {\\n margin-left: 0.5rem !important;\\n }\\n .ms-xl-3 {\\n margin-left: 1rem !important;\\n }\\n .ms-xl-4 {\\n margin-left: 1.5rem !important;\\n }\\n .ms-xl-5 {\\n margin-left: 3rem !important;\\n }\\n .ms-xl-auto {\\n margin-left: auto !important;\\n }\\n .p-xl-0 {\\n padding: 0 !important;\\n }\\n .p-xl-1 {\\n padding: 0.25rem !important;\\n }\\n .p-xl-2 {\\n padding: 0.5rem !important;\\n }\\n .p-xl-3 {\\n padding: 1rem !important;\\n }\\n .p-xl-4 {\\n padding: 1.5rem !important;\\n }\\n .p-xl-5 {\\n padding: 3rem !important;\\n }\\n .px-xl-0 {\\n padding-right: 0 !important;\\n padding-left: 0 !important;\\n }\\n .px-xl-1 {\\n padding-right: 0.25rem !important;\\n padding-left: 0.25rem !important;\\n }\\n .px-xl-2 {\\n padding-right: 0.5rem !important;\\n padding-left: 0.5rem !important;\\n }\\n .px-xl-3 {\\n padding-right: 1rem !important;\\n padding-left: 1rem !important;\\n }\\n .px-xl-4 {\\n padding-right: 1.5rem !important;\\n padding-left: 1.5rem !important;\\n }\\n .px-xl-5 {\\n padding-right: 3rem !important;\\n padding-left: 3rem !important;\\n }\\n .py-xl-0 {\\n padding-top: 0 !important;\\n padding-bottom: 0 !important;\\n }\\n .py-xl-1 {\\n padding-top: 0.25rem !important;\\n padding-bottom: 0.25rem !important;\\n }\\n .py-xl-2 {\\n padding-top: 0.5rem !important;\\n padding-bottom: 0.5rem !important;\\n }\\n .py-xl-3 {\\n padding-top: 1rem !important;\\n padding-bottom: 1rem !important;\\n }\\n .py-xl-4 {\\n padding-top: 1.5rem !important;\\n padding-bottom: 1.5rem !important;\\n }\\n .py-xl-5 {\\n padding-top: 3rem !important;\\n padding-bottom: 3rem !important;\\n }\\n .pt-xl-0 {\\n padding-top: 0 !important;\\n }\\n .pt-xl-1 {\\n padding-top: 0.25rem !important;\\n }\\n .pt-xl-2 {\\n padding-top: 0.5rem !important;\\n }\\n .pt-xl-3 {\\n padding-top: 1rem !important;\\n }\\n .pt-xl-4 {\\n padding-top: 1.5rem !important;\\n }\\n .pt-xl-5 {\\n padding-top: 3rem !important;\\n }\\n .pe-xl-0 {\\n padding-right: 0 !important;\\n }\\n .pe-xl-1 {\\n padding-right: 0.25rem !important;\\n }\\n .pe-xl-2 {\\n padding-right: 0.5rem !important;\\n }\\n .pe-xl-3 {\\n padding-right: 1rem !important;\\n }\\n .pe-xl-4 {\\n padding-right: 1.5rem !important;\\n }\\n .pe-xl-5 {\\n padding-right: 3rem !important;\\n }\\n .pb-xl-0 {\\n padding-bottom: 0 !important;\\n }\\n .pb-xl-1 {\\n padding-bottom: 0.25rem !important;\\n }\\n .pb-xl-2 {\\n padding-bottom: 0.5rem !important;\\n }\\n .pb-xl-3 {\\n padding-bottom: 1rem !important;\\n }\\n .pb-xl-4 {\\n padding-bottom: 1.5rem !important;\\n }\\n .pb-xl-5 {\\n padding-bottom: 3rem !important;\\n }\\n .ps-xl-0 {\\n padding-left: 0 !important;\\n }\\n .ps-xl-1 {\\n padding-left: 0.25rem !important;\\n }\\n .ps-xl-2 {\\n padding-left: 0.5rem !important;\\n }\\n .ps-xl-3 {\\n padding-left: 1rem !important;\\n }\\n .ps-xl-4 {\\n padding-left: 1.5rem !important;\\n }\\n .ps-xl-5 {\\n padding-left: 3rem !important;\\n }\\n .gap-xl-0 {\\n gap: 0 !important;\\n }\\n .gap-xl-1 {\\n gap: 0.25rem !important;\\n }\\n .gap-xl-2 {\\n gap: 0.5rem !important;\\n }\\n .gap-xl-3 {\\n gap: 1rem !important;\\n }\\n .gap-xl-4 {\\n gap: 1.5rem !important;\\n }\\n .gap-xl-5 {\\n gap: 3rem !important;\\n }\\n .row-gap-xl-0 {\\n row-gap: 0 !important;\\n }\\n .row-gap-xl-1 {\\n row-gap: 0.25rem !important;\\n }\\n .row-gap-xl-2 {\\n row-gap: 0.5rem !important;\\n }\\n .row-gap-xl-3 {\\n row-gap: 1rem !important;\\n }\\n .row-gap-xl-4 {\\n row-gap: 1.5rem !important;\\n }\\n .row-gap-xl-5 {\\n row-gap: 3rem !important;\\n }\\n .column-gap-xl-0 {\\n -moz-column-gap: 0 !important;\\n column-gap: 0 !important;\\n }\\n .column-gap-xl-1 {\\n -moz-column-gap: 0.25rem !important;\\n column-gap: 0.25rem !important;\\n }\\n .column-gap-xl-2 {\\n -moz-column-gap: 0.5rem !important;\\n column-gap: 0.5rem !important;\\n }\\n .column-gap-xl-3 {\\n -moz-column-gap: 1rem !important;\\n column-gap: 1rem !important;\\n }\\n .column-gap-xl-4 {\\n -moz-column-gap: 1.5rem !important;\\n column-gap: 1.5rem !important;\\n }\\n .column-gap-xl-5 {\\n -moz-column-gap: 3rem !important;\\n column-gap: 3rem !important;\\n }\\n .text-xl-start {\\n text-align: left !important;\\n }\\n .text-xl-end {\\n text-align: right !important;\\n }\\n .text-xl-center {\\n text-align: center !important;\\n }\\n}\\n@media (min-width: 1400px) {\\n .float-xxl-start {\\n float: left !important;\\n }\\n .float-xxl-end {\\n float: right !important;\\n }\\n .float-xxl-none {\\n float: none !important;\\n }\\n .object-fit-xxl-contain {\\n -o-object-fit: contain !important;\\n object-fit: contain !important;\\n }\\n .object-fit-xxl-cover {\\n -o-object-fit: cover !important;\\n object-fit: cover !important;\\n }\\n .object-fit-xxl-fill {\\n -o-object-fit: fill !important;\\n object-fit: fill !important;\\n }\\n .object-fit-xxl-scale {\\n -o-object-fit: scale-down !important;\\n object-fit: scale-down !important;\\n }\\n .object-fit-xxl-none {\\n -o-object-fit: none !important;\\n object-fit: none !important;\\n }\\n .d-xxl-inline {\\n display: inline !important;\\n }\\n .d-xxl-inline-block {\\n display: inline-block !important;\\n }\\n .d-xxl-block {\\n display: block !important;\\n }\\n .d-xxl-grid {\\n display: grid !important;\\n }\\n .d-xxl-inline-grid {\\n display: inline-grid !important;\\n }\\n .d-xxl-table {\\n display: table !important;\\n }\\n .d-xxl-table-row {\\n display: table-row !important;\\n }\\n .d-xxl-table-cell {\\n display: table-cell !important;\\n }\\n .d-xxl-flex {\\n display: flex !important;\\n }\\n .d-xxl-inline-flex {\\n display: inline-flex !important;\\n }\\n .d-xxl-none {\\n display: none !important;\\n }\\n .flex-xxl-fill {\\n flex: 1 1 auto !important;\\n }\\n .flex-xxl-row {\\n flex-direction: row !important;\\n }\\n .flex-xxl-column {\\n flex-direction: column !important;\\n }\\n .flex-xxl-row-reverse {\\n flex-direction: row-reverse !important;\\n }\\n .flex-xxl-column-reverse {\\n flex-direction: column-reverse !important;\\n }\\n .flex-xxl-grow-0 {\\n flex-grow: 0 !important;\\n }\\n .flex-xxl-grow-1 {\\n flex-grow: 1 !important;\\n }\\n .flex-xxl-shrink-0 {\\n flex-shrink: 0 !important;\\n }\\n .flex-xxl-shrink-1 {\\n flex-shrink: 1 !important;\\n }\\n .flex-xxl-wrap {\\n flex-wrap: wrap !important;\\n }\\n .flex-xxl-nowrap {\\n flex-wrap: nowrap !important;\\n }\\n .flex-xxl-wrap-reverse {\\n flex-wrap: wrap-reverse !important;\\n }\\n .justify-content-xxl-start {\\n justify-content: flex-start !important;\\n }\\n .justify-content-xxl-end {\\n justify-content: flex-end !important;\\n }\\n .justify-content-xxl-center {\\n justify-content: center !important;\\n }\\n .justify-content-xxl-between {\\n justify-content: space-between !important;\\n }\\n .justify-content-xxl-around {\\n justify-content: space-around !important;\\n }\\n .justify-content-xxl-evenly {\\n justify-content: space-evenly !important;\\n }\\n .align-items-xxl-start {\\n align-items: flex-start !important;\\n }\\n .align-items-xxl-end {\\n align-items: flex-end !important;\\n }\\n .align-items-xxl-center {\\n align-items: center !important;\\n }\\n .align-items-xxl-baseline {\\n align-items: baseline !important;\\n }\\n .align-items-xxl-stretch {\\n align-items: stretch !important;\\n }\\n .align-content-xxl-start {\\n align-content: flex-start !important;\\n }\\n .align-content-xxl-end {\\n align-content: flex-end !important;\\n }\\n .align-content-xxl-center {\\n align-content: center !important;\\n }\\n .align-content-xxl-between {\\n align-content: space-between !important;\\n }\\n .align-content-xxl-around {\\n align-content: space-around !important;\\n }\\n .align-content-xxl-stretch {\\n align-content: stretch !important;\\n }\\n .align-self-xxl-auto {\\n align-self: auto !important;\\n }\\n .align-self-xxl-start {\\n align-self: flex-start !important;\\n }\\n .align-self-xxl-end {\\n align-self: flex-end !important;\\n }\\n .align-self-xxl-center {\\n align-self: center !important;\\n }\\n .align-self-xxl-baseline {\\n align-self: baseline !important;\\n }\\n .align-self-xxl-stretch {\\n align-self: stretch !important;\\n }\\n .order-xxl-first {\\n order: -1 !important;\\n }\\n .order-xxl-0 {\\n order: 0 !important;\\n }\\n .order-xxl-1 {\\n order: 1 !important;\\n }\\n .order-xxl-2 {\\n order: 2 !important;\\n }\\n .order-xxl-3 {\\n order: 3 !important;\\n }\\n .order-xxl-4 {\\n order: 4 !important;\\n }\\n .order-xxl-5 {\\n order: 5 !important;\\n }\\n .order-xxl-last {\\n order: 6 !important;\\n }\\n .m-xxl-0 {\\n margin: 0 !important;\\n }\\n .m-xxl-1 {\\n margin: 0.25rem !important;\\n }\\n .m-xxl-2 {\\n margin: 0.5rem !important;\\n }\\n .m-xxl-3 {\\n margin: 1rem !important;\\n }\\n .m-xxl-4 {\\n margin: 1.5rem !important;\\n }\\n .m-xxl-5 {\\n margin: 3rem !important;\\n }\\n .m-xxl-auto {\\n margin: auto !important;\\n }\\n .mx-xxl-0 {\\n margin-right: 0 !important;\\n margin-left: 0 !important;\\n }\\n .mx-xxl-1 {\\n margin-right: 0.25rem !important;\\n margin-left: 0.25rem !important;\\n }\\n .mx-xxl-2 {\\n margin-right: 0.5rem !important;\\n margin-left: 0.5rem !important;\\n }\\n .mx-xxl-3 {\\n margin-right: 1rem !important;\\n margin-left: 1rem !important;\\n }\\n .mx-xxl-4 {\\n margin-right: 1.5rem !important;\\n margin-left: 1.5rem !important;\\n }\\n .mx-xxl-5 {\\n margin-right: 3rem !important;\\n margin-left: 3rem !important;\\n }\\n .mx-xxl-auto {\\n margin-right: auto !important;\\n margin-left: auto !important;\\n }\\n .my-xxl-0 {\\n margin-top: 0 !important;\\n margin-bottom: 0 !important;\\n }\\n .my-xxl-1 {\\n margin-top: 0.25rem !important;\\n margin-bottom: 0.25rem !important;\\n }\\n .my-xxl-2 {\\n margin-top: 0.5rem !important;\\n margin-bottom: 0.5rem !important;\\n }\\n .my-xxl-3 {\\n margin-top: 1rem !important;\\n margin-bottom: 1rem !important;\\n }\\n .my-xxl-4 {\\n margin-top: 1.5rem !important;\\n margin-bottom: 1.5rem !important;\\n }\\n .my-xxl-5 {\\n margin-top: 3rem !important;\\n margin-bottom: 3rem !important;\\n }\\n .my-xxl-auto {\\n margin-top: auto !important;\\n margin-bottom: auto !important;\\n }\\n .mt-xxl-0 {\\n margin-top: 0 !important;\\n }\\n .mt-xxl-1 {\\n margin-top: 0.25rem !important;\\n }\\n .mt-xxl-2 {\\n margin-top: 0.5rem !important;\\n }\\n .mt-xxl-3 {\\n margin-top: 1rem !important;\\n }\\n .mt-xxl-4 {\\n margin-top: 1.5rem !important;\\n }\\n .mt-xxl-5 {\\n margin-top: 3rem !important;\\n }\\n .mt-xxl-auto {\\n margin-top: auto !important;\\n }\\n .me-xxl-0 {\\n margin-right: 0 !important;\\n }\\n .me-xxl-1 {\\n margin-right: 0.25rem !important;\\n }\\n .me-xxl-2 {\\n margin-right: 0.5rem !important;\\n }\\n .me-xxl-3 {\\n margin-right: 1rem !important;\\n }\\n .me-xxl-4 {\\n margin-right: 1.5rem !important;\\n }\\n .me-xxl-5 {\\n margin-right: 3rem !important;\\n }\\n .me-xxl-auto {\\n margin-right: auto !important;\\n }\\n .mb-xxl-0 {\\n margin-bottom: 0 !important;\\n }\\n .mb-xxl-1 {\\n margin-bottom: 0.25rem !important;\\n }\\n .mb-xxl-2 {\\n margin-bottom: 0.5rem !important;\\n }\\n .mb-xxl-3 {\\n margin-bottom: 1rem !important;\\n }\\n .mb-xxl-4 {\\n margin-bottom: 1.5rem !important;\\n }\\n .mb-xxl-5 {\\n margin-bottom: 3rem !important;\\n }\\n .mb-xxl-auto {\\n margin-bottom: auto !important;\\n }\\n .ms-xxl-0 {\\n margin-left: 0 !important;\\n }\\n .ms-xxl-1 {\\n margin-left: 0.25rem !important;\\n }\\n .ms-xxl-2 {\\n margin-left: 0.5rem !important;\\n }\\n .ms-xxl-3 {\\n margin-left: 1rem !important;\\n }\\n .ms-xxl-4 {\\n margin-left: 1.5rem !important;\\n }\\n .ms-xxl-5 {\\n margin-left: 3rem !important;\\n }\\n .ms-xxl-auto {\\n margin-left: auto !important;\\n }\\n .p-xxl-0 {\\n padding: 0 !important;\\n }\\n .p-xxl-1 {\\n padding: 0.25rem !important;\\n }\\n .p-xxl-2 {\\n padding: 0.5rem !important;\\n }\\n .p-xxl-3 {\\n padding: 1rem !important;\\n }\\n .p-xxl-4 {\\n padding: 1.5rem !important;\\n }\\n .p-xxl-5 {\\n padding: 3rem !important;\\n }\\n .px-xxl-0 {\\n padding-right: 0 !important;\\n padding-left: 0 !important;\\n }\\n .px-xxl-1 {\\n padding-right: 0.25rem !important;\\n padding-left: 0.25rem !important;\\n }\\n .px-xxl-2 {\\n padding-right: 0.5rem !important;\\n padding-left: 0.5rem !important;\\n }\\n .px-xxl-3 {\\n padding-right: 1rem !important;\\n padding-left: 1rem !important;\\n }\\n .px-xxl-4 {\\n padding-right: 1.5rem !important;\\n padding-left: 1.5rem !important;\\n }\\n .px-xxl-5 {\\n padding-right: 3rem !important;\\n padding-left: 3rem !important;\\n }\\n .py-xxl-0 {\\n padding-top: 0 !important;\\n padding-bottom: 0 !important;\\n }\\n .py-xxl-1 {\\n padding-top: 0.25rem !important;\\n padding-bottom: 0.25rem !important;\\n }\\n .py-xxl-2 {\\n padding-top: 0.5rem !important;\\n padding-bottom: 0.5rem !important;\\n }\\n .py-xxl-3 {\\n padding-top: 1rem !important;\\n padding-bottom: 1rem !important;\\n }\\n .py-xxl-4 {\\n padding-top: 1.5rem !important;\\n padding-bottom: 1.5rem !important;\\n }\\n .py-xxl-5 {\\n padding-top: 3rem !important;\\n padding-bottom: 3rem !important;\\n }\\n .pt-xxl-0 {\\n padding-top: 0 !important;\\n }\\n .pt-xxl-1 {\\n padding-top: 0.25rem !important;\\n }\\n .pt-xxl-2 {\\n padding-top: 0.5rem !important;\\n }\\n .pt-xxl-3 {\\n padding-top: 1rem !important;\\n }\\n .pt-xxl-4 {\\n padding-top: 1.5rem !important;\\n }\\n .pt-xxl-5 {\\n padding-top: 3rem !important;\\n }\\n .pe-xxl-0 {\\n padding-right: 0 !important;\\n }\\n .pe-xxl-1 {\\n padding-right: 0.25rem !important;\\n }\\n .pe-xxl-2 {\\n padding-right: 0.5rem !important;\\n }\\n .pe-xxl-3 {\\n padding-right: 1rem !important;\\n }\\n .pe-xxl-4 {\\n padding-right: 1.5rem !important;\\n }\\n .pe-xxl-5 {\\n padding-right: 3rem !important;\\n }\\n .pb-xxl-0 {\\n padding-bottom: 0 !important;\\n }\\n .pb-xxl-1 {\\n padding-bottom: 0.25rem !important;\\n }\\n .pb-xxl-2 {\\n padding-bottom: 0.5rem !important;\\n }\\n .pb-xxl-3 {\\n padding-bottom: 1rem !important;\\n }\\n .pb-xxl-4 {\\n padding-bottom: 1.5rem !important;\\n }\\n .pb-xxl-5 {\\n padding-bottom: 3rem !important;\\n }\\n .ps-xxl-0 {\\n padding-left: 0 !important;\\n }\\n .ps-xxl-1 {\\n padding-left: 0.25rem !important;\\n }\\n .ps-xxl-2 {\\n padding-left: 0.5rem !important;\\n }\\n .ps-xxl-3 {\\n padding-left: 1rem !important;\\n }\\n .ps-xxl-4 {\\n padding-left: 1.5rem !important;\\n }\\n .ps-xxl-5 {\\n padding-left: 3rem !important;\\n }\\n .gap-xxl-0 {\\n gap: 0 !important;\\n }\\n .gap-xxl-1 {\\n gap: 0.25rem !important;\\n }\\n .gap-xxl-2 {\\n gap: 0.5rem !important;\\n }\\n .gap-xxl-3 {\\n gap: 1rem !important;\\n }\\n .gap-xxl-4 {\\n gap: 1.5rem !important;\\n }\\n .gap-xxl-5 {\\n gap: 3rem !important;\\n }\\n .row-gap-xxl-0 {\\n row-gap: 0 !important;\\n }\\n .row-gap-xxl-1 {\\n row-gap: 0.25rem !important;\\n }\\n .row-gap-xxl-2 {\\n row-gap: 0.5rem !important;\\n }\\n .row-gap-xxl-3 {\\n row-gap: 1rem !important;\\n }\\n .row-gap-xxl-4 {\\n row-gap: 1.5rem !important;\\n }\\n .row-gap-xxl-5 {\\n row-gap: 3rem !important;\\n }\\n .column-gap-xxl-0 {\\n -moz-column-gap: 0 !important;\\n column-gap: 0 !important;\\n }\\n .column-gap-xxl-1 {\\n -moz-column-gap: 0.25rem !important;\\n column-gap: 0.25rem !important;\\n }\\n .column-gap-xxl-2 {\\n -moz-column-gap: 0.5rem !important;\\n column-gap: 0.5rem !important;\\n }\\n .column-gap-xxl-3 {\\n -moz-column-gap: 1rem !important;\\n column-gap: 1rem !important;\\n }\\n .column-gap-xxl-4 {\\n -moz-column-gap: 1.5rem !important;\\n column-gap: 1.5rem !important;\\n }\\n .column-gap-xxl-5 {\\n -moz-column-gap: 3rem !important;\\n column-gap: 3rem !important;\\n }\\n .text-xxl-start {\\n text-align: left !important;\\n }\\n .text-xxl-end {\\n text-align: right !important;\\n }\\n .text-xxl-center {\\n text-align: center !important;\\n }\\n}\\n@media (min-width: 1200px) {\\n .fs-1 {\\n font-size: 2.5rem !important;\\n }\\n .fs-2 {\\n font-size: 2rem !important;\\n }\\n .fs-3 {\\n font-size: 1.75rem !important;\\n }\\n .fs-4 {\\n font-size: 1.5rem !important;\\n }\\n}\\n@media print {\\n .d-print-inline {\\n display: inline !important;\\n }\\n .d-print-inline-block {\\n display: inline-block !important;\\n }\\n .d-print-block {\\n display: block !important;\\n }\\n .d-print-grid {\\n display: grid !important;\\n }\\n .d-print-inline-grid {\\n display: inline-grid !important;\\n }\\n .d-print-table {\\n display: table !important;\\n }\\n .d-print-table-row {\\n display: table-row !important;\\n }\\n .d-print-table-cell {\\n display: table-cell !important;\\n }\\n .d-print-flex {\\n display: flex !important;\\n }\\n .d-print-inline-flex {\\n display: inline-flex !important;\\n }\\n .d-print-none {\\n display: none !important;\\n }\\n}\\n\\n/*# sourceMappingURL=bootstrap.css.map */\",\"// stylelint-disable declaration-no-important, selector-no-qualifying-type, property-no-vendor-prefix\\n\\n\\n// Reboot\\n//\\n// Normalization of HTML elements, manually forked from Normalize.css to remove\\n// styles targeting irrelevant browsers while applying new styles.\\n//\\n// Normalize is licensed MIT. https://github.com/necolas/normalize.css\\n\\n\\n// Document\\n//\\n// Change from `box-sizing: content-box` so that `width` is not affected by `padding` or `border`.\\n\\n*,\\n*::before,\\n*::after {\\n box-sizing: border-box;\\n}\\n\\n\\n// Root\\n//\\n// Ability to the value of the root font sizes, affecting the value of `rem`.\\n// null by default, thus nothing is generated.\\n\\n:root {\\n @if $font-size-root != null {\\n @include font-size(var(--#{$prefix}root-font-size));\\n }\\n\\n @if $enable-smooth-scroll {\\n @media (prefers-reduced-motion: no-preference) {\\n scroll-behavior: smooth;\\n }\\n }\\n}\\n\\n\\n// Body\\n//\\n// 1. Remove the margin in all browsers.\\n// 2. As a best practice, apply a default `background-color`.\\n// 3. Prevent adjustments of font size after orientation changes in iOS.\\n// 4. Change the default tap highlight to be completely transparent in iOS.\\n\\n// scss-docs-start reboot-body-rules\\nbody {\\n margin: 0; // 1\\n font-family: var(--#{$prefix}body-font-family);\\n @include font-size(var(--#{$prefix}body-font-size));\\n font-weight: var(--#{$prefix}body-font-weight);\\n line-height: var(--#{$prefix}body-line-height);\\n color: var(--#{$prefix}body-color);\\n text-align: var(--#{$prefix}body-text-align);\\n background-color: var(--#{$prefix}body-bg); // 2\\n -webkit-text-size-adjust: 100%; // 3\\n -webkit-tap-highlight-color: rgba($black, 0); // 4\\n}\\n// scss-docs-end reboot-body-rules\\n\\n\\n// Content grouping\\n//\\n// 1. Reset Firefox's gray color\\n\\nhr {\\n margin: $hr-margin-y 0;\\n color: $hr-color; // 1\\n border: 0;\\n border-top: $hr-border-width solid $hr-border-color;\\n opacity: $hr-opacity;\\n}\\n\\n\\n// Typography\\n//\\n// 1. Remove top margins from headings\\n// By default, `<h1>`-`<h6>` all receive top and bottom margins. We nuke the top\\n// margin for easier control within type scales as it avoids margin collapsing.\\n\\n%heading {\\n margin-top: 0; // 1\\n margin-bottom: $headings-margin-bottom;\\n font-family: $headings-font-family;\\n font-style: $headings-font-style;\\n font-weight: $headings-font-weight;\\n line-height: $headings-line-height;\\n color: var(--#{$prefix}heading-color);\\n}\\n\\nh1 {\\n @extend %heading;\\n @include font-size($h1-font-size);\\n}\\n\\nh2 {\\n @extend %heading;\\n @include font-size($h2-font-size);\\n}\\n\\nh3 {\\n @extend %heading;\\n @include font-size($h3-font-size);\\n}\\n\\nh4 {\\n @extend %heading;\\n @include font-size($h4-font-size);\\n}\\n\\nh5 {\\n @extend %heading;\\n @include font-size($h5-font-size);\\n}\\n\\nh6 {\\n @extend %heading;\\n @include font-size($h6-font-size);\\n}\\n\\n\\n// Reset margins on paragraphs\\n//\\n// Similarly, the top margin on `<p>`s get reset. However, we also reset the\\n// bottom margin to use `rem` units instead of `em`.\\n\\np {\\n margin-top: 0;\\n margin-bottom: $paragraph-margin-bottom;\\n}\\n\\n\\n// Abbreviations\\n//\\n// 1. Add the correct text decoration in Chrome, Edge, Opera, and Safari.\\n// 2. Add explicit cursor to indicate changed behavior.\\n// 3. Prevent the text-decoration to be skipped.\\n\\nabbr[title] {\\n text-decoration: underline dotted; // 1\\n cursor: help; // 2\\n text-decoration-skip-ink: none; // 3\\n}\\n\\n\\n// Address\\n\\naddress {\\n margin-bottom: 1rem;\\n font-style: normal;\\n line-height: inherit;\\n}\\n\\n\\n// Lists\\n\\nol,\\nul {\\n padding-left: 2rem;\\n}\\n\\nol,\\nul,\\ndl {\\n margin-top: 0;\\n margin-bottom: 1rem;\\n}\\n\\nol ol,\\nul ul,\\nol ul,\\nul ol {\\n margin-bottom: 0;\\n}\\n\\ndt {\\n font-weight: $dt-font-weight;\\n}\\n\\n// 1. Undo browser default\\n\\ndd {\\n margin-bottom: .5rem;\\n margin-left: 0; // 1\\n}\\n\\n\\n// Blockquote\\n\\nblockquote {\\n margin: 0 0 1rem;\\n}\\n\\n\\n// Strong\\n//\\n// Add the correct font weight in Chrome, Edge, and Safari\\n\\nb,\\nstrong {\\n font-weight: $font-weight-bolder;\\n}\\n\\n\\n// Small\\n//\\n// Add the correct font size in all browsers\\n\\nsmall {\\n @include font-size($small-font-size);\\n}\\n\\n\\n// Mark\\n\\nmark {\\n padding: $mark-padding;\\n color: var(--#{$prefix}highlight-color);\\n background-color: var(--#{$prefix}highlight-bg);\\n}\\n\\n\\n// Sub and Sup\\n//\\n// Prevent `sub` and `sup` elements from affecting the line height in\\n// all browsers.\\n\\nsub,\\nsup {\\n position: relative;\\n @include font-size($sub-sup-font-size);\\n line-height: 0;\\n vertical-align: baseline;\\n}\\n\\nsub { bottom: -.25em; }\\nsup { top: -.5em; }\\n\\n\\n// Links\\n\\na {\\n color: rgba(var(--#{$prefix}link-color-rgb), var(--#{$prefix}link-opacity, 1));\\n text-decoration: $link-decoration;\\n\\n &:hover {\\n --#{$prefix}link-color-rgb: var(--#{$prefix}link-hover-color-rgb);\\n text-decoration: $link-hover-decoration;\\n }\\n}\\n\\n// And undo these styles for placeholder links/named anchors (without href).\\n// It would be more straightforward to just use a[href] in previous block, but that\\n// causes specificity issues in many other styles that are too complex to fix.\\n// See https://github.com/twbs/bootstrap/issues/19402\\n\\na:not([href]):not([class]) {\\n &,\\n &:hover {\\n color: inherit;\\n text-decoration: none;\\n }\\n}\\n\\n\\n// Code\\n\\npre,\\ncode,\\nkbd,\\nsamp {\\n font-family: $font-family-code;\\n @include font-size(1em); // Correct the odd `em` font sizing in all browsers.\\n}\\n\\n// 1. Remove browser default top margin\\n// 2. Reset browser default of `1em` to use `rem`s\\n// 3. Don't allow content to break outside\\n\\npre {\\n display: block;\\n margin-top: 0; // 1\\n margin-bottom: 1rem; // 2\\n overflow: auto; // 3\\n @include font-size($code-font-size);\\n color: $pre-color;\\n\\n // Account for some code outputs that place code tags in pre tags\\n code {\\n @include font-size(inherit);\\n color: inherit;\\n word-break: normal;\\n }\\n}\\n\\ncode {\\n @include font-size($code-font-size);\\n color: var(--#{$prefix}code-color);\\n word-wrap: break-word;\\n\\n // Streamline the style when inside anchors to avoid broken underline and more\\n a > & {\\n color: inherit;\\n }\\n}\\n\\nkbd {\\n padding: $kbd-padding-y $kbd-padding-x;\\n @include font-size($kbd-font-size);\\n color: $kbd-color;\\n background-color: $kbd-bg;\\n @include border-radius($border-radius-sm);\\n\\n kbd {\\n padding: 0;\\n @include font-size(1em);\\n font-weight: $nested-kbd-font-weight;\\n }\\n}\\n\\n\\n// Figures\\n//\\n// Apply a consistent margin strategy (matches our type styles).\\n\\nfigure {\\n margin: 0 0 1rem;\\n}\\n\\n\\n// Images and content\\n\\nimg,\\nsvg {\\n vertical-align: middle;\\n}\\n\\n\\n// Tables\\n//\\n// Prevent double borders\\n\\ntable {\\n caption-side: bottom;\\n border-collapse: collapse;\\n}\\n\\ncaption {\\n padding-top: $table-cell-padding-y;\\n padding-bottom: $table-cell-padding-y;\\n color: $table-caption-color;\\n text-align: left;\\n}\\n\\n// 1. Removes font-weight bold by inheriting\\n// 2. Matches default `<td>` alignment by inheriting `text-align`.\\n// 3. Fix alignment for Safari\\n\\nth {\\n font-weight: $table-th-font-weight; // 1\\n text-align: inherit; // 2\\n text-align: -webkit-match-parent; // 3\\n}\\n\\nthead,\\ntbody,\\ntfoot,\\ntr,\\ntd,\\nth {\\n border-color: inherit;\\n border-style: solid;\\n border-width: 0;\\n}\\n\\n\\n// Forms\\n//\\n// 1. Allow labels to use `margin` for spacing.\\n\\nlabel {\\n display: inline-block; // 1\\n}\\n\\n// Remove the default `border-radius` that macOS Chrome adds.\\n// See https://github.com/twbs/bootstrap/issues/24093\\n\\nbutton {\\n // stylelint-disable-next-line property-disallowed-list\\n border-radius: 0;\\n}\\n\\n// Explicitly remove focus outline in Chromium when it shouldn't be\\n// visible (e.g. as result of mouse click or touch tap). It already\\n// should be doing this automatically, but seems to currently be\\n// confused and applies its very visible two-tone outline anyway.\\n\\nbutton:focus:not(:focus-visible) {\\n outline: 0;\\n}\\n\\n// 1. Remove the margin in Firefox and Safari\\n\\ninput,\\nbutton,\\nselect,\\noptgroup,\\ntextarea {\\n margin: 0; // 1\\n font-family: inherit;\\n @include font-size(inherit);\\n line-height: inherit;\\n}\\n\\n// Remove the inheritance of text transform in Firefox\\nbutton,\\nselect {\\n text-transform: none;\\n}\\n// Set the cursor for non-`<button>` buttons\\n//\\n// Details at https://github.com/twbs/bootstrap/pull/30562\\n[role=\\\"button\\\"] {\\n cursor: pointer;\\n}\\n\\nselect {\\n // Remove the inheritance of word-wrap in Safari.\\n // See https://github.com/twbs/bootstrap/issues/24990\\n word-wrap: normal;\\n\\n // Undo the opacity change from Chrome\\n &:disabled {\\n opacity: 1;\\n }\\n}\\n\\n// Remove the dropdown arrow only from text type inputs built with datalists in Chrome.\\n// See https://stackoverflow.com/a/54997118\\n\\n[list]:not([type=\\\"date\\\"]):not([type=\\\"datetime-local\\\"]):not([type=\\\"month\\\"]):not([type=\\\"week\\\"]):not([type=\\\"time\\\"])::-webkit-calendar-picker-indicator {\\n display: none !important;\\n}\\n\\n// 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`\\n// controls in Android 4.\\n// 2. Correct the inability to style clickable types in iOS and Safari.\\n// 3. Opinionated: add \\\"hand\\\" cursor to non-disabled button elements.\\n\\nbutton,\\n[type=\\\"button\\\"], // 1\\n[type=\\\"reset\\\"],\\n[type=\\\"submit\\\"] {\\n -webkit-appearance: button; // 2\\n\\n @if $enable-button-pointers {\\n &:not(:disabled) {\\n cursor: pointer; // 3\\n }\\n }\\n}\\n\\n// Remove inner border and padding from Firefox, but don't restore the outline like Normalize.\\n\\n::-moz-focus-inner {\\n padding: 0;\\n border-style: none;\\n}\\n\\n// 1. Textareas should really only resize vertically so they don't break their (horizontal) containers.\\n\\ntextarea {\\n resize: vertical; // 1\\n}\\n\\n// 1. Browsers set a default `min-width: min-content;` on fieldsets,\\n// unlike e.g. `<div>`s, which have `min-width: 0;` by default.\\n// So we reset that to ensure fieldsets behave more like a standard block element.\\n// See https://github.com/twbs/bootstrap/issues/12359\\n// and https://html.spec.whatwg.org/multipage/#the-fieldset-and-legend-elements\\n// 2. Reset the default outline behavior of fieldsets so they don't affect page layout.\\n\\nfieldset {\\n min-width: 0; // 1\\n padding: 0; // 2\\n margin: 0; // 2\\n border: 0; // 2\\n}\\n\\n// 1. By using `float: left`, the legend will behave like a block element.\\n// This way the border of a fieldset wraps around the legend if present.\\n// 2. Fix wrapping bug.\\n// See https://github.com/twbs/bootstrap/issues/29712\\n\\nlegend {\\n float: left; // 1\\n width: 100%;\\n padding: 0;\\n margin-bottom: $legend-margin-bottom;\\n @include font-size($legend-font-size);\\n font-weight: $legend-font-weight;\\n line-height: inherit;\\n\\n + * {\\n clear: left; // 2\\n }\\n}\\n\\n// Fix height of inputs with a type of datetime-local, date, month, week, or time\\n// See https://github.com/twbs/bootstrap/issues/18842\\n\\n::-webkit-datetime-edit-fields-wrapper,\\n::-webkit-datetime-edit-text,\\n::-webkit-datetime-edit-minute,\\n::-webkit-datetime-edit-hour-field,\\n::-webkit-datetime-edit-day-field,\\n::-webkit-datetime-edit-month-field,\\n::-webkit-datetime-edit-year-field {\\n padding: 0;\\n}\\n\\n::-webkit-inner-spin-button {\\n height: auto;\\n}\\n\\n// 1. This overrides the extra rounded corners on search inputs in iOS so that our\\n// `.form-control` class can properly style them. Note that this cannot simply\\n// be added to `.form-control` as it's not specific enough. For details, see\\n// https://github.com/twbs/bootstrap/issues/11586.\\n// 2. Correct the outline style in Safari.\\n\\n[type=\\\"search\\\"] {\\n -webkit-appearance: textfield; // 1\\n outline-offset: -2px; // 2\\n}\\n\\n// 1. A few input types should stay LTR\\n// See https://rtlstyling.com/posts/rtl-styling#form-inputs\\n// 2. RTL only output\\n// See https://rtlcss.com/learn/usage-guide/control-directives/#raw\\n\\n/* rtl:raw:\\n[type=\\\"tel\\\"],\\n[type=\\\"url\\\"],\\n[type=\\\"email\\\"],\\n[type=\\\"number\\\"] {\\n direction: ltr;\\n}\\n*/\\n\\n// Remove the inner padding in Chrome and Safari on macOS.\\n\\n::-webkit-search-decoration {\\n -webkit-appearance: none;\\n}\\n\\n// Remove padding around color pickers in webkit browsers\\n\\n::-webkit-color-swatch-wrapper {\\n padding: 0;\\n}\\n\\n\\n// 1. Inherit font family and line height for file input buttons\\n// 2. Correct the inability to style clickable types in iOS and Safari.\\n\\n::file-selector-button {\\n font: inherit; // 1\\n -webkit-appearance: button; // 2\\n}\\n\\n// Correct element displays\\n\\noutput {\\n display: inline-block;\\n}\\n\\n// Remove border from iframe\\n\\niframe {\\n border: 0;\\n}\\n\\n// Summary\\n//\\n// 1. Add the correct display in all browsers\\n\\nsummary {\\n display: list-item; // 1\\n cursor: pointer;\\n}\\n\\n\\n// Progress\\n//\\n// Add the correct vertical alignment in Chrome, Firefox, and Opera.\\n\\nprogress {\\n vertical-align: baseline;\\n}\\n\\n\\n// Hidden attribute\\n//\\n// Always hide an element with the `hidden` HTML attribute.\\n\\n[hidden] {\\n display: none !important;\\n}\\n\",\"// stylelint-disable property-disallowed-list\\n// Single side border-radius\\n\\n// Helper function to replace negative values with 0\\n@function valid-radius($radius) {\\n $return: ();\\n @each $value in $radius {\\n @if type-of($value) == number {\\n $return: append($return, max($value, 0));\\n } @else {\\n $return: append($return, $value);\\n }\\n }\\n @return $return;\\n}\\n\\n// scss-docs-start border-radius-mixins\\n@mixin border-radius($radius: $border-radius, $fallback-border-radius: false) {\\n @if $enable-rounded {\\n border-radius: valid-radius($radius);\\n }\\n @else if $fallback-border-radius != false {\\n border-radius: $fallback-border-radius;\\n }\\n}\\n\\n@mixin border-top-radius($radius: $border-radius) {\\n @if $enable-rounded {\\n border-top-left-radius: valid-radius($radius);\\n border-top-right-radius: valid-radius($radius);\\n }\\n}\\n\\n@mixin border-end-radius($radius: $border-radius) {\\n @if $enable-rounded {\\n border-top-right-radius: valid-radius($radius);\\n border-bottom-right-radius: valid-radius($radius);\\n }\\n}\\n\\n@mixin border-bottom-radius($radius: $border-radius) {\\n @if $enable-rounded {\\n border-bottom-right-radius: valid-radius($radius);\\n border-bottom-left-radius: valid-radius($radius);\\n }\\n}\\n\\n@mixin border-start-radius($radius: $border-radius) {\\n @if $enable-rounded {\\n border-top-left-radius: valid-radius($radius);\\n border-bottom-left-radius: valid-radius($radius);\\n }\\n}\\n\\n@mixin border-top-start-radius($radius: $border-radius) {\\n @if $enable-rounded {\\n border-top-left-radius: valid-radius($radius);\\n }\\n}\\n\\n@mixin border-top-end-radius($radius: $border-radius) {\\n @if $enable-rounded {\\n border-top-right-radius: valid-radius($radius);\\n }\\n}\\n\\n@mixin border-bottom-end-radius($radius: $border-radius) {\\n @if $enable-rounded {\\n border-bottom-right-radius: valid-radius($radius);\\n }\\n}\\n\\n@mixin border-bottom-start-radius($radius: $border-radius) {\\n @if $enable-rounded {\\n border-bottom-left-radius: valid-radius($radius);\\n }\\n}\\n// scss-docs-end border-radius-mixins\\n\",\"//\\n// Headings\\n//\\n.h1 {\\n @extend h1;\\n}\\n\\n.h2 {\\n @extend h2;\\n}\\n\\n.h3 {\\n @extend h3;\\n}\\n\\n.h4 {\\n @extend h4;\\n}\\n\\n.h5 {\\n @extend h5;\\n}\\n\\n.h6 {\\n @extend h6;\\n}\\n\\n\\n.lead {\\n @include font-size($lead-font-size);\\n font-weight: $lead-font-weight;\\n}\\n\\n// Type display classes\\n@each $display, $font-size in $display-font-sizes {\\n .display-#{$display} {\\n @include font-size($font-size);\\n font-family: $display-font-family;\\n font-style: $display-font-style;\\n font-weight: $display-font-weight;\\n line-height: $display-line-height;\\n }\\n}\\n\\n//\\n// Emphasis\\n//\\n.small {\\n @extend small;\\n}\\n\\n.mark {\\n @extend mark;\\n}\\n\\n//\\n// Lists\\n//\\n\\n.list-unstyled {\\n @include list-unstyled();\\n}\\n\\n// Inline turns list items into inline-block\\n.list-inline {\\n @include list-unstyled();\\n}\\n.list-inline-item {\\n display: inline-block;\\n\\n &:not(:last-child) {\\n margin-right: $list-inline-padding;\\n }\\n}\\n\\n\\n//\\n// Misc\\n//\\n\\n// Builds on `abbr`\\n.initialism {\\n @include font-size($initialism-font-size);\\n text-transform: uppercase;\\n}\\n\\n// Blockquotes\\n.blockquote {\\n margin-bottom: $blockquote-margin-y;\\n @include font-size($blockquote-font-size);\\n\\n > :last-child {\\n margin-bottom: 0;\\n }\\n}\\n\\n.blockquote-footer {\\n margin-top: -$blockquote-margin-y;\\n margin-bottom: $blockquote-margin-y;\\n @include font-size($blockquote-footer-font-size);\\n color: $blockquote-footer-color;\\n\\n &::before {\\n content: \\\"\\\\2014\\\\00A0\\\"; // em dash, nbsp\\n }\\n}\\n\",\"// Lists\\n\\n// Unstyled keeps list items block level, just removes default browser padding and list-style\\n@mixin list-unstyled {\\n padding-left: 0;\\n list-style: none;\\n}\\n\",\"// Responsive images (ensure images don't scale beyond their parents)\\n//\\n// This is purposefully opt-in via an explicit class rather than being the default for all `<img>`s.\\n// We previously tried the \\\"images are responsive by default\\\" approach in Bootstrap v2,\\n// and abandoned it in Bootstrap v3 because it breaks lots of third-party widgets (including Google Maps)\\n// which weren't expecting the images within themselves to be involuntarily resized.\\n// See also https://github.com/twbs/bootstrap/issues/18178\\n.img-fluid {\\n @include img-fluid();\\n}\\n\\n\\n// Image thumbnails\\n.img-thumbnail {\\n padding: $thumbnail-padding;\\n background-color: $thumbnail-bg;\\n border: $thumbnail-border-width solid $thumbnail-border-color;\\n @include border-radius($thumbnail-border-radius);\\n @include box-shadow($thumbnail-box-shadow);\\n\\n // Keep them at most 100% wide\\n @include img-fluid();\\n}\\n\\n//\\n// Figures\\n//\\n\\n.figure {\\n // Ensures the caption's text aligns with the image.\\n display: inline-block;\\n}\\n\\n.figure-img {\\n margin-bottom: $spacer * .5;\\n line-height: 1;\\n}\\n\\n.figure-caption {\\n @include font-size($figure-caption-font-size);\\n color: $figure-caption-color;\\n}\\n\",\"// Image Mixins\\n// - Responsive image\\n// - Retina image\\n\\n\\n// Responsive image\\n//\\n// Keep images from scaling beyond the width of their parents.\\n\\n@mixin img-fluid {\\n // Part 1: Set a maximum relative to the parent\\n max-width: 100%;\\n // Part 2: Override the height to auto, otherwise images will be stretched\\n // when setting a width and height attribute on the img element.\\n height: auto;\\n}\\n\",\"// Container widths\\n//\\n// Set the container width, and override it for fixed navbars in media queries.\\n\\n@if $enable-container-classes {\\n // Single container class with breakpoint max-widths\\n .container,\\n // 100% wide container at all breakpoints\\n .container-fluid {\\n @include make-container();\\n }\\n\\n // Responsive containers that are 100% wide until a breakpoint\\n @each $breakpoint, $container-max-width in $container-max-widths {\\n .container-#{$breakpoint} {\\n @extend .container-fluid;\\n }\\n\\n @include media-breakpoint-up($breakpoint, $grid-breakpoints) {\\n %responsive-container-#{$breakpoint} {\\n max-width: $container-max-width;\\n }\\n\\n // Extend each breakpoint which is smaller or equal to the current breakpoint\\n $extend-breakpoint: true;\\n\\n @each $name, $width in $grid-breakpoints {\\n @if ($extend-breakpoint) {\\n .container#{breakpoint-infix($name, $grid-breakpoints)} {\\n @extend %responsive-container-#{$breakpoint};\\n }\\n\\n // Once the current breakpoint is reached, stop extending\\n @if ($breakpoint == $name) {\\n $extend-breakpoint: false;\\n }\\n }\\n }\\n }\\n }\\n}\\n\",\"// Container mixins\\n\\n@mixin make-container($gutter: $container-padding-x) {\\n --#{$prefix}gutter-x: #{$gutter};\\n --#{$prefix}gutter-y: 0;\\n width: 100%;\\n padding-right: calc(var(--#{$prefix}gutter-x) * .5); // stylelint-disable-line function-disallowed-list\\n padding-left: calc(var(--#{$prefix}gutter-x) * .5); // stylelint-disable-line function-disallowed-list\\n margin-right: auto;\\n margin-left: auto;\\n}\\n\",\"// Breakpoint viewport sizes and media queries.\\n//\\n// Breakpoints are defined as a map of (name: minimum width), order from small to large:\\n//\\n// (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px, xxl: 1400px)\\n//\\n// The map defined in the `$grid-breakpoints` global variable is used as the `$breakpoints` argument by default.\\n\\n// Name of the next breakpoint, or null for the last breakpoint.\\n//\\n// >> breakpoint-next(sm)\\n// md\\n// >> breakpoint-next(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px, xxl: 1400px))\\n// md\\n// >> breakpoint-next(sm, $breakpoint-names: (xs sm md lg xl xxl))\\n// md\\n@function breakpoint-next($name, $breakpoints: $grid-breakpoints, $breakpoint-names: map-keys($breakpoints)) {\\n $n: index($breakpoint-names, $name);\\n @if not $n {\\n @error \\\"breakpoint `#{$name}` not found in `#{$breakpoints}`\\\";\\n }\\n @return if($n < length($breakpoint-names), nth($breakpoint-names, $n + 1), null);\\n}\\n\\n// Minimum breakpoint width. Null for the smallest (first) breakpoint.\\n//\\n// >> breakpoint-min(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px, xxl: 1400px))\\n// 576px\\n@function breakpoint-min($name, $breakpoints: $grid-breakpoints) {\\n $min: map-get($breakpoints, $name);\\n @return if($min != 0, $min, null);\\n}\\n\\n// Maximum breakpoint width.\\n// The maximum value is reduced by 0.02px to work around the limitations of\\n// `min-` and `max-` prefixes and viewports with fractional widths.\\n// See https://www.w3.org/TR/mediaqueries-4/#mq-min-max\\n// Uses 0.02px rather than 0.01px to work around a current rounding bug in Safari.\\n// See https://bugs.webkit.org/show_bug.cgi?id=178261\\n//\\n// >> breakpoint-max(md, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px, xxl: 1400px))\\n// 767.98px\\n@function breakpoint-max($name, $breakpoints: $grid-breakpoints) {\\n $max: map-get($breakpoints, $name);\\n @return if($max and $max > 0, $max - .02, null);\\n}\\n\\n// Returns a blank string if smallest breakpoint, otherwise returns the name with a dash in front.\\n// Useful for making responsive utilities.\\n//\\n// >> breakpoint-infix(xs, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px, xxl: 1400px))\\n// \\\"\\\" (Returns a blank string)\\n// >> breakpoint-infix(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px, xxl: 1400px))\\n// \\\"-sm\\\"\\n@function breakpoint-infix($name, $breakpoints: $grid-breakpoints) {\\n @return if(breakpoint-min($name, $breakpoints) == null, \\\"\\\", \\\"-#{$name}\\\");\\n}\\n\\n// Media of at least the minimum breakpoint width. No query for the smallest breakpoint.\\n// Makes the @content apply to the given breakpoint and wider.\\n@mixin media-breakpoint-up($name, $breakpoints: $grid-breakpoints) {\\n $min: breakpoint-min($name, $breakpoints);\\n @if $min {\\n @media (min-width: $min) {\\n @content;\\n }\\n } @else {\\n @content;\\n }\\n}\\n\\n// Media of at most the maximum breakpoint width. No query for the largest breakpoint.\\n// Makes the @content apply to the given breakpoint and narrower.\\n@mixin media-breakpoint-down($name, $breakpoints: $grid-breakpoints) {\\n $max: breakpoint-max($name, $breakpoints);\\n @if $max {\\n @media (max-width: $max) {\\n @content;\\n }\\n } @else {\\n @content;\\n }\\n}\\n\\n// Media that spans multiple breakpoint widths.\\n// Makes the @content apply between the min and max breakpoints\\n@mixin media-breakpoint-between($lower, $upper, $breakpoints: $grid-breakpoints) {\\n $min: breakpoint-min($lower, $breakpoints);\\n $max: breakpoint-max($upper, $breakpoints);\\n\\n @if $min != null and $max != null {\\n @media (min-width: $min) and (max-width: $max) {\\n @content;\\n }\\n } @else if $max == null {\\n @include media-breakpoint-up($lower, $breakpoints) {\\n @content;\\n }\\n } @else if $min == null {\\n @include media-breakpoint-down($upper, $breakpoints) {\\n @content;\\n }\\n }\\n}\\n\\n// Media between the breakpoint's minimum and maximum widths.\\n// No minimum for the smallest breakpoint, and no maximum for the largest one.\\n// Makes the @content apply only to the given breakpoint, not viewports any wider or narrower.\\n@mixin media-breakpoint-only($name, $breakpoints: $grid-breakpoints) {\\n $min: breakpoint-min($name, $breakpoints);\\n $next: breakpoint-next($name, $breakpoints);\\n $max: breakpoint-max($next, $breakpoints);\\n\\n @if $min != null and $max != null {\\n @media (min-width: $min) and (max-width: $max) {\\n @content;\\n }\\n } @else if $max == null {\\n @include media-breakpoint-up($name, $breakpoints) {\\n @content;\\n }\\n } @else if $min == null {\\n @include media-breakpoint-down($next, $breakpoints) {\\n @content;\\n }\\n }\\n}\\n\",\"// Row\\n//\\n// Rows contain your columns.\\n\\n:root {\\n @each $name, $value in $grid-breakpoints {\\n --#{$prefix}breakpoint-#{$name}: #{$value};\\n }\\n}\\n\\n@if $enable-grid-classes {\\n .row {\\n @include make-row();\\n\\n > * {\\n @include make-col-ready();\\n }\\n }\\n}\\n\\n@if $enable-cssgrid {\\n .grid {\\n display: grid;\\n grid-template-rows: repeat(var(--#{$prefix}rows, 1), 1fr);\\n grid-template-columns: repeat(var(--#{$prefix}columns, #{$grid-columns}), 1fr);\\n gap: var(--#{$prefix}gap, #{$grid-gutter-width});\\n\\n @include make-cssgrid();\\n }\\n}\\n\\n\\n// Columns\\n//\\n// Common styles for small and large grid columns\\n\\n@if $enable-grid-classes {\\n @include make-grid-columns();\\n}\\n\",\"// Grid system\\n//\\n// Generate semantic grid columns with these mixins.\\n\\n@mixin make-row($gutter: $grid-gutter-width) {\\n --#{$prefix}gutter-x: #{$gutter};\\n --#{$prefix}gutter-y: 0;\\n display: flex;\\n flex-wrap: wrap;\\n // TODO: Revisit calc order after https://github.com/react-bootstrap/react-bootstrap/issues/6039 is fixed\\n margin-top: calc(-1 * var(--#{$prefix}gutter-y)); // stylelint-disable-line function-disallowed-list\\n margin-right: calc(-.5 * var(--#{$prefix}gutter-x)); // stylelint-disable-line function-disallowed-list\\n margin-left: calc(-.5 * var(--#{$prefix}gutter-x)); // stylelint-disable-line function-disallowed-list\\n}\\n\\n@mixin make-col-ready() {\\n // Add box sizing if only the grid is loaded\\n box-sizing: if(variable-exists(include-column-box-sizing) and $include-column-box-sizing, border-box, null);\\n // Prevent columns from becoming too narrow when at smaller grid tiers by\\n // always setting `width: 100%;`. This works because we set the width\\n // later on to override this initial width.\\n flex-shrink: 0;\\n width: 100%;\\n max-width: 100%; // Prevent `.col-auto`, `.col` (& responsive variants) from breaking out the grid\\n padding-right: calc(var(--#{$prefix}gutter-x) * .5); // stylelint-disable-line function-disallowed-list\\n padding-left: calc(var(--#{$prefix}gutter-x) * .5); // stylelint-disable-line function-disallowed-list\\n margin-top: var(--#{$prefix}gutter-y);\\n}\\n\\n@mixin make-col($size: false, $columns: $grid-columns) {\\n @if $size {\\n flex: 0 0 auto;\\n width: percentage(divide($size, $columns));\\n\\n } @else {\\n flex: 1 1 0;\\n max-width: 100%;\\n }\\n}\\n\\n@mixin make-col-auto() {\\n flex: 0 0 auto;\\n width: auto;\\n}\\n\\n@mixin make-col-offset($size, $columns: $grid-columns) {\\n $num: divide($size, $columns);\\n margin-left: if($num == 0, 0, percentage($num));\\n}\\n\\n// Row columns\\n//\\n// Specify on a parent element(e.g., .row) to force immediate children into NN\\n// number of columns. Supports wrapping to new lines, but does not do a Masonry\\n// style grid.\\n@mixin row-cols($count) {\\n > * {\\n flex: 0 0 auto;\\n width: percentage(divide(1, $count));\\n }\\n}\\n\\n// Framework grid generation\\n//\\n// Used only by Bootstrap to generate the correct number of grid classes given\\n// any value of `$grid-columns`.\\n\\n@mixin make-grid-columns($columns: $grid-columns, $gutter: $grid-gutter-width, $breakpoints: $grid-breakpoints) {\\n @each $breakpoint in map-keys($breakpoints) {\\n $infix: breakpoint-infix($breakpoint, $breakpoints);\\n\\n @include media-breakpoint-up($breakpoint, $breakpoints) {\\n // Provide basic `.col-{bp}` classes for equal-width flexbox columns\\n .col#{$infix} {\\n flex: 1 0 0%; // Flexbugs #4: https://github.com/philipwalton/flexbugs#flexbug-4\\n }\\n\\n .row-cols#{$infix}-auto > * {\\n @include make-col-auto();\\n }\\n\\n @if $grid-row-columns > 0 {\\n @for $i from 1 through $grid-row-columns {\\n .row-cols#{$infix}-#{$i} {\\n @include row-cols($i);\\n }\\n }\\n }\\n\\n .col#{$infix}-auto {\\n @include make-col-auto();\\n }\\n\\n @if $columns > 0 {\\n @for $i from 1 through $columns {\\n .col#{$infix}-#{$i} {\\n @include make-col($i, $columns);\\n }\\n }\\n\\n // `$columns - 1` because offsetting by the width of an entire row isn't possible\\n @for $i from 0 through ($columns - 1) {\\n @if not ($infix == \\\"\\\" and $i == 0) { // Avoid emitting useless .offset-0\\n .offset#{$infix}-#{$i} {\\n @include make-col-offset($i, $columns);\\n }\\n }\\n }\\n }\\n\\n // Gutters\\n //\\n // Make use of `.g-*`, `.gx-*` or `.gy-*` utilities to change spacing between the columns.\\n @each $key, $value in $gutters {\\n .g#{$infix}-#{$key},\\n .gx#{$infix}-#{$key} {\\n --#{$prefix}gutter-x: #{$value};\\n }\\n\\n .g#{$infix}-#{$key},\\n .gy#{$infix}-#{$key} {\\n --#{$prefix}gutter-y: #{$value};\\n }\\n }\\n }\\n }\\n}\\n\\n@mixin make-cssgrid($columns: $grid-columns, $breakpoints: $grid-breakpoints) {\\n @each $breakpoint in map-keys($breakpoints) {\\n $infix: breakpoint-infix($breakpoint, $breakpoints);\\n\\n @include media-breakpoint-up($breakpoint, $breakpoints) {\\n @if $columns > 0 {\\n @for $i from 1 through $columns {\\n .g-col#{$infix}-#{$i} {\\n grid-column: auto / span $i;\\n }\\n }\\n\\n // Start with `1` because `0` is an invalid value.\\n // Ends with `$columns - 1` because offsetting by the width of an entire row isn't possible.\\n @for $i from 1 through ($columns - 1) {\\n .g-start#{$infix}-#{$i} {\\n grid-column-start: $i;\\n }\\n }\\n }\\n }\\n }\\n}\\n\",\"//\\n// Basic Bootstrap table\\n//\\n\\n.table {\\n // Reset needed for nesting tables\\n --#{$prefix}table-color-type: initial;\\n --#{$prefix}table-bg-type: initial;\\n --#{$prefix}table-color-state: initial;\\n --#{$prefix}table-bg-state: initial;\\n // End of reset\\n --#{$prefix}table-color: #{$table-color};\\n --#{$prefix}table-bg: #{$table-bg};\\n --#{$prefix}table-border-color: #{$table-border-color};\\n --#{$prefix}table-accent-bg: #{$table-accent-bg};\\n --#{$prefix}table-striped-color: #{$table-striped-color};\\n --#{$prefix}table-striped-bg: #{$table-striped-bg};\\n --#{$prefix}table-active-color: #{$table-active-color};\\n --#{$prefix}table-active-bg: #{$table-active-bg};\\n --#{$prefix}table-hover-color: #{$table-hover-color};\\n --#{$prefix}table-hover-bg: #{$table-hover-bg};\\n\\n width: 100%;\\n margin-bottom: $spacer;\\n vertical-align: $table-cell-vertical-align;\\n border-color: var(--#{$prefix}table-border-color);\\n\\n // Target th & td\\n // We need the child combinator to prevent styles leaking to nested tables which doesn't have a `.table` class.\\n // We use the universal selectors here to simplify the selector (else we would need 6 different selectors).\\n // Another advantage is that this generates less code and makes the selector less specific making it easier to override.\\n // stylelint-disable-next-line selector-max-universal\\n > :not(caption) > * > * {\\n padding: $table-cell-padding-y $table-cell-padding-x;\\n // Following the precept of cascades: https://codepen.io/miriamsuzanne/full/vYNgodb\\n color: var(--#{$prefix}table-color-state, var(--#{$prefix}table-color-type, var(--#{$prefix}table-color)));\\n background-color: var(--#{$prefix}table-bg);\\n border-bottom-width: $table-border-width;\\n box-shadow: inset 0 0 0 9999px var(--#{$prefix}table-bg-state, var(--#{$prefix}table-bg-type, var(--#{$prefix}table-accent-bg)));\\n }\\n\\n > tbody {\\n vertical-align: inherit;\\n }\\n\\n > thead {\\n vertical-align: bottom;\\n }\\n}\\n\\n.table-group-divider {\\n border-top: calc(#{$table-border-width} * 2) solid $table-group-separator-color; // stylelint-disable-line function-disallowed-list\\n}\\n\\n//\\n// Change placement of captions with a class\\n//\\n\\n.caption-top {\\n caption-side: top;\\n}\\n\\n\\n//\\n// Condensed table w/ half padding\\n//\\n\\n.table-sm {\\n // stylelint-disable-next-line selector-max-universal\\n > :not(caption) > * > * {\\n padding: $table-cell-padding-y-sm $table-cell-padding-x-sm;\\n }\\n}\\n\\n\\n// Border versions\\n//\\n// Add or remove borders all around the table and between all the columns.\\n//\\n// When borders are added on all sides of the cells, the corners can render odd when\\n// these borders do not have the same color or if they are semi-transparent.\\n// Therefore we add top and border bottoms to the `tr`s and left and right borders\\n// to the `td`s or `th`s\\n\\n.table-bordered {\\n > :not(caption) > * {\\n border-width: $table-border-width 0;\\n\\n // stylelint-disable-next-line selector-max-universal\\n > * {\\n border-width: 0 $table-border-width;\\n }\\n }\\n}\\n\\n.table-borderless {\\n // stylelint-disable-next-line selector-max-universal\\n > :not(caption) > * > * {\\n border-bottom-width: 0;\\n }\\n\\n > :not(:first-child) {\\n border-top-width: 0;\\n }\\n}\\n\\n// Zebra-striping\\n//\\n// Default zebra-stripe styles (alternating gray and transparent backgrounds)\\n\\n// For rows\\n.table-striped {\\n > tbody > tr:nth-of-type(#{$table-striped-order}) > * {\\n --#{$prefix}table-color-type: var(--#{$prefix}table-striped-color);\\n --#{$prefix}table-bg-type: var(--#{$prefix}table-striped-bg);\\n }\\n}\\n\\n// For columns\\n.table-striped-columns {\\n > :not(caption) > tr > :nth-child(#{$table-striped-columns-order}) {\\n --#{$prefix}table-color-type: var(--#{$prefix}table-striped-color);\\n --#{$prefix}table-bg-type: var(--#{$prefix}table-striped-bg);\\n }\\n}\\n\\n// Active table\\n//\\n// The `.table-active` class can be added to highlight rows or cells\\n\\n.table-active {\\n --#{$prefix}table-color-state: var(--#{$prefix}table-active-color);\\n --#{$prefix}table-bg-state: var(--#{$prefix}table-active-bg);\\n}\\n\\n// Hover effect\\n//\\n// Placed here since it has to come after the potential zebra striping\\n\\n.table-hover {\\n > tbody > tr:hover > * {\\n --#{$prefix}table-color-state: var(--#{$prefix}table-hover-color);\\n --#{$prefix}table-bg-state: var(--#{$prefix}table-hover-bg);\\n }\\n}\\n\\n\\n// Table variants\\n//\\n// Table variants set the table cell backgrounds, border colors\\n// and the colors of the striped, hovered & active tables\\n\\n@each $color, $value in $table-variants {\\n @include table-variant($color, $value);\\n}\\n\\n// Responsive tables\\n//\\n// Generate series of `.table-responsive-*` classes for configuring the screen\\n// size of where your table will overflow.\\n\\n@each $breakpoint in map-keys($grid-breakpoints) {\\n $infix: breakpoint-infix($breakpoint, $grid-breakpoints);\\n\\n @include media-breakpoint-down($breakpoint) {\\n .table-responsive#{$infix} {\\n overflow-x: auto;\\n -webkit-overflow-scrolling: touch;\\n }\\n }\\n}\\n\",\"// scss-docs-start table-variant\\n@mixin table-variant($state, $background) {\\n .table-#{$state} {\\n $color: color-contrast(opaque($body-bg, $background));\\n $hover-bg: mix($color, $background, percentage($table-hover-bg-factor));\\n $striped-bg: mix($color, $background, percentage($table-striped-bg-factor));\\n $active-bg: mix($color, $background, percentage($table-active-bg-factor));\\n $table-border-color: mix($color, $background, percentage($table-border-factor));\\n\\n --#{$prefix}table-color: #{$color};\\n --#{$prefix}table-bg: #{$background};\\n --#{$prefix}table-border-color: #{$table-border-color};\\n --#{$prefix}table-striped-bg: #{$striped-bg};\\n --#{$prefix}table-striped-color: #{color-contrast($striped-bg)};\\n --#{$prefix}table-active-bg: #{$active-bg};\\n --#{$prefix}table-active-color: #{color-contrast($active-bg)};\\n --#{$prefix}table-hover-bg: #{$hover-bg};\\n --#{$prefix}table-hover-color: #{color-contrast($hover-bg)};\\n\\n color: var(--#{$prefix}table-color);\\n border-color: var(--#{$prefix}table-border-color);\\n }\\n}\\n// scss-docs-end table-variant\\n\",\"//\\n// Labels\\n//\\n\\n.form-label {\\n margin-bottom: $form-label-margin-bottom;\\n @include font-size($form-label-font-size);\\n font-style: $form-label-font-style;\\n font-weight: $form-label-font-weight;\\n color: $form-label-color;\\n}\\n\\n// For use with horizontal and inline forms, when you need the label (or legend)\\n// text to align with the form controls.\\n.col-form-label {\\n padding-top: add($input-padding-y, $input-border-width);\\n padding-bottom: add($input-padding-y, $input-border-width);\\n margin-bottom: 0; // Override the `<legend>` default\\n @include font-size(inherit); // Override the `<legend>` default\\n font-style: $form-label-font-style;\\n font-weight: $form-label-font-weight;\\n line-height: $input-line-height;\\n color: $form-label-color;\\n}\\n\\n.col-form-label-lg {\\n padding-top: add($input-padding-y-lg, $input-border-width);\\n padding-bottom: add($input-padding-y-lg, $input-border-width);\\n @include font-size($input-font-size-lg);\\n}\\n\\n.col-form-label-sm {\\n padding-top: add($input-padding-y-sm, $input-border-width);\\n padding-bottom: add($input-padding-y-sm, $input-border-width);\\n @include font-size($input-font-size-sm);\\n}\\n\",\"//\\n// Form text\\n//\\n\\n.form-text {\\n margin-top: $form-text-margin-top;\\n @include font-size($form-text-font-size);\\n font-style: $form-text-font-style;\\n font-weight: $form-text-font-weight;\\n color: $form-text-color;\\n}\\n\",\"//\\n// General form controls (plus a few specific high-level interventions)\\n//\\n\\n.form-control {\\n display: block;\\n width: 100%;\\n padding: $input-padding-y $input-padding-x;\\n font-family: $input-font-family;\\n @include font-size($input-font-size);\\n font-weight: $input-font-weight;\\n line-height: $input-line-height;\\n color: $input-color;\\n appearance: none; // Fix appearance for date inputs in Safari\\n background-color: $input-bg;\\n background-clip: padding-box;\\n border: $input-border-width solid $input-border-color;\\n\\n // Note: This has no effect on <select>s in some browsers, due to the limited stylability of `<select>`s in CSS.\\n @include border-radius($input-border-radius, 0);\\n\\n @include box-shadow($input-box-shadow);\\n @include transition($input-transition);\\n\\n &[type=\\\"file\\\"] {\\n overflow: hidden; // prevent pseudo element button overlap\\n\\n &:not(:disabled):not([readonly]) {\\n cursor: pointer;\\n }\\n }\\n\\n // Customize the `:focus` state to imitate native WebKit styles.\\n &:focus {\\n color: $input-focus-color;\\n background-color: $input-focus-bg;\\n border-color: $input-focus-border-color;\\n outline: 0;\\n @if $enable-shadows {\\n @include box-shadow($input-box-shadow, $input-focus-box-shadow);\\n } @else {\\n // Avoid using mixin so we can pass custom focus shadow properly\\n box-shadow: $input-focus-box-shadow;\\n }\\n }\\n\\n &::-webkit-date-and-time-value {\\n // On Android Chrome, form-control's \\\"width: 100%\\\" makes the input width too small\\n // Tested under Android 11 / Chrome 89, Android 12 / Chrome 100, Android 13 / Chrome 109\\n //\\n // On iOS Safari, form-control's \\\"appearance: none\\\" + \\\"width: 100%\\\" makes the input width too small\\n // Tested under iOS 16.2 / Safari 16.2\\n min-width: 85px; // Seems to be a good minimum safe width\\n\\n // Add some height to date inputs on iOS\\n // https://github.com/twbs/bootstrap/issues/23307\\n // TODO: we can remove this workaround once https://bugs.webkit.org/show_bug.cgi?id=198959 is resolved\\n // Multiply line-height by 1em if it has no unit\\n height: if(unit($input-line-height) == \\\"\\\", $input-line-height * 1em, $input-line-height);\\n\\n // Android Chrome type=\\\"date\\\" is taller than the other inputs\\n // because of \\\"margin: 1px 24px 1px 4px\\\" inside the shadow DOM\\n // Tested under Android 11 / Chrome 89, Android 12 / Chrome 100, Android 13 / Chrome 109\\n margin: 0;\\n }\\n\\n // Prevent excessive date input height in Webkit\\n // https://github.com/twbs/bootstrap/issues/34433\\n &::-webkit-datetime-edit {\\n display: block;\\n padding: 0;\\n }\\n\\n // Placeholder\\n &::placeholder {\\n color: $input-placeholder-color;\\n // Override Firefox's unusual default opacity; see https://github.com/twbs/bootstrap/pull/11526.\\n opacity: 1;\\n }\\n\\n // Disabled inputs\\n //\\n // HTML5 says that controls under a fieldset > legend:first-child won't be\\n // disabled if the fieldset is disabled. Due to implementation difficulty, we\\n // don't honor that edge case; we style them as disabled anyway.\\n &:disabled {\\n color: $input-disabled-color;\\n background-color: $input-disabled-bg;\\n border-color: $input-disabled-border-color;\\n // iOS fix for unreadable disabled content; see https://github.com/twbs/bootstrap/issues/11655.\\n opacity: 1;\\n }\\n\\n // File input buttons theming\\n &::file-selector-button {\\n padding: $input-padding-y $input-padding-x;\\n margin: (-$input-padding-y) (-$input-padding-x);\\n margin-inline-end: $input-padding-x;\\n color: $form-file-button-color;\\n @include gradient-bg($form-file-button-bg);\\n pointer-events: none;\\n border-color: inherit;\\n border-style: solid;\\n border-width: 0;\\n border-inline-end-width: $input-border-width;\\n border-radius: 0; // stylelint-disable-line property-disallowed-list\\n @include transition($btn-transition);\\n }\\n\\n &:hover:not(:disabled):not([readonly])::file-selector-button {\\n background-color: $form-file-button-hover-bg;\\n }\\n}\\n\\n// Readonly controls as plain text\\n//\\n// Apply class to a readonly input to make it appear like regular plain\\n// text (without any border, background color, focus indicator)\\n\\n.form-control-plaintext {\\n display: block;\\n width: 100%;\\n padding: $input-padding-y 0;\\n margin-bottom: 0; // match inputs if this class comes on inputs with default margins\\n line-height: $input-line-height;\\n color: $input-plaintext-color;\\n background-color: transparent;\\n border: solid transparent;\\n border-width: $input-border-width 0;\\n\\n &:focus {\\n outline: 0;\\n }\\n\\n &.form-control-sm,\\n &.form-control-lg {\\n padding-right: 0;\\n padding-left: 0;\\n }\\n}\\n\\n// Form control sizing\\n//\\n// Build on `.form-control` with modifier classes to decrease or increase the\\n// height and font-size of form controls.\\n//\\n// Repeated in `_input_group.scss` to avoid Sass extend issues.\\n\\n.form-control-sm {\\n min-height: $input-height-sm;\\n padding: $input-padding-y-sm $input-padding-x-sm;\\n @include font-size($input-font-size-sm);\\n @include border-radius($input-border-radius-sm);\\n\\n &::file-selector-button {\\n padding: $input-padding-y-sm $input-padding-x-sm;\\n margin: (-$input-padding-y-sm) (-$input-padding-x-sm);\\n margin-inline-end: $input-padding-x-sm;\\n }\\n}\\n\\n.form-control-lg {\\n min-height: $input-height-lg;\\n padding: $input-padding-y-lg $input-padding-x-lg;\\n @include font-size($input-font-size-lg);\\n @include border-radius($input-border-radius-lg);\\n\\n &::file-selector-button {\\n padding: $input-padding-y-lg $input-padding-x-lg;\\n margin: (-$input-padding-y-lg) (-$input-padding-x-lg);\\n margin-inline-end: $input-padding-x-lg;\\n }\\n}\\n\\n// Make sure textareas don't shrink too much when resized\\n// https://github.com/twbs/bootstrap/pull/29124\\n// stylelint-disable selector-no-qualifying-type\\ntextarea {\\n &.form-control {\\n min-height: $input-height;\\n }\\n\\n &.form-control-sm {\\n min-height: $input-height-sm;\\n }\\n\\n &.form-control-lg {\\n min-height: $input-height-lg;\\n }\\n}\\n// stylelint-enable selector-no-qualifying-type\\n\\n.form-control-color {\\n width: $form-color-width;\\n height: $input-height;\\n padding: $input-padding-y;\\n\\n &:not(:disabled):not([readonly]) {\\n cursor: pointer;\\n }\\n\\n &::-moz-color-swatch {\\n border: 0 !important; // stylelint-disable-line declaration-no-important\\n @include border-radius($input-border-radius);\\n }\\n\\n &::-webkit-color-swatch {\\n border: 0 !important; // stylelint-disable-line declaration-no-important\\n @include border-radius($input-border-radius);\\n }\\n\\n &.form-control-sm { height: $input-height-sm; }\\n &.form-control-lg { height: $input-height-lg; }\\n}\\n\",\"// stylelint-disable property-disallowed-list\\n@mixin transition($transition...) {\\n @if length($transition) == 0 {\\n $transition: $transition-base;\\n }\\n\\n @if length($transition) > 1 {\\n @each $value in $transition {\\n @if $value == null or $value == none {\\n @warn \\\"The keyword 'none' or 'null' must be used as a single argument.\\\";\\n }\\n }\\n }\\n\\n @if $enable-transitions {\\n @if nth($transition, 1) != null {\\n transition: $transition;\\n }\\n\\n @if $enable-reduced-motion and nth($transition, 1) != null and nth($transition, 1) != none {\\n @media (prefers-reduced-motion: reduce) {\\n transition: none;\\n }\\n }\\n }\\n}\\n\",\"// Gradients\\n\\n// scss-docs-start gradient-bg-mixin\\n@mixin gradient-bg($color: null) {\\n background-color: $color;\\n\\n @if $enable-gradients {\\n background-image: var(--#{$prefix}gradient);\\n }\\n}\\n// scss-docs-end gradient-bg-mixin\\n\\n// scss-docs-start gradient-mixins\\n// Horizontal gradient, from left to right\\n//\\n// Creates two color stops, start and end, by specifying a color and position for each color stop.\\n@mixin gradient-x($start-color: $gray-700, $end-color: $gray-800, $start-percent: 0%, $end-percent: 100%) {\\n background-image: linear-gradient(to right, $start-color $start-percent, $end-color $end-percent);\\n}\\n\\n// Vertical gradient, from top to bottom\\n//\\n// Creates two color stops, start and end, by specifying a color and position for each color stop.\\n@mixin gradient-y($start-color: $gray-700, $end-color: $gray-800, $start-percent: null, $end-percent: null) {\\n background-image: linear-gradient(to bottom, $start-color $start-percent, $end-color $end-percent);\\n}\\n\\n@mixin gradient-directional($start-color: $gray-700, $end-color: $gray-800, $deg: 45deg) {\\n background-image: linear-gradient($deg, $start-color, $end-color);\\n}\\n\\n@mixin gradient-x-three-colors($start-color: $blue, $mid-color: $purple, $color-stop: 50%, $end-color: $red) {\\n background-image: linear-gradient(to right, $start-color, $mid-color $color-stop, $end-color);\\n}\\n\\n@mixin gradient-y-three-colors($start-color: $blue, $mid-color: $purple, $color-stop: 50%, $end-color: $red) {\\n background-image: linear-gradient($start-color, $mid-color $color-stop, $end-color);\\n}\\n\\n@mixin gradient-radial($inner-color: $gray-700, $outer-color: $gray-800) {\\n background-image: radial-gradient(circle, $inner-color, $outer-color);\\n}\\n\\n@mixin gradient-striped($color: rgba($white, .15), $angle: 45deg) {\\n background-image: linear-gradient($angle, $color 25%, transparent 25%, transparent 50%, $color 50%, $color 75%, transparent 75%, transparent);\\n}\\n// scss-docs-end gradient-mixins\\n\",\"// Select\\n//\\n// Replaces the browser default select with a custom one, mostly pulled from\\n// https://primer.github.io/.\\n\\n.form-select {\\n --#{$prefix}form-select-bg-img: #{escape-svg($form-select-indicator)};\\n\\n display: block;\\n width: 100%;\\n padding: $form-select-padding-y $form-select-indicator-padding $form-select-padding-y $form-select-padding-x;\\n font-family: $form-select-font-family;\\n @include font-size($form-select-font-size);\\n font-weight: $form-select-font-weight;\\n line-height: $form-select-line-height;\\n color: $form-select-color;\\n appearance: none;\\n background-color: $form-select-bg;\\n background-image: var(--#{$prefix}form-select-bg-img), var(--#{$prefix}form-select-bg-icon, none);\\n background-repeat: no-repeat;\\n background-position: $form-select-bg-position;\\n background-size: $form-select-bg-size;\\n border: $form-select-border-width solid $form-select-border-color;\\n @include border-radius($form-select-border-radius, 0);\\n @include box-shadow($form-select-box-shadow);\\n @include transition($form-select-transition);\\n\\n &:focus {\\n border-color: $form-select-focus-border-color;\\n outline: 0;\\n @if $enable-shadows {\\n @include box-shadow($form-select-box-shadow, $form-select-focus-box-shadow);\\n } @else {\\n // Avoid using mixin so we can pass custom focus shadow properly\\n box-shadow: $form-select-focus-box-shadow;\\n }\\n }\\n\\n &[multiple],\\n &[size]:not([size=\\\"1\\\"]) {\\n padding-right: $form-select-padding-x;\\n background-image: none;\\n }\\n\\n &:disabled {\\n color: $form-select-disabled-color;\\n background-color: $form-select-disabled-bg;\\n border-color: $form-select-disabled-border-color;\\n }\\n\\n // Remove outline from select box in FF\\n &:-moz-focusring {\\n color: transparent;\\n text-shadow: 0 0 0 $form-select-color;\\n }\\n}\\n\\n.form-select-sm {\\n padding-top: $form-select-padding-y-sm;\\n padding-bottom: $form-select-padding-y-sm;\\n padding-left: $form-select-padding-x-sm;\\n @include font-size($form-select-font-size-sm);\\n @include border-radius($form-select-border-radius-sm);\\n}\\n\\n.form-select-lg {\\n padding-top: $form-select-padding-y-lg;\\n padding-bottom: $form-select-padding-y-lg;\\n padding-left: $form-select-padding-x-lg;\\n @include font-size($form-select-font-size-lg);\\n @include border-radius($form-select-border-radius-lg);\\n}\\n\\n@if $enable-dark-mode {\\n @include color-mode(dark) {\\n .form-select {\\n --#{$prefix}form-select-bg-img: #{escape-svg($form-select-indicator-dark)};\\n }\\n }\\n}\\n\",\"//\\n// Check/radio\\n//\\n\\n.form-check {\\n display: block;\\n min-height: $form-check-min-height;\\n padding-left: $form-check-padding-start;\\n margin-bottom: $form-check-margin-bottom;\\n\\n .form-check-input {\\n float: left;\\n margin-left: $form-check-padding-start * -1;\\n }\\n}\\n\\n.form-check-reverse {\\n padding-right: $form-check-padding-start;\\n padding-left: 0;\\n text-align: right;\\n\\n .form-check-input {\\n float: right;\\n margin-right: $form-check-padding-start * -1;\\n margin-left: 0;\\n }\\n}\\n\\n.form-check-input {\\n --#{$prefix}form-check-bg: #{$form-check-input-bg};\\n\\n flex-shrink: 0;\\n width: $form-check-input-width;\\n height: $form-check-input-width;\\n margin-top: ($line-height-base - $form-check-input-width) * .5; // line-height minus check height\\n vertical-align: top;\\n appearance: none;\\n background-color: var(--#{$prefix}form-check-bg);\\n background-image: var(--#{$prefix}form-check-bg-image);\\n background-repeat: no-repeat;\\n background-position: center;\\n background-size: contain;\\n border: $form-check-input-border;\\n print-color-adjust: exact; // Keep themed appearance for print\\n @include transition($form-check-transition);\\n\\n &[type=\\\"checkbox\\\"] {\\n @include border-radius($form-check-input-border-radius);\\n }\\n\\n &[type=\\\"radio\\\"] {\\n // stylelint-disable-next-line property-disallowed-list\\n border-radius: $form-check-radio-border-radius;\\n }\\n\\n &:active {\\n filter: $form-check-input-active-filter;\\n }\\n\\n &:focus {\\n border-color: $form-check-input-focus-border;\\n outline: 0;\\n box-shadow: $form-check-input-focus-box-shadow;\\n }\\n\\n &:checked {\\n background-color: $form-check-input-checked-bg-color;\\n border-color: $form-check-input-checked-border-color;\\n\\n &[type=\\\"checkbox\\\"] {\\n @if $enable-gradients {\\n --#{$prefix}form-check-bg-image: #{escape-svg($form-check-input-checked-bg-image)}, var(--#{$prefix}gradient);\\n } @else {\\n --#{$prefix}form-check-bg-image: #{escape-svg($form-check-input-checked-bg-image)};\\n }\\n }\\n\\n &[type=\\\"radio\\\"] {\\n @if $enable-gradients {\\n --#{$prefix}form-check-bg-image: #{escape-svg($form-check-radio-checked-bg-image)}, var(--#{$prefix}gradient);\\n } @else {\\n --#{$prefix}form-check-bg-image: #{escape-svg($form-check-radio-checked-bg-image)};\\n }\\n }\\n }\\n\\n &[type=\\\"checkbox\\\"]:indeterminate {\\n background-color: $form-check-input-indeterminate-bg-color;\\n border-color: $form-check-input-indeterminate-border-color;\\n\\n @if $enable-gradients {\\n --#{$prefix}form-check-bg-image: #{escape-svg($form-check-input-indeterminate-bg-image)}, var(--#{$prefix}gradient);\\n } @else {\\n --#{$prefix}form-check-bg-image: #{escape-svg($form-check-input-indeterminate-bg-image)};\\n }\\n }\\n\\n &:disabled {\\n pointer-events: none;\\n filter: none;\\n opacity: $form-check-input-disabled-opacity;\\n }\\n\\n // Use disabled attribute in addition of :disabled pseudo-class\\n // See: https://github.com/twbs/bootstrap/issues/28247\\n &[disabled],\\n &:disabled {\\n ~ .form-check-label {\\n cursor: default;\\n opacity: $form-check-label-disabled-opacity;\\n }\\n }\\n}\\n\\n.form-check-label {\\n color: $form-check-label-color;\\n cursor: $form-check-label-cursor;\\n}\\n\\n//\\n// Switch\\n//\\n\\n.form-switch {\\n padding-left: $form-switch-padding-start;\\n\\n .form-check-input {\\n --#{$prefix}form-switch-bg: #{escape-svg($form-switch-bg-image)};\\n\\n width: $form-switch-width;\\n margin-left: $form-switch-padding-start * -1;\\n background-image: var(--#{$prefix}form-switch-bg);\\n background-position: left center;\\n @include border-radius($form-switch-border-radius, 0);\\n @include transition($form-switch-transition);\\n\\n &:focus {\\n --#{$prefix}form-switch-bg: #{escape-svg($form-switch-focus-bg-image)};\\n }\\n\\n &:checked {\\n background-position: $form-switch-checked-bg-position;\\n\\n @if $enable-gradients {\\n --#{$prefix}form-switch-bg: #{escape-svg($form-switch-checked-bg-image)}, var(--#{$prefix}gradient);\\n } @else {\\n --#{$prefix}form-switch-bg: #{escape-svg($form-switch-checked-bg-image)};\\n }\\n }\\n }\\n\\n &.form-check-reverse {\\n padding-right: $form-switch-padding-start;\\n padding-left: 0;\\n\\n .form-check-input {\\n margin-right: $form-switch-padding-start * -1;\\n margin-left: 0;\\n }\\n }\\n}\\n\\n.form-check-inline {\\n display: inline-block;\\n margin-right: $form-check-inline-margin-end;\\n}\\n\\n.btn-check {\\n position: absolute;\\n clip: rect(0, 0, 0, 0);\\n pointer-events: none;\\n\\n &[disabled],\\n &:disabled {\\n + .btn {\\n pointer-events: none;\\n filter: none;\\n opacity: $form-check-btn-check-disabled-opacity;\\n }\\n }\\n}\\n\\n@if $enable-dark-mode {\\n @include color-mode(dark) {\\n .form-switch .form-check-input:not(:checked):not(:focus) {\\n --#{$prefix}form-switch-bg: #{escape-svg($form-switch-bg-image-dark)};\\n }\\n }\\n}\\n\",\"// Range\\n//\\n// Style range inputs the same across browsers. Vendor-specific rules for pseudo\\n// elements cannot be mixed. As such, there are no shared styles for focus or\\n// active states on prefixed selectors.\\n\\n.form-range {\\n width: 100%;\\n height: add($form-range-thumb-height, $form-range-thumb-focus-box-shadow-width * 2);\\n padding: 0; // Need to reset padding\\n appearance: none;\\n background-color: transparent;\\n\\n &:focus {\\n outline: 0;\\n\\n // Pseudo-elements must be split across multiple rulesets to have an effect.\\n // No box-shadow() mixin for focus accessibility.\\n &::-webkit-slider-thumb { box-shadow: $form-range-thumb-focus-box-shadow; }\\n &::-moz-range-thumb { box-shadow: $form-range-thumb-focus-box-shadow; }\\n }\\n\\n &::-moz-focus-outer {\\n border: 0;\\n }\\n\\n &::-webkit-slider-thumb {\\n width: $form-range-thumb-width;\\n height: $form-range-thumb-height;\\n margin-top: ($form-range-track-height - $form-range-thumb-height) * .5; // Webkit specific\\n appearance: none;\\n @include gradient-bg($form-range-thumb-bg);\\n border: $form-range-thumb-border;\\n @include border-radius($form-range-thumb-border-radius);\\n @include box-shadow($form-range-thumb-box-shadow);\\n @include transition($form-range-thumb-transition);\\n\\n &:active {\\n @include gradient-bg($form-range-thumb-active-bg);\\n }\\n }\\n\\n &::-webkit-slider-runnable-track {\\n width: $form-range-track-width;\\n height: $form-range-track-height;\\n color: transparent; // Why?\\n cursor: $form-range-track-cursor;\\n background-color: $form-range-track-bg;\\n border-color: transparent;\\n @include border-radius($form-range-track-border-radius);\\n @include box-shadow($form-range-track-box-shadow);\\n }\\n\\n &::-moz-range-thumb {\\n width: $form-range-thumb-width;\\n height: $form-range-thumb-height;\\n appearance: none;\\n @include gradient-bg($form-range-thumb-bg);\\n border: $form-range-thumb-border;\\n @include border-radius($form-range-thumb-border-radius);\\n @include box-shadow($form-range-thumb-box-shadow);\\n @include transition($form-range-thumb-transition);\\n\\n &:active {\\n @include gradient-bg($form-range-thumb-active-bg);\\n }\\n }\\n\\n &::-moz-range-track {\\n width: $form-range-track-width;\\n height: $form-range-track-height;\\n color: transparent;\\n cursor: $form-range-track-cursor;\\n background-color: $form-range-track-bg;\\n border-color: transparent; // Firefox specific?\\n @include border-radius($form-range-track-border-radius);\\n @include box-shadow($form-range-track-box-shadow);\\n }\\n\\n &:disabled {\\n pointer-events: none;\\n\\n &::-webkit-slider-thumb {\\n background-color: $form-range-thumb-disabled-bg;\\n }\\n\\n &::-moz-range-thumb {\\n background-color: $form-range-thumb-disabled-bg;\\n }\\n }\\n}\\n\",\".form-floating {\\n position: relative;\\n\\n > .form-control,\\n > .form-control-plaintext,\\n > .form-select {\\n height: $form-floating-height;\\n min-height: $form-floating-height;\\n line-height: $form-floating-line-height;\\n }\\n\\n > label {\\n position: absolute;\\n top: 0;\\n left: 0;\\n z-index: 2;\\n height: 100%; // allow textareas\\n padding: $form-floating-padding-y $form-floating-padding-x;\\n overflow: hidden;\\n text-align: start;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n pointer-events: none;\\n border: $input-border-width solid transparent; // Required for aligning label's text with the input as it affects inner box model\\n transform-origin: 0 0;\\n @include transition($form-floating-transition);\\n }\\n\\n > .form-control,\\n > .form-control-plaintext {\\n padding: $form-floating-padding-y $form-floating-padding-x;\\n\\n &::placeholder {\\n color: transparent;\\n }\\n\\n &:focus,\\n &:not(:placeholder-shown) {\\n padding-top: $form-floating-input-padding-t;\\n padding-bottom: $form-floating-input-padding-b;\\n }\\n // Duplicated because `:-webkit-autofill` invalidates other selectors when grouped\\n &:-webkit-autofill {\\n padding-top: $form-floating-input-padding-t;\\n padding-bottom: $form-floating-input-padding-b;\\n }\\n }\\n\\n > .form-select {\\n padding-top: $form-floating-input-padding-t;\\n padding-bottom: $form-floating-input-padding-b;\\n }\\n\\n > .form-control:focus,\\n > .form-control:not(:placeholder-shown),\\n > .form-control-plaintext,\\n > .form-select {\\n ~ label {\\n color: rgba(var(--#{$prefix}body-color-rgb), #{$form-floating-label-opacity});\\n transform: $form-floating-label-transform;\\n\\n &::after {\\n position: absolute;\\n inset: $form-floating-padding-y ($form-floating-padding-x * .5);\\n z-index: -1;\\n height: $form-floating-label-height;\\n content: \\\"\\\";\\n background-color: $input-bg;\\n @include border-radius($input-border-radius);\\n }\\n }\\n }\\n // Duplicated because `:-webkit-autofill` invalidates other selectors when grouped\\n > .form-control:-webkit-autofill {\\n ~ label {\\n color: rgba(var(--#{$prefix}body-color-rgb), #{$form-floating-label-opacity});\\n transform: $form-floating-label-transform;\\n }\\n }\\n\\n > .form-control-plaintext {\\n ~ label {\\n border-width: $input-border-width 0; // Required to properly position label text - as explained above\\n }\\n }\\n\\n > :disabled ~ label,\\n > .form-control:disabled ~ label { // Required for `.form-control`s because of specificity\\n color: $form-floating-label-disabled-color;\\n\\n &::after {\\n background-color: $input-disabled-bg;\\n }\\n }\\n}\\n\",\"//\\n// Base styles\\n//\\n\\n.input-group {\\n position: relative;\\n display: flex;\\n flex-wrap: wrap; // For form validation feedback\\n align-items: stretch;\\n width: 100%;\\n\\n > .form-control,\\n > .form-select,\\n > .form-floating {\\n position: relative; // For focus state's z-index\\n flex: 1 1 auto;\\n width: 1%;\\n min-width: 0; // https://stackoverflow.com/questions/36247140/why-dont-flex-items-shrink-past-content-size\\n }\\n\\n // Bring the \\\"active\\\" form control to the top of surrounding elements\\n > .form-control:focus,\\n > .form-select:focus,\\n > .form-floating:focus-within {\\n z-index: 5;\\n }\\n\\n // Ensure buttons are always above inputs for more visually pleasing borders.\\n // This isn't needed for `.input-group-text` since it shares the same border-color\\n // as our inputs.\\n .btn {\\n position: relative;\\n z-index: 2;\\n\\n &:focus {\\n z-index: 5;\\n }\\n }\\n}\\n\\n\\n// Textual addons\\n//\\n// Serves as a catch-all element for any text or radio/checkbox input you wish\\n// to prepend or append to an input.\\n\\n.input-group-text {\\n display: flex;\\n align-items: center;\\n padding: $input-group-addon-padding-y $input-group-addon-padding-x;\\n @include font-size($input-font-size); // Match inputs\\n font-weight: $input-group-addon-font-weight;\\n line-height: $input-line-height;\\n color: $input-group-addon-color;\\n text-align: center;\\n white-space: nowrap;\\n background-color: $input-group-addon-bg;\\n border: $input-border-width solid $input-group-addon-border-color;\\n @include border-radius($input-border-radius);\\n}\\n\\n\\n// Sizing\\n//\\n// Remix the default form control sizing classes into new ones for easier\\n// manipulation.\\n\\n.input-group-lg > .form-control,\\n.input-group-lg > .form-select,\\n.input-group-lg > .input-group-text,\\n.input-group-lg > .btn {\\n padding: $input-padding-y-lg $input-padding-x-lg;\\n @include font-size($input-font-size-lg);\\n @include border-radius($input-border-radius-lg);\\n}\\n\\n.input-group-sm > .form-control,\\n.input-group-sm > .form-select,\\n.input-group-sm > .input-group-text,\\n.input-group-sm > .btn {\\n padding: $input-padding-y-sm $input-padding-x-sm;\\n @include font-size($input-font-size-sm);\\n @include border-radius($input-border-radius-sm);\\n}\\n\\n.input-group-lg > .form-select,\\n.input-group-sm > .form-select {\\n padding-right: $form-select-padding-x + $form-select-indicator-padding;\\n}\\n\\n\\n// Rounded corners\\n//\\n// These rulesets must come after the sizing ones to properly override sm and lg\\n// border-radius values when extending. They're more specific than we'd like\\n// with the `.input-group >` part, but without it, we cannot override the sizing.\\n\\n// stylelint-disable-next-line no-duplicate-selectors\\n.input-group {\\n &:not(.has-validation) {\\n > :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),\\n > .dropdown-toggle:nth-last-child(n + 3),\\n > .form-floating:not(:last-child) > .form-control,\\n > .form-floating:not(:last-child) > .form-select {\\n @include border-end-radius(0);\\n }\\n }\\n\\n &.has-validation {\\n > :nth-last-child(n + 3):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating),\\n > .dropdown-toggle:nth-last-child(n + 4),\\n > .form-floating:nth-last-child(n + 3) > .form-control,\\n > .form-floating:nth-last-child(n + 3) > .form-select {\\n @include border-end-radius(0);\\n }\\n }\\n\\n $validation-messages: \\\"\\\";\\n @each $state in map-keys($form-validation-states) {\\n $validation-messages: $validation-messages + \\\":not(.\\\" + unquote($state) + \\\"-tooltip)\\\" + \\\":not(.\\\" + unquote($state) + \\\"-feedback)\\\";\\n }\\n\\n > :not(:first-child):not(.dropdown-menu)#{$validation-messages} {\\n margin-left: calc(#{$input-border-width} * -1); // stylelint-disable-line function-disallowed-list\\n @include border-start-radius(0);\\n }\\n\\n > .form-floating:not(:first-child) > .form-control,\\n > .form-floating:not(:first-child) > .form-select {\\n @include border-start-radius(0);\\n }\\n}\\n\",\"// This mixin uses an `if()` technique to be compatible with Dart Sass\\n// See https://github.com/sass/sass/issues/1873#issuecomment-152293725 for more details\\n\\n// scss-docs-start form-validation-mixins\\n@mixin form-validation-state-selector($state) {\\n @if ($state == \\\"valid\\\" or $state == \\\"invalid\\\") {\\n .was-validated #{if(&, \\\"&\\\", \\\"\\\")}:#{$state},\\n #{if(&, \\\"&\\\", \\\"\\\")}.is-#{$state} {\\n @content;\\n }\\n } @else {\\n #{if(&, \\\"&\\\", \\\"\\\")}.is-#{$state} {\\n @content;\\n }\\n }\\n}\\n\\n@mixin form-validation-state(\\n $state,\\n $color,\\n $icon,\\n $tooltip-color: color-contrast($color),\\n $tooltip-bg-color: rgba($color, $form-feedback-tooltip-opacity),\\n $focus-box-shadow: 0 0 $input-btn-focus-blur $input-focus-width rgba($color, $input-btn-focus-color-opacity),\\n $border-color: $color\\n) {\\n .#{$state}-feedback {\\n display: none;\\n width: 100%;\\n margin-top: $form-feedback-margin-top;\\n @include font-size($form-feedback-font-size);\\n font-style: $form-feedback-font-style;\\n color: $color;\\n }\\n\\n .#{$state}-tooltip {\\n position: absolute;\\n top: 100%;\\n z-index: 5;\\n display: none;\\n max-width: 100%; // Contain to parent when possible\\n padding: $form-feedback-tooltip-padding-y $form-feedback-tooltip-padding-x;\\n margin-top: .1rem;\\n @include font-size($form-feedback-tooltip-font-size);\\n line-height: $form-feedback-tooltip-line-height;\\n color: $tooltip-color;\\n background-color: $tooltip-bg-color;\\n @include border-radius($form-feedback-tooltip-border-radius);\\n }\\n\\n @include form-validation-state-selector($state) {\\n ~ .#{$state}-feedback,\\n ~ .#{$state}-tooltip {\\n display: block;\\n }\\n }\\n\\n .form-control {\\n @include form-validation-state-selector($state) {\\n border-color: $border-color;\\n\\n @if $enable-validation-icons {\\n padding-right: $input-height-inner;\\n background-image: escape-svg($icon);\\n background-repeat: no-repeat;\\n background-position: right $input-height-inner-quarter center;\\n background-size: $input-height-inner-half $input-height-inner-half;\\n }\\n\\n &:focus {\\n border-color: $border-color;\\n @if $enable-shadows {\\n @include box-shadow($input-box-shadow, $focus-box-shadow);\\n } @else {\\n // Avoid using mixin so we can pass custom focus shadow properly\\n box-shadow: $focus-box-shadow;\\n }\\n }\\n }\\n }\\n\\n // stylelint-disable-next-line selector-no-qualifying-type\\n textarea.form-control {\\n @include form-validation-state-selector($state) {\\n @if $enable-validation-icons {\\n padding-right: $input-height-inner;\\n background-position: top $input-height-inner-quarter right $input-height-inner-quarter;\\n }\\n }\\n }\\n\\n .form-select {\\n @include form-validation-state-selector($state) {\\n border-color: $border-color;\\n\\n @if $enable-validation-icons {\\n &:not([multiple]):not([size]),\\n &:not([multiple])[size=\\\"1\\\"] {\\n --#{$prefix}form-select-bg-icon: #{escape-svg($icon)};\\n padding-right: $form-select-feedback-icon-padding-end;\\n background-position: $form-select-bg-position, $form-select-feedback-icon-position;\\n background-size: $form-select-bg-size, $form-select-feedback-icon-size;\\n }\\n }\\n\\n &:focus {\\n border-color: $border-color;\\n @if $enable-shadows {\\n @include box-shadow($form-select-box-shadow, $focus-box-shadow);\\n } @else {\\n // Avoid using mixin so we can pass custom focus shadow properly\\n box-shadow: $focus-box-shadow;\\n }\\n }\\n }\\n }\\n\\n .form-control-color {\\n @include form-validation-state-selector($state) {\\n @if $enable-validation-icons {\\n width: add($form-color-width, $input-height-inner);\\n }\\n }\\n }\\n\\n .form-check-input {\\n @include form-validation-state-selector($state) {\\n border-color: $border-color;\\n\\n &:checked {\\n background-color: $color;\\n }\\n\\n &:focus {\\n box-shadow: $focus-box-shadow;\\n }\\n\\n ~ .form-check-label {\\n color: $color;\\n }\\n }\\n }\\n .form-check-inline .form-check-input {\\n ~ .#{$state}-feedback {\\n margin-left: .5em;\\n }\\n }\\n\\n .input-group {\\n > .form-control:not(:focus),\\n > .form-select:not(:focus),\\n > .form-floating:not(:focus-within) {\\n @include form-validation-state-selector($state) {\\n @if $state == \\\"valid\\\" {\\n z-index: 3;\\n } @else if $state == \\\"invalid\\\" {\\n z-index: 4;\\n }\\n }\\n }\\n }\\n}\\n// scss-docs-end form-validation-mixins\\n\",\"//\\n// Base styles\\n//\\n\\n.btn {\\n // scss-docs-start btn-css-vars\\n --#{$prefix}btn-padding-x: #{$btn-padding-x};\\n --#{$prefix}btn-padding-y: #{$btn-padding-y};\\n --#{$prefix}btn-font-family: #{$btn-font-family};\\n @include rfs($btn-font-size, --#{$prefix}btn-font-size);\\n --#{$prefix}btn-font-weight: #{$btn-font-weight};\\n --#{$prefix}btn-line-height: #{$btn-line-height};\\n --#{$prefix}btn-color: #{$btn-color};\\n --#{$prefix}btn-bg: transparent;\\n --#{$prefix}btn-border-width: #{$btn-border-width};\\n --#{$prefix}btn-border-color: transparent;\\n --#{$prefix}btn-border-radius: #{$btn-border-radius};\\n --#{$prefix}btn-hover-border-color: transparent;\\n --#{$prefix}btn-box-shadow: #{$btn-box-shadow};\\n --#{$prefix}btn-disabled-opacity: #{$btn-disabled-opacity};\\n --#{$prefix}btn-focus-box-shadow: 0 0 0 #{$btn-focus-width} rgba(var(--#{$prefix}btn-focus-shadow-rgb), .5);\\n // scss-docs-end btn-css-vars\\n\\n display: inline-block;\\n padding: var(--#{$prefix}btn-padding-y) var(--#{$prefix}btn-padding-x);\\n font-family: var(--#{$prefix}btn-font-family);\\n @include font-size(var(--#{$prefix}btn-font-size));\\n font-weight: var(--#{$prefix}btn-font-weight);\\n line-height: var(--#{$prefix}btn-line-height);\\n color: var(--#{$prefix}btn-color);\\n text-align: center;\\n text-decoration: if($link-decoration == none, null, none);\\n white-space: $btn-white-space;\\n vertical-align: middle;\\n cursor: if($enable-button-pointers, pointer, null);\\n user-select: none;\\n border: var(--#{$prefix}btn-border-width) solid var(--#{$prefix}btn-border-color);\\n @include border-radius(var(--#{$prefix}btn-border-radius));\\n @include gradient-bg(var(--#{$prefix}btn-bg));\\n @include box-shadow(var(--#{$prefix}btn-box-shadow));\\n @include transition($btn-transition);\\n\\n &:hover {\\n color: var(--#{$prefix}btn-hover-color);\\n text-decoration: if($link-hover-decoration == underline, none, null);\\n background-color: var(--#{$prefix}btn-hover-bg);\\n border-color: var(--#{$prefix}btn-hover-border-color);\\n }\\n\\n .btn-check + &:hover {\\n // override for the checkbox/radio buttons\\n color: var(--#{$prefix}btn-color);\\n background-color: var(--#{$prefix}btn-bg);\\n border-color: var(--#{$prefix}btn-border-color);\\n }\\n\\n &:focus-visible {\\n color: var(--#{$prefix}btn-hover-color);\\n @include gradient-bg(var(--#{$prefix}btn-hover-bg));\\n border-color: var(--#{$prefix}btn-hover-border-color);\\n outline: 0;\\n // Avoid using mixin so we can pass custom focus shadow properly\\n @if $enable-shadows {\\n box-shadow: var(--#{$prefix}btn-box-shadow), var(--#{$prefix}btn-focus-box-shadow);\\n } @else {\\n box-shadow: var(--#{$prefix}btn-focus-box-shadow);\\n }\\n }\\n\\n .btn-check:focus-visible + & {\\n border-color: var(--#{$prefix}btn-hover-border-color);\\n outline: 0;\\n // Avoid using mixin so we can pass custom focus shadow properly\\n @if $enable-shadows {\\n box-shadow: var(--#{$prefix}btn-box-shadow), var(--#{$prefix}btn-focus-box-shadow);\\n } @else {\\n box-shadow: var(--#{$prefix}btn-focus-box-shadow);\\n }\\n }\\n\\n .btn-check:checked + &,\\n :not(.btn-check) + &:active,\\n &:first-child:active,\\n &.active,\\n &.show {\\n color: var(--#{$prefix}btn-active-color);\\n background-color: var(--#{$prefix}btn-active-bg);\\n // Remove CSS gradients if they're enabled\\n background-image: if($enable-gradients, none, null);\\n border-color: var(--#{$prefix}btn-active-border-color);\\n @include box-shadow(var(--#{$prefix}btn-active-shadow));\\n\\n &:focus-visible {\\n // Avoid using mixin so we can pass custom focus shadow properly\\n @if $enable-shadows {\\n box-shadow: var(--#{$prefix}btn-active-shadow), var(--#{$prefix}btn-focus-box-shadow);\\n } @else {\\n box-shadow: var(--#{$prefix}btn-focus-box-shadow);\\n }\\n }\\n }\\n\\n .btn-check:checked:focus-visible + & {\\n // Avoid using mixin so we can pass custom focus shadow properly\\n @if $enable-shadows {\\n box-shadow: var(--#{$prefix}btn-active-shadow), var(--#{$prefix}btn-focus-box-shadow);\\n } @else {\\n box-shadow: var(--#{$prefix}btn-focus-box-shadow);\\n }\\n }\\n\\n &:disabled,\\n &.disabled,\\n fieldset:disabled & {\\n color: var(--#{$prefix}btn-disabled-color);\\n pointer-events: none;\\n background-color: var(--#{$prefix}btn-disabled-bg);\\n background-image: if($enable-gradients, none, null);\\n border-color: var(--#{$prefix}btn-disabled-border-color);\\n opacity: var(--#{$prefix}btn-disabled-opacity);\\n @include box-shadow(none);\\n }\\n}\\n\\n\\n//\\n// Alternate buttons\\n//\\n\\n// scss-docs-start btn-variant-loops\\n@each $color, $value in $theme-colors {\\n .btn-#{$color} {\\n @if $color == \\\"light\\\" {\\n @include button-variant(\\n $value,\\n $value,\\n $hover-background: shade-color($value, $btn-hover-bg-shade-amount),\\n $hover-border: shade-color($value, $btn-hover-border-shade-amount),\\n $active-background: shade-color($value, $btn-active-bg-shade-amount),\\n $active-border: shade-color($value, $btn-active-border-shade-amount)\\n );\\n } @else if $color == \\\"dark\\\" {\\n @include button-variant(\\n $value,\\n $value,\\n $hover-background: tint-color($value, $btn-hover-bg-tint-amount),\\n $hover-border: tint-color($value, $btn-hover-border-tint-amount),\\n $active-background: tint-color($value, $btn-active-bg-tint-amount),\\n $active-border: tint-color($value, $btn-active-border-tint-amount)\\n );\\n } @else {\\n @include button-variant($value, $value);\\n }\\n }\\n}\\n\\n@each $color, $value in $theme-colors {\\n .btn-outline-#{$color} {\\n @include button-outline-variant($value);\\n }\\n}\\n// scss-docs-end btn-variant-loops\\n\\n\\n//\\n// Link buttons\\n//\\n\\n// Make a button look and behave like a link\\n.btn-link {\\n --#{$prefix}btn-font-weight: #{$font-weight-normal};\\n --#{$prefix}btn-color: #{$btn-link-color};\\n --#{$prefix}btn-bg: transparent;\\n --#{$prefix}btn-border-color: transparent;\\n --#{$prefix}btn-hover-color: #{$btn-link-hover-color};\\n --#{$prefix}btn-hover-border-color: transparent;\\n --#{$prefix}btn-active-color: #{$btn-link-hover-color};\\n --#{$prefix}btn-active-border-color: transparent;\\n --#{$prefix}btn-disabled-color: #{$btn-link-disabled-color};\\n --#{$prefix}btn-disabled-border-color: transparent;\\n --#{$prefix}btn-box-shadow: 0 0 0 #000; // Can't use `none` as keyword negates all values when used with multiple shadows\\n --#{$prefix}btn-focus-shadow-rgb: #{$btn-link-focus-shadow-rgb};\\n\\n text-decoration: $link-decoration;\\n @if $enable-gradients {\\n background-image: none;\\n }\\n\\n &:hover,\\n &:focus-visible {\\n text-decoration: $link-hover-decoration;\\n }\\n\\n &:focus-visible {\\n color: var(--#{$prefix}btn-color);\\n }\\n\\n &:hover {\\n color: var(--#{$prefix}btn-hover-color);\\n }\\n\\n // No need for an active state here\\n}\\n\\n\\n//\\n// Button Sizes\\n//\\n\\n.btn-lg {\\n @include button-size($btn-padding-y-lg, $btn-padding-x-lg, $btn-font-size-lg, $btn-border-radius-lg);\\n}\\n\\n.btn-sm {\\n @include button-size($btn-padding-y-sm, $btn-padding-x-sm, $btn-font-size-sm, $btn-border-radius-sm);\\n}\\n\",\"// Button variants\\n//\\n// Easily pump out default styles, as well as :hover, :focus, :active,\\n// and disabled options for all buttons\\n\\n// scss-docs-start btn-variant-mixin\\n@mixin button-variant(\\n $background,\\n $border,\\n $color: color-contrast($background),\\n $hover-background: if($color == $color-contrast-light, shade-color($background, $btn-hover-bg-shade-amount), tint-color($background, $btn-hover-bg-tint-amount)),\\n $hover-border: if($color == $color-contrast-light, shade-color($border, $btn-hover-border-shade-amount), tint-color($border, $btn-hover-border-tint-amount)),\\n $hover-color: color-contrast($hover-background),\\n $active-background: if($color == $color-contrast-light, shade-color($background, $btn-active-bg-shade-amount), tint-color($background, $btn-active-bg-tint-amount)),\\n $active-border: if($color == $color-contrast-light, shade-color($border, $btn-active-border-shade-amount), tint-color($border, $btn-active-border-tint-amount)),\\n $active-color: color-contrast($active-background),\\n $disabled-background: $background,\\n $disabled-border: $border,\\n $disabled-color: color-contrast($disabled-background)\\n) {\\n --#{$prefix}btn-color: #{$color};\\n --#{$prefix}btn-bg: #{$background};\\n --#{$prefix}btn-border-color: #{$border};\\n --#{$prefix}btn-hover-color: #{$hover-color};\\n --#{$prefix}btn-hover-bg: #{$hover-background};\\n --#{$prefix}btn-hover-border-color: #{$hover-border};\\n --#{$prefix}btn-focus-shadow-rgb: #{to-rgb(mix($color, $border, 15%))};\\n --#{$prefix}btn-active-color: #{$active-color};\\n --#{$prefix}btn-active-bg: #{$active-background};\\n --#{$prefix}btn-active-border-color: #{$active-border};\\n --#{$prefix}btn-active-shadow: #{$btn-active-box-shadow};\\n --#{$prefix}btn-disabled-color: #{$disabled-color};\\n --#{$prefix}btn-disabled-bg: #{$disabled-background};\\n --#{$prefix}btn-disabled-border-color: #{$disabled-border};\\n}\\n// scss-docs-end btn-variant-mixin\\n\\n// scss-docs-start btn-outline-variant-mixin\\n@mixin button-outline-variant(\\n $color,\\n $color-hover: color-contrast($color),\\n $active-background: $color,\\n $active-border: $color,\\n $active-color: color-contrast($active-background)\\n) {\\n --#{$prefix}btn-color: #{$color};\\n --#{$prefix}btn-border-color: #{$color};\\n --#{$prefix}btn-hover-color: #{$color-hover};\\n --#{$prefix}btn-hover-bg: #{$active-background};\\n --#{$prefix}btn-hover-border-color: #{$active-border};\\n --#{$prefix}btn-focus-shadow-rgb: #{to-rgb($color)};\\n --#{$prefix}btn-active-color: #{$active-color};\\n --#{$prefix}btn-active-bg: #{$active-background};\\n --#{$prefix}btn-active-border-color: #{$active-border};\\n --#{$prefix}btn-active-shadow: #{$btn-active-box-shadow};\\n --#{$prefix}btn-disabled-color: #{$color};\\n --#{$prefix}btn-disabled-bg: transparent;\\n --#{$prefix}btn-disabled-border-color: #{$color};\\n --#{$prefix}gradient: none;\\n}\\n// scss-docs-end btn-outline-variant-mixin\\n\\n// scss-docs-start btn-size-mixin\\n@mixin button-size($padding-y, $padding-x, $font-size, $border-radius) {\\n --#{$prefix}btn-padding-y: #{$padding-y};\\n --#{$prefix}btn-padding-x: #{$padding-x};\\n @include rfs($font-size, --#{$prefix}btn-font-size);\\n --#{$prefix}btn-border-radius: #{$border-radius};\\n}\\n// scss-docs-end btn-size-mixin\\n\",\".fade {\\n @include transition($transition-fade);\\n\\n &:not(.show) {\\n opacity: 0;\\n }\\n}\\n\\n// scss-docs-start collapse-classes\\n.collapse {\\n &:not(.show) {\\n display: none;\\n }\\n}\\n\\n.collapsing {\\n height: 0;\\n overflow: hidden;\\n @include transition($transition-collapse);\\n\\n &.collapse-horizontal {\\n width: 0;\\n height: auto;\\n @include transition($transition-collapse-width);\\n }\\n}\\n// scss-docs-end collapse-classes\\n\",\"// The dropdown wrapper (`<div>`)\\n.dropup,\\n.dropend,\\n.dropdown,\\n.dropstart,\\n.dropup-center,\\n.dropdown-center {\\n position: relative;\\n}\\n\\n.dropdown-toggle {\\n white-space: nowrap;\\n\\n // Generate the caret automatically\\n @include caret();\\n}\\n\\n// The dropdown menu\\n.dropdown-menu {\\n // scss-docs-start dropdown-css-vars\\n --#{$prefix}dropdown-zindex: #{$zindex-dropdown};\\n --#{$prefix}dropdown-min-width: #{$dropdown-min-width};\\n --#{$prefix}dropdown-padding-x: #{$dropdown-padding-x};\\n --#{$prefix}dropdown-padding-y: #{$dropdown-padding-y};\\n --#{$prefix}dropdown-spacer: #{$dropdown-spacer};\\n @include rfs($dropdown-font-size, --#{$prefix}dropdown-font-size);\\n --#{$prefix}dropdown-color: #{$dropdown-color};\\n --#{$prefix}dropdown-bg: #{$dropdown-bg};\\n --#{$prefix}dropdown-border-color: #{$dropdown-border-color};\\n --#{$prefix}dropdown-border-radius: #{$dropdown-border-radius};\\n --#{$prefix}dropdown-border-width: #{$dropdown-border-width};\\n --#{$prefix}dropdown-inner-border-radius: #{$dropdown-inner-border-radius};\\n --#{$prefix}dropdown-divider-bg: #{$dropdown-divider-bg};\\n --#{$prefix}dropdown-divider-margin-y: #{$dropdown-divider-margin-y};\\n --#{$prefix}dropdown-box-shadow: #{$dropdown-box-shadow};\\n --#{$prefix}dropdown-link-color: #{$dropdown-link-color};\\n --#{$prefix}dropdown-link-hover-color: #{$dropdown-link-hover-color};\\n --#{$prefix}dropdown-link-hover-bg: #{$dropdown-link-hover-bg};\\n --#{$prefix}dropdown-link-active-color: #{$dropdown-link-active-color};\\n --#{$prefix}dropdown-link-active-bg: #{$dropdown-link-active-bg};\\n --#{$prefix}dropdown-link-disabled-color: #{$dropdown-link-disabled-color};\\n --#{$prefix}dropdown-item-padding-x: #{$dropdown-item-padding-x};\\n --#{$prefix}dropdown-item-padding-y: #{$dropdown-item-padding-y};\\n --#{$prefix}dropdown-header-color: #{$dropdown-header-color};\\n --#{$prefix}dropdown-header-padding-x: #{$dropdown-header-padding-x};\\n --#{$prefix}dropdown-header-padding-y: #{$dropdown-header-padding-y};\\n // scss-docs-end dropdown-css-vars\\n\\n position: absolute;\\n z-index: var(--#{$prefix}dropdown-zindex);\\n display: none; // none by default, but block on \\\"open\\\" of the menu\\n min-width: var(--#{$prefix}dropdown-min-width);\\n padding: var(--#{$prefix}dropdown-padding-y) var(--#{$prefix}dropdown-padding-x);\\n margin: 0; // Override default margin of ul\\n @include font-size(var(--#{$prefix}dropdown-font-size));\\n color: var(--#{$prefix}dropdown-color);\\n text-align: left; // Ensures proper alignment if parent has it changed (e.g., modal footer)\\n list-style: none;\\n background-color: var(--#{$prefix}dropdown-bg);\\n background-clip: padding-box;\\n border: var(--#{$prefix}dropdown-border-width) solid var(--#{$prefix}dropdown-border-color);\\n @include border-radius(var(--#{$prefix}dropdown-border-radius));\\n @include box-shadow(var(--#{$prefix}dropdown-box-shadow));\\n\\n &[data-bs-popper] {\\n top: 100%;\\n left: 0;\\n margin-top: var(--#{$prefix}dropdown-spacer);\\n }\\n\\n @if $dropdown-padding-y == 0 {\\n > .dropdown-item:first-child,\\n > li:first-child .dropdown-item {\\n @include border-top-radius(var(--#{$prefix}dropdown-inner-border-radius));\\n }\\n > .dropdown-item:last-child,\\n > li:last-child .dropdown-item {\\n @include border-bottom-radius(var(--#{$prefix}dropdown-inner-border-radius));\\n }\\n\\n }\\n}\\n\\n// scss-docs-start responsive-breakpoints\\n// We deliberately hardcode the `bs-` prefix because we check\\n// this custom property in JS to determine Popper's positioning\\n\\n@each $breakpoint in map-keys($grid-breakpoints) {\\n @include media-breakpoint-up($breakpoint) {\\n $infix: breakpoint-infix($breakpoint, $grid-breakpoints);\\n\\n .dropdown-menu#{$infix}-start {\\n --bs-position: start;\\n\\n &[data-bs-popper] {\\n right: auto;\\n left: 0;\\n }\\n }\\n\\n .dropdown-menu#{$infix}-end {\\n --bs-position: end;\\n\\n &[data-bs-popper] {\\n right: 0;\\n left: auto;\\n }\\n }\\n }\\n}\\n// scss-docs-end responsive-breakpoints\\n\\n// Allow for dropdowns to go bottom up (aka, dropup-menu)\\n// Just add .dropup after the standard .dropdown class and you're set.\\n.dropup {\\n .dropdown-menu[data-bs-popper] {\\n top: auto;\\n bottom: 100%;\\n margin-top: 0;\\n margin-bottom: var(--#{$prefix}dropdown-spacer);\\n }\\n\\n .dropdown-toggle {\\n @include caret(up);\\n }\\n}\\n\\n.dropend {\\n .dropdown-menu[data-bs-popper] {\\n top: 0;\\n right: auto;\\n left: 100%;\\n margin-top: 0;\\n margin-left: var(--#{$prefix}dropdown-spacer);\\n }\\n\\n .dropdown-toggle {\\n @include caret(end);\\n &::after {\\n vertical-align: 0;\\n }\\n }\\n}\\n\\n.dropstart {\\n .dropdown-menu[data-bs-popper] {\\n top: 0;\\n right: 100%;\\n left: auto;\\n margin-top: 0;\\n margin-right: var(--#{$prefix}dropdown-spacer);\\n }\\n\\n .dropdown-toggle {\\n @include caret(start);\\n &::before {\\n vertical-align: 0;\\n }\\n }\\n}\\n\\n\\n// Dividers (basically an `<hr>`) within the dropdown\\n.dropdown-divider {\\n height: 0;\\n margin: var(--#{$prefix}dropdown-divider-margin-y) 0;\\n overflow: hidden;\\n border-top: 1px solid var(--#{$prefix}dropdown-divider-bg);\\n opacity: 1; // Revisit in v6 to de-dupe styles that conflict with <hr> element\\n}\\n\\n// Links, buttons, and more within the dropdown menu\\n//\\n// `<button>`-specific styles are denoted with `// For <button>s`\\n.dropdown-item {\\n display: block;\\n width: 100%; // For `<button>`s\\n padding: var(--#{$prefix}dropdown-item-padding-y) var(--#{$prefix}dropdown-item-padding-x);\\n clear: both;\\n font-weight: $font-weight-normal;\\n color: var(--#{$prefix}dropdown-link-color);\\n text-align: inherit; // For `<button>`s\\n text-decoration: if($link-decoration == none, null, none);\\n white-space: nowrap; // prevent links from randomly breaking onto new lines\\n background-color: transparent; // For `<button>`s\\n border: 0; // For `<button>`s\\n @include border-radius(var(--#{$prefix}dropdown-item-border-radius, 0));\\n\\n &:hover,\\n &:focus {\\n color: var(--#{$prefix}dropdown-link-hover-color);\\n text-decoration: if($link-hover-decoration == underline, none, null);\\n @include gradient-bg(var(--#{$prefix}dropdown-link-hover-bg));\\n }\\n\\n &.active,\\n &:active {\\n color: var(--#{$prefix}dropdown-link-active-color);\\n text-decoration: none;\\n @include gradient-bg(var(--#{$prefix}dropdown-link-active-bg));\\n }\\n\\n &.disabled,\\n &:disabled {\\n color: var(--#{$prefix}dropdown-link-disabled-color);\\n pointer-events: none;\\n background-color: transparent;\\n // Remove CSS gradients if they're enabled\\n background-image: if($enable-gradients, none, null);\\n }\\n}\\n\\n.dropdown-menu.show {\\n display: block;\\n}\\n\\n// Dropdown section headers\\n.dropdown-header {\\n display: block;\\n padding: var(--#{$prefix}dropdown-header-padding-y) var(--#{$prefix}dropdown-header-padding-x);\\n margin-bottom: 0; // for use with heading elements\\n @include font-size($font-size-sm);\\n color: var(--#{$prefix}dropdown-header-color);\\n white-space: nowrap; // as with > li > a\\n}\\n\\n// Dropdown text\\n.dropdown-item-text {\\n display: block;\\n padding: var(--#{$prefix}dropdown-item-padding-y) var(--#{$prefix}dropdown-item-padding-x);\\n color: var(--#{$prefix}dropdown-link-color);\\n}\\n\\n// Dark dropdowns\\n.dropdown-menu-dark {\\n // scss-docs-start dropdown-dark-css-vars\\n --#{$prefix}dropdown-color: #{$dropdown-dark-color};\\n --#{$prefix}dropdown-bg: #{$dropdown-dark-bg};\\n --#{$prefix}dropdown-border-color: #{$dropdown-dark-border-color};\\n --#{$prefix}dropdown-box-shadow: #{$dropdown-dark-box-shadow};\\n --#{$prefix}dropdown-link-color: #{$dropdown-dark-link-color};\\n --#{$prefix}dropdown-link-hover-color: #{$dropdown-dark-link-hover-color};\\n --#{$prefix}dropdown-divider-bg: #{$dropdown-dark-divider-bg};\\n --#{$prefix}dropdown-link-hover-bg: #{$dropdown-dark-link-hover-bg};\\n --#{$prefix}dropdown-link-active-color: #{$dropdown-dark-link-active-color};\\n --#{$prefix}dropdown-link-active-bg: #{$dropdown-dark-link-active-bg};\\n --#{$prefix}dropdown-link-disabled-color: #{$dropdown-dark-link-disabled-color};\\n --#{$prefix}dropdown-header-color: #{$dropdown-dark-header-color};\\n // scss-docs-end dropdown-dark-css-vars\\n}\\n\",\"// scss-docs-start caret-mixins\\n@mixin caret-down($width: $caret-width) {\\n border-top: $width solid;\\n border-right: $width solid transparent;\\n border-bottom: 0;\\n border-left: $width solid transparent;\\n}\\n\\n@mixin caret-up($width: $caret-width) {\\n border-top: 0;\\n border-right: $width solid transparent;\\n border-bottom: $width solid;\\n border-left: $width solid transparent;\\n}\\n\\n@mixin caret-end($width: $caret-width) {\\n border-top: $width solid transparent;\\n border-right: 0;\\n border-bottom: $width solid transparent;\\n border-left: $width solid;\\n}\\n\\n@mixin caret-start($width: $caret-width) {\\n border-top: $width solid transparent;\\n border-right: $width solid;\\n border-bottom: $width solid transparent;\\n}\\n\\n@mixin caret(\\n $direction: down,\\n $width: $caret-width,\\n $spacing: $caret-spacing,\\n $vertical-align: $caret-vertical-align\\n) {\\n @if $enable-caret {\\n &::after {\\n display: inline-block;\\n margin-left: $spacing;\\n vertical-align: $vertical-align;\\n content: \\\"\\\";\\n @if $direction == down {\\n @include caret-down($width);\\n } @else if $direction == up {\\n @include caret-up($width);\\n } @else if $direction == end {\\n @include caret-end($width);\\n }\\n }\\n\\n @if $direction == start {\\n &::after {\\n display: none;\\n }\\n\\n &::before {\\n display: inline-block;\\n margin-right: $spacing;\\n vertical-align: $vertical-align;\\n content: \\\"\\\";\\n @include caret-start($width);\\n }\\n }\\n\\n &:empty::after {\\n margin-left: 0;\\n }\\n }\\n}\\n// scss-docs-end caret-mixins\\n\",\"// Make the div behave like a button\\n.btn-group,\\n.btn-group-vertical {\\n position: relative;\\n display: inline-flex;\\n vertical-align: middle; // match .btn alignment given font-size hack above\\n\\n > .btn {\\n position: relative;\\n flex: 1 1 auto;\\n }\\n\\n // Bring the hover, focused, and \\\"active\\\" buttons to the front to overlay\\n // the borders properly\\n > .btn-check:checked + .btn,\\n > .btn-check:focus + .btn,\\n > .btn:hover,\\n > .btn:focus,\\n > .btn:active,\\n > .btn.active {\\n z-index: 1;\\n }\\n}\\n\\n// Optional: Group multiple button groups together for a toolbar\\n.btn-toolbar {\\n display: flex;\\n flex-wrap: wrap;\\n justify-content: flex-start;\\n\\n .input-group {\\n width: auto;\\n }\\n}\\n\\n.btn-group {\\n @include border-radius($btn-border-radius);\\n\\n // Prevent double borders when buttons are next to each other\\n > :not(.btn-check:first-child) + .btn,\\n > .btn-group:not(:first-child) {\\n margin-left: calc(#{$btn-border-width} * -1); // stylelint-disable-line function-disallowed-list\\n }\\n\\n // Reset rounded corners\\n > .btn:not(:last-child):not(.dropdown-toggle),\\n > .btn.dropdown-toggle-split:first-child,\\n > .btn-group:not(:last-child) > .btn {\\n @include border-end-radius(0);\\n }\\n\\n // The left radius should be 0 if the button is:\\n // - the \\\"third or more\\\" child\\n // - the second child and the previous element isn't `.btn-check` (making it the first child visually)\\n // - part of a btn-group which isn't the first child\\n > .btn:nth-child(n + 3),\\n > :not(.btn-check) + .btn,\\n > .btn-group:not(:first-child) > .btn {\\n @include border-start-radius(0);\\n }\\n}\\n\\n// Sizing\\n//\\n// Remix the default button sizing classes into new ones for easier manipulation.\\n\\n.btn-group-sm > .btn { @extend .btn-sm; }\\n.btn-group-lg > .btn { @extend .btn-lg; }\\n\\n\\n//\\n// Split button dropdowns\\n//\\n\\n.dropdown-toggle-split {\\n padding-right: $btn-padding-x * .75;\\n padding-left: $btn-padding-x * .75;\\n\\n &::after,\\n .dropup &::after,\\n .dropend &::after {\\n margin-left: 0;\\n }\\n\\n .dropstart &::before {\\n margin-right: 0;\\n }\\n}\\n\\n.btn-sm + .dropdown-toggle-split {\\n padding-right: $btn-padding-x-sm * .75;\\n padding-left: $btn-padding-x-sm * .75;\\n}\\n\\n.btn-lg + .dropdown-toggle-split {\\n padding-right: $btn-padding-x-lg * .75;\\n padding-left: $btn-padding-x-lg * .75;\\n}\\n\\n\\n// The clickable button for toggling the menu\\n// Set the same inset shadow as the :active state\\n.btn-group.show .dropdown-toggle {\\n @include box-shadow($btn-active-box-shadow);\\n\\n // Show no shadow for `.btn-link` since it has no other button styles.\\n &.btn-link {\\n @include box-shadow(none);\\n }\\n}\\n\\n\\n//\\n// Vertical button groups\\n//\\n\\n.btn-group-vertical {\\n flex-direction: column;\\n align-items: flex-start;\\n justify-content: center;\\n\\n > .btn,\\n > .btn-group {\\n width: 100%;\\n }\\n\\n > .btn:not(:first-child),\\n > .btn-group:not(:first-child) {\\n margin-top: calc(#{$btn-border-width} * -1); // stylelint-disable-line function-disallowed-list\\n }\\n\\n // Reset rounded corners\\n > .btn:not(:last-child):not(.dropdown-toggle),\\n > .btn-group:not(:last-child) > .btn {\\n @include border-bottom-radius(0);\\n }\\n\\n > .btn ~ .btn,\\n > .btn-group:not(:first-child) > .btn {\\n @include border-top-radius(0);\\n }\\n}\\n\",\"// Base class\\n//\\n// Kickstart any navigation component with a set of style resets. Works with\\n// `<nav>`s, `<ul>`s or `<ol>`s.\\n\\n.nav {\\n // scss-docs-start nav-css-vars\\n --#{$prefix}nav-link-padding-x: #{$nav-link-padding-x};\\n --#{$prefix}nav-link-padding-y: #{$nav-link-padding-y};\\n @include rfs($nav-link-font-size, --#{$prefix}nav-link-font-size);\\n --#{$prefix}nav-link-font-weight: #{$nav-link-font-weight};\\n --#{$prefix}nav-link-color: #{$nav-link-color};\\n --#{$prefix}nav-link-hover-color: #{$nav-link-hover-color};\\n --#{$prefix}nav-link-disabled-color: #{$nav-link-disabled-color};\\n // scss-docs-end nav-css-vars\\n\\n display: flex;\\n flex-wrap: wrap;\\n padding-left: 0;\\n margin-bottom: 0;\\n list-style: none;\\n}\\n\\n.nav-link {\\n display: block;\\n padding: var(--#{$prefix}nav-link-padding-y) var(--#{$prefix}nav-link-padding-x);\\n @include font-size(var(--#{$prefix}nav-link-font-size));\\n font-weight: var(--#{$prefix}nav-link-font-weight);\\n color: var(--#{$prefix}nav-link-color);\\n text-decoration: if($link-decoration == none, null, none);\\n background: none;\\n border: 0;\\n @include transition($nav-link-transition);\\n\\n &:hover,\\n &:focus {\\n color: var(--#{$prefix}nav-link-hover-color);\\n text-decoration: if($link-hover-decoration == underline, none, null);\\n }\\n\\n &:focus-visible {\\n outline: 0;\\n box-shadow: $nav-link-focus-box-shadow;\\n }\\n\\n // Disabled state lightens text\\n &.disabled,\\n &:disabled {\\n color: var(--#{$prefix}nav-link-disabled-color);\\n pointer-events: none;\\n cursor: default;\\n }\\n}\\n\\n//\\n// Tabs\\n//\\n\\n.nav-tabs {\\n // scss-docs-start nav-tabs-css-vars\\n --#{$prefix}nav-tabs-border-width: #{$nav-tabs-border-width};\\n --#{$prefix}nav-tabs-border-color: #{$nav-tabs-border-color};\\n --#{$prefix}nav-tabs-border-radius: #{$nav-tabs-border-radius};\\n --#{$prefix}nav-tabs-link-hover-border-color: #{$nav-tabs-link-hover-border-color};\\n --#{$prefix}nav-tabs-link-active-color: #{$nav-tabs-link-active-color};\\n --#{$prefix}nav-tabs-link-active-bg: #{$nav-tabs-link-active-bg};\\n --#{$prefix}nav-tabs-link-active-border-color: #{$nav-tabs-link-active-border-color};\\n // scss-docs-end nav-tabs-css-vars\\n\\n border-bottom: var(--#{$prefix}nav-tabs-border-width) solid var(--#{$prefix}nav-tabs-border-color);\\n\\n .nav-link {\\n margin-bottom: calc(-1 * var(--#{$prefix}nav-tabs-border-width)); // stylelint-disable-line function-disallowed-list\\n border: var(--#{$prefix}nav-tabs-border-width) solid transparent;\\n @include border-top-radius(var(--#{$prefix}nav-tabs-border-radius));\\n\\n &:hover,\\n &:focus {\\n // Prevents active .nav-link tab overlapping focus outline of previous/next .nav-link\\n isolation: isolate;\\n border-color: var(--#{$prefix}nav-tabs-link-hover-border-color);\\n }\\n }\\n\\n .nav-link.active,\\n .nav-item.show .nav-link {\\n color: var(--#{$prefix}nav-tabs-link-active-color);\\n background-color: var(--#{$prefix}nav-tabs-link-active-bg);\\n border-color: var(--#{$prefix}nav-tabs-link-active-border-color);\\n }\\n\\n .dropdown-menu {\\n // Make dropdown border overlap tab border\\n margin-top: calc(-1 * var(--#{$prefix}nav-tabs-border-width)); // stylelint-disable-line function-disallowed-list\\n // Remove the top rounded corners here since there is a hard edge above the menu\\n @include border-top-radius(0);\\n }\\n}\\n\\n\\n//\\n// Pills\\n//\\n\\n.nav-pills {\\n // scss-docs-start nav-pills-css-vars\\n --#{$prefix}nav-pills-border-radius: #{$nav-pills-border-radius};\\n --#{$prefix}nav-pills-link-active-color: #{$nav-pills-link-active-color};\\n --#{$prefix}nav-pills-link-active-bg: #{$nav-pills-link-active-bg};\\n // scss-docs-end nav-pills-css-vars\\n\\n .nav-link {\\n @include border-radius(var(--#{$prefix}nav-pills-border-radius));\\n }\\n\\n .nav-link.active,\\n .show > .nav-link {\\n color: var(--#{$prefix}nav-pills-link-active-color);\\n @include gradient-bg(var(--#{$prefix}nav-pills-link-active-bg));\\n }\\n}\\n\\n\\n//\\n// Underline\\n//\\n\\n.nav-underline {\\n // scss-docs-start nav-underline-css-vars\\n --#{$prefix}nav-underline-gap: #{$nav-underline-gap};\\n --#{$prefix}nav-underline-border-width: #{$nav-underline-border-width};\\n --#{$prefix}nav-underline-link-active-color: #{$nav-underline-link-active-color};\\n // scss-docs-end nav-underline-css-vars\\n\\n gap: var(--#{$prefix}nav-underline-gap);\\n\\n .nav-link {\\n padding-right: 0;\\n padding-left: 0;\\n border-bottom: var(--#{$prefix}nav-underline-border-width) solid transparent;\\n\\n &:hover,\\n &:focus {\\n border-bottom-color: currentcolor;\\n }\\n }\\n\\n .nav-link.active,\\n .show > .nav-link {\\n font-weight: $font-weight-bold;\\n color: var(--#{$prefix}nav-underline-link-active-color);\\n border-bottom-color: currentcolor;\\n }\\n}\\n\\n\\n//\\n// Justified variants\\n//\\n\\n.nav-fill {\\n > .nav-link,\\n .nav-item {\\n flex: 1 1 auto;\\n text-align: center;\\n }\\n}\\n\\n.nav-justified {\\n > .nav-link,\\n .nav-item {\\n flex-basis: 0;\\n flex-grow: 1;\\n text-align: center;\\n }\\n}\\n\\n.nav-fill,\\n.nav-justified {\\n .nav-item .nav-link {\\n width: 100%; // Make sure button will grow\\n }\\n}\\n\\n\\n// Tabbable tabs\\n//\\n// Hide tabbable panes to start, show them when `.active`\\n\\n.tab-content {\\n > .tab-pane {\\n display: none;\\n }\\n > .active {\\n display: block;\\n }\\n}\\n\",\"// Navbar\\n//\\n// Provide a static navbar from which we expand to create full-width, fixed, and\\n// other navbar variations.\\n\\n.navbar {\\n // scss-docs-start navbar-css-vars\\n --#{$prefix}navbar-padding-x: #{if($navbar-padding-x == null, 0, $navbar-padding-x)};\\n --#{$prefix}navbar-padding-y: #{$navbar-padding-y};\\n --#{$prefix}navbar-color: #{$navbar-light-color};\\n --#{$prefix}navbar-hover-color: #{$navbar-light-hover-color};\\n --#{$prefix}navbar-disabled-color: #{$navbar-light-disabled-color};\\n --#{$prefix}navbar-active-color: #{$navbar-light-active-color};\\n --#{$prefix}navbar-brand-padding-y: #{$navbar-brand-padding-y};\\n --#{$prefix}navbar-brand-margin-end: #{$navbar-brand-margin-end};\\n --#{$prefix}navbar-brand-font-size: #{$navbar-brand-font-size};\\n --#{$prefix}navbar-brand-color: #{$navbar-light-brand-color};\\n --#{$prefix}navbar-brand-hover-color: #{$navbar-light-brand-hover-color};\\n --#{$prefix}navbar-nav-link-padding-x: #{$navbar-nav-link-padding-x};\\n --#{$prefix}navbar-toggler-padding-y: #{$navbar-toggler-padding-y};\\n --#{$prefix}navbar-toggler-padding-x: #{$navbar-toggler-padding-x};\\n --#{$prefix}navbar-toggler-font-size: #{$navbar-toggler-font-size};\\n --#{$prefix}navbar-toggler-icon-bg: #{escape-svg($navbar-light-toggler-icon-bg)};\\n --#{$prefix}navbar-toggler-border-color: #{$navbar-light-toggler-border-color};\\n --#{$prefix}navbar-toggler-border-radius: #{$navbar-toggler-border-radius};\\n --#{$prefix}navbar-toggler-focus-width: #{$navbar-toggler-focus-width};\\n --#{$prefix}navbar-toggler-transition: #{$navbar-toggler-transition};\\n // scss-docs-end navbar-css-vars\\n\\n position: relative;\\n display: flex;\\n flex-wrap: wrap; // allow us to do the line break for collapsing content\\n align-items: center;\\n justify-content: space-between; // space out brand from logo\\n padding: var(--#{$prefix}navbar-padding-y) var(--#{$prefix}navbar-padding-x);\\n @include gradient-bg();\\n\\n // Because flex properties aren't inherited, we need to redeclare these first\\n // few properties so that content nested within behave properly.\\n // The `flex-wrap` property is inherited to simplify the expanded navbars\\n %container-flex-properties {\\n display: flex;\\n flex-wrap: inherit;\\n align-items: center;\\n justify-content: space-between;\\n }\\n\\n > .container,\\n > .container-fluid {\\n @extend %container-flex-properties;\\n }\\n\\n @each $breakpoint, $container-max-width in $container-max-widths {\\n > .container#{breakpoint-infix($breakpoint, $container-max-widths)} {\\n @extend %container-flex-properties;\\n }\\n }\\n}\\n\\n\\n// Navbar brand\\n//\\n// Used for brand, project, or site names.\\n\\n.navbar-brand {\\n padding-top: var(--#{$prefix}navbar-brand-padding-y);\\n padding-bottom: var(--#{$prefix}navbar-brand-padding-y);\\n margin-right: var(--#{$prefix}navbar-brand-margin-end);\\n @include font-size(var(--#{$prefix}navbar-brand-font-size));\\n color: var(--#{$prefix}navbar-brand-color);\\n text-decoration: if($link-decoration == none, null, none);\\n white-space: nowrap;\\n\\n &:hover,\\n &:focus {\\n color: var(--#{$prefix}navbar-brand-hover-color);\\n text-decoration: if($link-hover-decoration == underline, none, null);\\n }\\n}\\n\\n\\n// Navbar nav\\n//\\n// Custom navbar navigation (doesn't require `.nav`, but does make use of `.nav-link`).\\n\\n.navbar-nav {\\n // scss-docs-start navbar-nav-css-vars\\n --#{$prefix}nav-link-padding-x: 0;\\n --#{$prefix}nav-link-padding-y: #{$nav-link-padding-y};\\n @include rfs($nav-link-font-size, --#{$prefix}nav-link-font-size);\\n --#{$prefix}nav-link-font-weight: #{$nav-link-font-weight};\\n --#{$prefix}nav-link-color: var(--#{$prefix}navbar-color);\\n --#{$prefix}nav-link-hover-color: var(--#{$prefix}navbar-hover-color);\\n --#{$prefix}nav-link-disabled-color: var(--#{$prefix}navbar-disabled-color);\\n // scss-docs-end navbar-nav-css-vars\\n\\n display: flex;\\n flex-direction: column; // cannot use `inherit` to get the `.navbar`s value\\n padding-left: 0;\\n margin-bottom: 0;\\n list-style: none;\\n\\n .nav-link {\\n &.active,\\n &.show {\\n color: var(--#{$prefix}navbar-active-color);\\n }\\n }\\n\\n .dropdown-menu {\\n position: static;\\n }\\n}\\n\\n\\n// Navbar text\\n//\\n//\\n\\n.navbar-text {\\n padding-top: $nav-link-padding-y;\\n padding-bottom: $nav-link-padding-y;\\n color: var(--#{$prefix}navbar-color);\\n\\n a,\\n a:hover,\\n a:focus {\\n color: var(--#{$prefix}navbar-active-color);\\n }\\n}\\n\\n\\n// Responsive navbar\\n//\\n// Custom styles for responsive collapsing and toggling of navbar contents.\\n// Powered by the collapse Bootstrap JavaScript plugin.\\n\\n// When collapsed, prevent the toggleable navbar contents from appearing in\\n// the default flexbox row orientation. Requires the use of `flex-wrap: wrap`\\n// on the `.navbar` parent.\\n.navbar-collapse {\\n flex-basis: 100%;\\n flex-grow: 1;\\n // For always expanded or extra full navbars, ensure content aligns itself\\n // properly vertically. Can be easily overridden with flex utilities.\\n align-items: center;\\n}\\n\\n// Button for toggling the navbar when in its collapsed state\\n.navbar-toggler {\\n padding: var(--#{$prefix}navbar-toggler-padding-y) var(--#{$prefix}navbar-toggler-padding-x);\\n @include font-size(var(--#{$prefix}navbar-toggler-font-size));\\n line-height: 1;\\n color: var(--#{$prefix}navbar-color);\\n background-color: transparent; // remove default button style\\n border: var(--#{$prefix}border-width) solid var(--#{$prefix}navbar-toggler-border-color); // remove default button style\\n @include border-radius(var(--#{$prefix}navbar-toggler-border-radius));\\n @include transition(var(--#{$prefix}navbar-toggler-transition));\\n\\n &:hover {\\n text-decoration: none;\\n }\\n\\n &:focus {\\n text-decoration: none;\\n outline: 0;\\n box-shadow: 0 0 0 var(--#{$prefix}navbar-toggler-focus-width);\\n }\\n}\\n\\n// Keep as a separate element so folks can easily override it with another icon\\n// or image file as needed.\\n.navbar-toggler-icon {\\n display: inline-block;\\n width: 1.5em;\\n height: 1.5em;\\n vertical-align: middle;\\n background-image: var(--#{$prefix}navbar-toggler-icon-bg);\\n background-repeat: no-repeat;\\n background-position: center;\\n background-size: 100%;\\n}\\n\\n.navbar-nav-scroll {\\n max-height: var(--#{$prefix}scroll-height, 75vh);\\n overflow-y: auto;\\n}\\n\\n// scss-docs-start navbar-expand-loop\\n// Generate series of `.navbar-expand-*` responsive classes for configuring\\n// where your navbar collapses.\\n.navbar-expand {\\n @each $breakpoint in map-keys($grid-breakpoints) {\\n $next: breakpoint-next($breakpoint, $grid-breakpoints);\\n $infix: breakpoint-infix($next, $grid-breakpoints);\\n\\n // stylelint-disable-next-line scss/selector-no-union-class-name\\n &#{$infix} {\\n @include media-breakpoint-up($next) {\\n flex-wrap: nowrap;\\n justify-content: flex-start;\\n\\n .navbar-nav {\\n flex-direction: row;\\n\\n .dropdown-menu {\\n position: absolute;\\n }\\n\\n .nav-link {\\n padding-right: var(--#{$prefix}navbar-nav-link-padding-x);\\n padding-left: var(--#{$prefix}navbar-nav-link-padding-x);\\n }\\n }\\n\\n .navbar-nav-scroll {\\n overflow: visible;\\n }\\n\\n .navbar-collapse {\\n display: flex !important; // stylelint-disable-line declaration-no-important\\n flex-basis: auto;\\n }\\n\\n .navbar-toggler {\\n display: none;\\n }\\n\\n .offcanvas {\\n // stylelint-disable declaration-no-important\\n position: static;\\n z-index: auto;\\n flex-grow: 1;\\n width: auto !important;\\n height: auto !important;\\n visibility: visible !important;\\n background-color: transparent !important;\\n border: 0 !important;\\n transform: none !important;\\n @include box-shadow(none);\\n @include transition(none);\\n // stylelint-enable declaration-no-important\\n\\n .offcanvas-header {\\n display: none;\\n }\\n\\n .offcanvas-body {\\n display: flex;\\n flex-grow: 0;\\n padding: 0;\\n overflow-y: visible;\\n }\\n }\\n }\\n }\\n }\\n}\\n// scss-docs-end navbar-expand-loop\\n\\n// Navbar themes\\n//\\n// Styles for switching between navbars with light or dark background.\\n\\n.navbar-light {\\n @include deprecate(\\\"`.navbar-light`\\\", \\\"v5.2.0\\\", \\\"v6.0.0\\\", true);\\n}\\n\\n.navbar-dark,\\n.navbar[data-bs-theme=\\\"dark\\\"] {\\n // scss-docs-start navbar-dark-css-vars\\n --#{$prefix}navbar-color: #{$navbar-dark-color};\\n --#{$prefix}navbar-hover-color: #{$navbar-dark-hover-color};\\n --#{$prefix}navbar-disabled-color: #{$navbar-dark-disabled-color};\\n --#{$prefix}navbar-active-color: #{$navbar-dark-active-color};\\n --#{$prefix}navbar-brand-color: #{$navbar-dark-brand-color};\\n --#{$prefix}navbar-brand-hover-color: #{$navbar-dark-brand-hover-color};\\n --#{$prefix}navbar-toggler-border-color: #{$navbar-dark-toggler-border-color};\\n --#{$prefix}navbar-toggler-icon-bg: #{escape-svg($navbar-dark-toggler-icon-bg)};\\n // scss-docs-end navbar-dark-css-vars\\n}\\n\\n@if $enable-dark-mode {\\n @include color-mode(dark) {\\n .navbar-toggler-icon {\\n --#{$prefix}navbar-toggler-icon-bg: #{escape-svg($navbar-dark-toggler-icon-bg)};\\n }\\n }\\n}\\n\",\"//\\n// Base styles\\n//\\n\\n.card {\\n // scss-docs-start card-css-vars\\n --#{$prefix}card-spacer-y: #{$card-spacer-y};\\n --#{$prefix}card-spacer-x: #{$card-spacer-x};\\n --#{$prefix}card-title-spacer-y: #{$card-title-spacer-y};\\n --#{$prefix}card-title-color: #{$card-title-color};\\n --#{$prefix}card-subtitle-color: #{$card-subtitle-color};\\n --#{$prefix}card-border-width: #{$card-border-width};\\n --#{$prefix}card-border-color: #{$card-border-color};\\n --#{$prefix}card-border-radius: #{$card-border-radius};\\n --#{$prefix}card-box-shadow: #{$card-box-shadow};\\n --#{$prefix}card-inner-border-radius: #{$card-inner-border-radius};\\n --#{$prefix}card-cap-padding-y: #{$card-cap-padding-y};\\n --#{$prefix}card-cap-padding-x: #{$card-cap-padding-x};\\n --#{$prefix}card-cap-bg: #{$card-cap-bg};\\n --#{$prefix}card-cap-color: #{$card-cap-color};\\n --#{$prefix}card-height: #{$card-height};\\n --#{$prefix}card-color: #{$card-color};\\n --#{$prefix}card-bg: #{$card-bg};\\n --#{$prefix}card-img-overlay-padding: #{$card-img-overlay-padding};\\n --#{$prefix}card-group-margin: #{$card-group-margin};\\n // scss-docs-end card-css-vars\\n\\n position: relative;\\n display: flex;\\n flex-direction: column;\\n min-width: 0; // See https://github.com/twbs/bootstrap/pull/22740#issuecomment-305868106\\n height: var(--#{$prefix}card-height);\\n color: var(--#{$prefix}body-color);\\n word-wrap: break-word;\\n background-color: var(--#{$prefix}card-bg);\\n background-clip: border-box;\\n border: var(--#{$prefix}card-border-width) solid var(--#{$prefix}card-border-color);\\n @include border-radius(var(--#{$prefix}card-border-radius));\\n @include box-shadow(var(--#{$prefix}card-box-shadow));\\n\\n > hr {\\n margin-right: 0;\\n margin-left: 0;\\n }\\n\\n > .list-group {\\n border-top: inherit;\\n border-bottom: inherit;\\n\\n &:first-child {\\n border-top-width: 0;\\n @include border-top-radius(var(--#{$prefix}card-inner-border-radius));\\n }\\n\\n &:last-child {\\n border-bottom-width: 0;\\n @include border-bottom-radius(var(--#{$prefix}card-inner-border-radius));\\n }\\n }\\n\\n // Due to specificity of the above selector (`.card > .list-group`), we must\\n // use a child selector here to prevent double borders.\\n > .card-header + .list-group,\\n > .list-group + .card-footer {\\n border-top: 0;\\n }\\n}\\n\\n.card-body {\\n // Enable `flex-grow: 1` for decks and groups so that card blocks take up\\n // as much space as possible, ensuring footers are aligned to the bottom.\\n flex: 1 1 auto;\\n padding: var(--#{$prefix}card-spacer-y) var(--#{$prefix}card-spacer-x);\\n color: var(--#{$prefix}card-color);\\n}\\n\\n.card-title {\\n margin-bottom: var(--#{$prefix}card-title-spacer-y);\\n color: var(--#{$prefix}card-title-color);\\n}\\n\\n.card-subtitle {\\n margin-top: calc(-.5 * var(--#{$prefix}card-title-spacer-y)); // stylelint-disable-line function-disallowed-list\\n margin-bottom: 0;\\n color: var(--#{$prefix}card-subtitle-color);\\n}\\n\\n.card-text:last-child {\\n margin-bottom: 0;\\n}\\n\\n.card-link {\\n &:hover {\\n text-decoration: if($link-hover-decoration == underline, none, null);\\n }\\n\\n + .card-link {\\n margin-left: var(--#{$prefix}card-spacer-x);\\n }\\n}\\n\\n//\\n// Optional textual caps\\n//\\n\\n.card-header {\\n padding: var(--#{$prefix}card-cap-padding-y) var(--#{$prefix}card-cap-padding-x);\\n margin-bottom: 0; // Removes the default margin-bottom of <hN>\\n color: var(--#{$prefix}card-cap-color);\\n background-color: var(--#{$prefix}card-cap-bg);\\n border-bottom: var(--#{$prefix}card-border-width) solid var(--#{$prefix}card-border-color);\\n\\n &:first-child {\\n @include border-radius(var(--#{$prefix}card-inner-border-radius) var(--#{$prefix}card-inner-border-radius) 0 0);\\n }\\n}\\n\\n.card-footer {\\n padding: var(--#{$prefix}card-cap-padding-y) var(--#{$prefix}card-cap-padding-x);\\n color: var(--#{$prefix}card-cap-color);\\n background-color: var(--#{$prefix}card-cap-bg);\\n border-top: var(--#{$prefix}card-border-width) solid var(--#{$prefix}card-border-color);\\n\\n &:last-child {\\n @include border-radius(0 0 var(--#{$prefix}card-inner-border-radius) var(--#{$prefix}card-inner-border-radius));\\n }\\n}\\n\\n\\n//\\n// Header navs\\n//\\n\\n.card-header-tabs {\\n margin-right: calc(-.5 * var(--#{$prefix}card-cap-padding-x)); // stylelint-disable-line function-disallowed-list\\n margin-bottom: calc(-1 * var(--#{$prefix}card-cap-padding-y)); // stylelint-disable-line function-disallowed-list\\n margin-left: calc(-.5 * var(--#{$prefix}card-cap-padding-x)); // stylelint-disable-line function-disallowed-list\\n border-bottom: 0;\\n\\n .nav-link.active {\\n background-color: var(--#{$prefix}card-bg);\\n border-bottom-color: var(--#{$prefix}card-bg);\\n }\\n}\\n\\n.card-header-pills {\\n margin-right: calc(-.5 * var(--#{$prefix}card-cap-padding-x)); // stylelint-disable-line function-disallowed-list\\n margin-left: calc(-.5 * var(--#{$prefix}card-cap-padding-x)); // stylelint-disable-line function-disallowed-list\\n}\\n\\n// Card image\\n.card-img-overlay {\\n position: absolute;\\n top: 0;\\n right: 0;\\n bottom: 0;\\n left: 0;\\n padding: var(--#{$prefix}card-img-overlay-padding);\\n @include border-radius(var(--#{$prefix}card-inner-border-radius));\\n}\\n\\n.card-img,\\n.card-img-top,\\n.card-img-bottom {\\n width: 100%; // Required because we use flexbox and this inherently applies align-self: stretch\\n}\\n\\n.card-img,\\n.card-img-top {\\n @include border-top-radius(var(--#{$prefix}card-inner-border-radius));\\n}\\n\\n.card-img,\\n.card-img-bottom {\\n @include border-bottom-radius(var(--#{$prefix}card-inner-border-radius));\\n}\\n\\n\\n//\\n// Card groups\\n//\\n\\n.card-group {\\n // The child selector allows nested `.card` within `.card-group`\\n // to display properly.\\n > .card {\\n margin-bottom: var(--#{$prefix}card-group-margin);\\n }\\n\\n @include media-breakpoint-up(sm) {\\n display: flex;\\n flex-flow: row wrap;\\n // The child selector allows nested `.card` within `.card-group`\\n // to display properly.\\n > .card {\\n // Flexbugs #4: https://github.com/philipwalton/flexbugs#flexbug-4\\n flex: 1 0 0%;\\n margin-bottom: 0;\\n\\n + .card {\\n margin-left: 0;\\n border-left: 0;\\n }\\n\\n // Handle rounded corners\\n @if $enable-rounded {\\n &:not(:last-child) {\\n @include border-end-radius(0);\\n\\n .card-img-top,\\n .card-header {\\n // stylelint-disable-next-line property-disallowed-list\\n border-top-right-radius: 0;\\n }\\n .card-img-bottom,\\n .card-footer {\\n // stylelint-disable-next-line property-disallowed-list\\n border-bottom-right-radius: 0;\\n }\\n }\\n\\n &:not(:first-child) {\\n @include border-start-radius(0);\\n\\n .card-img-top,\\n .card-header {\\n // stylelint-disable-next-line property-disallowed-list\\n border-top-left-radius: 0;\\n }\\n .card-img-bottom,\\n .card-footer {\\n // stylelint-disable-next-line property-disallowed-list\\n border-bottom-left-radius: 0;\\n }\\n }\\n }\\n }\\n }\\n}\\n\",\"//\\n// Base styles\\n//\\n\\n.accordion {\\n // scss-docs-start accordion-css-vars\\n --#{$prefix}accordion-color: #{$accordion-color};\\n --#{$prefix}accordion-bg: #{$accordion-bg};\\n --#{$prefix}accordion-transition: #{$accordion-transition};\\n --#{$prefix}accordion-border-color: #{$accordion-border-color};\\n --#{$prefix}accordion-border-width: #{$accordion-border-width};\\n --#{$prefix}accordion-border-radius: #{$accordion-border-radius};\\n --#{$prefix}accordion-inner-border-radius: #{$accordion-inner-border-radius};\\n --#{$prefix}accordion-btn-padding-x: #{$accordion-button-padding-x};\\n --#{$prefix}accordion-btn-padding-y: #{$accordion-button-padding-y};\\n --#{$prefix}accordion-btn-color: #{$accordion-button-color};\\n --#{$prefix}accordion-btn-bg: #{$accordion-button-bg};\\n --#{$prefix}accordion-btn-icon: #{escape-svg($accordion-button-icon)};\\n --#{$prefix}accordion-btn-icon-width: #{$accordion-icon-width};\\n --#{$prefix}accordion-btn-icon-transform: #{$accordion-icon-transform};\\n --#{$prefix}accordion-btn-icon-transition: #{$accordion-icon-transition};\\n --#{$prefix}accordion-btn-active-icon: #{escape-svg($accordion-button-active-icon)};\\n --#{$prefix}accordion-btn-focus-box-shadow: #{$accordion-button-focus-box-shadow};\\n --#{$prefix}accordion-body-padding-x: #{$accordion-body-padding-x};\\n --#{$prefix}accordion-body-padding-y: #{$accordion-body-padding-y};\\n --#{$prefix}accordion-active-color: #{$accordion-button-active-color};\\n --#{$prefix}accordion-active-bg: #{$accordion-button-active-bg};\\n // scss-docs-end accordion-css-vars\\n}\\n\\n.accordion-button {\\n position: relative;\\n display: flex;\\n align-items: center;\\n width: 100%;\\n padding: var(--#{$prefix}accordion-btn-padding-y) var(--#{$prefix}accordion-btn-padding-x);\\n @include font-size($font-size-base);\\n color: var(--#{$prefix}accordion-btn-color);\\n text-align: left; // Reset button style\\n background-color: var(--#{$prefix}accordion-btn-bg);\\n border: 0;\\n @include border-radius(0);\\n overflow-anchor: none;\\n @include transition(var(--#{$prefix}accordion-transition));\\n\\n &:not(.collapsed) {\\n color: var(--#{$prefix}accordion-active-color);\\n background-color: var(--#{$prefix}accordion-active-bg);\\n box-shadow: inset 0 calc(-1 * var(--#{$prefix}accordion-border-width)) 0 var(--#{$prefix}accordion-border-color); // stylelint-disable-line function-disallowed-list\\n\\n &::after {\\n background-image: var(--#{$prefix}accordion-btn-active-icon);\\n transform: var(--#{$prefix}accordion-btn-icon-transform);\\n }\\n }\\n\\n // Accordion icon\\n &::after {\\n flex-shrink: 0;\\n width: var(--#{$prefix}accordion-btn-icon-width);\\n height: var(--#{$prefix}accordion-btn-icon-width);\\n margin-left: auto;\\n content: \\\"\\\";\\n background-image: var(--#{$prefix}accordion-btn-icon);\\n background-repeat: no-repeat;\\n background-size: var(--#{$prefix}accordion-btn-icon-width);\\n @include transition(var(--#{$prefix}accordion-btn-icon-transition));\\n }\\n\\n &:hover {\\n z-index: 2;\\n }\\n\\n &:focus {\\n z-index: 3;\\n outline: 0;\\n box-shadow: var(--#{$prefix}accordion-btn-focus-box-shadow);\\n }\\n}\\n\\n.accordion-header {\\n margin-bottom: 0;\\n}\\n\\n.accordion-item {\\n color: var(--#{$prefix}accordion-color);\\n background-color: var(--#{$prefix}accordion-bg);\\n border: var(--#{$prefix}accordion-border-width) solid var(--#{$prefix}accordion-border-color);\\n\\n &:first-of-type {\\n @include border-top-radius(var(--#{$prefix}accordion-border-radius));\\n\\n > .accordion-header .accordion-button {\\n @include border-top-radius(var(--#{$prefix}accordion-inner-border-radius));\\n }\\n }\\n\\n &:not(:first-of-type) {\\n border-top: 0;\\n }\\n\\n // Only set a border-radius on the last item if the accordion is collapsed\\n &:last-of-type {\\n @include border-bottom-radius(var(--#{$prefix}accordion-border-radius));\\n\\n > .accordion-header .accordion-button {\\n &.collapsed {\\n @include border-bottom-radius(var(--#{$prefix}accordion-inner-border-radius));\\n }\\n }\\n\\n > .accordion-collapse {\\n @include border-bottom-radius(var(--#{$prefix}accordion-border-radius));\\n }\\n }\\n}\\n\\n.accordion-body {\\n padding: var(--#{$prefix}accordion-body-padding-y) var(--#{$prefix}accordion-body-padding-x);\\n}\\n\\n\\n// Flush accordion items\\n//\\n// Remove borders and border-radius to keep accordion items edge-to-edge.\\n\\n.accordion-flush {\\n > .accordion-item {\\n border-right: 0;\\n border-left: 0;\\n @include border-radius(0);\\n\\n &:first-child { border-top: 0; }\\n &:last-child { border-bottom: 0; }\\n\\n // stylelint-disable selector-max-class\\n > .accordion-header .accordion-button {\\n &,\\n &.collapsed {\\n @include border-radius(0);\\n }\\n }\\n // stylelint-enable selector-max-class\\n\\n > .accordion-collapse {\\n @include border-radius(0);\\n }\\n }\\n}\\n\\n@if $enable-dark-mode {\\n @include color-mode(dark) {\\n .accordion-button::after {\\n --#{$prefix}accordion-btn-icon: #{escape-svg($accordion-button-icon-dark)};\\n --#{$prefix}accordion-btn-active-icon: #{escape-svg($accordion-button-active-icon-dark)};\\n }\\n }\\n}\\n\",\".breadcrumb {\\n // scss-docs-start breadcrumb-css-vars\\n --#{$prefix}breadcrumb-padding-x: #{$breadcrumb-padding-x};\\n --#{$prefix}breadcrumb-padding-y: #{$breadcrumb-padding-y};\\n --#{$prefix}breadcrumb-margin-bottom: #{$breadcrumb-margin-bottom};\\n @include rfs($breadcrumb-font-size, --#{$prefix}breadcrumb-font-size);\\n --#{$prefix}breadcrumb-bg: #{$breadcrumb-bg};\\n --#{$prefix}breadcrumb-border-radius: #{$breadcrumb-border-radius};\\n --#{$prefix}breadcrumb-divider-color: #{$breadcrumb-divider-color};\\n --#{$prefix}breadcrumb-item-padding-x: #{$breadcrumb-item-padding-x};\\n --#{$prefix}breadcrumb-item-active-color: #{$breadcrumb-active-color};\\n // scss-docs-end breadcrumb-css-vars\\n\\n display: flex;\\n flex-wrap: wrap;\\n padding: var(--#{$prefix}breadcrumb-padding-y) var(--#{$prefix}breadcrumb-padding-x);\\n margin-bottom: var(--#{$prefix}breadcrumb-margin-bottom);\\n @include font-size(var(--#{$prefix}breadcrumb-font-size));\\n list-style: none;\\n background-color: var(--#{$prefix}breadcrumb-bg);\\n @include border-radius(var(--#{$prefix}breadcrumb-border-radius));\\n}\\n\\n.breadcrumb-item {\\n // The separator between breadcrumbs (by default, a forward-slash: \\\"/\\\")\\n + .breadcrumb-item {\\n padding-left: var(--#{$prefix}breadcrumb-item-padding-x);\\n\\n &::before {\\n float: left; // Suppress inline spacings and underlining of the separator\\n padding-right: var(--#{$prefix}breadcrumb-item-padding-x);\\n color: var(--#{$prefix}breadcrumb-divider-color);\\n content: var(--#{$prefix}breadcrumb-divider, escape-svg($breadcrumb-divider)) #{\\\"/* rtl:\\\"} var(--#{$prefix}breadcrumb-divider, escape-svg($breadcrumb-divider-flipped)) #{\\\"*/\\\"};\\n }\\n }\\n\\n &.active {\\n color: var(--#{$prefix}breadcrumb-item-active-color);\\n }\\n}\\n\",\".pagination {\\n // scss-docs-start pagination-css-vars\\n --#{$prefix}pagination-padding-x: #{$pagination-padding-x};\\n --#{$prefix}pagination-padding-y: #{$pagination-padding-y};\\n @include rfs($pagination-font-size, --#{$prefix}pagination-font-size);\\n --#{$prefix}pagination-color: #{$pagination-color};\\n --#{$prefix}pagination-bg: #{$pagination-bg};\\n --#{$prefix}pagination-border-width: #{$pagination-border-width};\\n --#{$prefix}pagination-border-color: #{$pagination-border-color};\\n --#{$prefix}pagination-border-radius: #{$pagination-border-radius};\\n --#{$prefix}pagination-hover-color: #{$pagination-hover-color};\\n --#{$prefix}pagination-hover-bg: #{$pagination-hover-bg};\\n --#{$prefix}pagination-hover-border-color: #{$pagination-hover-border-color};\\n --#{$prefix}pagination-focus-color: #{$pagination-focus-color};\\n --#{$prefix}pagination-focus-bg: #{$pagination-focus-bg};\\n --#{$prefix}pagination-focus-box-shadow: #{$pagination-focus-box-shadow};\\n --#{$prefix}pagination-active-color: #{$pagination-active-color};\\n --#{$prefix}pagination-active-bg: #{$pagination-active-bg};\\n --#{$prefix}pagination-active-border-color: #{$pagination-active-border-color};\\n --#{$prefix}pagination-disabled-color: #{$pagination-disabled-color};\\n --#{$prefix}pagination-disabled-bg: #{$pagination-disabled-bg};\\n --#{$prefix}pagination-disabled-border-color: #{$pagination-disabled-border-color};\\n // scss-docs-end pagination-css-vars\\n\\n display: flex;\\n @include list-unstyled();\\n}\\n\\n.page-link {\\n position: relative;\\n display: block;\\n padding: var(--#{$prefix}pagination-padding-y) var(--#{$prefix}pagination-padding-x);\\n @include font-size(var(--#{$prefix}pagination-font-size));\\n color: var(--#{$prefix}pagination-color);\\n text-decoration: if($link-decoration == none, null, none);\\n background-color: var(--#{$prefix}pagination-bg);\\n border: var(--#{$prefix}pagination-border-width) solid var(--#{$prefix}pagination-border-color);\\n @include transition($pagination-transition);\\n\\n &:hover {\\n z-index: 2;\\n color: var(--#{$prefix}pagination-hover-color);\\n text-decoration: if($link-hover-decoration == underline, none, null);\\n background-color: var(--#{$prefix}pagination-hover-bg);\\n border-color: var(--#{$prefix}pagination-hover-border-color);\\n }\\n\\n &:focus {\\n z-index: 3;\\n color: var(--#{$prefix}pagination-focus-color);\\n background-color: var(--#{$prefix}pagination-focus-bg);\\n outline: $pagination-focus-outline;\\n box-shadow: var(--#{$prefix}pagination-focus-box-shadow);\\n }\\n\\n &.active,\\n .active > & {\\n z-index: 3;\\n color: var(--#{$prefix}pagination-active-color);\\n @include gradient-bg(var(--#{$prefix}pagination-active-bg));\\n border-color: var(--#{$prefix}pagination-active-border-color);\\n }\\n\\n &.disabled,\\n .disabled > & {\\n color: var(--#{$prefix}pagination-disabled-color);\\n pointer-events: none;\\n background-color: var(--#{$prefix}pagination-disabled-bg);\\n border-color: var(--#{$prefix}pagination-disabled-border-color);\\n }\\n}\\n\\n.page-item {\\n &:not(:first-child) .page-link {\\n margin-left: $pagination-margin-start;\\n }\\n\\n @if $pagination-margin-start == calc(#{$pagination-border-width} * -1) {\\n &:first-child {\\n .page-link {\\n @include border-start-radius(var(--#{$prefix}pagination-border-radius));\\n }\\n }\\n\\n &:last-child {\\n .page-link {\\n @include border-end-radius(var(--#{$prefix}pagination-border-radius));\\n }\\n }\\n } @else {\\n // Add border-radius to all pageLinks in case they have left margin\\n .page-link {\\n @include border-radius(var(--#{$prefix}pagination-border-radius));\\n }\\n }\\n}\\n\\n\\n//\\n// Sizing\\n//\\n\\n.pagination-lg {\\n @include pagination-size($pagination-padding-y-lg, $pagination-padding-x-lg, $font-size-lg, $pagination-border-radius-lg);\\n}\\n\\n.pagination-sm {\\n @include pagination-size($pagination-padding-y-sm, $pagination-padding-x-sm, $font-size-sm, $pagination-border-radius-sm);\\n}\\n\",\"// Pagination\\n\\n// scss-docs-start pagination-mixin\\n@mixin pagination-size($padding-y, $padding-x, $font-size, $border-radius) {\\n --#{$prefix}pagination-padding-x: #{$padding-x};\\n --#{$prefix}pagination-padding-y: #{$padding-y};\\n @include rfs($font-size, --#{$prefix}pagination-font-size);\\n --#{$prefix}pagination-border-radius: #{$border-radius};\\n}\\n// scss-docs-end pagination-mixin\\n\",\"// Base class\\n//\\n// Requires one of the contextual, color modifier classes for `color` and\\n// `background-color`.\\n\\n.badge {\\n // scss-docs-start badge-css-vars\\n --#{$prefix}badge-padding-x: #{$badge-padding-x};\\n --#{$prefix}badge-padding-y: #{$badge-padding-y};\\n @include rfs($badge-font-size, --#{$prefix}badge-font-size);\\n --#{$prefix}badge-font-weight: #{$badge-font-weight};\\n --#{$prefix}badge-color: #{$badge-color};\\n --#{$prefix}badge-border-radius: #{$badge-border-radius};\\n // scss-docs-end badge-css-vars\\n\\n display: inline-block;\\n padding: var(--#{$prefix}badge-padding-y) var(--#{$prefix}badge-padding-x);\\n @include font-size(var(--#{$prefix}badge-font-size));\\n font-weight: var(--#{$prefix}badge-font-weight);\\n line-height: 1;\\n color: var(--#{$prefix}badge-color);\\n text-align: center;\\n white-space: nowrap;\\n vertical-align: baseline;\\n @include border-radius(var(--#{$prefix}badge-border-radius));\\n @include gradient-bg();\\n\\n // Empty badges collapse automatically\\n &:empty {\\n display: none;\\n }\\n}\\n\\n// Quick fix for badges in buttons\\n.btn .badge {\\n position: relative;\\n top: -1px;\\n}\\n\",\"//\\n// Base styles\\n//\\n\\n.alert {\\n // scss-docs-start alert-css-vars\\n --#{$prefix}alert-bg: transparent;\\n --#{$prefix}alert-padding-x: #{$alert-padding-x};\\n --#{$prefix}alert-padding-y: #{$alert-padding-y};\\n --#{$prefix}alert-margin-bottom: #{$alert-margin-bottom};\\n --#{$prefix}alert-color: inherit;\\n --#{$prefix}alert-border-color: transparent;\\n --#{$prefix}alert-border: #{$alert-border-width} solid var(--#{$prefix}alert-border-color);\\n --#{$prefix}alert-border-radius: #{$alert-border-radius};\\n --#{$prefix}alert-link-color: inherit;\\n // scss-docs-end alert-css-vars\\n\\n position: relative;\\n padding: var(--#{$prefix}alert-padding-y) var(--#{$prefix}alert-padding-x);\\n margin-bottom: var(--#{$prefix}alert-margin-bottom);\\n color: var(--#{$prefix}alert-color);\\n background-color: var(--#{$prefix}alert-bg);\\n border: var(--#{$prefix}alert-border);\\n @include border-radius(var(--#{$prefix}alert-border-radius));\\n}\\n\\n// Headings for larger alerts\\n.alert-heading {\\n // Specified to prevent conflicts of changing $headings-color\\n color: inherit;\\n}\\n\\n// Provide class for links that match alerts\\n.alert-link {\\n font-weight: $alert-link-font-weight;\\n color: var(--#{$prefix}alert-link-color);\\n}\\n\\n\\n// Dismissible alerts\\n//\\n// Expand the right padding and account for the close button's positioning.\\n\\n.alert-dismissible {\\n padding-right: $alert-dismissible-padding-r;\\n\\n // Adjust close link position\\n .btn-close {\\n position: absolute;\\n top: 0;\\n right: 0;\\n z-index: $stretched-link-z-index + 1;\\n padding: $alert-padding-y * 1.25 $alert-padding-x;\\n }\\n}\\n\\n\\n// scss-docs-start alert-modifiers\\n// Generate contextual modifier classes for colorizing the alert\\n@each $state in map-keys($theme-colors) {\\n .alert-#{$state} {\\n --#{$prefix}alert-color: var(--#{$prefix}#{$state}-text-emphasis);\\n --#{$prefix}alert-bg: var(--#{$prefix}#{$state}-bg-subtle);\\n --#{$prefix}alert-border-color: var(--#{$prefix}#{$state}-border-subtle);\\n --#{$prefix}alert-link-color: var(--#{$prefix}#{$state}-text-emphasis);\\n }\\n}\\n// scss-docs-end alert-modifiers\\n\",\"// Disable animation if transitions are disabled\\n\\n// scss-docs-start progress-keyframes\\n@if $enable-transitions {\\n @keyframes progress-bar-stripes {\\n 0% { background-position-x: $progress-height; }\\n }\\n}\\n// scss-docs-end progress-keyframes\\n\\n.progress,\\n.progress-stacked {\\n // scss-docs-start progress-css-vars\\n --#{$prefix}progress-height: #{$progress-height};\\n @include rfs($progress-font-size, --#{$prefix}progress-font-size);\\n --#{$prefix}progress-bg: #{$progress-bg};\\n --#{$prefix}progress-border-radius: #{$progress-border-radius};\\n --#{$prefix}progress-box-shadow: #{$progress-box-shadow};\\n --#{$prefix}progress-bar-color: #{$progress-bar-color};\\n --#{$prefix}progress-bar-bg: #{$progress-bar-bg};\\n --#{$prefix}progress-bar-transition: #{$progress-bar-transition};\\n // scss-docs-end progress-css-vars\\n\\n display: flex;\\n height: var(--#{$prefix}progress-height);\\n overflow: hidden; // force rounded corners by cropping it\\n @include font-size(var(--#{$prefix}progress-font-size));\\n background-color: var(--#{$prefix}progress-bg);\\n @include border-radius(var(--#{$prefix}progress-border-radius));\\n @include box-shadow(var(--#{$prefix}progress-box-shadow));\\n}\\n\\n.progress-bar {\\n display: flex;\\n flex-direction: column;\\n justify-content: center;\\n overflow: hidden;\\n color: var(--#{$prefix}progress-bar-color);\\n text-align: center;\\n white-space: nowrap;\\n background-color: var(--#{$prefix}progress-bar-bg);\\n @include transition(var(--#{$prefix}progress-bar-transition));\\n}\\n\\n.progress-bar-striped {\\n @include gradient-striped();\\n background-size: var(--#{$prefix}progress-height) var(--#{$prefix}progress-height);\\n}\\n\\n.progress-stacked > .progress {\\n overflow: visible;\\n}\\n\\n.progress-stacked > .progress > .progress-bar {\\n width: 100%;\\n}\\n\\n@if $enable-transitions {\\n .progress-bar-animated {\\n animation: $progress-bar-animation-timing progress-bar-stripes;\\n\\n @if $enable-reduced-motion {\\n @media (prefers-reduced-motion: reduce) {\\n animation: none;\\n }\\n }\\n }\\n}\\n\",\"// Base class\\n//\\n// Easily usable on <ul>, <ol>, or <div>.\\n\\n.list-group {\\n // scss-docs-start list-group-css-vars\\n --#{$prefix}list-group-color: #{$list-group-color};\\n --#{$prefix}list-group-bg: #{$list-group-bg};\\n --#{$prefix}list-group-border-color: #{$list-group-border-color};\\n --#{$prefix}list-group-border-width: #{$list-group-border-width};\\n --#{$prefix}list-group-border-radius: #{$list-group-border-radius};\\n --#{$prefix}list-group-item-padding-x: #{$list-group-item-padding-x};\\n --#{$prefix}list-group-item-padding-y: #{$list-group-item-padding-y};\\n --#{$prefix}list-group-action-color: #{$list-group-action-color};\\n --#{$prefix}list-group-action-hover-color: #{$list-group-action-hover-color};\\n --#{$prefix}list-group-action-hover-bg: #{$list-group-hover-bg};\\n --#{$prefix}list-group-action-active-color: #{$list-group-action-active-color};\\n --#{$prefix}list-group-action-active-bg: #{$list-group-action-active-bg};\\n --#{$prefix}list-group-disabled-color: #{$list-group-disabled-color};\\n --#{$prefix}list-group-disabled-bg: #{$list-group-disabled-bg};\\n --#{$prefix}list-group-active-color: #{$list-group-active-color};\\n --#{$prefix}list-group-active-bg: #{$list-group-active-bg};\\n --#{$prefix}list-group-active-border-color: #{$list-group-active-border-color};\\n // scss-docs-end list-group-css-vars\\n\\n display: flex;\\n flex-direction: column;\\n\\n // No need to set list-style: none; since .list-group-item is block level\\n padding-left: 0; // reset padding because ul and ol\\n margin-bottom: 0;\\n @include border-radius(var(--#{$prefix}list-group-border-radius));\\n}\\n\\n.list-group-numbered {\\n list-style-type: none;\\n counter-reset: section;\\n\\n > .list-group-item::before {\\n // Increments only this instance of the section counter\\n content: counters(section, \\\".\\\") \\\". \\\";\\n counter-increment: section;\\n }\\n}\\n\\n// Interactive list items\\n//\\n// Use anchor or button elements instead of `li`s or `div`s to create interactive\\n// list items. Includes an extra `.active` modifier class for selected items.\\n\\n.list-group-item-action {\\n width: 100%; // For `<button>`s (anchors become 100% by default though)\\n color: var(--#{$prefix}list-group-action-color);\\n text-align: inherit; // For `<button>`s (anchors inherit)\\n\\n // Hover state\\n &:hover,\\n &:focus {\\n z-index: 1; // Place hover/focus items above their siblings for proper border styling\\n color: var(--#{$prefix}list-group-action-hover-color);\\n text-decoration: none;\\n background-color: var(--#{$prefix}list-group-action-hover-bg);\\n }\\n\\n &:active {\\n color: var(--#{$prefix}list-group-action-active-color);\\n background-color: var(--#{$prefix}list-group-action-active-bg);\\n }\\n}\\n\\n// Individual list items\\n//\\n// Use on `li`s or `div`s within the `.list-group` parent.\\n\\n.list-group-item {\\n position: relative;\\n display: block;\\n padding: var(--#{$prefix}list-group-item-padding-y) var(--#{$prefix}list-group-item-padding-x);\\n color: var(--#{$prefix}list-group-color);\\n text-decoration: if($link-decoration == none, null, none);\\n background-color: var(--#{$prefix}list-group-bg);\\n border: var(--#{$prefix}list-group-border-width) solid var(--#{$prefix}list-group-border-color);\\n\\n &:first-child {\\n @include border-top-radius(inherit);\\n }\\n\\n &:last-child {\\n @include border-bottom-radius(inherit);\\n }\\n\\n &.disabled,\\n &:disabled {\\n color: var(--#{$prefix}list-group-disabled-color);\\n pointer-events: none;\\n background-color: var(--#{$prefix}list-group-disabled-bg);\\n }\\n\\n // Include both here for `<a>`s and `<button>`s\\n &.active {\\n z-index: 2; // Place active items above their siblings for proper border styling\\n color: var(--#{$prefix}list-group-active-color);\\n background-color: var(--#{$prefix}list-group-active-bg);\\n border-color: var(--#{$prefix}list-group-active-border-color);\\n }\\n\\n // stylelint-disable-next-line scss/selector-no-redundant-nesting-selector\\n & + .list-group-item {\\n border-top-width: 0;\\n\\n &.active {\\n margin-top: calc(-1 * var(--#{$prefix}list-group-border-width)); // stylelint-disable-line function-disallowed-list\\n border-top-width: var(--#{$prefix}list-group-border-width);\\n }\\n }\\n}\\n\\n// Horizontal\\n//\\n// Change the layout of list group items from vertical (default) to horizontal.\\n\\n@each $breakpoint in map-keys($grid-breakpoints) {\\n @include media-breakpoint-up($breakpoint) {\\n $infix: breakpoint-infix($breakpoint, $grid-breakpoints);\\n\\n .list-group-horizontal#{$infix} {\\n flex-direction: row;\\n\\n > .list-group-item {\\n &:first-child:not(:last-child) {\\n @include border-bottom-start-radius(var(--#{$prefix}list-group-border-radius));\\n @include border-top-end-radius(0);\\n }\\n\\n &:last-child:not(:first-child) {\\n @include border-top-end-radius(var(--#{$prefix}list-group-border-radius));\\n @include border-bottom-start-radius(0);\\n }\\n\\n &.active {\\n margin-top: 0;\\n }\\n\\n + .list-group-item {\\n border-top-width: var(--#{$prefix}list-group-border-width);\\n border-left-width: 0;\\n\\n &.active {\\n margin-left: calc(-1 * var(--#{$prefix}list-group-border-width)); // stylelint-disable-line function-disallowed-list\\n border-left-width: var(--#{$prefix}list-group-border-width);\\n }\\n }\\n }\\n }\\n }\\n}\\n\\n\\n// Flush list items\\n//\\n// Remove borders and border-radius to keep list group items edge-to-edge. Most\\n// useful within other components (e.g., cards).\\n\\n.list-group-flush {\\n @include border-radius(0);\\n\\n > .list-group-item {\\n border-width: 0 0 var(--#{$prefix}list-group-border-width);\\n\\n &:last-child {\\n border-bottom-width: 0;\\n }\\n }\\n}\\n\\n\\n// scss-docs-start list-group-modifiers\\n// List group contextual variants\\n//\\n// Add modifier classes to change text and background color on individual items.\\n// Organizationally, this must come after the `:hover` states.\\n\\n@each $state in map-keys($theme-colors) {\\n .list-group-item-#{$state} {\\n --#{$prefix}list-group-color: var(--#{$prefix}#{$state}-text-emphasis);\\n --#{$prefix}list-group-bg: var(--#{$prefix}#{$state}-bg-subtle);\\n --#{$prefix}list-group-border-color: var(--#{$prefix}#{$state}-border-subtle);\\n --#{$prefix}list-group-action-hover-color: var(--#{$prefix}emphasis-color);\\n --#{$prefix}list-group-action-hover-bg: var(--#{$prefix}#{$state}-border-subtle);\\n --#{$prefix}list-group-action-active-color: var(--#{$prefix}emphasis-color);\\n --#{$prefix}list-group-action-active-bg: var(--#{$prefix}#{$state}-border-subtle);\\n --#{$prefix}list-group-active-color: var(--#{$prefix}#{$state}-bg-subtle);\\n --#{$prefix}list-group-active-bg: var(--#{$prefix}#{$state}-text-emphasis);\\n --#{$prefix}list-group-active-border-color: var(--#{$prefix}#{$state}-text-emphasis);\\n }\\n}\\n// scss-docs-end list-group-modifiers\\n\",\"// Transparent background and border properties included for button version.\\n// iOS requires the button element instead of an anchor tag.\\n// If you want the anchor version, it requires `href=\\\"#\\\"`.\\n// See https://developer.mozilla.org/en-US/docs/Web/Events/click#Safari_Mobile\\n\\n.btn-close {\\n // scss-docs-start close-css-vars\\n --#{$prefix}btn-close-color: #{$btn-close-color};\\n --#{$prefix}btn-close-bg: #{ escape-svg($btn-close-bg) };\\n --#{$prefix}btn-close-opacity: #{$btn-close-opacity};\\n --#{$prefix}btn-close-hover-opacity: #{$btn-close-hover-opacity};\\n --#{$prefix}btn-close-focus-shadow: #{$btn-close-focus-shadow};\\n --#{$prefix}btn-close-focus-opacity: #{$btn-close-focus-opacity};\\n --#{$prefix}btn-close-disabled-opacity: #{$btn-close-disabled-opacity};\\n --#{$prefix}btn-close-white-filter: #{$btn-close-white-filter};\\n // scss-docs-end close-css-vars\\n\\n box-sizing: content-box;\\n width: $btn-close-width;\\n height: $btn-close-height;\\n padding: $btn-close-padding-y $btn-close-padding-x;\\n color: var(--#{$prefix}btn-close-color);\\n background: transparent var(--#{$prefix}btn-close-bg) center / $btn-close-width auto no-repeat; // include transparent for button elements\\n border: 0; // for button elements\\n @include border-radius();\\n opacity: var(--#{$prefix}btn-close-opacity);\\n\\n // Override <a>'s hover style\\n &:hover {\\n color: var(--#{$prefix}btn-close-color);\\n text-decoration: none;\\n opacity: var(--#{$prefix}btn-close-hover-opacity);\\n }\\n\\n &:focus {\\n outline: 0;\\n box-shadow: var(--#{$prefix}btn-close-focus-shadow);\\n opacity: var(--#{$prefix}btn-close-focus-opacity);\\n }\\n\\n &:disabled,\\n &.disabled {\\n pointer-events: none;\\n user-select: none;\\n opacity: var(--#{$prefix}btn-close-disabled-opacity);\\n }\\n}\\n\\n@mixin btn-close-white() {\\n filter: var(--#{$prefix}btn-close-white-filter);\\n}\\n\\n.btn-close-white {\\n @include btn-close-white();\\n}\\n\\n@if $enable-dark-mode {\\n @include color-mode(dark) {\\n .btn-close {\\n @include btn-close-white();\\n }\\n }\\n}\\n\",\".toast {\\n // scss-docs-start toast-css-vars\\n --#{$prefix}toast-zindex: #{$zindex-toast};\\n --#{$prefix}toast-padding-x: #{$toast-padding-x};\\n --#{$prefix}toast-padding-y: #{$toast-padding-y};\\n --#{$prefix}toast-spacing: #{$toast-spacing};\\n --#{$prefix}toast-max-width: #{$toast-max-width};\\n @include rfs($toast-font-size, --#{$prefix}toast-font-size);\\n --#{$prefix}toast-color: #{$toast-color};\\n --#{$prefix}toast-bg: #{$toast-background-color};\\n --#{$prefix}toast-border-width: #{$toast-border-width};\\n --#{$prefix}toast-border-color: #{$toast-border-color};\\n --#{$prefix}toast-border-radius: #{$toast-border-radius};\\n --#{$prefix}toast-box-shadow: #{$toast-box-shadow};\\n --#{$prefix}toast-header-color: #{$toast-header-color};\\n --#{$prefix}toast-header-bg: #{$toast-header-background-color};\\n --#{$prefix}toast-header-border-color: #{$toast-header-border-color};\\n // scss-docs-end toast-css-vars\\n\\n width: var(--#{$prefix}toast-max-width);\\n max-width: 100%;\\n @include font-size(var(--#{$prefix}toast-font-size));\\n color: var(--#{$prefix}toast-color);\\n pointer-events: auto;\\n background-color: var(--#{$prefix}toast-bg);\\n background-clip: padding-box;\\n border: var(--#{$prefix}toast-border-width) solid var(--#{$prefix}toast-border-color);\\n box-shadow: var(--#{$prefix}toast-box-shadow);\\n @include border-radius(var(--#{$prefix}toast-border-radius));\\n\\n &.showing {\\n opacity: 0;\\n }\\n\\n &:not(.show) {\\n display: none;\\n }\\n}\\n\\n.toast-container {\\n --#{$prefix}toast-zindex: #{$zindex-toast};\\n\\n position: absolute;\\n z-index: var(--#{$prefix}toast-zindex);\\n width: max-content;\\n max-width: 100%;\\n pointer-events: none;\\n\\n > :not(:last-child) {\\n margin-bottom: var(--#{$prefix}toast-spacing);\\n }\\n}\\n\\n.toast-header {\\n display: flex;\\n align-items: center;\\n padding: var(--#{$prefix}toast-padding-y) var(--#{$prefix}toast-padding-x);\\n color: var(--#{$prefix}toast-header-color);\\n background-color: var(--#{$prefix}toast-header-bg);\\n background-clip: padding-box;\\n border-bottom: var(--#{$prefix}toast-border-width) solid var(--#{$prefix}toast-header-border-color);\\n @include border-top-radius(calc(var(--#{$prefix}toast-border-radius) - var(--#{$prefix}toast-border-width)));\\n\\n .btn-close {\\n margin-right: calc(-.5 * var(--#{$prefix}toast-padding-x)); // stylelint-disable-line function-disallowed-list\\n margin-left: var(--#{$prefix}toast-padding-x);\\n }\\n}\\n\\n.toast-body {\\n padding: var(--#{$prefix}toast-padding-x);\\n word-wrap: break-word;\\n}\\n\",\"// stylelint-disable function-disallowed-list\\n\\n// .modal-open - body class for killing the scroll\\n// .modal - container to scroll within\\n// .modal-dialog - positioning shell for the actual modal\\n// .modal-content - actual modal w/ bg and corners and stuff\\n\\n\\n// Container that the modal scrolls within\\n.modal {\\n // scss-docs-start modal-css-vars\\n --#{$prefix}modal-zindex: #{$zindex-modal};\\n --#{$prefix}modal-width: #{$modal-md};\\n --#{$prefix}modal-padding: #{$modal-inner-padding};\\n --#{$prefix}modal-margin: #{$modal-dialog-margin};\\n --#{$prefix}modal-color: #{$modal-content-color};\\n --#{$prefix}modal-bg: #{$modal-content-bg};\\n --#{$prefix}modal-border-color: #{$modal-content-border-color};\\n --#{$prefix}modal-border-width: #{$modal-content-border-width};\\n --#{$prefix}modal-border-radius: #{$modal-content-border-radius};\\n --#{$prefix}modal-box-shadow: #{$modal-content-box-shadow-xs};\\n --#{$prefix}modal-inner-border-radius: #{$modal-content-inner-border-radius};\\n --#{$prefix}modal-header-padding-x: #{$modal-header-padding-x};\\n --#{$prefix}modal-header-padding-y: #{$modal-header-padding-y};\\n --#{$prefix}modal-header-padding: #{$modal-header-padding}; // Todo in v6: Split this padding into x and y\\n --#{$prefix}modal-header-border-color: #{$modal-header-border-color};\\n --#{$prefix}modal-header-border-width: #{$modal-header-border-width};\\n --#{$prefix}modal-title-line-height: #{$modal-title-line-height};\\n --#{$prefix}modal-footer-gap: #{$modal-footer-margin-between};\\n --#{$prefix}modal-footer-bg: #{$modal-footer-bg};\\n --#{$prefix}modal-footer-border-color: #{$modal-footer-border-color};\\n --#{$prefix}modal-footer-border-width: #{$modal-footer-border-width};\\n // scss-docs-end modal-css-vars\\n\\n position: fixed;\\n top: 0;\\n left: 0;\\n z-index: var(--#{$prefix}modal-zindex);\\n display: none;\\n width: 100%;\\n height: 100%;\\n overflow-x: hidden;\\n overflow-y: auto;\\n // Prevent Chrome on Windows from adding a focus outline. For details, see\\n // https://github.com/twbs/bootstrap/pull/10951.\\n outline: 0;\\n // We deliberately don't use `-webkit-overflow-scrolling: touch;` due to a\\n // gnarly iOS Safari bug: https://bugs.webkit.org/show_bug.cgi?id=158342\\n // See also https://github.com/twbs/bootstrap/issues/17695\\n}\\n\\n// Shell div to position the modal with bottom padding\\n.modal-dialog {\\n position: relative;\\n width: auto;\\n margin: var(--#{$prefix}modal-margin);\\n // allow clicks to pass through for custom click handling to close modal\\n pointer-events: none;\\n\\n // When fading in the modal, animate it to slide down\\n .modal.fade & {\\n @include transition($modal-transition);\\n transform: $modal-fade-transform;\\n }\\n .modal.show & {\\n transform: $modal-show-transform;\\n }\\n\\n // When trying to close, animate focus to scale\\n .modal.modal-static & {\\n transform: $modal-scale-transform;\\n }\\n}\\n\\n.modal-dialog-scrollable {\\n height: calc(100% - var(--#{$prefix}modal-margin) * 2);\\n\\n .modal-content {\\n max-height: 100%;\\n overflow: hidden;\\n }\\n\\n .modal-body {\\n overflow-y: auto;\\n }\\n}\\n\\n.modal-dialog-centered {\\n display: flex;\\n align-items: center;\\n min-height: calc(100% - var(--#{$prefix}modal-margin) * 2);\\n}\\n\\n// Actual modal\\n.modal-content {\\n position: relative;\\n display: flex;\\n flex-direction: column;\\n width: 100%; // Ensure `.modal-content` extends the full width of the parent `.modal-dialog`\\n // counteract the pointer-events: none; in the .modal-dialog\\n color: var(--#{$prefix}modal-color);\\n pointer-events: auto;\\n background-color: var(--#{$prefix}modal-bg);\\n background-clip: padding-box;\\n border: var(--#{$prefix}modal-border-width) solid var(--#{$prefix}modal-border-color);\\n @include border-radius(var(--#{$prefix}modal-border-radius));\\n @include box-shadow(var(--#{$prefix}modal-box-shadow));\\n // Remove focus outline from opened modal\\n outline: 0;\\n}\\n\\n// Modal background\\n.modal-backdrop {\\n // scss-docs-start modal-backdrop-css-vars\\n --#{$prefix}backdrop-zindex: #{$zindex-modal-backdrop};\\n --#{$prefix}backdrop-bg: #{$modal-backdrop-bg};\\n --#{$prefix}backdrop-opacity: #{$modal-backdrop-opacity};\\n // scss-docs-end modal-backdrop-css-vars\\n\\n @include overlay-backdrop(var(--#{$prefix}backdrop-zindex), var(--#{$prefix}backdrop-bg), var(--#{$prefix}backdrop-opacity));\\n}\\n\\n// Modal header\\n// Top section of the modal w/ title and dismiss\\n.modal-header {\\n display: flex;\\n flex-shrink: 0;\\n align-items: center;\\n padding: var(--#{$prefix}modal-header-padding);\\n border-bottom: var(--#{$prefix}modal-header-border-width) solid var(--#{$prefix}modal-header-border-color);\\n @include border-top-radius(var(--#{$prefix}modal-inner-border-radius));\\n\\n .btn-close {\\n padding: calc(var(--#{$prefix}modal-header-padding-y) * .5) calc(var(--#{$prefix}modal-header-padding-x) * .5);\\n margin: calc(-.5 * var(--#{$prefix}modal-header-padding-y)) calc(-.5 * var(--#{$prefix}modal-header-padding-x)) calc(-.5 * var(--#{$prefix}modal-header-padding-y)) auto;\\n }\\n}\\n\\n// Title text within header\\n.modal-title {\\n margin-bottom: 0;\\n line-height: var(--#{$prefix}modal-title-line-height);\\n}\\n\\n// Modal body\\n// Where all modal content resides (sibling of .modal-header and .modal-footer)\\n.modal-body {\\n position: relative;\\n // Enable `flex-grow: 1` so that the body take up as much space as possible\\n // when there should be a fixed height on `.modal-dialog`.\\n flex: 1 1 auto;\\n padding: var(--#{$prefix}modal-padding);\\n}\\n\\n// Footer (for actions)\\n.modal-footer {\\n display: flex;\\n flex-shrink: 0;\\n flex-wrap: wrap;\\n align-items: center; // vertically center\\n justify-content: flex-end; // Right align buttons with flex property because text-align doesn't work on flex items\\n padding: calc(var(--#{$prefix}modal-padding) - var(--#{$prefix}modal-footer-gap) * .5);\\n background-color: var(--#{$prefix}modal-footer-bg);\\n border-top: var(--#{$prefix}modal-footer-border-width) solid var(--#{$prefix}modal-footer-border-color);\\n @include border-bottom-radius(var(--#{$prefix}modal-inner-border-radius));\\n\\n // Place margin between footer elements\\n // This solution is far from ideal because of the universal selector usage,\\n // but is needed to fix https://github.com/twbs/bootstrap/issues/24800\\n > * {\\n margin: calc(var(--#{$prefix}modal-footer-gap) * .5); // Todo in v6: replace with gap on parent class\\n }\\n}\\n\\n// Scale up the modal\\n@include media-breakpoint-up(sm) {\\n .modal {\\n --#{$prefix}modal-margin: #{$modal-dialog-margin-y-sm-up};\\n --#{$prefix}modal-box-shadow: #{$modal-content-box-shadow-sm-up};\\n }\\n\\n // Automatically set modal's width for larger viewports\\n .modal-dialog {\\n max-width: var(--#{$prefix}modal-width);\\n margin-right: auto;\\n margin-left: auto;\\n }\\n\\n .modal-sm {\\n --#{$prefix}modal-width: #{$modal-sm};\\n }\\n}\\n\\n@include media-breakpoint-up(lg) {\\n .modal-lg,\\n .modal-xl {\\n --#{$prefix}modal-width: #{$modal-lg};\\n }\\n}\\n\\n@include media-breakpoint-up(xl) {\\n .modal-xl {\\n --#{$prefix}modal-width: #{$modal-xl};\\n }\\n}\\n\\n// scss-docs-start modal-fullscreen-loop\\n@each $breakpoint in map-keys($grid-breakpoints) {\\n $infix: breakpoint-infix($breakpoint, $grid-breakpoints);\\n $postfix: if($infix != \\\"\\\", $infix + \\\"-down\\\", \\\"\\\");\\n\\n @include media-breakpoint-down($breakpoint) {\\n .modal-fullscreen#{$postfix} {\\n width: 100vw;\\n max-width: none;\\n height: 100%;\\n margin: 0;\\n\\n .modal-content {\\n height: 100%;\\n border: 0;\\n @include border-radius(0);\\n }\\n\\n .modal-header,\\n .modal-footer {\\n @include border-radius(0);\\n }\\n\\n .modal-body {\\n overflow-y: auto;\\n }\\n }\\n }\\n}\\n// scss-docs-end modal-fullscreen-loop\\n\",\"// Shared between modals and offcanvases\\n@mixin overlay-backdrop($zindex, $backdrop-bg, $backdrop-opacity) {\\n position: fixed;\\n top: 0;\\n left: 0;\\n z-index: $zindex;\\n width: 100vw;\\n height: 100vh;\\n background-color: $backdrop-bg;\\n\\n // Fade for backdrop\\n &.fade { opacity: 0; }\\n &.show { opacity: $backdrop-opacity; }\\n}\\n\",\"// Base class\\n.tooltip {\\n // scss-docs-start tooltip-css-vars\\n --#{$prefix}tooltip-zindex: #{$zindex-tooltip};\\n --#{$prefix}tooltip-max-width: #{$tooltip-max-width};\\n --#{$prefix}tooltip-padding-x: #{$tooltip-padding-x};\\n --#{$prefix}tooltip-padding-y: #{$tooltip-padding-y};\\n --#{$prefix}tooltip-margin: #{$tooltip-margin};\\n @include rfs($tooltip-font-size, --#{$prefix}tooltip-font-size);\\n --#{$prefix}tooltip-color: #{$tooltip-color};\\n --#{$prefix}tooltip-bg: #{$tooltip-bg};\\n --#{$prefix}tooltip-border-radius: #{$tooltip-border-radius};\\n --#{$prefix}tooltip-opacity: #{$tooltip-opacity};\\n --#{$prefix}tooltip-arrow-width: #{$tooltip-arrow-width};\\n --#{$prefix}tooltip-arrow-height: #{$tooltip-arrow-height};\\n // scss-docs-end tooltip-css-vars\\n\\n z-index: var(--#{$prefix}tooltip-zindex);\\n display: block;\\n margin: var(--#{$prefix}tooltip-margin);\\n @include deprecate(\\\"`$tooltip-margin`\\\", \\\"v5\\\", \\\"v5.x\\\", true);\\n // Our parent element can be arbitrary since tooltips are by default inserted as a sibling of their target element.\\n // So reset our font and text properties to avoid inheriting weird values.\\n @include reset-text();\\n @include font-size(var(--#{$prefix}tooltip-font-size));\\n // Allow breaking very long words so they don't overflow the tooltip's bounds\\n word-wrap: break-word;\\n opacity: 0;\\n\\n &.show { opacity: var(--#{$prefix}tooltip-opacity); }\\n\\n .tooltip-arrow {\\n display: block;\\n width: var(--#{$prefix}tooltip-arrow-width);\\n height: var(--#{$prefix}tooltip-arrow-height);\\n\\n &::before {\\n position: absolute;\\n content: \\\"\\\";\\n border-color: transparent;\\n border-style: solid;\\n }\\n }\\n}\\n\\n.bs-tooltip-top .tooltip-arrow {\\n bottom: calc(-1 * var(--#{$prefix}tooltip-arrow-height)); // stylelint-disable-line function-disallowed-list\\n\\n &::before {\\n top: -1px;\\n border-width: var(--#{$prefix}tooltip-arrow-height) calc(var(--#{$prefix}tooltip-arrow-width) * .5) 0; // stylelint-disable-line function-disallowed-list\\n border-top-color: var(--#{$prefix}tooltip-bg);\\n }\\n}\\n\\n/* rtl:begin:ignore */\\n.bs-tooltip-end .tooltip-arrow {\\n left: calc(-1 * var(--#{$prefix}tooltip-arrow-height)); // stylelint-disable-line function-disallowed-list\\n width: var(--#{$prefix}tooltip-arrow-height);\\n height: var(--#{$prefix}tooltip-arrow-width);\\n\\n &::before {\\n right: -1px;\\n border-width: calc(var(--#{$prefix}tooltip-arrow-width) * .5) var(--#{$prefix}tooltip-arrow-height) calc(var(--#{$prefix}tooltip-arrow-width) * .5) 0; // stylelint-disable-line function-disallowed-list\\n border-right-color: var(--#{$prefix}tooltip-bg);\\n }\\n}\\n\\n/* rtl:end:ignore */\\n\\n.bs-tooltip-bottom .tooltip-arrow {\\n top: calc(-1 * var(--#{$prefix}tooltip-arrow-height)); // stylelint-disable-line function-disallowed-list\\n\\n &::before {\\n bottom: -1px;\\n border-width: 0 calc(var(--#{$prefix}tooltip-arrow-width) * .5) var(--#{$prefix}tooltip-arrow-height); // stylelint-disable-line function-disallowed-list\\n border-bottom-color: var(--#{$prefix}tooltip-bg);\\n }\\n}\\n\\n/* rtl:begin:ignore */\\n.bs-tooltip-start .tooltip-arrow {\\n right: calc(-1 * var(--#{$prefix}tooltip-arrow-height)); // stylelint-disable-line function-disallowed-list\\n width: var(--#{$prefix}tooltip-arrow-height);\\n height: var(--#{$prefix}tooltip-arrow-width);\\n\\n &::before {\\n left: -1px;\\n border-width: calc(var(--#{$prefix}tooltip-arrow-width) * .5) 0 calc(var(--#{$prefix}tooltip-arrow-width) * .5) var(--#{$prefix}tooltip-arrow-height); // stylelint-disable-line function-disallowed-list\\n border-left-color: var(--#{$prefix}tooltip-bg);\\n }\\n}\\n\\n/* rtl:end:ignore */\\n\\n.bs-tooltip-auto {\\n &[data-popper-placement^=\\\"top\\\"] {\\n @extend .bs-tooltip-top;\\n }\\n &[data-popper-placement^=\\\"right\\\"] {\\n @extend .bs-tooltip-end;\\n }\\n &[data-popper-placement^=\\\"bottom\\\"] {\\n @extend .bs-tooltip-bottom;\\n }\\n &[data-popper-placement^=\\\"left\\\"] {\\n @extend .bs-tooltip-start;\\n }\\n}\\n\\n// Wrapper for the tooltip content\\n.tooltip-inner {\\n max-width: var(--#{$prefix}tooltip-max-width);\\n padding: var(--#{$prefix}tooltip-padding-y) var(--#{$prefix}tooltip-padding-x);\\n color: var(--#{$prefix}tooltip-color);\\n text-align: center;\\n background-color: var(--#{$prefix}tooltip-bg);\\n @include border-radius(var(--#{$prefix}tooltip-border-radius));\\n}\\n\",\"@mixin reset-text {\\n font-family: $font-family-base;\\n // We deliberately do NOT reset font-size or overflow-wrap / word-wrap.\\n font-style: normal;\\n font-weight: $font-weight-normal;\\n line-height: $line-height-base;\\n text-align: left; // Fallback for where `start` is not supported\\n text-align: start;\\n text-decoration: none;\\n text-shadow: none;\\n text-transform: none;\\n letter-spacing: normal;\\n word-break: normal;\\n white-space: normal;\\n word-spacing: normal;\\n line-break: auto;\\n}\\n\",\".popover {\\n // scss-docs-start popover-css-vars\\n --#{$prefix}popover-zindex: #{$zindex-popover};\\n --#{$prefix}popover-max-width: #{$popover-max-width};\\n @include rfs($popover-font-size, --#{$prefix}popover-font-size);\\n --#{$prefix}popover-bg: #{$popover-bg};\\n --#{$prefix}popover-border-width: #{$popover-border-width};\\n --#{$prefix}popover-border-color: #{$popover-border-color};\\n --#{$prefix}popover-border-radius: #{$popover-border-radius};\\n --#{$prefix}popover-inner-border-radius: #{$popover-inner-border-radius};\\n --#{$prefix}popover-box-shadow: #{$popover-box-shadow};\\n --#{$prefix}popover-header-padding-x: #{$popover-header-padding-x};\\n --#{$prefix}popover-header-padding-y: #{$popover-header-padding-y};\\n @include rfs($popover-header-font-size, --#{$prefix}popover-header-font-size);\\n --#{$prefix}popover-header-color: #{$popover-header-color};\\n --#{$prefix}popover-header-bg: #{$popover-header-bg};\\n --#{$prefix}popover-body-padding-x: #{$popover-body-padding-x};\\n --#{$prefix}popover-body-padding-y: #{$popover-body-padding-y};\\n --#{$prefix}popover-body-color: #{$popover-body-color};\\n --#{$prefix}popover-arrow-width: #{$popover-arrow-width};\\n --#{$prefix}popover-arrow-height: #{$popover-arrow-height};\\n --#{$prefix}popover-arrow-border: var(--#{$prefix}popover-border-color);\\n // scss-docs-end popover-css-vars\\n\\n z-index: var(--#{$prefix}popover-zindex);\\n display: block;\\n max-width: var(--#{$prefix}popover-max-width);\\n // Our parent element can be arbitrary since tooltips are by default inserted as a sibling of their target element.\\n // So reset our font and text properties to avoid inheriting weird values.\\n @include reset-text();\\n @include font-size(var(--#{$prefix}popover-font-size));\\n // Allow breaking very long words so they don't overflow the popover's bounds\\n word-wrap: break-word;\\n background-color: var(--#{$prefix}popover-bg);\\n background-clip: padding-box;\\n border: var(--#{$prefix}popover-border-width) solid var(--#{$prefix}popover-border-color);\\n @include border-radius(var(--#{$prefix}popover-border-radius));\\n @include box-shadow(var(--#{$prefix}popover-box-shadow));\\n\\n .popover-arrow {\\n display: block;\\n width: var(--#{$prefix}popover-arrow-width);\\n height: var(--#{$prefix}popover-arrow-height);\\n\\n &::before,\\n &::after {\\n position: absolute;\\n display: block;\\n content: \\\"\\\";\\n border-color: transparent;\\n border-style: solid;\\n border-width: 0;\\n }\\n }\\n}\\n\\n.bs-popover-top {\\n > .popover-arrow {\\n bottom: calc(-1 * (var(--#{$prefix}popover-arrow-height)) - var(--#{$prefix}popover-border-width)); // stylelint-disable-line function-disallowed-list\\n\\n &::before,\\n &::after {\\n border-width: var(--#{$prefix}popover-arrow-height) calc(var(--#{$prefix}popover-arrow-width) * .5) 0; // stylelint-disable-line function-disallowed-list\\n }\\n\\n &::before {\\n bottom: 0;\\n border-top-color: var(--#{$prefix}popover-arrow-border);\\n }\\n\\n &::after {\\n bottom: var(--#{$prefix}popover-border-width);\\n border-top-color: var(--#{$prefix}popover-bg);\\n }\\n }\\n}\\n\\n/* rtl:begin:ignore */\\n.bs-popover-end {\\n > .popover-arrow {\\n left: calc(-1 * (var(--#{$prefix}popover-arrow-height)) - var(--#{$prefix}popover-border-width)); // stylelint-disable-line function-disallowed-list\\n width: var(--#{$prefix}popover-arrow-height);\\n height: var(--#{$prefix}popover-arrow-width);\\n\\n &::before,\\n &::after {\\n border-width: calc(var(--#{$prefix}popover-arrow-width) * .5) var(--#{$prefix}popover-arrow-height) calc(var(--#{$prefix}popover-arrow-width) * .5) 0; // stylelint-disable-line function-disallowed-list\\n }\\n\\n &::before {\\n left: 0;\\n border-right-color: var(--#{$prefix}popover-arrow-border);\\n }\\n\\n &::after {\\n left: var(--#{$prefix}popover-border-width);\\n border-right-color: var(--#{$prefix}popover-bg);\\n }\\n }\\n}\\n\\n/* rtl:end:ignore */\\n\\n.bs-popover-bottom {\\n > .popover-arrow {\\n top: calc(-1 * (var(--#{$prefix}popover-arrow-height)) - var(--#{$prefix}popover-border-width)); // stylelint-disable-line function-disallowed-list\\n\\n &::before,\\n &::after {\\n border-width: 0 calc(var(--#{$prefix}popover-arrow-width) * .5) var(--#{$prefix}popover-arrow-height); // stylelint-disable-line function-disallowed-list\\n }\\n\\n &::before {\\n top: 0;\\n border-bottom-color: var(--#{$prefix}popover-arrow-border);\\n }\\n\\n &::after {\\n top: var(--#{$prefix}popover-border-width);\\n border-bottom-color: var(--#{$prefix}popover-bg);\\n }\\n }\\n\\n // This will remove the popover-header's border just below the arrow\\n .popover-header::before {\\n position: absolute;\\n top: 0;\\n left: 50%;\\n display: block;\\n width: var(--#{$prefix}popover-arrow-width);\\n margin-left: calc(-.5 * var(--#{$prefix}popover-arrow-width)); // stylelint-disable-line function-disallowed-list\\n content: \\\"\\\";\\n border-bottom: var(--#{$prefix}popover-border-width) solid var(--#{$prefix}popover-header-bg);\\n }\\n}\\n\\n/* rtl:begin:ignore */\\n.bs-popover-start {\\n > .popover-arrow {\\n right: calc(-1 * (var(--#{$prefix}popover-arrow-height)) - var(--#{$prefix}popover-border-width)); // stylelint-disable-line function-disallowed-list\\n width: var(--#{$prefix}popover-arrow-height);\\n height: var(--#{$prefix}popover-arrow-width);\\n\\n &::before,\\n &::after {\\n border-width: calc(var(--#{$prefix}popover-arrow-width) * .5) 0 calc(var(--#{$prefix}popover-arrow-width) * .5) var(--#{$prefix}popover-arrow-height); // stylelint-disable-line function-disallowed-list\\n }\\n\\n &::before {\\n right: 0;\\n border-left-color: var(--#{$prefix}popover-arrow-border);\\n }\\n\\n &::after {\\n right: var(--#{$prefix}popover-border-width);\\n border-left-color: var(--#{$prefix}popover-bg);\\n }\\n }\\n}\\n\\n/* rtl:end:ignore */\\n\\n.bs-popover-auto {\\n &[data-popper-placement^=\\\"top\\\"] {\\n @extend .bs-popover-top;\\n }\\n &[data-popper-placement^=\\\"right\\\"] {\\n @extend .bs-popover-end;\\n }\\n &[data-popper-placement^=\\\"bottom\\\"] {\\n @extend .bs-popover-bottom;\\n }\\n &[data-popper-placement^=\\\"left\\\"] {\\n @extend .bs-popover-start;\\n }\\n}\\n\\n// Offset the popover to account for the popover arrow\\n.popover-header {\\n padding: var(--#{$prefix}popover-header-padding-y) var(--#{$prefix}popover-header-padding-x);\\n margin-bottom: 0; // Reset the default from Reboot\\n @include font-size(var(--#{$prefix}popover-header-font-size));\\n color: var(--#{$prefix}popover-header-color);\\n background-color: var(--#{$prefix}popover-header-bg);\\n border-bottom: var(--#{$prefix}popover-border-width) solid var(--#{$prefix}popover-border-color);\\n @include border-top-radius(var(--#{$prefix}popover-inner-border-radius));\\n\\n &:empty {\\n display: none;\\n }\\n}\\n\\n.popover-body {\\n padding: var(--#{$prefix}popover-body-padding-y) var(--#{$prefix}popover-body-padding-x);\\n color: var(--#{$prefix}popover-body-color);\\n}\\n\",\"// Notes on the classes:\\n//\\n// 1. .carousel.pointer-event should ideally be pan-y (to allow for users to scroll vertically)\\n// even when their scroll action started on a carousel, but for compatibility (with Firefox)\\n// we're preventing all actions instead\\n// 2. The .carousel-item-start and .carousel-item-end is used to indicate where\\n// the active slide is heading.\\n// 3. .active.carousel-item is the current slide.\\n// 4. .active.carousel-item-start and .active.carousel-item-end is the current\\n// slide in its in-transition state. Only one of these occurs at a time.\\n// 5. .carousel-item-next.carousel-item-start and .carousel-item-prev.carousel-item-end\\n// is the upcoming slide in transition.\\n\\n.carousel {\\n position: relative;\\n}\\n\\n.carousel.pointer-event {\\n touch-action: pan-y;\\n}\\n\\n.carousel-inner {\\n position: relative;\\n width: 100%;\\n overflow: hidden;\\n @include clearfix();\\n}\\n\\n.carousel-item {\\n position: relative;\\n display: none;\\n float: left;\\n width: 100%;\\n margin-right: -100%;\\n backface-visibility: hidden;\\n @include transition($carousel-transition);\\n}\\n\\n.carousel-item.active,\\n.carousel-item-next,\\n.carousel-item-prev {\\n display: block;\\n}\\n\\n.carousel-item-next:not(.carousel-item-start),\\n.active.carousel-item-end {\\n transform: translateX(100%);\\n}\\n\\n.carousel-item-prev:not(.carousel-item-end),\\n.active.carousel-item-start {\\n transform: translateX(-100%);\\n}\\n\\n\\n//\\n// Alternate transitions\\n//\\n\\n.carousel-fade {\\n .carousel-item {\\n opacity: 0;\\n transition-property: opacity;\\n transform: none;\\n }\\n\\n .carousel-item.active,\\n .carousel-item-next.carousel-item-start,\\n .carousel-item-prev.carousel-item-end {\\n z-index: 1;\\n opacity: 1;\\n }\\n\\n .active.carousel-item-start,\\n .active.carousel-item-end {\\n z-index: 0;\\n opacity: 0;\\n @include transition(opacity 0s $carousel-transition-duration);\\n }\\n}\\n\\n\\n//\\n// Left/right controls for nav\\n//\\n\\n.carousel-control-prev,\\n.carousel-control-next {\\n position: absolute;\\n top: 0;\\n bottom: 0;\\n z-index: 1;\\n // Use flex for alignment (1-3)\\n display: flex; // 1. allow flex styles\\n align-items: center; // 2. vertically center contents\\n justify-content: center; // 3. horizontally center contents\\n width: $carousel-control-width;\\n padding: 0;\\n color: $carousel-control-color;\\n text-align: center;\\n background: none;\\n border: 0;\\n opacity: $carousel-control-opacity;\\n @include transition($carousel-control-transition);\\n\\n // Hover/focus state\\n &:hover,\\n &:focus {\\n color: $carousel-control-color;\\n text-decoration: none;\\n outline: 0;\\n opacity: $carousel-control-hover-opacity;\\n }\\n}\\n.carousel-control-prev {\\n left: 0;\\n background-image: if($enable-gradients, linear-gradient(90deg, rgba($black, .25), rgba($black, .001)), null);\\n}\\n.carousel-control-next {\\n right: 0;\\n background-image: if($enable-gradients, linear-gradient(270deg, rgba($black, .25), rgba($black, .001)), null);\\n}\\n\\n// Icons for within\\n.carousel-control-prev-icon,\\n.carousel-control-next-icon {\\n display: inline-block;\\n width: $carousel-control-icon-width;\\n height: $carousel-control-icon-width;\\n background-repeat: no-repeat;\\n background-position: 50%;\\n background-size: 100% 100%;\\n}\\n\\n.carousel-control-prev-icon {\\n background-image: escape-svg($carousel-control-prev-icon-bg) #{\\\"/*rtl:\\\" + escape-svg($carousel-control-next-icon-bg) + \\\"*/\\\"};\\n}\\n.carousel-control-next-icon {\\n background-image: escape-svg($carousel-control-next-icon-bg) #{\\\"/*rtl:\\\" + escape-svg($carousel-control-prev-icon-bg) + \\\"*/\\\"};\\n}\\n\\n// Optional indicator pips/controls\\n//\\n// Add a container (such as a list) with the following class and add an item (ideally a focusable control,\\n// like a button) with data-bs-target for each slide your carousel holds.\\n\\n.carousel-indicators {\\n position: absolute;\\n right: 0;\\n bottom: 0;\\n left: 0;\\n z-index: 2;\\n display: flex;\\n justify-content: center;\\n padding: 0;\\n // Use the .carousel-control's width as margin so we don't overlay those\\n margin-right: $carousel-control-width;\\n margin-bottom: 1rem;\\n margin-left: $carousel-control-width;\\n\\n [data-bs-target] {\\n box-sizing: content-box;\\n flex: 0 1 auto;\\n width: $carousel-indicator-width;\\n height: $carousel-indicator-height;\\n padding: 0;\\n margin-right: $carousel-indicator-spacer;\\n margin-left: $carousel-indicator-spacer;\\n text-indent: -999px;\\n cursor: pointer;\\n background-color: $carousel-indicator-active-bg;\\n background-clip: padding-box;\\n border: 0;\\n // Use transparent borders to increase the hit area by 10px on top and bottom.\\n border-top: $carousel-indicator-hit-area-height solid transparent;\\n border-bottom: $carousel-indicator-hit-area-height solid transparent;\\n opacity: $carousel-indicator-opacity;\\n @include transition($carousel-indicator-transition);\\n }\\n\\n .active {\\n opacity: $carousel-indicator-active-opacity;\\n }\\n}\\n\\n\\n// Optional captions\\n//\\n//\\n\\n.carousel-caption {\\n position: absolute;\\n right: (100% - $carousel-caption-width) * .5;\\n bottom: $carousel-caption-spacer;\\n left: (100% - $carousel-caption-width) * .5;\\n padding-top: $carousel-caption-padding-y;\\n padding-bottom: $carousel-caption-padding-y;\\n color: $carousel-caption-color;\\n text-align: center;\\n}\\n\\n// Dark mode carousel\\n\\n@mixin carousel-dark() {\\n .carousel-control-prev-icon,\\n .carousel-control-next-icon {\\n filter: $carousel-dark-control-icon-filter;\\n }\\n\\n .carousel-indicators [data-bs-target] {\\n background-color: $carousel-dark-indicator-active-bg;\\n }\\n\\n .carousel-caption {\\n color: $carousel-dark-caption-color;\\n }\\n}\\n\\n.carousel-dark {\\n @include carousel-dark();\\n}\\n\\n@if $enable-dark-mode {\\n @include color-mode(dark) {\\n @if $color-mode-type == \\\"media-query\\\" {\\n .carousel {\\n @include carousel-dark();\\n }\\n } @else {\\n .carousel,\\n &.carousel {\\n @include carousel-dark();\\n }\\n }\\n }\\n}\\n\",\"// scss-docs-start clearfix\\n@mixin clearfix() {\\n &::after {\\n display: block;\\n clear: both;\\n content: \\\"\\\";\\n }\\n}\\n// scss-docs-end clearfix\\n\",\"//\\n// Rotating border\\n//\\n\\n.spinner-grow,\\n.spinner-border {\\n display: inline-block;\\n width: var(--#{$prefix}spinner-width);\\n height: var(--#{$prefix}spinner-height);\\n vertical-align: var(--#{$prefix}spinner-vertical-align);\\n // stylelint-disable-next-line property-disallowed-list\\n border-radius: 50%;\\n animation: var(--#{$prefix}spinner-animation-speed) linear infinite var(--#{$prefix}spinner-animation-name);\\n}\\n\\n// scss-docs-start spinner-border-keyframes\\n@keyframes spinner-border {\\n to { transform: rotate(360deg) #{\\\"/* rtl:ignore */\\\"}; }\\n}\\n// scss-docs-end spinner-border-keyframes\\n\\n.spinner-border {\\n // scss-docs-start spinner-border-css-vars\\n --#{$prefix}spinner-width: #{$spinner-width};\\n --#{$prefix}spinner-height: #{$spinner-height};\\n --#{$prefix}spinner-vertical-align: #{$spinner-vertical-align};\\n --#{$prefix}spinner-border-width: #{$spinner-border-width};\\n --#{$prefix}spinner-animation-speed: #{$spinner-animation-speed};\\n --#{$prefix}spinner-animation-name: spinner-border;\\n // scss-docs-end spinner-border-css-vars\\n\\n border: var(--#{$prefix}spinner-border-width) solid currentcolor;\\n border-right-color: transparent;\\n}\\n\\n.spinner-border-sm {\\n // scss-docs-start spinner-border-sm-css-vars\\n --#{$prefix}spinner-width: #{$spinner-width-sm};\\n --#{$prefix}spinner-height: #{$spinner-height-sm};\\n --#{$prefix}spinner-border-width: #{$spinner-border-width-sm};\\n // scss-docs-end spinner-border-sm-css-vars\\n}\\n\\n//\\n// Growing circle\\n//\\n\\n// scss-docs-start spinner-grow-keyframes\\n@keyframes spinner-grow {\\n 0% {\\n transform: scale(0);\\n }\\n 50% {\\n opacity: 1;\\n transform: none;\\n }\\n}\\n// scss-docs-end spinner-grow-keyframes\\n\\n.spinner-grow {\\n // scss-docs-start spinner-grow-css-vars\\n --#{$prefix}spinner-width: #{$spinner-width};\\n --#{$prefix}spinner-height: #{$spinner-height};\\n --#{$prefix}spinner-vertical-align: #{$spinner-vertical-align};\\n --#{$prefix}spinner-animation-speed: #{$spinner-animation-speed};\\n --#{$prefix}spinner-animation-name: spinner-grow;\\n // scss-docs-end spinner-grow-css-vars\\n\\n background-color: currentcolor;\\n opacity: 0;\\n}\\n\\n.spinner-grow-sm {\\n --#{$prefix}spinner-width: #{$spinner-width-sm};\\n --#{$prefix}spinner-height: #{$spinner-height-sm};\\n}\\n\\n@if $enable-reduced-motion {\\n @media (prefers-reduced-motion: reduce) {\\n .spinner-border,\\n .spinner-grow {\\n --#{$prefix}spinner-animation-speed: #{$spinner-animation-speed * 2};\\n }\\n }\\n}\\n\",\"// stylelint-disable function-disallowed-list\\n\\n%offcanvas-css-vars {\\n // scss-docs-start offcanvas-css-vars\\n --#{$prefix}offcanvas-zindex: #{$zindex-offcanvas};\\n --#{$prefix}offcanvas-width: #{$offcanvas-horizontal-width};\\n --#{$prefix}offcanvas-height: #{$offcanvas-vertical-height};\\n --#{$prefix}offcanvas-padding-x: #{$offcanvas-padding-x};\\n --#{$prefix}offcanvas-padding-y: #{$offcanvas-padding-y};\\n --#{$prefix}offcanvas-color: #{$offcanvas-color};\\n --#{$prefix}offcanvas-bg: #{$offcanvas-bg-color};\\n --#{$prefix}offcanvas-border-width: #{$offcanvas-border-width};\\n --#{$prefix}offcanvas-border-color: #{$offcanvas-border-color};\\n --#{$prefix}offcanvas-box-shadow: #{$offcanvas-box-shadow};\\n --#{$prefix}offcanvas-transition: #{transform $offcanvas-transition-duration ease-in-out};\\n --#{$prefix}offcanvas-title-line-height: #{$offcanvas-title-line-height};\\n // scss-docs-end offcanvas-css-vars\\n}\\n\\n@each $breakpoint in map-keys($grid-breakpoints) {\\n $next: breakpoint-next($breakpoint, $grid-breakpoints);\\n $infix: breakpoint-infix($next, $grid-breakpoints);\\n\\n .offcanvas#{$infix} {\\n @extend %offcanvas-css-vars;\\n }\\n}\\n\\n@each $breakpoint in map-keys($grid-breakpoints) {\\n $next: breakpoint-next($breakpoint, $grid-breakpoints);\\n $infix: breakpoint-infix($next, $grid-breakpoints);\\n\\n .offcanvas#{$infix} {\\n @include media-breakpoint-down($next) {\\n position: fixed;\\n bottom: 0;\\n z-index: var(--#{$prefix}offcanvas-zindex);\\n display: flex;\\n flex-direction: column;\\n max-width: 100%;\\n color: var(--#{$prefix}offcanvas-color);\\n visibility: hidden;\\n background-color: var(--#{$prefix}offcanvas-bg);\\n background-clip: padding-box;\\n outline: 0;\\n @include box-shadow(var(--#{$prefix}offcanvas-box-shadow));\\n @include transition(var(--#{$prefix}offcanvas-transition));\\n\\n &.offcanvas-start {\\n top: 0;\\n left: 0;\\n width: var(--#{$prefix}offcanvas-width);\\n border-right: var(--#{$prefix}offcanvas-border-width) solid var(--#{$prefix}offcanvas-border-color);\\n transform: translateX(-100%);\\n }\\n\\n &.offcanvas-end {\\n top: 0;\\n right: 0;\\n width: var(--#{$prefix}offcanvas-width);\\n border-left: var(--#{$prefix}offcanvas-border-width) solid var(--#{$prefix}offcanvas-border-color);\\n transform: translateX(100%);\\n }\\n\\n &.offcanvas-top {\\n top: 0;\\n right: 0;\\n left: 0;\\n height: var(--#{$prefix}offcanvas-height);\\n max-height: 100%;\\n border-bottom: var(--#{$prefix}offcanvas-border-width) solid var(--#{$prefix}offcanvas-border-color);\\n transform: translateY(-100%);\\n }\\n\\n &.offcanvas-bottom {\\n right: 0;\\n left: 0;\\n height: var(--#{$prefix}offcanvas-height);\\n max-height: 100%;\\n border-top: var(--#{$prefix}offcanvas-border-width) solid var(--#{$prefix}offcanvas-border-color);\\n transform: translateY(100%);\\n }\\n\\n &.showing,\\n &.show:not(.hiding) {\\n transform: none;\\n }\\n\\n &.showing,\\n &.hiding,\\n &.show {\\n visibility: visible;\\n }\\n }\\n\\n @if not ($infix == \\\"\\\") {\\n @include media-breakpoint-up($next) {\\n --#{$prefix}offcanvas-height: auto;\\n --#{$prefix}offcanvas-border-width: 0;\\n background-color: transparent !important; // stylelint-disable-line declaration-no-important\\n\\n .offcanvas-header {\\n display: none;\\n }\\n\\n .offcanvas-body {\\n display: flex;\\n flex-grow: 0;\\n padding: 0;\\n overflow-y: visible;\\n // Reset `background-color` in case `.bg-*` classes are used in offcanvas\\n background-color: transparent !important; // stylelint-disable-line declaration-no-important\\n }\\n }\\n }\\n }\\n}\\n\\n.offcanvas-backdrop {\\n @include overlay-backdrop($zindex-offcanvas-backdrop, $offcanvas-backdrop-bg, $offcanvas-backdrop-opacity);\\n}\\n\\n.offcanvas-header {\\n display: flex;\\n align-items: center;\\n padding: var(--#{$prefix}offcanvas-padding-y) var(--#{$prefix}offcanvas-padding-x);\\n\\n .btn-close {\\n padding: calc(var(--#{$prefix}offcanvas-padding-y) * .5) calc(var(--#{$prefix}offcanvas-padding-x) * .5);\\n margin: calc(-.5 * var(--#{$prefix}offcanvas-padding-y)) calc(-.5 * var(--#{$prefix}offcanvas-padding-x)) calc(-.5 * var(--#{$prefix}offcanvas-padding-y)) auto;\\n }\\n}\\n\\n.offcanvas-title {\\n margin-bottom: 0;\\n line-height: var(--#{$prefix}offcanvas-title-line-height);\\n}\\n\\n.offcanvas-body {\\n flex-grow: 1;\\n padding: var(--#{$prefix}offcanvas-padding-y) var(--#{$prefix}offcanvas-padding-x);\\n overflow-y: auto;\\n}\\n\",\".placeholder {\\n display: inline-block;\\n min-height: 1em;\\n vertical-align: middle;\\n cursor: wait;\\n background-color: currentcolor;\\n opacity: $placeholder-opacity-max;\\n\\n &.btn::before {\\n display: inline-block;\\n content: \\\"\\\";\\n }\\n}\\n\\n// Sizing\\n.placeholder-xs {\\n min-height: .6em;\\n}\\n\\n.placeholder-sm {\\n min-height: .8em;\\n}\\n\\n.placeholder-lg {\\n min-height: 1.2em;\\n}\\n\\n// Animation\\n.placeholder-glow {\\n .placeholder {\\n animation: placeholder-glow 2s ease-in-out infinite;\\n }\\n}\\n\\n@keyframes placeholder-glow {\\n 50% {\\n opacity: $placeholder-opacity-min;\\n }\\n}\\n\\n.placeholder-wave {\\n mask-image: linear-gradient(130deg, $black 55%, rgba(0, 0, 0, (1 - $placeholder-opacity-min)) 75%, $black 95%);\\n mask-size: 200% 100%;\\n animation: placeholder-wave 2s linear infinite;\\n}\\n\\n@keyframes placeholder-wave {\\n 100% {\\n mask-position: -200% 0%;\\n }\\n}\\n\",\"// All-caps `RGBA()` function used because of this Sass bug: https://github.com/sass/node-sass/issues/2251\\n@each $color, $value in $theme-colors {\\n .text-bg-#{$color} {\\n color: color-contrast($value) if($enable-important-utilities, !important, null);\\n background-color: RGBA(var(--#{$prefix}#{$color}-rgb), var(--#{$prefix}bg-opacity, 1)) if($enable-important-utilities, !important, null);\\n }\\n}\\n\",\"// All-caps `RGBA()` function used because of this Sass bug: https://github.com/sass/node-sass/issues/2251\\n@each $color, $value in $theme-colors {\\n .link-#{$color} {\\n color: RGBA(var(--#{$prefix}#{$color}-rgb), var(--#{$prefix}link-opacity, 1)) if($enable-important-utilities, !important, null);\\n text-decoration-color: RGBA(var(--#{$prefix}#{$color}-rgb), var(--#{$prefix}link-underline-opacity, 1)) if($enable-important-utilities, !important, null);\\n\\n @if $link-shade-percentage != 0 {\\n &:hover,\\n &:focus {\\n $hover-color: if(color-contrast($value) == $color-contrast-light, shade-color($value, $link-shade-percentage), tint-color($value, $link-shade-percentage));\\n color: RGBA(#{to-rgb($hover-color)}, var(--#{$prefix}link-opacity, 1)) if($enable-important-utilities, !important, null);\\n text-decoration-color: RGBA(to-rgb($hover-color), var(--#{$prefix}link-underline-opacity, 1)) if($enable-important-utilities, !important, null);\\n }\\n }\\n }\\n}\\n\\n// One-off special link helper as a bridge until v6\\n.link-body-emphasis {\\n color: RGBA(var(--#{$prefix}emphasis-color-rgb), var(--#{$prefix}link-opacity, 1)) if($enable-important-utilities, !important, null);\\n text-decoration-color: RGBA(var(--#{$prefix}emphasis-color-rgb), var(--#{$prefix}link-underline-opacity, 1)) if($enable-important-utilities, !important, null);\\n\\n @if $link-shade-percentage != 0 {\\n &:hover,\\n &:focus {\\n color: RGBA(var(--#{$prefix}emphasis-color-rgb), var(--#{$prefix}link-opacity, .75)) if($enable-important-utilities, !important, null);\\n text-decoration-color: RGBA(var(--#{$prefix}emphasis-color-rgb), var(--#{$prefix}link-underline-opacity, .75)) if($enable-important-utilities, !important, null);\\n }\\n }\\n}\\n\",\".focus-ring:focus {\\n outline: 0;\\n // By default, there is no `--bs-focus-ring-x`, `--bs-focus-ring-y`, or `--bs-focus-ring-blur`, but we provide CSS variables with fallbacks to initial `0` values\\n box-shadow: var(--#{$prefix}focus-ring-x, 0) var(--#{$prefix}focus-ring-y, 0) var(--#{$prefix}focus-ring-blur, 0) var(--#{$prefix}focus-ring-width) var(--#{$prefix}focus-ring-color);\\n}\\n\",\".icon-link {\\n display: inline-flex;\\n gap: $icon-link-gap;\\n align-items: center;\\n text-decoration-color: rgba(var(--#{$prefix}link-color-rgb), var(--#{$prefix}link-opacity, .5));\\n text-underline-offset: $icon-link-underline-offset;\\n backface-visibility: hidden;\\n\\n > .bi {\\n flex-shrink: 0;\\n width: $icon-link-icon-size;\\n height: $icon-link-icon-size;\\n fill: currentcolor;\\n @include transition($icon-link-icon-transition);\\n }\\n}\\n\\n.icon-link-hover {\\n &:hover,\\n &:focus-visible {\\n > .bi {\\n transform: var(--#{$prefix}icon-link-transform, $icon-link-icon-transform);\\n }\\n }\\n}\\n\",\"// Credit: Nicolas Gallagher and SUIT CSS.\\n\\n.ratio {\\n position: relative;\\n width: 100%;\\n\\n &::before {\\n display: block;\\n padding-top: var(--#{$prefix}aspect-ratio);\\n content: \\\"\\\";\\n }\\n\\n > * {\\n position: absolute;\\n top: 0;\\n left: 0;\\n width: 100%;\\n height: 100%;\\n }\\n}\\n\\n@each $key, $ratio in $aspect-ratios {\\n .ratio-#{$key} {\\n --#{$prefix}aspect-ratio: #{$ratio};\\n }\\n}\\n\",\"// Shorthand\\n\\n.fixed-top {\\n position: fixed;\\n top: 0;\\n right: 0;\\n left: 0;\\n z-index: $zindex-fixed;\\n}\\n\\n.fixed-bottom {\\n position: fixed;\\n right: 0;\\n bottom: 0;\\n left: 0;\\n z-index: $zindex-fixed;\\n}\\n\\n// Responsive sticky top and bottom\\n@each $breakpoint in map-keys($grid-breakpoints) {\\n @include media-breakpoint-up($breakpoint) {\\n $infix: breakpoint-infix($breakpoint, $grid-breakpoints);\\n\\n .sticky#{$infix}-top {\\n position: sticky;\\n top: 0;\\n z-index: $zindex-sticky;\\n }\\n\\n .sticky#{$infix}-bottom {\\n position: sticky;\\n bottom: 0;\\n z-index: $zindex-sticky;\\n }\\n }\\n}\\n\",\"// scss-docs-start stacks\\n.hstack {\\n display: flex;\\n flex-direction: row;\\n align-items: center;\\n align-self: stretch;\\n}\\n\\n.vstack {\\n display: flex;\\n flex: 1 1 auto;\\n flex-direction: column;\\n align-self: stretch;\\n}\\n// scss-docs-end stacks\\n\",\"//\\n// Visually hidden\\n//\\n\\n.visually-hidden,\\n.visually-hidden-focusable:not(:focus):not(:focus-within) {\\n @include visually-hidden();\\n}\\n\",\"// stylelint-disable declaration-no-important\\n\\n// Hide content visually while keeping it accessible to assistive technologies\\n//\\n// See: https://www.a11yproject.com/posts/2013-01-11-how-to-hide-content/\\n// See: https://kittygiraudel.com/2016/10/13/css-hide-and-seek/\\n\\n@mixin visually-hidden() {\\n width: 1px !important;\\n height: 1px !important;\\n padding: 0 !important;\\n margin: -1px !important; // Fix for https://github.com/twbs/bootstrap/issues/25686\\n overflow: hidden !important;\\n clip: rect(0, 0, 0, 0) !important;\\n white-space: nowrap !important;\\n border: 0 !important;\\n\\n // Fix for positioned table caption that could become anonymous cells\\n &:not(caption) {\\n position: absolute !important;\\n }\\n}\\n\\n// Use to only display content when it's focused, or one of its child elements is focused\\n// (i.e. when focus is within the element/container that the class was applied to)\\n//\\n// Useful for \\\"Skip to main content\\\" links; see https://www.w3.org/TR/2013/NOTE-WCAG20-TECHS-20130905/G1\\n\\n@mixin visually-hidden-focusable() {\\n &:not(:focus):not(:focus-within) {\\n @include visually-hidden();\\n }\\n}\\n\",\"//\\n// Stretched link\\n//\\n\\n.stretched-link {\\n &::#{$stretched-link-pseudo-element} {\\n position: absolute;\\n top: 0;\\n right: 0;\\n bottom: 0;\\n left: 0;\\n z-index: $stretched-link-z-index;\\n content: \\\"\\\";\\n }\\n}\\n\",\"//\\n// Text truncation\\n//\\n\\n.text-truncate {\\n @include text-truncate();\\n}\\n\",\"// Text truncate\\n// Requires inline-block or block for proper styling\\n\\n@mixin text-truncate() {\\n overflow: hidden;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n}\\n\",\".vr {\\n display: inline-block;\\n align-self: stretch;\\n width: $vr-border-width;\\n min-height: 1em;\\n background-color: currentcolor;\\n opacity: $hr-opacity;\\n}\\n\",\"// Utility generator\\n// Used to generate utilities & print utilities\\n@mixin generate-utility($utility, $infix: \\\"\\\", $is-rfs-media-query: false) {\\n $values: map-get($utility, values);\\n\\n // If the values are a list or string, convert it into a map\\n @if type-of($values) == \\\"string\\\" or type-of(nth($values, 1)) != \\\"list\\\" {\\n $values: zip($values, $values);\\n }\\n\\n @each $key, $value in $values {\\n $properties: map-get($utility, property);\\n\\n // Multiple properties are possible, for example with vertical or horizontal margins or paddings\\n @if type-of($properties) == \\\"string\\\" {\\n $properties: append((), $properties);\\n }\\n\\n // Use custom class if present\\n $property-class: if(map-has-key($utility, class), map-get($utility, class), nth($properties, 1));\\n $property-class: if($property-class == null, \\\"\\\", $property-class);\\n\\n // Use custom CSS variable name if present, otherwise default to `class`\\n $css-variable-name: if(map-has-key($utility, css-variable-name), map-get($utility, css-variable-name), map-get($utility, class));\\n\\n // State params to generate pseudo-classes\\n $state: if(map-has-key($utility, state), map-get($utility, state), ());\\n\\n $infix: if($property-class == \\\"\\\" and str-slice($infix, 1, 1) == \\\"-\\\", str-slice($infix, 2), $infix);\\n\\n // Don't prefix if value key is null (e.g. with shadow class)\\n $property-class-modifier: if($key, if($property-class == \\\"\\\" and $infix == \\\"\\\", \\\"\\\", \\\"-\\\") + $key, \\\"\\\");\\n\\n @if map-get($utility, rfs) {\\n // Inside the media query\\n @if $is-rfs-media-query {\\n $val: rfs-value($value);\\n\\n // Do not render anything if fluid and non fluid values are the same\\n $value: if($val == rfs-fluid-value($value), null, $val);\\n }\\n @else {\\n $value: rfs-fluid-value($value);\\n }\\n }\\n\\n $is-css-var: map-get($utility, css-var);\\n $is-local-vars: map-get($utility, local-vars);\\n $is-rtl: map-get($utility, rtl);\\n\\n @if $value != null {\\n @if $is-rtl == false {\\n /* rtl:begin:remove */\\n }\\n\\n @if $is-css-var {\\n .#{$property-class + $infix + $property-class-modifier} {\\n --#{$prefix}#{$css-variable-name}: #{$value};\\n }\\n\\n @each $pseudo in $state {\\n .#{$property-class + $infix + $property-class-modifier}-#{$pseudo}:#{$pseudo} {\\n --#{$prefix}#{$css-variable-name}: #{$value};\\n }\\n }\\n } @else {\\n .#{$property-class + $infix + $property-class-modifier} {\\n @each $property in $properties {\\n @if $is-local-vars {\\n @each $local-var, $variable in $is-local-vars {\\n --#{$prefix}#{$local-var}: #{$variable};\\n }\\n }\\n #{$property}: $value if($enable-important-utilities, !important, null);\\n }\\n }\\n\\n @each $pseudo in $state {\\n .#{$property-class + $infix + $property-class-modifier}-#{$pseudo}:#{$pseudo} {\\n @each $property in $properties {\\n @if $is-local-vars {\\n @each $local-var, $variable in $is-local-vars {\\n --#{$prefix}#{$local-var}: #{$variable};\\n }\\n }\\n #{$property}: $value if($enable-important-utilities, !important, null);\\n }\\n }\\n }\\n }\\n\\n @if $is-rtl == false {\\n /* rtl:end:remove */\\n }\\n }\\n }\\n}\\n\",\"// Loop over each breakpoint\\n@each $breakpoint in map-keys($grid-breakpoints) {\\n\\n // Generate media query if needed\\n @include media-breakpoint-up($breakpoint) {\\n $infix: breakpoint-infix($breakpoint, $grid-breakpoints);\\n\\n // Loop over each utility property\\n @each $key, $utility in $utilities {\\n // The utility can be disabled with `false`, thus check if the utility is a map first\\n // Only proceed if responsive media queries are enabled or if it's the base media query\\n @if type-of($utility) == \\\"map\\\" and (map-get($utility, responsive) or $infix == \\\"\\\") {\\n @include generate-utility($utility, $infix);\\n }\\n }\\n }\\n}\\n\\n// RFS rescaling\\n@media (min-width: $rfs-mq-value) {\\n @each $breakpoint in map-keys($grid-breakpoints) {\\n $infix: breakpoint-infix($breakpoint, $grid-breakpoints);\\n\\n @if (map-get($grid-breakpoints, $breakpoint) < $rfs-breakpoint) {\\n // Loop over each utility property\\n @each $key, $utility in $utilities {\\n // The utility can be disabled with `false`, thus check if the utility is a map first\\n // Only proceed if responsive media queries are enabled or if it's the base media query\\n @if type-of($utility) == \\\"map\\\" and map-get($utility, rfs) and (map-get($utility, responsive) or $infix == \\\"\\\") {\\n @include generate-utility($utility, $infix, true);\\n }\\n }\\n }\\n }\\n}\\n\\n\\n// Print utilities\\n@media print {\\n @each $key, $utility in $utilities {\\n // The utility can be disabled with `false`, thus check if the utility is a map first\\n // Then check if the utility needs print styles\\n @if type-of($utility) == \\\"map\\\" and map-get($utility, print) == true {\\n @include generate-utility($utility, \\\"-print\\\");\\n }\\n }\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","var root = require('./_root'),\n stubFalse = require('./stubFalse');\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? root.Buffer : undefined;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined;\n\n/**\n * Checks if `value` is a buffer.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.\n * @example\n *\n * _.isBuffer(new Buffer(2));\n * // => true\n *\n * _.isBuffer(new Uint8Array(2));\n * // => false\n */\nvar isBuffer = nativeIsBuffer || stubFalse;\n\nmodule.exports = isBuffer;\n","\"use strict\";\n\n/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n*/\nmodule.exports = function (cssWithMappingToString) {\n var list = [];\n\n // return the list of modules as css string\n list.toString = function toString() {\n return this.map(function (item) {\n var content = \"\";\n var needLayer = typeof item[5] !== \"undefined\";\n if (item[4]) {\n content += \"@supports (\".concat(item[4], \") {\");\n }\n if (item[2]) {\n content += \"@media \".concat(item[2], \" {\");\n }\n if (needLayer) {\n content += \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\");\n }\n content += cssWithMappingToString(item);\n if (needLayer) {\n content += \"}\";\n }\n if (item[2]) {\n content += \"}\";\n }\n if (item[4]) {\n content += \"}\";\n }\n return content;\n }).join(\"\");\n };\n\n // import a list of modules into the list\n list.i = function i(modules, media, dedupe, supports, layer) {\n if (typeof modules === \"string\") {\n modules = [[null, modules, undefined]];\n }\n var alreadyImportedModules = {};\n if (dedupe) {\n for (var k = 0; k < this.length; k++) {\n var id = this[k][0];\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n }\n for (var _k = 0; _k < modules.length; _k++) {\n var item = [].concat(modules[_k]);\n if (dedupe && alreadyImportedModules[item[0]]) {\n continue;\n }\n if (typeof layer !== \"undefined\") {\n if (typeof item[5] === \"undefined\") {\n item[5] = layer;\n } else {\n item[1] = \"@layer\".concat(item[5].length > 0 ? \" \".concat(item[5]) : \"\", \" {\").concat(item[1], \"}\");\n item[5] = layer;\n }\n }\n if (media) {\n if (!item[2]) {\n item[2] = media;\n } else {\n item[1] = \"@media \".concat(item[2], \" {\").concat(item[1], \"}\");\n item[2] = media;\n }\n }\n if (supports) {\n if (!item[4]) {\n item[4] = \"\".concat(supports);\n } else {\n item[1] = \"@supports (\".concat(item[4], \") {\").concat(item[1], \"}\");\n item[4] = supports;\n }\n }\n list.push(item);\n }\n };\n return list;\n};","var coreJsData = require('./_coreJsData');\n\n/** Used to detect methods masquerading as native. */\nvar maskSrcKey = (function() {\n var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');\n return uid ? ('Symbol(src)_1.' + uid) : '';\n}());\n\n/**\n * Checks if `func` has its source masked.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` is masked, else `false`.\n */\nfunction isMasked(func) {\n return !!maskSrcKey && (maskSrcKey in func);\n}\n\nmodule.exports = isMasked;\n","\"use strict\";class t{constructor(){this.listeners={}}on(t,e,i){if(this.listeners[t]||(this.listeners[t]=new Set),this.listeners[t].add(e),null==i?void 0:i.once){const i=()=>{this.un(t,i),this.un(t,e)};return this.on(t,i),i}return()=>this.un(t,e)}un(t,e){var i;null===(i=this.listeners[t])||void 0===i||i.delete(e)}once(t,e){return this.on(t,e,{once:!0})}unAll(){this.listeners={}}emit(t,...e){this.listeners[t]&&this.listeners[t].forEach((t=>t(...e)))}}class e extends t{constructor(t){super(),this.subscriptions=[],this.options=t}onInit(){}_init(t){this.wavesurfer=t,this.onInit()}destroy(){this.emit(\"destroy\"),this.subscriptions.forEach((t=>t()))}}function i(t,e){const n=e.xmlns?document.createElementNS(e.xmlns,t):document.createElement(t);for(const[t,s]of Object.entries(e))if(\"children\"===t)for(const[t,s]of Object.entries(e))\"string\"==typeof s?n.appendChild(document.createTextNode(s)):n.appendChild(i(t,s));else\"style\"===t?Object.assign(n.style,s):\"textContent\"===t?n.textContent=s:n.setAttribute(t,s.toString());return n}function n(t,e,n){return i(t,e||{})}const s={height:20,timeOffset:0,formatTimeCallback:t=>{if(t/60>1){return`${Math.floor(t/60)}:${`${(t=Math.round(t%60))<10?\"0\":\"\"}${t}`}`}return`${Math.round(1e3*t)/1e3}`}};class r extends e{constructor(t){super(t||{}),this.options=Object.assign({},s,t),this.timelineWrapper=this.initTimelineWrapper()}static create(t){return new r(t)}onInit(){var t;if(!this.wavesurfer)throw Error(\"WaveSurfer is not initialized\");let e=this.wavesurfer.getWrapper();if(this.options.container instanceof HTMLElement)e=this.options.container;else if(\"string\"==typeof this.options.container){const t=document.querySelector(this.options.container);if(!t)throw Error(`No Timeline container found matching ${this.options.container}`);e=t}this.options.insertPosition?(e.firstElementChild||e).insertAdjacentElement(this.options.insertPosition,this.timelineWrapper):e.appendChild(this.timelineWrapper),this.subscriptions.push(this.wavesurfer.on(\"redraw\",(()=>this.initTimeline()))),((null===(t=this.wavesurfer)||void 0===t?void 0:t.getDuration())||this.options.duration)&&this.initTimeline()}destroy(){this.timelineWrapper.remove(),super.destroy()}initTimelineWrapper(){return n(\"div\",{part:\"timeline-wrapper\",style:{pointerEvents:\"none\"}})}defaultTimeInterval(t){return t>=25?1:5*t>=25?5:15*t>=25?15:60*Math.ceil(.5/t)}defaultPrimaryLabelInterval(t){return t>=25?10:5*t>=25?6:4}defaultSecondaryLabelInterval(t){return t>=25?5:2}virtualAppend(t,e,i){let n=!1;const s=(s,r)=>{if(!this.wavesurfer)return;const o=i.clientWidth,l=t>s&&t+o<r;l!==n&&(n=l,l?e.appendChild(i):i.remove())};if(!this.wavesurfer)return;const r=this.wavesurfer.getScroll(),o=r+this.wavesurfer.getWidth();s(r,o),this.subscriptions.push(this.wavesurfer.on(\"scroll\",((t,e,i,n)=>{s(i,n)})))}initTimeline(){var t,e,i,s,r,o,l,a;const h=null!==(i=null!==(e=null===(t=this.wavesurfer)||void 0===t?void 0:t.getDuration())&&void 0!==e?e:this.options.duration)&&void 0!==i?i:0,p=((null===(s=this.wavesurfer)||void 0===s?void 0:s.getWrapper().scrollWidth)||this.timelineWrapper.scrollWidth)/h,u=null!==(r=this.options.timeInterval)&&void 0!==r?r:this.defaultTimeInterval(p),c=null!==(o=this.options.primaryLabelInterval)&&void 0!==o?o:this.defaultPrimaryLabelInterval(p),d=this.options.primaryLabelSpacing,f=null!==(l=this.options.secondaryLabelInterval)&&void 0!==l?l:this.defaultSecondaryLabelInterval(p),m=this.options.secondaryLabelSpacing,v=\"beforebegin\"===this.options.insertPosition,y=n(\"div\",{style:Object.assign({height:`${this.options.height}px`,overflow:\"hidden\",fontSize:this.options.height/2+\"px\",whiteSpace:\"nowrap\"},v?{position:\"absolute\",top:\"0\",left:\"0\",right:\"0\",zIndex:\"2\"}:{position:\"relative\"})});y.setAttribute(\"part\",\"timeline\"),\"string\"==typeof this.options.style?y.setAttribute(\"style\",y.getAttribute(\"style\")+this.options.style):\"object\"==typeof this.options.style&&Object.assign(y.style,this.options.style);const b=n(\"div\",{style:{width:\"0\",height:\"50%\",display:\"flex\",flexDirection:\"column\",justifyContent:v?\"flex-start\":\"flex-end\",top:v?\"0\":\"auto\",bottom:v?\"auto\":\"0\",overflow:\"visible\",borderLeft:\"1px solid currentColor\",opacity:`${null!==(a=this.options.secondaryLabelOpacity)&&void 0!==a?a:.25}`,position:\"absolute\",zIndex:\"1\"}});for(let t=0,e=0;t<h;t+=u,e++){const i=b.cloneNode(),n=Math.round(100*t)%Math.round(100*c)==0||d&&e%d==0,s=Math.round(100*t)%Math.round(100*f)==0||m&&e%m==0;(n||s)&&(i.style.height=\"100%\",i.style.textIndent=\"3px\",i.textContent=this.options.formatTimeCallback(t),n&&(i.style.opacity=\"1\"));const r=n?\"primary\":s?\"secondary\":\"tick\";i.setAttribute(\"part\",`timeline-notch timeline-notch-${r}`);const o=Math.round(100*(t+this.options.timeOffset))/100*p;i.style.left=`${o}px`,this.virtualAppend(o,y,i)}this.timelineWrapper.innerHTML=\"\",this.timelineWrapper.appendChild(y),this.emit(\"ready\")}}module.exports=r;\n","var assocIndexOf = require('./_assocIndexOf');\n\n/**\n * Sets the list cache `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf ListCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the list cache instance.\n */\nfunction listCacheSet(key, value) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n ++this.size;\n data.push([key, value]);\n } else {\n data[index][1] = value;\n }\n return this;\n}\n\nmodule.exports = listCacheSet;\n","var baseGetTag = require('./_baseGetTag'),\n getPrototype = require('./_getPrototype'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar objectTag = '[object Object]';\n\n/** Used for built-in method references. */\nvar funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Used to infer the `Object` constructor. */\nvar objectCtorString = funcToString.call(Object);\n\n/**\n * Checks if `value` is a plain object, that is, an object created by the\n * `Object` constructor or one with a `[[Prototype]]` of `null`.\n *\n * @static\n * @memberOf _\n * @since 0.8.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a plain object, else `false`.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * }\n *\n * _.isPlainObject(new Foo);\n * // => false\n *\n * _.isPlainObject([1, 2, 3]);\n * // => false\n *\n * _.isPlainObject({ 'x': 0, 'y': 0 });\n * // => true\n *\n * _.isPlainObject(Object.create(null));\n * // => true\n */\nfunction isPlainObject(value) {\n if (!isObjectLike(value) || baseGetTag(value) != objectTag) {\n return false;\n }\n var proto = getPrototype(value);\n if (proto === null) {\n return true;\n }\n var Ctor = hasOwnProperty.call(proto, 'constructor') && proto.constructor;\n return typeof Ctor == 'function' && Ctor instanceof Ctor &&\n funcToString.call(Ctor) == objectCtorString;\n}\n\nmodule.exports = isPlainObject;\n","\n import API from \"!../node_modules/style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../node_modules/style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../node_modules/style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../node_modules/style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../node_modules/style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../node_modules/style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../node_modules/css-loader/dist/cjs.js!./widget.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../node_modules/css-loader/dist/cjs.js!./widget.css\";\n export default content && content.locals ? content.locals : undefined;\n","/** Used for built-in method references. */\nvar funcProto = Function.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/**\n * Converts `func` to its source code.\n *\n * @private\n * @param {Function} func The function to convert.\n * @returns {string} Returns the source code.\n */\nfunction toSource(func) {\n if (func != null) {\n try {\n return funcToString.call(func);\n } catch (e) {}\n try {\n return (func + '');\n } catch (e) {}\n }\n return '';\n}\n\nmodule.exports = toSource;\n","/**\n * Checks if a stack value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Stack\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction stackHas(key) {\n return this.__data__.has(key);\n}\n\nmodule.exports = stackHas;\n","var createBaseFor = require('./_createBaseFor');\n\n/**\n * The base implementation of `baseForOwn` which iterates over `object`\n * properties returned by `keysFunc` and invokes `iteratee` for each property.\n * Iteratee functions may exit iteration early by explicitly returning `false`.\n *\n * @private\n * @param {Object} object The object to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @returns {Object} Returns `object`.\n */\nvar baseFor = createBaseFor();\n\nmodule.exports = baseFor;\n","'use strict';\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\nmodule.exports = {\n\n /* Allowed flush values; see deflate() and inflate() below for details */\n Z_NO_FLUSH: 0,\n Z_PARTIAL_FLUSH: 1,\n Z_SYNC_FLUSH: 2,\n Z_FULL_FLUSH: 3,\n Z_FINISH: 4,\n Z_BLOCK: 5,\n Z_TREES: 6,\n\n /* Return codes for the compression/decompression functions. Negative values\n * are errors, positive values are used for special but normal events.\n */\n Z_OK: 0,\n Z_STREAM_END: 1,\n Z_NEED_DICT: 2,\n Z_ERRNO: -1,\n Z_STREAM_ERROR: -2,\n Z_DATA_ERROR: -3,\n Z_MEM_ERROR: -4,\n Z_BUF_ERROR: -5,\n //Z_VERSION_ERROR: -6,\n\n /* compression levels */\n Z_NO_COMPRESSION: 0,\n Z_BEST_SPEED: 1,\n Z_BEST_COMPRESSION: 9,\n Z_DEFAULT_COMPRESSION: -1,\n\n\n Z_FILTERED: 1,\n Z_HUFFMAN_ONLY: 2,\n Z_RLE: 3,\n Z_FIXED: 4,\n Z_DEFAULT_STRATEGY: 0,\n\n /* Possible values of the data_type field (though see inflate()) */\n Z_BINARY: 0,\n Z_TEXT: 1,\n //Z_ASCII: 1, // = Z_TEXT (deprecated)\n Z_UNKNOWN: 2,\n\n /* The deflate compression method */\n Z_DEFLATED: 8\n //Z_NULL: null // Use -1 or null inline, depending on var type\n};\n","/**\n * This method returns the first argument it receives.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Util\n * @param {*} value Any value.\n * @returns {*} Returns `value`.\n * @example\n *\n * var object = { 'a': 1 };\n *\n * console.log(_.identity(object) === object);\n * // => true\n */\nfunction identity(value) {\n return value;\n}\n\nmodule.exports = identity;\n","var isArrayLike = require('./isArrayLike'),\n isObjectLike = require('./isObjectLike');\n\n/**\n * This method is like `_.isArrayLike` except that it also checks if `value`\n * is an object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array-like object,\n * else `false`.\n * @example\n *\n * _.isArrayLikeObject([1, 2, 3]);\n * // => true\n *\n * _.isArrayLikeObject(document.body.children);\n * // => true\n *\n * _.isArrayLikeObject('abc');\n * // => false\n *\n * _.isArrayLikeObject(_.noop);\n * // => false\n */\nfunction isArrayLikeObject(value) {\n return isObjectLike(value) && isArrayLike(value);\n}\n\nmodule.exports = isArrayLikeObject;\n","var Uint8Array = require('./_Uint8Array');\n\n/**\n * Creates a clone of `arrayBuffer`.\n *\n * @private\n * @param {ArrayBuffer} arrayBuffer The array buffer to clone.\n * @returns {ArrayBuffer} Returns the cloned array buffer.\n */\nfunction cloneArrayBuffer(arrayBuffer) {\n var result = new arrayBuffer.constructor(arrayBuffer.byteLength);\n new Uint8Array(result).set(new Uint8Array(arrayBuffer));\n return result;\n}\n\nmodule.exports = cloneArrayBuffer;\n","/**\n * Checks if `value` is classified as an `Array` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array, else `false`.\n * @example\n *\n * _.isArray([1, 2, 3]);\n * // => true\n *\n * _.isArray(document.body.children);\n * // => false\n *\n * _.isArray('abc');\n * // => false\n *\n * _.isArray(_.noop);\n * // => false\n */\nvar isArray = Array.isArray;\n\nmodule.exports = isArray;\n","module.exports = __WEBPACK_EXTERNAL_MODULE__2055__;","/**\n * This method returns `false`.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {boolean} Returns `false`.\n * @example\n *\n * _.times(2, _.stubFalse);\n * // => [false, false]\n */\nfunction stubFalse() {\n return false;\n}\n\nmodule.exports = stubFalse;\n","var isFunction = require('./isFunction'),\n isMasked = require('./_isMasked'),\n isObject = require('./isObject'),\n toSource = require('./_toSource');\n\n/**\n * Used to match `RegExp`\n * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).\n */\nvar reRegExpChar = /[\\\\^$.*+?()[\\]{}|]/g;\n\n/** Used to detect host constructors (Safari). */\nvar reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n/** Used for built-in method references. */\nvar funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Used to detect if a method is native. */\nvar reIsNative = RegExp('^' +\n funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\\\$&')\n .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\n);\n\n/**\n * The base implementation of `_.isNative` without bad shim checks.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n * else `false`.\n */\nfunction baseIsNative(value) {\n if (!isObject(value) || isMasked(value)) {\n return false;\n }\n var pattern = isFunction(value) ? reIsNative : reIsHostCtor;\n return pattern.test(toSource(value));\n}\n\nmodule.exports = baseIsNative;\n","'use strict';\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\nconst adler32 = require('./adler32');\nconst crc32 = require('./crc32');\nconst inflate_fast = require('./inffast');\nconst inflate_table = require('./inftrees');\n\nconst CODES = 0;\nconst LENS = 1;\nconst DISTS = 2;\n\n/* Public constants ==========================================================*/\n/* ===========================================================================*/\n\nconst {\n Z_FINISH, Z_BLOCK, Z_TREES,\n Z_OK, Z_STREAM_END, Z_NEED_DICT, Z_STREAM_ERROR, Z_DATA_ERROR, Z_MEM_ERROR, Z_BUF_ERROR,\n Z_DEFLATED\n} = require('./constants');\n\n\n/* STATES ====================================================================*/\n/* ===========================================================================*/\n\n\nconst HEAD = 16180; /* i: waiting for magic header */\nconst FLAGS = 16181; /* i: waiting for method and flags (gzip) */\nconst TIME = 16182; /* i: waiting for modification time (gzip) */\nconst OS = 16183; /* i: waiting for extra flags and operating system (gzip) */\nconst EXLEN = 16184; /* i: waiting for extra length (gzip) */\nconst EXTRA = 16185; /* i: waiting for extra bytes (gzip) */\nconst NAME = 16186; /* i: waiting for end of file name (gzip) */\nconst COMMENT = 16187; /* i: waiting for end of comment (gzip) */\nconst HCRC = 16188; /* i: waiting for header crc (gzip) */\nconst DICTID = 16189; /* i: waiting for dictionary check value */\nconst DICT = 16190; /* waiting for inflateSetDictionary() call */\nconst TYPE = 16191; /* i: waiting for type bits, including last-flag bit */\nconst TYPEDO = 16192; /* i: same, but skip check to exit inflate on new block */\nconst STORED = 16193; /* i: waiting for stored size (length and complement) */\nconst COPY_ = 16194; /* i/o: same as COPY below, but only first time in */\nconst COPY = 16195; /* i/o: waiting for input or output to copy stored block */\nconst TABLE = 16196; /* i: waiting for dynamic block table lengths */\nconst LENLENS = 16197; /* i: waiting for code length code lengths */\nconst CODELENS = 16198; /* i: waiting for length/lit and distance code lengths */\nconst LEN_ = 16199; /* i: same as LEN below, but only first time in */\nconst LEN = 16200; /* i: waiting for length/lit/eob code */\nconst LENEXT = 16201; /* i: waiting for length extra bits */\nconst DIST = 16202; /* i: waiting for distance code */\nconst DISTEXT = 16203; /* i: waiting for distance extra bits */\nconst MATCH = 16204; /* o: waiting for output space to copy string */\nconst LIT = 16205; /* o: waiting for output space to write literal */\nconst CHECK = 16206; /* i: waiting for 32-bit check value */\nconst LENGTH = 16207; /* i: waiting for 32-bit length (gzip) */\nconst DONE = 16208; /* finished check, done -- remain here until reset */\nconst BAD = 16209; /* got a data error -- remain here until reset */\nconst MEM = 16210; /* got an inflate() memory error -- remain here until reset */\nconst SYNC = 16211; /* looking for synchronization bytes to restart inflate() */\n\n/* ===========================================================================*/\n\n\n\nconst ENOUGH_LENS = 852;\nconst ENOUGH_DISTS = 592;\n//const ENOUGH = (ENOUGH_LENS+ENOUGH_DISTS);\n\nconst MAX_WBITS = 15;\n/* 32K LZ77 window */\nconst DEF_WBITS = MAX_WBITS;\n\n\nconst zswap32 = (q) => {\n\n return (((q >>> 24) & 0xff) +\n ((q >>> 8) & 0xff00) +\n ((q & 0xff00) << 8) +\n ((q & 0xff) << 24));\n};\n\n\nfunction InflateState() {\n this.strm = null; /* pointer back to this zlib stream */\n this.mode = 0; /* current inflate mode */\n this.last = false; /* true if processing last block */\n this.wrap = 0; /* bit 0 true for zlib, bit 1 true for gzip,\n bit 2 true to validate check value */\n this.havedict = false; /* true if dictionary provided */\n this.flags = 0; /* gzip header method and flags (0 if zlib), or\n -1 if raw or no header yet */\n this.dmax = 0; /* zlib header max distance (INFLATE_STRICT) */\n this.check = 0; /* protected copy of check value */\n this.total = 0; /* protected copy of output count */\n // TODO: may be {}\n this.head = null; /* where to save gzip header information */\n\n /* sliding window */\n this.wbits = 0; /* log base 2 of requested window size */\n this.wsize = 0; /* window size or zero if not using window */\n this.whave = 0; /* valid bytes in the window */\n this.wnext = 0; /* window write index */\n this.window = null; /* allocated sliding window, if needed */\n\n /* bit accumulator */\n this.hold = 0; /* input bit accumulator */\n this.bits = 0; /* number of bits in \"in\" */\n\n /* for string and stored block copying */\n this.length = 0; /* literal or length of data to copy */\n this.offset = 0; /* distance back to copy string from */\n\n /* for table and code decoding */\n this.extra = 0; /* extra bits needed */\n\n /* fixed and dynamic code tables */\n this.lencode = null; /* starting table for length/literal codes */\n this.distcode = null; /* starting table for distance codes */\n this.lenbits = 0; /* index bits for lencode */\n this.distbits = 0; /* index bits for distcode */\n\n /* dynamic table building */\n this.ncode = 0; /* number of code length code lengths */\n this.nlen = 0; /* number of length code lengths */\n this.ndist = 0; /* number of distance code lengths */\n this.have = 0; /* number of code lengths in lens[] */\n this.next = null; /* next available space in codes[] */\n\n this.lens = new Uint16Array(320); /* temporary storage for code lengths */\n this.work = new Uint16Array(288); /* work area for code table building */\n\n /*\n because we don't have pointers in js, we use lencode and distcode directly\n as buffers so we don't need codes\n */\n //this.codes = new Int32Array(ENOUGH); /* space for code tables */\n this.lendyn = null; /* dynamic table for length/literal codes (JS specific) */\n this.distdyn = null; /* dynamic table for distance codes (JS specific) */\n this.sane = 0; /* if false, allow invalid distance too far */\n this.back = 0; /* bits back of last unprocessed length/lit */\n this.was = 0; /* initial length of match */\n}\n\n\nconst inflateStateCheck = (strm) => {\n\n if (!strm) {\n return 1;\n }\n const state = strm.state;\n if (!state || state.strm !== strm ||\n state.mode < HEAD || state.mode > SYNC) {\n return 1;\n }\n return 0;\n};\n\n\nconst inflateResetKeep = (strm) => {\n\n if (inflateStateCheck(strm)) { return Z_STREAM_ERROR; }\n const state = strm.state;\n strm.total_in = strm.total_out = state.total = 0;\n strm.msg = ''; /*Z_NULL*/\n if (state.wrap) { /* to support ill-conceived Java test suite */\n strm.adler = state.wrap & 1;\n }\n state.mode = HEAD;\n state.last = 0;\n state.havedict = 0;\n state.flags = -1;\n state.dmax = 32768;\n state.head = null/*Z_NULL*/;\n state.hold = 0;\n state.bits = 0;\n //state.lencode = state.distcode = state.next = state.codes;\n state.lencode = state.lendyn = new Int32Array(ENOUGH_LENS);\n state.distcode = state.distdyn = new Int32Array(ENOUGH_DISTS);\n\n state.sane = 1;\n state.back = -1;\n //Tracev((stderr, \"inflate: reset\\n\"));\n return Z_OK;\n};\n\n\nconst inflateReset = (strm) => {\n\n if (inflateStateCheck(strm)) { return Z_STREAM_ERROR; }\n const state = strm.state;\n state.wsize = 0;\n state.whave = 0;\n state.wnext = 0;\n return inflateResetKeep(strm);\n\n};\n\n\nconst inflateReset2 = (strm, windowBits) => {\n let wrap;\n\n /* get the state */\n if (inflateStateCheck(strm)) { return Z_STREAM_ERROR; }\n const state = strm.state;\n\n /* extract wrap request from windowBits parameter */\n if (windowBits < 0) {\n wrap = 0;\n windowBits = -windowBits;\n }\n else {\n wrap = (windowBits >> 4) + 5;\n if (windowBits < 48) {\n windowBits &= 15;\n }\n }\n\n /* set number of window bits, free window if different */\n if (windowBits && (windowBits < 8 || windowBits > 15)) {\n return Z_STREAM_ERROR;\n }\n if (state.window !== null && state.wbits !== windowBits) {\n state.window = null;\n }\n\n /* update state and reset the rest of it */\n state.wrap = wrap;\n state.wbits = windowBits;\n return inflateReset(strm);\n};\n\n\nconst inflateInit2 = (strm, windowBits) => {\n\n if (!strm) { return Z_STREAM_ERROR; }\n //strm.msg = Z_NULL; /* in case we return an error */\n\n const state = new InflateState();\n\n //if (state === Z_NULL) return Z_MEM_ERROR;\n //Tracev((stderr, \"inflate: allocated\\n\"));\n strm.state = state;\n state.strm = strm;\n state.window = null/*Z_NULL*/;\n state.mode = HEAD; /* to pass state test in inflateReset2() */\n const ret = inflateReset2(strm, windowBits);\n if (ret !== Z_OK) {\n strm.state = null/*Z_NULL*/;\n }\n return ret;\n};\n\n\nconst inflateInit = (strm) => {\n\n return inflateInit2(strm, DEF_WBITS);\n};\n\n\n/*\n Return state with length and distance decoding tables and index sizes set to\n fixed code decoding. Normally this returns fixed tables from inffixed.h.\n If BUILDFIXED is defined, then instead this routine builds the tables the\n first time it's called, and returns those tables the first time and\n thereafter. This reduces the size of the code by about 2K bytes, in\n exchange for a little execution time. However, BUILDFIXED should not be\n used for threaded applications, since the rewriting of the tables and virgin\n may not be thread-safe.\n */\nlet virgin = true;\n\nlet lenfix, distfix; // We have no pointers in JS, so keep tables separate\n\n\nconst fixedtables = (state) => {\n\n /* build fixed huffman tables if first call (may not be thread safe) */\n if (virgin) {\n lenfix = new Int32Array(512);\n distfix = new Int32Array(32);\n\n /* literal/length table */\n let sym = 0;\n while (sym < 144) { state.lens[sym++] = 8; }\n while (sym < 256) { state.lens[sym++] = 9; }\n while (sym < 280) { state.lens[sym++] = 7; }\n while (sym < 288) { state.lens[sym++] = 8; }\n\n inflate_table(LENS, state.lens, 0, 288, lenfix, 0, state.work, { bits: 9 });\n\n /* distance table */\n sym = 0;\n while (sym < 32) { state.lens[sym++] = 5; }\n\n inflate_table(DISTS, state.lens, 0, 32, distfix, 0, state.work, { bits: 5 });\n\n /* do this just once */\n virgin = false;\n }\n\n state.lencode = lenfix;\n state.lenbits = 9;\n state.distcode = distfix;\n state.distbits = 5;\n};\n\n\n/*\n Update the window with the last wsize (normally 32K) bytes written before\n returning. If window does not exist yet, create it. This is only called\n when a window is already in use, or when output has been written during this\n inflate call, but the end of the deflate stream has not been reached yet.\n It is also called to create a window for dictionary data when a dictionary\n is loaded.\n\n Providing output buffers larger than 32K to inflate() should provide a speed\n advantage, since only the last 32K of output is copied to the sliding window\n upon return from inflate(), and since all distances after the first 32K of\n output will fall in the output data, making match copies simpler and faster.\n The advantage may be dependent on the size of the processor's data caches.\n */\nconst updatewindow = (strm, src, end, copy) => {\n\n let dist;\n const state = strm.state;\n\n /* if it hasn't been done already, allocate space for the window */\n if (state.window === null) {\n state.wsize = 1 << state.wbits;\n state.wnext = 0;\n state.whave = 0;\n\n state.window = new Uint8Array(state.wsize);\n }\n\n /* copy state->wsize or less output bytes into the circular window */\n if (copy >= state.wsize) {\n state.window.set(src.subarray(end - state.wsize, end), 0);\n state.wnext = 0;\n state.whave = state.wsize;\n }\n else {\n dist = state.wsize - state.wnext;\n if (dist > copy) {\n dist = copy;\n }\n //zmemcpy(state->window + state->wnext, end - copy, dist);\n state.window.set(src.subarray(end - copy, end - copy + dist), state.wnext);\n copy -= dist;\n if (copy) {\n //zmemcpy(state->window, end - copy, copy);\n state.window.set(src.subarray(end - copy, end), 0);\n state.wnext = copy;\n state.whave = state.wsize;\n }\n else {\n state.wnext += dist;\n if (state.wnext === state.wsize) { state.wnext = 0; }\n if (state.whave < state.wsize) { state.whave += dist; }\n }\n }\n return 0;\n};\n\n\nconst inflate = (strm, flush) => {\n\n let state;\n let input, output; // input/output buffers\n let next; /* next input INDEX */\n let put; /* next output INDEX */\n let have, left; /* available input and output */\n let hold; /* bit buffer */\n let bits; /* bits in bit buffer */\n let _in, _out; /* save starting available input and output */\n let copy; /* number of stored or match bytes to copy */\n let from; /* where to copy match bytes from */\n let from_source;\n let here = 0; /* current decoding table entry */\n let here_bits, here_op, here_val; // paked \"here\" denormalized (JS specific)\n //let last; /* parent table entry */\n let last_bits, last_op, last_val; // paked \"last\" denormalized (JS specific)\n let len; /* length to copy for repeats, bits to drop */\n let ret; /* return code */\n const hbuf = new Uint8Array(4); /* buffer for gzip header crc calculation */\n let opts;\n\n let n; // temporary variable for NEED_BITS\n\n const order = /* permutation of code lengths */\n new Uint8Array([ 16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15 ]);\n\n\n if (inflateStateCheck(strm) || !strm.output ||\n (!strm.input && strm.avail_in !== 0)) {\n return Z_STREAM_ERROR;\n }\n\n state = strm.state;\n if (state.mode === TYPE) { state.mode = TYPEDO; } /* skip check */\n\n\n //--- LOAD() ---\n put = strm.next_out;\n output = strm.output;\n left = strm.avail_out;\n next = strm.next_in;\n input = strm.input;\n have = strm.avail_in;\n hold = state.hold;\n bits = state.bits;\n //---\n\n _in = have;\n _out = left;\n ret = Z_OK;\n\n inf_leave: // goto emulation\n for (;;) {\n switch (state.mode) {\n case HEAD:\n if (state.wrap === 0) {\n state.mode = TYPEDO;\n break;\n }\n //=== NEEDBITS(16);\n while (bits < 16) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n if ((state.wrap & 2) && hold === 0x8b1f) { /* gzip header */\n if (state.wbits === 0) {\n state.wbits = 15;\n }\n state.check = 0/*crc32(0L, Z_NULL, 0)*/;\n //=== CRC2(state.check, hold);\n hbuf[0] = hold & 0xff;\n hbuf[1] = (hold >>> 8) & 0xff;\n state.check = crc32(state.check, hbuf, 2, 0);\n //===//\n\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n state.mode = FLAGS;\n break;\n }\n if (state.head) {\n state.head.done = false;\n }\n if (!(state.wrap & 1) || /* check if zlib header allowed */\n (((hold & 0xff)/*BITS(8)*/ << 8) + (hold >> 8)) % 31) {\n strm.msg = 'incorrect header check';\n state.mode = BAD;\n break;\n }\n if ((hold & 0x0f)/*BITS(4)*/ !== Z_DEFLATED) {\n strm.msg = 'unknown compression method';\n state.mode = BAD;\n break;\n }\n //--- DROPBITS(4) ---//\n hold >>>= 4;\n bits -= 4;\n //---//\n len = (hold & 0x0f)/*BITS(4)*/ + 8;\n if (state.wbits === 0) {\n state.wbits = len;\n }\n if (len > 15 || len > state.wbits) {\n strm.msg = 'invalid window size';\n state.mode = BAD;\n break;\n }\n\n // !!! pako patch. Force use `options.windowBits` if passed.\n // Required to always use max window size by default.\n state.dmax = 1 << state.wbits;\n //state.dmax = 1 << len;\n\n state.flags = 0; /* indicate zlib header */\n //Tracev((stderr, \"inflate: zlib header ok\\n\"));\n strm.adler = state.check = 1/*adler32(0L, Z_NULL, 0)*/;\n state.mode = hold & 0x200 ? DICTID : TYPE;\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n break;\n case FLAGS:\n //=== NEEDBITS(16); */\n while (bits < 16) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n state.flags = hold;\n if ((state.flags & 0xff) !== Z_DEFLATED) {\n strm.msg = 'unknown compression method';\n state.mode = BAD;\n break;\n }\n if (state.flags & 0xe000) {\n strm.msg = 'unknown header flags set';\n state.mode = BAD;\n break;\n }\n if (state.head) {\n state.head.text = ((hold >> 8) & 1);\n }\n if ((state.flags & 0x0200) && (state.wrap & 4)) {\n //=== CRC2(state.check, hold);\n hbuf[0] = hold & 0xff;\n hbuf[1] = (hold >>> 8) & 0xff;\n state.check = crc32(state.check, hbuf, 2, 0);\n //===//\n }\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n state.mode = TIME;\n /* falls through */\n case TIME:\n //=== NEEDBITS(32); */\n while (bits < 32) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n if (state.head) {\n state.head.time = hold;\n }\n if ((state.flags & 0x0200) && (state.wrap & 4)) {\n //=== CRC4(state.check, hold)\n hbuf[0] = hold & 0xff;\n hbuf[1] = (hold >>> 8) & 0xff;\n hbuf[2] = (hold >>> 16) & 0xff;\n hbuf[3] = (hold >>> 24) & 0xff;\n state.check = crc32(state.check, hbuf, 4, 0);\n //===\n }\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n state.mode = OS;\n /* falls through */\n case OS:\n //=== NEEDBITS(16); */\n while (bits < 16) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n if (state.head) {\n state.head.xflags = (hold & 0xff);\n state.head.os = (hold >> 8);\n }\n if ((state.flags & 0x0200) && (state.wrap & 4)) {\n //=== CRC2(state.check, hold);\n hbuf[0] = hold & 0xff;\n hbuf[1] = (hold >>> 8) & 0xff;\n state.check = crc32(state.check, hbuf, 2, 0);\n //===//\n }\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n state.mode = EXLEN;\n /* falls through */\n case EXLEN:\n if (state.flags & 0x0400) {\n //=== NEEDBITS(16); */\n while (bits < 16) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n state.length = hold;\n if (state.head) {\n state.head.extra_len = hold;\n }\n if ((state.flags & 0x0200) && (state.wrap & 4)) {\n //=== CRC2(state.check, hold);\n hbuf[0] = hold & 0xff;\n hbuf[1] = (hold >>> 8) & 0xff;\n state.check = crc32(state.check, hbuf, 2, 0);\n //===//\n }\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n }\n else if (state.head) {\n state.head.extra = null/*Z_NULL*/;\n }\n state.mode = EXTRA;\n /* falls through */\n case EXTRA:\n if (state.flags & 0x0400) {\n copy = state.length;\n if (copy > have) { copy = have; }\n if (copy) {\n if (state.head) {\n len = state.head.extra_len - state.length;\n if (!state.head.extra) {\n // Use untyped array for more convenient processing later\n state.head.extra = new Uint8Array(state.head.extra_len);\n }\n state.head.extra.set(\n input.subarray(\n next,\n // extra field is limited to 65536 bytes\n // - no need for additional size check\n next + copy\n ),\n /*len + copy > state.head.extra_max - len ? state.head.extra_max : copy,*/\n len\n );\n //zmemcpy(state.head.extra + len, next,\n // len + copy > state.head.extra_max ?\n // state.head.extra_max - len : copy);\n }\n if ((state.flags & 0x0200) && (state.wrap & 4)) {\n state.check = crc32(state.check, input, copy, next);\n }\n have -= copy;\n next += copy;\n state.length -= copy;\n }\n if (state.length) { break inf_leave; }\n }\n state.length = 0;\n state.mode = NAME;\n /* falls through */\n case NAME:\n if (state.flags & 0x0800) {\n if (have === 0) { break inf_leave; }\n copy = 0;\n do {\n // TODO: 2 or 1 bytes?\n len = input[next + copy++];\n /* use constant limit because in js we should not preallocate memory */\n if (state.head && len &&\n (state.length < 65536 /*state.head.name_max*/)) {\n state.head.name += String.fromCharCode(len);\n }\n } while (len && copy < have);\n\n if ((state.flags & 0x0200) && (state.wrap & 4)) {\n state.check = crc32(state.check, input, copy, next);\n }\n have -= copy;\n next += copy;\n if (len) { break inf_leave; }\n }\n else if (state.head) {\n state.head.name = null;\n }\n state.length = 0;\n state.mode = COMMENT;\n /* falls through */\n case COMMENT:\n if (state.flags & 0x1000) {\n if (have === 0) { break inf_leave; }\n copy = 0;\n do {\n len = input[next + copy++];\n /* use constant limit because in js we should not preallocate memory */\n if (state.head && len &&\n (state.length < 65536 /*state.head.comm_max*/)) {\n state.head.comment += String.fromCharCode(len);\n }\n } while (len && copy < have);\n if ((state.flags & 0x0200) && (state.wrap & 4)) {\n state.check = crc32(state.check, input, copy, next);\n }\n have -= copy;\n next += copy;\n if (len) { break inf_leave; }\n }\n else if (state.head) {\n state.head.comment = null;\n }\n state.mode = HCRC;\n /* falls through */\n case HCRC:\n if (state.flags & 0x0200) {\n //=== NEEDBITS(16); */\n while (bits < 16) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n if ((state.wrap & 4) && hold !== (state.check & 0xffff)) {\n strm.msg = 'header crc mismatch';\n state.mode = BAD;\n break;\n }\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n }\n if (state.head) {\n state.head.hcrc = ((state.flags >> 9) & 1);\n state.head.done = true;\n }\n strm.adler = state.check = 0;\n state.mode = TYPE;\n break;\n case DICTID:\n //=== NEEDBITS(32); */\n while (bits < 32) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n strm.adler = state.check = zswap32(hold);\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n state.mode = DICT;\n /* falls through */\n case DICT:\n if (state.havedict === 0) {\n //--- RESTORE() ---\n strm.next_out = put;\n strm.avail_out = left;\n strm.next_in = next;\n strm.avail_in = have;\n state.hold = hold;\n state.bits = bits;\n //---\n return Z_NEED_DICT;\n }\n strm.adler = state.check = 1/*adler32(0L, Z_NULL, 0)*/;\n state.mode = TYPE;\n /* falls through */\n case TYPE:\n if (flush === Z_BLOCK || flush === Z_TREES) { break inf_leave; }\n /* falls through */\n case TYPEDO:\n if (state.last) {\n //--- BYTEBITS() ---//\n hold >>>= bits & 7;\n bits -= bits & 7;\n //---//\n state.mode = CHECK;\n break;\n }\n //=== NEEDBITS(3); */\n while (bits < 3) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n state.last = (hold & 0x01)/*BITS(1)*/;\n //--- DROPBITS(1) ---//\n hold >>>= 1;\n bits -= 1;\n //---//\n\n switch ((hold & 0x03)/*BITS(2)*/) {\n case 0: /* stored block */\n //Tracev((stderr, \"inflate: stored block%s\\n\",\n // state.last ? \" (last)\" : \"\"));\n state.mode = STORED;\n break;\n case 1: /* fixed block */\n fixedtables(state);\n //Tracev((stderr, \"inflate: fixed codes block%s\\n\",\n // state.last ? \" (last)\" : \"\"));\n state.mode = LEN_; /* decode codes */\n if (flush === Z_TREES) {\n //--- DROPBITS(2) ---//\n hold >>>= 2;\n bits -= 2;\n //---//\n break inf_leave;\n }\n break;\n case 2: /* dynamic block */\n //Tracev((stderr, \"inflate: dynamic codes block%s\\n\",\n // state.last ? \" (last)\" : \"\"));\n state.mode = TABLE;\n break;\n case 3:\n strm.msg = 'invalid block type';\n state.mode = BAD;\n }\n //--- DROPBITS(2) ---//\n hold >>>= 2;\n bits -= 2;\n //---//\n break;\n case STORED:\n //--- BYTEBITS() ---// /* go to byte boundary */\n hold >>>= bits & 7;\n bits -= bits & 7;\n //---//\n //=== NEEDBITS(32); */\n while (bits < 32) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n if ((hold & 0xffff) !== ((hold >>> 16) ^ 0xffff)) {\n strm.msg = 'invalid stored block lengths';\n state.mode = BAD;\n break;\n }\n state.length = hold & 0xffff;\n //Tracev((stderr, \"inflate: stored length %u\\n\",\n // state.length));\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n state.mode = COPY_;\n if (flush === Z_TREES) { break inf_leave; }\n /* falls through */\n case COPY_:\n state.mode = COPY;\n /* falls through */\n case COPY:\n copy = state.length;\n if (copy) {\n if (copy > have) { copy = have; }\n if (copy > left) { copy = left; }\n if (copy === 0) { break inf_leave; }\n //--- zmemcpy(put, next, copy); ---\n output.set(input.subarray(next, next + copy), put);\n //---//\n have -= copy;\n next += copy;\n left -= copy;\n put += copy;\n state.length -= copy;\n break;\n }\n //Tracev((stderr, \"inflate: stored end\\n\"));\n state.mode = TYPE;\n break;\n case TABLE:\n //=== NEEDBITS(14); */\n while (bits < 14) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n state.nlen = (hold & 0x1f)/*BITS(5)*/ + 257;\n //--- DROPBITS(5) ---//\n hold >>>= 5;\n bits -= 5;\n //---//\n state.ndist = (hold & 0x1f)/*BITS(5)*/ + 1;\n //--- DROPBITS(5) ---//\n hold >>>= 5;\n bits -= 5;\n //---//\n state.ncode = (hold & 0x0f)/*BITS(4)*/ + 4;\n //--- DROPBITS(4) ---//\n hold >>>= 4;\n bits -= 4;\n //---//\n//#ifndef PKZIP_BUG_WORKAROUND\n if (state.nlen > 286 || state.ndist > 30) {\n strm.msg = 'too many length or distance symbols';\n state.mode = BAD;\n break;\n }\n//#endif\n //Tracev((stderr, \"inflate: table sizes ok\\n\"));\n state.have = 0;\n state.mode = LENLENS;\n /* falls through */\n case LENLENS:\n while (state.have < state.ncode) {\n //=== NEEDBITS(3);\n while (bits < 3) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n state.lens[order[state.have++]] = (hold & 0x07);//BITS(3);\n //--- DROPBITS(3) ---//\n hold >>>= 3;\n bits -= 3;\n //---//\n }\n while (state.have < 19) {\n state.lens[order[state.have++]] = 0;\n }\n // We have separate tables & no pointers. 2 commented lines below not needed.\n //state.next = state.codes;\n //state.lencode = state.next;\n // Switch to use dynamic table\n state.lencode = state.lendyn;\n state.lenbits = 7;\n\n opts = { bits: state.lenbits };\n ret = inflate_table(CODES, state.lens, 0, 19, state.lencode, 0, state.work, opts);\n state.lenbits = opts.bits;\n\n if (ret) {\n strm.msg = 'invalid code lengths set';\n state.mode = BAD;\n break;\n }\n //Tracev((stderr, \"inflate: code lengths ok\\n\"));\n state.have = 0;\n state.mode = CODELENS;\n /* falls through */\n case CODELENS:\n while (state.have < state.nlen + state.ndist) {\n for (;;) {\n here = state.lencode[hold & ((1 << state.lenbits) - 1)];/*BITS(state.lenbits)*/\n here_bits = here >>> 24;\n here_op = (here >>> 16) & 0xff;\n here_val = here & 0xffff;\n\n if ((here_bits) <= bits) { break; }\n //--- PULLBYTE() ---//\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n //---//\n }\n if (here_val < 16) {\n //--- DROPBITS(here.bits) ---//\n hold >>>= here_bits;\n bits -= here_bits;\n //---//\n state.lens[state.have++] = here_val;\n }\n else {\n if (here_val === 16) {\n //=== NEEDBITS(here.bits + 2);\n n = here_bits + 2;\n while (bits < n) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n //--- DROPBITS(here.bits) ---//\n hold >>>= here_bits;\n bits -= here_bits;\n //---//\n if (state.have === 0) {\n strm.msg = 'invalid bit length repeat';\n state.mode = BAD;\n break;\n }\n len = state.lens[state.have - 1];\n copy = 3 + (hold & 0x03);//BITS(2);\n //--- DROPBITS(2) ---//\n hold >>>= 2;\n bits -= 2;\n //---//\n }\n else if (here_val === 17) {\n //=== NEEDBITS(here.bits + 3);\n n = here_bits + 3;\n while (bits < n) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n //--- DROPBITS(here.bits) ---//\n hold >>>= here_bits;\n bits -= here_bits;\n //---//\n len = 0;\n copy = 3 + (hold & 0x07);//BITS(3);\n //--- DROPBITS(3) ---//\n hold >>>= 3;\n bits -= 3;\n //---//\n }\n else {\n //=== NEEDBITS(here.bits + 7);\n n = here_bits + 7;\n while (bits < n) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n //--- DROPBITS(here.bits) ---//\n hold >>>= here_bits;\n bits -= here_bits;\n //---//\n len = 0;\n copy = 11 + (hold & 0x7f);//BITS(7);\n //--- DROPBITS(7) ---//\n hold >>>= 7;\n bits -= 7;\n //---//\n }\n if (state.have + copy > state.nlen + state.ndist) {\n strm.msg = 'invalid bit length repeat';\n state.mode = BAD;\n break;\n }\n while (copy--) {\n state.lens[state.have++] = len;\n }\n }\n }\n\n /* handle error breaks in while */\n if (state.mode === BAD) { break; }\n\n /* check for end-of-block code (better have one) */\n if (state.lens[256] === 0) {\n strm.msg = 'invalid code -- missing end-of-block';\n state.mode = BAD;\n break;\n }\n\n /* build code tables -- note: do not change the lenbits or distbits\n values here (9 and 6) without reading the comments in inftrees.h\n concerning the ENOUGH constants, which depend on those values */\n state.lenbits = 9;\n\n opts = { bits: state.lenbits };\n ret = inflate_table(LENS, state.lens, 0, state.nlen, state.lencode, 0, state.work, opts);\n // We have separate tables & no pointers. 2 commented lines below not needed.\n // state.next_index = opts.table_index;\n state.lenbits = opts.bits;\n // state.lencode = state.next;\n\n if (ret) {\n strm.msg = 'invalid literal/lengths set';\n state.mode = BAD;\n break;\n }\n\n state.distbits = 6;\n //state.distcode.copy(state.codes);\n // Switch to use dynamic table\n state.distcode = state.distdyn;\n opts = { bits: state.distbits };\n ret = inflate_table(DISTS, state.lens, state.nlen, state.ndist, state.distcode, 0, state.work, opts);\n // We have separate tables & no pointers. 2 commented lines below not needed.\n // state.next_index = opts.table_index;\n state.distbits = opts.bits;\n // state.distcode = state.next;\n\n if (ret) {\n strm.msg = 'invalid distances set';\n state.mode = BAD;\n break;\n }\n //Tracev((stderr, 'inflate: codes ok\\n'));\n state.mode = LEN_;\n if (flush === Z_TREES) { break inf_leave; }\n /* falls through */\n case LEN_:\n state.mode = LEN;\n /* falls through */\n case LEN:\n if (have >= 6 && left >= 258) {\n //--- RESTORE() ---\n strm.next_out = put;\n strm.avail_out = left;\n strm.next_in = next;\n strm.avail_in = have;\n state.hold = hold;\n state.bits = bits;\n //---\n inflate_fast(strm, _out);\n //--- LOAD() ---\n put = strm.next_out;\n output = strm.output;\n left = strm.avail_out;\n next = strm.next_in;\n input = strm.input;\n have = strm.avail_in;\n hold = state.hold;\n bits = state.bits;\n //---\n\n if (state.mode === TYPE) {\n state.back = -1;\n }\n break;\n }\n state.back = 0;\n for (;;) {\n here = state.lencode[hold & ((1 << state.lenbits) - 1)]; /*BITS(state.lenbits)*/\n here_bits = here >>> 24;\n here_op = (here >>> 16) & 0xff;\n here_val = here & 0xffff;\n\n if (here_bits <= bits) { break; }\n //--- PULLBYTE() ---//\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n //---//\n }\n if (here_op && (here_op & 0xf0) === 0) {\n last_bits = here_bits;\n last_op = here_op;\n last_val = here_val;\n for (;;) {\n here = state.lencode[last_val +\n ((hold & ((1 << (last_bits + last_op)) - 1))/*BITS(last.bits + last.op)*/ >> last_bits)];\n here_bits = here >>> 24;\n here_op = (here >>> 16) & 0xff;\n here_val = here & 0xffff;\n\n if ((last_bits + here_bits) <= bits) { break; }\n //--- PULLBYTE() ---//\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n //---//\n }\n //--- DROPBITS(last.bits) ---//\n hold >>>= last_bits;\n bits -= last_bits;\n //---//\n state.back += last_bits;\n }\n //--- DROPBITS(here.bits) ---//\n hold >>>= here_bits;\n bits -= here_bits;\n //---//\n state.back += here_bits;\n state.length = here_val;\n if (here_op === 0) {\n //Tracevv((stderr, here.val >= 0x20 && here.val < 0x7f ?\n // \"inflate: literal '%c'\\n\" :\n // \"inflate: literal 0x%02x\\n\", here.val));\n state.mode = LIT;\n break;\n }\n if (here_op & 32) {\n //Tracevv((stderr, \"inflate: end of block\\n\"));\n state.back = -1;\n state.mode = TYPE;\n break;\n }\n if (here_op & 64) {\n strm.msg = 'invalid literal/length code';\n state.mode = BAD;\n break;\n }\n state.extra = here_op & 15;\n state.mode = LENEXT;\n /* falls through */\n case LENEXT:\n if (state.extra) {\n //=== NEEDBITS(state.extra);\n n = state.extra;\n while (bits < n) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n state.length += hold & ((1 << state.extra) - 1)/*BITS(state.extra)*/;\n //--- DROPBITS(state.extra) ---//\n hold >>>= state.extra;\n bits -= state.extra;\n //---//\n state.back += state.extra;\n }\n //Tracevv((stderr, \"inflate: length %u\\n\", state.length));\n state.was = state.length;\n state.mode = DIST;\n /* falls through */\n case DIST:\n for (;;) {\n here = state.distcode[hold & ((1 << state.distbits) - 1)];/*BITS(state.distbits)*/\n here_bits = here >>> 24;\n here_op = (here >>> 16) & 0xff;\n here_val = here & 0xffff;\n\n if ((here_bits) <= bits) { break; }\n //--- PULLBYTE() ---//\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n //---//\n }\n if ((here_op & 0xf0) === 0) {\n last_bits = here_bits;\n last_op = here_op;\n last_val = here_val;\n for (;;) {\n here = state.distcode[last_val +\n ((hold & ((1 << (last_bits + last_op)) - 1))/*BITS(last.bits + last.op)*/ >> last_bits)];\n here_bits = here >>> 24;\n here_op = (here >>> 16) & 0xff;\n here_val = here & 0xffff;\n\n if ((last_bits + here_bits) <= bits) { break; }\n //--- PULLBYTE() ---//\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n //---//\n }\n //--- DROPBITS(last.bits) ---//\n hold >>>= last_bits;\n bits -= last_bits;\n //---//\n state.back += last_bits;\n }\n //--- DROPBITS(here.bits) ---//\n hold >>>= here_bits;\n bits -= here_bits;\n //---//\n state.back += here_bits;\n if (here_op & 64) {\n strm.msg = 'invalid distance code';\n state.mode = BAD;\n break;\n }\n state.offset = here_val;\n state.extra = (here_op) & 15;\n state.mode = DISTEXT;\n /* falls through */\n case DISTEXT:\n if (state.extra) {\n //=== NEEDBITS(state.extra);\n n = state.extra;\n while (bits < n) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n state.offset += hold & ((1 << state.extra) - 1)/*BITS(state.extra)*/;\n //--- DROPBITS(state.extra) ---//\n hold >>>= state.extra;\n bits -= state.extra;\n //---//\n state.back += state.extra;\n }\n//#ifdef INFLATE_STRICT\n if (state.offset > state.dmax) {\n strm.msg = 'invalid distance too far back';\n state.mode = BAD;\n break;\n }\n//#endif\n //Tracevv((stderr, \"inflate: distance %u\\n\", state.offset));\n state.mode = MATCH;\n /* falls through */\n case MATCH:\n if (left === 0) { break inf_leave; }\n copy = _out - left;\n if (state.offset > copy) { /* copy from window */\n copy = state.offset - copy;\n if (copy > state.whave) {\n if (state.sane) {\n strm.msg = 'invalid distance too far back';\n state.mode = BAD;\n break;\n }\n// (!) This block is disabled in zlib defaults,\n// don't enable it for binary compatibility\n//#ifdef INFLATE_ALLOW_INVALID_DISTANCE_TOOFAR_ARRR\n// Trace((stderr, \"inflate.c too far\\n\"));\n// copy -= state.whave;\n// if (copy > state.length) { copy = state.length; }\n// if (copy > left) { copy = left; }\n// left -= copy;\n// state.length -= copy;\n// do {\n// output[put++] = 0;\n// } while (--copy);\n// if (state.length === 0) { state.mode = LEN; }\n// break;\n//#endif\n }\n if (copy > state.wnext) {\n copy -= state.wnext;\n from = state.wsize - copy;\n }\n else {\n from = state.wnext - copy;\n }\n if (copy > state.length) { copy = state.length; }\n from_source = state.window;\n }\n else { /* copy from output */\n from_source = output;\n from = put - state.offset;\n copy = state.length;\n }\n if (copy > left) { copy = left; }\n left -= copy;\n state.length -= copy;\n do {\n output[put++] = from_source[from++];\n } while (--copy);\n if (state.length === 0) { state.mode = LEN; }\n break;\n case LIT:\n if (left === 0) { break inf_leave; }\n output[put++] = state.length;\n left--;\n state.mode = LEN;\n break;\n case CHECK:\n if (state.wrap) {\n //=== NEEDBITS(32);\n while (bits < 32) {\n if (have === 0) { break inf_leave; }\n have--;\n // Use '|' instead of '+' to make sure that result is signed\n hold |= input[next++] << bits;\n bits += 8;\n }\n //===//\n _out -= left;\n strm.total_out += _out;\n state.total += _out;\n if ((state.wrap & 4) && _out) {\n strm.adler = state.check =\n /*UPDATE_CHECK(state.check, put - _out, _out);*/\n (state.flags ? crc32(state.check, output, _out, put - _out) : adler32(state.check, output, _out, put - _out));\n\n }\n _out = left;\n // NB: crc32 stored as signed 32-bit int, zswap32 returns signed too\n if ((state.wrap & 4) && (state.flags ? hold : zswap32(hold)) !== state.check) {\n strm.msg = 'incorrect data check';\n state.mode = BAD;\n break;\n }\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n //Tracev((stderr, \"inflate: check matches trailer\\n\"));\n }\n state.mode = LENGTH;\n /* falls through */\n case LENGTH:\n if (state.wrap && state.flags) {\n //=== NEEDBITS(32);\n while (bits < 32) {\n if (have === 0) { break inf_leave; }\n have--;\n hold += input[next++] << bits;\n bits += 8;\n }\n //===//\n if ((state.wrap & 4) && hold !== (state.total & 0xffffffff)) {\n strm.msg = 'incorrect length check';\n state.mode = BAD;\n break;\n }\n //=== INITBITS();\n hold = 0;\n bits = 0;\n //===//\n //Tracev((stderr, \"inflate: length matches trailer\\n\"));\n }\n state.mode = DONE;\n /* falls through */\n case DONE:\n ret = Z_STREAM_END;\n break inf_leave;\n case BAD:\n ret = Z_DATA_ERROR;\n break inf_leave;\n case MEM:\n return Z_MEM_ERROR;\n case SYNC:\n /* falls through */\n default:\n return Z_STREAM_ERROR;\n }\n }\n\n // inf_leave <- here is real place for \"goto inf_leave\", emulated via \"break inf_leave\"\n\n /*\n Return from inflate(), updating the total counts and the check value.\n If there was no progress during the inflate() call, return a buffer\n error. Call updatewindow() to create and/or update the window state.\n Note: a memory error from inflate() is non-recoverable.\n */\n\n //--- RESTORE() ---\n strm.next_out = put;\n strm.avail_out = left;\n strm.next_in = next;\n strm.avail_in = have;\n state.hold = hold;\n state.bits = bits;\n //---\n\n if (state.wsize || (_out !== strm.avail_out && state.mode < BAD &&\n (state.mode < CHECK || flush !== Z_FINISH))) {\n if (updatewindow(strm, strm.output, strm.next_out, _out - strm.avail_out)) {\n state.mode = MEM;\n return Z_MEM_ERROR;\n }\n }\n _in -= strm.avail_in;\n _out -= strm.avail_out;\n strm.total_in += _in;\n strm.total_out += _out;\n state.total += _out;\n if ((state.wrap & 4) && _out) {\n strm.adler = state.check = /*UPDATE_CHECK(state.check, strm.next_out - _out, _out);*/\n (state.flags ? crc32(state.check, output, _out, strm.next_out - _out) : adler32(state.check, output, _out, strm.next_out - _out));\n }\n strm.data_type = state.bits + (state.last ? 64 : 0) +\n (state.mode === TYPE ? 128 : 0) +\n (state.mode === LEN_ || state.mode === COPY_ ? 256 : 0);\n if (((_in === 0 && _out === 0) || flush === Z_FINISH) && ret === Z_OK) {\n ret = Z_BUF_ERROR;\n }\n return ret;\n};\n\n\nconst inflateEnd = (strm) => {\n\n if (inflateStateCheck(strm)) {\n return Z_STREAM_ERROR;\n }\n\n let state = strm.state;\n if (state.window) {\n state.window = null;\n }\n strm.state = null;\n return Z_OK;\n};\n\n\nconst inflateGetHeader = (strm, head) => {\n\n /* check state */\n if (inflateStateCheck(strm)) { return Z_STREAM_ERROR; }\n const state = strm.state;\n if ((state.wrap & 2) === 0) { return Z_STREAM_ERROR; }\n\n /* save header structure */\n state.head = head;\n head.done = false;\n return Z_OK;\n};\n\n\nconst inflateSetDictionary = (strm, dictionary) => {\n const dictLength = dictionary.length;\n\n let state;\n let dictid;\n let ret;\n\n /* check state */\n if (inflateStateCheck(strm)) { return Z_STREAM_ERROR; }\n state = strm.state;\n\n if (state.wrap !== 0 && state.mode !== DICT) {\n return Z_STREAM_ERROR;\n }\n\n /* check for correct dictionary identifier */\n if (state.mode === DICT) {\n dictid = 1; /* adler32(0, null, 0)*/\n /* dictid = adler32(dictid, dictionary, dictLength); */\n dictid = adler32(dictid, dictionary, dictLength, 0);\n if (dictid !== state.check) {\n return Z_DATA_ERROR;\n }\n }\n /* copy dictionary to window using updatewindow(), which will amend the\n existing dictionary if appropriate */\n ret = updatewindow(strm, dictionary, dictLength, dictLength);\n if (ret) {\n state.mode = MEM;\n return Z_MEM_ERROR;\n }\n state.havedict = 1;\n // Tracev((stderr, \"inflate: dictionary set\\n\"));\n return Z_OK;\n};\n\n\nmodule.exports.inflateReset = inflateReset;\nmodule.exports.inflateReset2 = inflateReset2;\nmodule.exports.inflateResetKeep = inflateResetKeep;\nmodule.exports.inflateInit = inflateInit;\nmodule.exports.inflateInit2 = inflateInit2;\nmodule.exports.inflate = inflate;\nmodule.exports.inflateEnd = inflateEnd;\nmodule.exports.inflateGetHeader = inflateGetHeader;\nmodule.exports.inflateSetDictionary = inflateSetDictionary;\nmodule.exports.inflateInfo = 'pako inflate (from Nodeca project)';\n\n/* Not implemented\nmodule.exports.inflateCodesUsed = inflateCodesUsed;\nmodule.exports.inflateCopy = inflateCopy;\nmodule.exports.inflateGetDictionary = inflateGetDictionary;\nmodule.exports.inflateMark = inflateMark;\nmodule.exports.inflatePrime = inflatePrime;\nmodule.exports.inflateSync = inflateSync;\nmodule.exports.inflateSyncPoint = inflateSyncPoint;\nmodule.exports.inflateUndermine = inflateUndermine;\nmodule.exports.inflateValidate = inflateValidate;\n*/\n","/**\n * The base implementation of `_.unary` without support for storing metadata.\n *\n * @private\n * @param {Function} func The function to cap arguments for.\n * @returns {Function} Returns the new capped function.\n */\nfunction baseUnary(func) {\n return function(value) {\n return func(value);\n };\n}\n\nmodule.exports = baseUnary;\n","'use strict';\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\n/* eslint-disable space-unary-ops */\n\n/* Public constants ==========================================================*/\n/* ===========================================================================*/\n\n\n//const Z_FILTERED = 1;\n//const Z_HUFFMAN_ONLY = 2;\n//const Z_RLE = 3;\nconst Z_FIXED = 4;\n//const Z_DEFAULT_STRATEGY = 0;\n\n/* Possible values of the data_type field (though see inflate()) */\nconst Z_BINARY = 0;\nconst Z_TEXT = 1;\n//const Z_ASCII = 1; // = Z_TEXT\nconst Z_UNKNOWN = 2;\n\n/*============================================================================*/\n\n\nfunction zero(buf) { let len = buf.length; while (--len >= 0) { buf[len] = 0; } }\n\n// From zutil.h\n\nconst STORED_BLOCK = 0;\nconst STATIC_TREES = 1;\nconst DYN_TREES = 2;\n/* The three kinds of block type */\n\nconst MIN_MATCH = 3;\nconst MAX_MATCH = 258;\n/* The minimum and maximum match lengths */\n\n// From deflate.h\n/* ===========================================================================\n * Internal compression state.\n */\n\nconst LENGTH_CODES = 29;\n/* number of length codes, not counting the special END_BLOCK code */\n\nconst LITERALS = 256;\n/* number of literal bytes 0..255 */\n\nconst L_CODES = LITERALS + 1 + LENGTH_CODES;\n/* number of Literal or Length codes, including the END_BLOCK code */\n\nconst D_CODES = 30;\n/* number of distance codes */\n\nconst BL_CODES = 19;\n/* number of codes used to transfer the bit lengths */\n\nconst HEAP_SIZE = 2 * L_CODES + 1;\n/* maximum heap size */\n\nconst MAX_BITS = 15;\n/* All codes must not exceed MAX_BITS bits */\n\nconst Buf_size = 16;\n/* size of bit buffer in bi_buf */\n\n\n/* ===========================================================================\n * Constants\n */\n\nconst MAX_BL_BITS = 7;\n/* Bit length codes must not exceed MAX_BL_BITS bits */\n\nconst END_BLOCK = 256;\n/* end of block literal code */\n\nconst REP_3_6 = 16;\n/* repeat previous bit length 3-6 times (2 bits of repeat count) */\n\nconst REPZ_3_10 = 17;\n/* repeat a zero length 3-10 times (3 bits of repeat count) */\n\nconst REPZ_11_138 = 18;\n/* repeat a zero length 11-138 times (7 bits of repeat count) */\n\n/* eslint-disable comma-spacing,array-bracket-spacing */\nconst extra_lbits = /* extra bits for each length code */\n new Uint8Array([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0]);\n\nconst extra_dbits = /* extra bits for each distance code */\n new Uint8Array([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13]);\n\nconst extra_blbits = /* extra bits for each bit length code */\n new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]);\n\nconst bl_order =\n new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);\n/* eslint-enable comma-spacing,array-bracket-spacing */\n\n/* The lengths of the bit length codes are sent in order of decreasing\n * probability, to avoid transmitting the lengths for unused bit length codes.\n */\n\n/* ===========================================================================\n * Local data. These are initialized only once.\n */\n\n// We pre-fill arrays with 0 to avoid uninitialized gaps\n\nconst DIST_CODE_LEN = 512; /* see definition of array dist_code below */\n\n// !!!! Use flat array instead of structure, Freq = i*2, Len = i*2+1\nconst static_ltree = new Array((L_CODES + 2) * 2);\nzero(static_ltree);\n/* The static literal tree. Since the bit lengths are imposed, there is no\n * need for the L_CODES extra codes used during heap construction. However\n * The codes 286 and 287 are needed to build a canonical tree (see _tr_init\n * below).\n */\n\nconst static_dtree = new Array(D_CODES * 2);\nzero(static_dtree);\n/* The static distance tree. (Actually a trivial tree since all codes use\n * 5 bits.)\n */\n\nconst _dist_code = new Array(DIST_CODE_LEN);\nzero(_dist_code);\n/* Distance codes. The first 256 values correspond to the distances\n * 3 .. 258, the last 256 values correspond to the top 8 bits of\n * the 15 bit distances.\n */\n\nconst _length_code = new Array(MAX_MATCH - MIN_MATCH + 1);\nzero(_length_code);\n/* length code for each normalized match length (0 == MIN_MATCH) */\n\nconst base_length = new Array(LENGTH_CODES);\nzero(base_length);\n/* First normalized length for each code (0 = MIN_MATCH) */\n\nconst base_dist = new Array(D_CODES);\nzero(base_dist);\n/* First normalized distance for each code (0 = distance of 1) */\n\n\nfunction StaticTreeDesc(static_tree, extra_bits, extra_base, elems, max_length) {\n\n this.static_tree = static_tree; /* static tree or NULL */\n this.extra_bits = extra_bits; /* extra bits for each code or NULL */\n this.extra_base = extra_base; /* base index for extra_bits */\n this.elems = elems; /* max number of elements in the tree */\n this.max_length = max_length; /* max bit length for the codes */\n\n // show if `static_tree` has data or dummy - needed for monomorphic objects\n this.has_stree = static_tree && static_tree.length;\n}\n\n\nlet static_l_desc;\nlet static_d_desc;\nlet static_bl_desc;\n\n\nfunction TreeDesc(dyn_tree, stat_desc) {\n this.dyn_tree = dyn_tree; /* the dynamic tree */\n this.max_code = 0; /* largest code with non zero frequency */\n this.stat_desc = stat_desc; /* the corresponding static tree */\n}\n\n\n\nconst d_code = (dist) => {\n\n return dist < 256 ? _dist_code[dist] : _dist_code[256 + (dist >>> 7)];\n};\n\n\n/* ===========================================================================\n * Output a short LSB first on the stream.\n * IN assertion: there is enough room in pendingBuf.\n */\nconst put_short = (s, w) => {\n// put_byte(s, (uch)((w) & 0xff));\n// put_byte(s, (uch)((ush)(w) >> 8));\n s.pending_buf[s.pending++] = (w) & 0xff;\n s.pending_buf[s.pending++] = (w >>> 8) & 0xff;\n};\n\n\n/* ===========================================================================\n * Send a value on a given number of bits.\n * IN assertion: length <= 16 and value fits in length bits.\n */\nconst send_bits = (s, value, length) => {\n\n if (s.bi_valid > (Buf_size - length)) {\n s.bi_buf |= (value << s.bi_valid) & 0xffff;\n put_short(s, s.bi_buf);\n s.bi_buf = value >> (Buf_size - s.bi_valid);\n s.bi_valid += length - Buf_size;\n } else {\n s.bi_buf |= (value << s.bi_valid) & 0xffff;\n s.bi_valid += length;\n }\n};\n\n\nconst send_code = (s, c, tree) => {\n\n send_bits(s, tree[c * 2]/*.Code*/, tree[c * 2 + 1]/*.Len*/);\n};\n\n\n/* ===========================================================================\n * Reverse the first len bits of a code, using straightforward code (a faster\n * method would use a table)\n * IN assertion: 1 <= len <= 15\n */\nconst bi_reverse = (code, len) => {\n\n let res = 0;\n do {\n res |= code & 1;\n code >>>= 1;\n res <<= 1;\n } while (--len > 0);\n return res >>> 1;\n};\n\n\n/* ===========================================================================\n * Flush the bit buffer, keeping at most 7 bits in it.\n */\nconst bi_flush = (s) => {\n\n if (s.bi_valid === 16) {\n put_short(s, s.bi_buf);\n s.bi_buf = 0;\n s.bi_valid = 0;\n\n } else if (s.bi_valid >= 8) {\n s.pending_buf[s.pending++] = s.bi_buf & 0xff;\n s.bi_buf >>= 8;\n s.bi_valid -= 8;\n }\n};\n\n\n/* ===========================================================================\n * Compute the optimal bit lengths for a tree and update the total bit length\n * for the current block.\n * IN assertion: the fields freq and dad are set, heap[heap_max] and\n * above are the tree nodes sorted by increasing frequency.\n * OUT assertions: the field len is set to the optimal bit length, the\n * array bl_count contains the frequencies for each bit length.\n * The length opt_len is updated; static_len is also updated if stree is\n * not null.\n */\nconst gen_bitlen = (s, desc) => {\n// deflate_state *s;\n// tree_desc *desc; /* the tree descriptor */\n\n const tree = desc.dyn_tree;\n const max_code = desc.max_code;\n const stree = desc.stat_desc.static_tree;\n const has_stree = desc.stat_desc.has_stree;\n const extra = desc.stat_desc.extra_bits;\n const base = desc.stat_desc.extra_base;\n const max_length = desc.stat_desc.max_length;\n let h; /* heap index */\n let n, m; /* iterate over the tree elements */\n let bits; /* bit length */\n let xbits; /* extra bits */\n let f; /* frequency */\n let overflow = 0; /* number of elements with bit length too large */\n\n for (bits = 0; bits <= MAX_BITS; bits++) {\n s.bl_count[bits] = 0;\n }\n\n /* In a first pass, compute the optimal bit lengths (which may\n * overflow in the case of the bit length tree).\n */\n tree[s.heap[s.heap_max] * 2 + 1]/*.Len*/ = 0; /* root of the heap */\n\n for (h = s.heap_max + 1; h < HEAP_SIZE; h++) {\n n = s.heap[h];\n bits = tree[tree[n * 2 + 1]/*.Dad*/ * 2 + 1]/*.Len*/ + 1;\n if (bits > max_length) {\n bits = max_length;\n overflow++;\n }\n tree[n * 2 + 1]/*.Len*/ = bits;\n /* We overwrite tree[n].Dad which is no longer needed */\n\n if (n > max_code) { continue; } /* not a leaf node */\n\n s.bl_count[bits]++;\n xbits = 0;\n if (n >= base) {\n xbits = extra[n - base];\n }\n f = tree[n * 2]/*.Freq*/;\n s.opt_len += f * (bits + xbits);\n if (has_stree) {\n s.static_len += f * (stree[n * 2 + 1]/*.Len*/ + xbits);\n }\n }\n if (overflow === 0) { return; }\n\n // Tracev((stderr,\"\\nbit length overflow\\n\"));\n /* This happens for example on obj2 and pic of the Calgary corpus */\n\n /* Find the first bit length which could increase: */\n do {\n bits = max_length - 1;\n while (s.bl_count[bits] === 0) { bits--; }\n s.bl_count[bits]--; /* move one leaf down the tree */\n s.bl_count[bits + 1] += 2; /* move one overflow item as its brother */\n s.bl_count[max_length]--;\n /* The brother of the overflow item also moves one step up,\n * but this does not affect bl_count[max_length]\n */\n overflow -= 2;\n } while (overflow > 0);\n\n /* Now recompute all bit lengths, scanning in increasing frequency.\n * h is still equal to HEAP_SIZE. (It is simpler to reconstruct all\n * lengths instead of fixing only the wrong ones. This idea is taken\n * from 'ar' written by Haruhiko Okumura.)\n */\n for (bits = max_length; bits !== 0; bits--) {\n n = s.bl_count[bits];\n while (n !== 0) {\n m = s.heap[--h];\n if (m > max_code) { continue; }\n if (tree[m * 2 + 1]/*.Len*/ !== bits) {\n // Tracev((stderr,\"code %d bits %d->%d\\n\", m, tree[m].Len, bits));\n s.opt_len += (bits - tree[m * 2 + 1]/*.Len*/) * tree[m * 2]/*.Freq*/;\n tree[m * 2 + 1]/*.Len*/ = bits;\n }\n n--;\n }\n }\n};\n\n\n/* ===========================================================================\n * Generate the codes for a given tree and bit counts (which need not be\n * optimal).\n * IN assertion: the array bl_count contains the bit length statistics for\n * the given tree and the field len is set for all tree elements.\n * OUT assertion: the field code is set for all tree elements of non\n * zero code length.\n */\nconst gen_codes = (tree, max_code, bl_count) => {\n// ct_data *tree; /* the tree to decorate */\n// int max_code; /* largest code with non zero frequency */\n// ushf *bl_count; /* number of codes at each bit length */\n\n const next_code = new Array(MAX_BITS + 1); /* next code value for each bit length */\n let code = 0; /* running code value */\n let bits; /* bit index */\n let n; /* code index */\n\n /* The distribution counts are first used to generate the code values\n * without bit reversal.\n */\n for (bits = 1; bits <= MAX_BITS; bits++) {\n code = (code + bl_count[bits - 1]) << 1;\n next_code[bits] = code;\n }\n /* Check that the bit counts in bl_count are consistent. The last code\n * must be all ones.\n */\n //Assert (code + bl_count[MAX_BITS]-1 == (1<<MAX_BITS)-1,\n // \"inconsistent bit counts\");\n //Tracev((stderr,\"\\ngen_codes: max_code %d \", max_code));\n\n for (n = 0; n <= max_code; n++) {\n let len = tree[n * 2 + 1]/*.Len*/;\n if (len === 0) { continue; }\n /* Now reverse the bits */\n tree[n * 2]/*.Code*/ = bi_reverse(next_code[len]++, len);\n\n //Tracecv(tree != static_ltree, (stderr,\"\\nn %3d %c l %2d c %4x (%x) \",\n // n, (isgraph(n) ? n : ' '), len, tree[n].Code, next_code[len]-1));\n }\n};\n\n\n/* ===========================================================================\n * Initialize the various 'constant' tables.\n */\nconst tr_static_init = () => {\n\n let n; /* iterates over tree elements */\n let bits; /* bit counter */\n let length; /* length value */\n let code; /* code value */\n let dist; /* distance index */\n const bl_count = new Array(MAX_BITS + 1);\n /* number of codes at each bit length for an optimal tree */\n\n // do check in _tr_init()\n //if (static_init_done) return;\n\n /* For some embedded targets, global variables are not initialized: */\n/*#ifdef NO_INIT_GLOBAL_POINTERS\n static_l_desc.static_tree = static_ltree;\n static_l_desc.extra_bits = extra_lbits;\n static_d_desc.static_tree = static_dtree;\n static_d_desc.extra_bits = extra_dbits;\n static_bl_desc.extra_bits = extra_blbits;\n#endif*/\n\n /* Initialize the mapping length (0..255) -> length code (0..28) */\n length = 0;\n for (code = 0; code < LENGTH_CODES - 1; code++) {\n base_length[code] = length;\n for (n = 0; n < (1 << extra_lbits[code]); n++) {\n _length_code[length++] = code;\n }\n }\n //Assert (length == 256, \"tr_static_init: length != 256\");\n /* Note that the length 255 (match length 258) can be represented\n * in two different ways: code 284 + 5 bits or code 285, so we\n * overwrite length_code[255] to use the best encoding:\n */\n _length_code[length - 1] = code;\n\n /* Initialize the mapping dist (0..32K) -> dist code (0..29) */\n dist = 0;\n for (code = 0; code < 16; code++) {\n base_dist[code] = dist;\n for (n = 0; n < (1 << extra_dbits[code]); n++) {\n _dist_code[dist++] = code;\n }\n }\n //Assert (dist == 256, \"tr_static_init: dist != 256\");\n dist >>= 7; /* from now on, all distances are divided by 128 */\n for (; code < D_CODES; code++) {\n base_dist[code] = dist << 7;\n for (n = 0; n < (1 << (extra_dbits[code] - 7)); n++) {\n _dist_code[256 + dist++] = code;\n }\n }\n //Assert (dist == 256, \"tr_static_init: 256+dist != 512\");\n\n /* Construct the codes of the static literal tree */\n for (bits = 0; bits <= MAX_BITS; bits++) {\n bl_count[bits] = 0;\n }\n\n n = 0;\n while (n <= 143) {\n static_ltree[n * 2 + 1]/*.Len*/ = 8;\n n++;\n bl_count[8]++;\n }\n while (n <= 255) {\n static_ltree[n * 2 + 1]/*.Len*/ = 9;\n n++;\n bl_count[9]++;\n }\n while (n <= 279) {\n static_ltree[n * 2 + 1]/*.Len*/ = 7;\n n++;\n bl_count[7]++;\n }\n while (n <= 287) {\n static_ltree[n * 2 + 1]/*.Len*/ = 8;\n n++;\n bl_count[8]++;\n }\n /* Codes 286 and 287 do not exist, but we must include them in the\n * tree construction to get a canonical Huffman tree (longest code\n * all ones)\n */\n gen_codes(static_ltree, L_CODES + 1, bl_count);\n\n /* The static distance tree is trivial: */\n for (n = 0; n < D_CODES; n++) {\n static_dtree[n * 2 + 1]/*.Len*/ = 5;\n static_dtree[n * 2]/*.Code*/ = bi_reverse(n, 5);\n }\n\n // Now data ready and we can init static trees\n static_l_desc = new StaticTreeDesc(static_ltree, extra_lbits, LITERALS + 1, L_CODES, MAX_BITS);\n static_d_desc = new StaticTreeDesc(static_dtree, extra_dbits, 0, D_CODES, MAX_BITS);\n static_bl_desc = new StaticTreeDesc(new Array(0), extra_blbits, 0, BL_CODES, MAX_BL_BITS);\n\n //static_init_done = true;\n};\n\n\n/* ===========================================================================\n * Initialize a new block.\n */\nconst init_block = (s) => {\n\n let n; /* iterates over tree elements */\n\n /* Initialize the trees. */\n for (n = 0; n < L_CODES; n++) { s.dyn_ltree[n * 2]/*.Freq*/ = 0; }\n for (n = 0; n < D_CODES; n++) { s.dyn_dtree[n * 2]/*.Freq*/ = 0; }\n for (n = 0; n < BL_CODES; n++) { s.bl_tree[n * 2]/*.Freq*/ = 0; }\n\n s.dyn_ltree[END_BLOCK * 2]/*.Freq*/ = 1;\n s.opt_len = s.static_len = 0;\n s.sym_next = s.matches = 0;\n};\n\n\n/* ===========================================================================\n * Flush the bit buffer and align the output on a byte boundary\n */\nconst bi_windup = (s) =>\n{\n if (s.bi_valid > 8) {\n put_short(s, s.bi_buf);\n } else if (s.bi_valid > 0) {\n //put_byte(s, (Byte)s->bi_buf);\n s.pending_buf[s.pending++] = s.bi_buf;\n }\n s.bi_buf = 0;\n s.bi_valid = 0;\n};\n\n/* ===========================================================================\n * Compares to subtrees, using the tree depth as tie breaker when\n * the subtrees have equal frequency. This minimizes the worst case length.\n */\nconst smaller = (tree, n, m, depth) => {\n\n const _n2 = n * 2;\n const _m2 = m * 2;\n return (tree[_n2]/*.Freq*/ < tree[_m2]/*.Freq*/ ||\n (tree[_n2]/*.Freq*/ === tree[_m2]/*.Freq*/ && depth[n] <= depth[m]));\n};\n\n/* ===========================================================================\n * Restore the heap property by moving down the tree starting at node k,\n * exchanging a node with the smallest of its two sons if necessary, stopping\n * when the heap property is re-established (each father smaller than its\n * two sons).\n */\nconst pqdownheap = (s, tree, k) => {\n// deflate_state *s;\n// ct_data *tree; /* the tree to restore */\n// int k; /* node to move down */\n\n const v = s.heap[k];\n let j = k << 1; /* left son of k */\n while (j <= s.heap_len) {\n /* Set j to the smallest of the two sons: */\n if (j < s.heap_len &&\n smaller(tree, s.heap[j + 1], s.heap[j], s.depth)) {\n j++;\n }\n /* Exit if v is smaller than both sons */\n if (smaller(tree, v, s.heap[j], s.depth)) { break; }\n\n /* Exchange v with the smallest son */\n s.heap[k] = s.heap[j];\n k = j;\n\n /* And continue down the tree, setting j to the left son of k */\n j <<= 1;\n }\n s.heap[k] = v;\n};\n\n\n// inlined manually\n// const SMALLEST = 1;\n\n/* ===========================================================================\n * Send the block data compressed using the given Huffman trees\n */\nconst compress_block = (s, ltree, dtree) => {\n// deflate_state *s;\n// const ct_data *ltree; /* literal tree */\n// const ct_data *dtree; /* distance tree */\n\n let dist; /* distance of matched string */\n let lc; /* match length or unmatched char (if dist == 0) */\n let sx = 0; /* running index in sym_buf */\n let code; /* the code to send */\n let extra; /* number of extra bits to send */\n\n if (s.sym_next !== 0) {\n do {\n dist = s.pending_buf[s.sym_buf + sx++] & 0xff;\n dist += (s.pending_buf[s.sym_buf + sx++] & 0xff) << 8;\n lc = s.pending_buf[s.sym_buf + sx++];\n if (dist === 0) {\n send_code(s, lc, ltree); /* send a literal byte */\n //Tracecv(isgraph(lc), (stderr,\" '%c' \", lc));\n } else {\n /* Here, lc is the match length - MIN_MATCH */\n code = _length_code[lc];\n send_code(s, code + LITERALS + 1, ltree); /* send the length code */\n extra = extra_lbits[code];\n if (extra !== 0) {\n lc -= base_length[code];\n send_bits(s, lc, extra); /* send the extra length bits */\n }\n dist--; /* dist is now the match distance - 1 */\n code = d_code(dist);\n //Assert (code < D_CODES, \"bad d_code\");\n\n send_code(s, code, dtree); /* send the distance code */\n extra = extra_dbits[code];\n if (extra !== 0) {\n dist -= base_dist[code];\n send_bits(s, dist, extra); /* send the extra distance bits */\n }\n } /* literal or match pair ? */\n\n /* Check that the overlay between pending_buf and sym_buf is ok: */\n //Assert(s->pending < s->lit_bufsize + sx, \"pendingBuf overflow\");\n\n } while (sx < s.sym_next);\n }\n\n send_code(s, END_BLOCK, ltree);\n};\n\n\n/* ===========================================================================\n * Construct one Huffman tree and assigns the code bit strings and lengths.\n * Update the total bit length for the current block.\n * IN assertion: the field freq is set for all tree elements.\n * OUT assertions: the fields len and code are set to the optimal bit length\n * and corresponding code. The length opt_len is updated; static_len is\n * also updated if stree is not null. The field max_code is set.\n */\nconst build_tree = (s, desc) => {\n// deflate_state *s;\n// tree_desc *desc; /* the tree descriptor */\n\n const tree = desc.dyn_tree;\n const stree = desc.stat_desc.static_tree;\n const has_stree = desc.stat_desc.has_stree;\n const elems = desc.stat_desc.elems;\n let n, m; /* iterate over heap elements */\n let max_code = -1; /* largest code with non zero frequency */\n let node; /* new node being created */\n\n /* Construct the initial heap, with least frequent element in\n * heap[SMALLEST]. The sons of heap[n] are heap[2*n] and heap[2*n+1].\n * heap[0] is not used.\n */\n s.heap_len = 0;\n s.heap_max = HEAP_SIZE;\n\n for (n = 0; n < elems; n++) {\n if (tree[n * 2]/*.Freq*/ !== 0) {\n s.heap[++s.heap_len] = max_code = n;\n s.depth[n] = 0;\n\n } else {\n tree[n * 2 + 1]/*.Len*/ = 0;\n }\n }\n\n /* The pkzip format requires that at least one distance code exists,\n * and that at least one bit should be sent even if there is only one\n * possible code. So to avoid special checks later on we force at least\n * two codes of non zero frequency.\n */\n while (s.heap_len < 2) {\n node = s.heap[++s.heap_len] = (max_code < 2 ? ++max_code : 0);\n tree[node * 2]/*.Freq*/ = 1;\n s.depth[node] = 0;\n s.opt_len--;\n\n if (has_stree) {\n s.static_len -= stree[node * 2 + 1]/*.Len*/;\n }\n /* node is 0 or 1 so it does not have extra bits */\n }\n desc.max_code = max_code;\n\n /* The elements heap[heap_len/2+1 .. heap_len] are leaves of the tree,\n * establish sub-heaps of increasing lengths:\n */\n for (n = (s.heap_len >> 1/*int /2*/); n >= 1; n--) { pqdownheap(s, tree, n); }\n\n /* Construct the Huffman tree by repeatedly combining the least two\n * frequent nodes.\n */\n node = elems; /* next internal node of the tree */\n do {\n //pqremove(s, tree, n); /* n = node of least frequency */\n /*** pqremove ***/\n n = s.heap[1/*SMALLEST*/];\n s.heap[1/*SMALLEST*/] = s.heap[s.heap_len--];\n pqdownheap(s, tree, 1/*SMALLEST*/);\n /***/\n\n m = s.heap[1/*SMALLEST*/]; /* m = node of next least frequency */\n\n s.heap[--s.heap_max] = n; /* keep the nodes sorted by frequency */\n s.heap[--s.heap_max] = m;\n\n /* Create a new node father of n and m */\n tree[node * 2]/*.Freq*/ = tree[n * 2]/*.Freq*/ + tree[m * 2]/*.Freq*/;\n s.depth[node] = (s.depth[n] >= s.depth[m] ? s.depth[n] : s.depth[m]) + 1;\n tree[n * 2 + 1]/*.Dad*/ = tree[m * 2 + 1]/*.Dad*/ = node;\n\n /* and insert the new node in the heap */\n s.heap[1/*SMALLEST*/] = node++;\n pqdownheap(s, tree, 1/*SMALLEST*/);\n\n } while (s.heap_len >= 2);\n\n s.heap[--s.heap_max] = s.heap[1/*SMALLEST*/];\n\n /* At this point, the fields freq and dad are set. We can now\n * generate the bit lengths.\n */\n gen_bitlen(s, desc);\n\n /* The field len is now set, we can generate the bit codes */\n gen_codes(tree, max_code, s.bl_count);\n};\n\n\n/* ===========================================================================\n * Scan a literal or distance tree to determine the frequencies of the codes\n * in the bit length tree.\n */\nconst scan_tree = (s, tree, max_code) => {\n// deflate_state *s;\n// ct_data *tree; /* the tree to be scanned */\n// int max_code; /* and its largest code of non zero frequency */\n\n let n; /* iterates over all tree elements */\n let prevlen = -1; /* last emitted length */\n let curlen; /* length of current code */\n\n let nextlen = tree[0 * 2 + 1]/*.Len*/; /* length of next code */\n\n let count = 0; /* repeat count of the current code */\n let max_count = 7; /* max repeat count */\n let min_count = 4; /* min repeat count */\n\n if (nextlen === 0) {\n max_count = 138;\n min_count = 3;\n }\n tree[(max_code + 1) * 2 + 1]/*.Len*/ = 0xffff; /* guard */\n\n for (n = 0; n <= max_code; n++) {\n curlen = nextlen;\n nextlen = tree[(n + 1) * 2 + 1]/*.Len*/;\n\n if (++count < max_count && curlen === nextlen) {\n continue;\n\n } else if (count < min_count) {\n s.bl_tree[curlen * 2]/*.Freq*/ += count;\n\n } else if (curlen !== 0) {\n\n if (curlen !== prevlen) { s.bl_tree[curlen * 2]/*.Freq*/++; }\n s.bl_tree[REP_3_6 * 2]/*.Freq*/++;\n\n } else if (count <= 10) {\n s.bl_tree[REPZ_3_10 * 2]/*.Freq*/++;\n\n } else {\n s.bl_tree[REPZ_11_138 * 2]/*.Freq*/++;\n }\n\n count = 0;\n prevlen = curlen;\n\n if (nextlen === 0) {\n max_count = 138;\n min_count = 3;\n\n } else if (curlen === nextlen) {\n max_count = 6;\n min_count = 3;\n\n } else {\n max_count = 7;\n min_count = 4;\n }\n }\n};\n\n\n/* ===========================================================================\n * Send a literal or distance tree in compressed form, using the codes in\n * bl_tree.\n */\nconst send_tree = (s, tree, max_code) => {\n// deflate_state *s;\n// ct_data *tree; /* the tree to be scanned */\n// int max_code; /* and its largest code of non zero frequency */\n\n let n; /* iterates over all tree elements */\n let prevlen = -1; /* last emitted length */\n let curlen; /* length of current code */\n\n let nextlen = tree[0 * 2 + 1]/*.Len*/; /* length of next code */\n\n let count = 0; /* repeat count of the current code */\n let max_count = 7; /* max repeat count */\n let min_count = 4; /* min repeat count */\n\n /* tree[max_code+1].Len = -1; */ /* guard already set */\n if (nextlen === 0) {\n max_count = 138;\n min_count = 3;\n }\n\n for (n = 0; n <= max_code; n++) {\n curlen = nextlen;\n nextlen = tree[(n + 1) * 2 + 1]/*.Len*/;\n\n if (++count < max_count && curlen === nextlen) {\n continue;\n\n } else if (count < min_count) {\n do { send_code(s, curlen, s.bl_tree); } while (--count !== 0);\n\n } else if (curlen !== 0) {\n if (curlen !== prevlen) {\n send_code(s, curlen, s.bl_tree);\n count--;\n }\n //Assert(count >= 3 && count <= 6, \" 3_6?\");\n send_code(s, REP_3_6, s.bl_tree);\n send_bits(s, count - 3, 2);\n\n } else if (count <= 10) {\n send_code(s, REPZ_3_10, s.bl_tree);\n send_bits(s, count - 3, 3);\n\n } else {\n send_code(s, REPZ_11_138, s.bl_tree);\n send_bits(s, count - 11, 7);\n }\n\n count = 0;\n prevlen = curlen;\n if (nextlen === 0) {\n max_count = 138;\n min_count = 3;\n\n } else if (curlen === nextlen) {\n max_count = 6;\n min_count = 3;\n\n } else {\n max_count = 7;\n min_count = 4;\n }\n }\n};\n\n\n/* ===========================================================================\n * Construct the Huffman tree for the bit lengths and return the index in\n * bl_order of the last bit length code to send.\n */\nconst build_bl_tree = (s) => {\n\n let max_blindex; /* index of last bit length code of non zero freq */\n\n /* Determine the bit length frequencies for literal and distance trees */\n scan_tree(s, s.dyn_ltree, s.l_desc.max_code);\n scan_tree(s, s.dyn_dtree, s.d_desc.max_code);\n\n /* Build the bit length tree: */\n build_tree(s, s.bl_desc);\n /* opt_len now includes the length of the tree representations, except\n * the lengths of the bit lengths codes and the 5+5+4 bits for the counts.\n */\n\n /* Determine the number of bit length codes to send. The pkzip format\n * requires that at least 4 bit length codes be sent. (appnote.txt says\n * 3 but the actual value used is 4.)\n */\n for (max_blindex = BL_CODES - 1; max_blindex >= 3; max_blindex--) {\n if (s.bl_tree[bl_order[max_blindex] * 2 + 1]/*.Len*/ !== 0) {\n break;\n }\n }\n /* Update opt_len to include the bit length tree and counts */\n s.opt_len += 3 * (max_blindex + 1) + 5 + 5 + 4;\n //Tracev((stderr, \"\\ndyn trees: dyn %ld, stat %ld\",\n // s->opt_len, s->static_len));\n\n return max_blindex;\n};\n\n\n/* ===========================================================================\n * Send the header for a block using dynamic Huffman trees: the counts, the\n * lengths of the bit length codes, the literal tree and the distance tree.\n * IN assertion: lcodes >= 257, dcodes >= 1, blcodes >= 4.\n */\nconst send_all_trees = (s, lcodes, dcodes, blcodes) => {\n// deflate_state *s;\n// int lcodes, dcodes, blcodes; /* number of codes for each tree */\n\n let rank; /* index in bl_order */\n\n //Assert (lcodes >= 257 && dcodes >= 1 && blcodes >= 4, \"not enough codes\");\n //Assert (lcodes <= L_CODES && dcodes <= D_CODES && blcodes <= BL_CODES,\n // \"too many codes\");\n //Tracev((stderr, \"\\nbl counts: \"));\n send_bits(s, lcodes - 257, 5); /* not +255 as stated in appnote.txt */\n send_bits(s, dcodes - 1, 5);\n send_bits(s, blcodes - 4, 4); /* not -3 as stated in appnote.txt */\n for (rank = 0; rank < blcodes; rank++) {\n //Tracev((stderr, \"\\nbl code %2d \", bl_order[rank]));\n send_bits(s, s.bl_tree[bl_order[rank] * 2 + 1]/*.Len*/, 3);\n }\n //Tracev((stderr, \"\\nbl tree: sent %ld\", s->bits_sent));\n\n send_tree(s, s.dyn_ltree, lcodes - 1); /* literal tree */\n //Tracev((stderr, \"\\nlit tree: sent %ld\", s->bits_sent));\n\n send_tree(s, s.dyn_dtree, dcodes - 1); /* distance tree */\n //Tracev((stderr, \"\\ndist tree: sent %ld\", s->bits_sent));\n};\n\n\n/* ===========================================================================\n * Check if the data type is TEXT or BINARY, using the following algorithm:\n * - TEXT if the two conditions below are satisfied:\n * a) There are no non-portable control characters belonging to the\n * \"block list\" (0..6, 14..25, 28..31).\n * b) There is at least one printable character belonging to the\n * \"allow list\" (9 {TAB}, 10 {LF}, 13 {CR}, 32..255).\n * - BINARY otherwise.\n * - The following partially-portable control characters form a\n * \"gray list\" that is ignored in this detection algorithm:\n * (7 {BEL}, 8 {BS}, 11 {VT}, 12 {FF}, 26 {SUB}, 27 {ESC}).\n * IN assertion: the fields Freq of dyn_ltree are set.\n */\nconst detect_data_type = (s) => {\n /* block_mask is the bit mask of block-listed bytes\n * set bits 0..6, 14..25, and 28..31\n * 0xf3ffc07f = binary 11110011111111111100000001111111\n */\n let block_mask = 0xf3ffc07f;\n let n;\n\n /* Check for non-textual (\"block-listed\") bytes. */\n for (n = 0; n <= 31; n++, block_mask >>>= 1) {\n if ((block_mask & 1) && (s.dyn_ltree[n * 2]/*.Freq*/ !== 0)) {\n return Z_BINARY;\n }\n }\n\n /* Check for textual (\"allow-listed\") bytes. */\n if (s.dyn_ltree[9 * 2]/*.Freq*/ !== 0 || s.dyn_ltree[10 * 2]/*.Freq*/ !== 0 ||\n s.dyn_ltree[13 * 2]/*.Freq*/ !== 0) {\n return Z_TEXT;\n }\n for (n = 32; n < LITERALS; n++) {\n if (s.dyn_ltree[n * 2]/*.Freq*/ !== 0) {\n return Z_TEXT;\n }\n }\n\n /* There are no \"block-listed\" or \"allow-listed\" bytes:\n * this stream either is empty or has tolerated (\"gray-listed\") bytes only.\n */\n return Z_BINARY;\n};\n\n\nlet static_init_done = false;\n\n/* ===========================================================================\n * Initialize the tree data structures for a new zlib stream.\n */\nconst _tr_init = (s) =>\n{\n\n if (!static_init_done) {\n tr_static_init();\n static_init_done = true;\n }\n\n s.l_desc = new TreeDesc(s.dyn_ltree, static_l_desc);\n s.d_desc = new TreeDesc(s.dyn_dtree, static_d_desc);\n s.bl_desc = new TreeDesc(s.bl_tree, static_bl_desc);\n\n s.bi_buf = 0;\n s.bi_valid = 0;\n\n /* Initialize the first block of the first file: */\n init_block(s);\n};\n\n\n/* ===========================================================================\n * Send a stored block\n */\nconst _tr_stored_block = (s, buf, stored_len, last) => {\n//DeflateState *s;\n//charf *buf; /* input block */\n//ulg stored_len; /* length of input block */\n//int last; /* one if this is the last block for a file */\n\n send_bits(s, (STORED_BLOCK << 1) + (last ? 1 : 0), 3); /* send block type */\n bi_windup(s); /* align on byte boundary */\n put_short(s, stored_len);\n put_short(s, ~stored_len);\n if (stored_len) {\n s.pending_buf.set(s.window.subarray(buf, buf + stored_len), s.pending);\n }\n s.pending += stored_len;\n};\n\n\n/* ===========================================================================\n * Send one empty static block to give enough lookahead for inflate.\n * This takes 10 bits, of which 7 may remain in the bit buffer.\n */\nconst _tr_align = (s) => {\n send_bits(s, STATIC_TREES << 1, 3);\n send_code(s, END_BLOCK, static_ltree);\n bi_flush(s);\n};\n\n\n/* ===========================================================================\n * Determine the best encoding for the current block: dynamic trees, static\n * trees or store, and write out the encoded block.\n */\nconst _tr_flush_block = (s, buf, stored_len, last) => {\n//DeflateState *s;\n//charf *buf; /* input block, or NULL if too old */\n//ulg stored_len; /* length of input block */\n//int last; /* one if this is the last block for a file */\n\n let opt_lenb, static_lenb; /* opt_len and static_len in bytes */\n let max_blindex = 0; /* index of last bit length code of non zero freq */\n\n /* Build the Huffman trees unless a stored block is forced */\n if (s.level > 0) {\n\n /* Check if the file is binary or text */\n if (s.strm.data_type === Z_UNKNOWN) {\n s.strm.data_type = detect_data_type(s);\n }\n\n /* Construct the literal and distance trees */\n build_tree(s, s.l_desc);\n // Tracev((stderr, \"\\nlit data: dyn %ld, stat %ld\", s->opt_len,\n // s->static_len));\n\n build_tree(s, s.d_desc);\n // Tracev((stderr, \"\\ndist data: dyn %ld, stat %ld\", s->opt_len,\n // s->static_len));\n /* At this point, opt_len and static_len are the total bit lengths of\n * the compressed block data, excluding the tree representations.\n */\n\n /* Build the bit length tree for the above two trees, and get the index\n * in bl_order of the last bit length code to send.\n */\n max_blindex = build_bl_tree(s);\n\n /* Determine the best encoding. Compute the block lengths in bytes. */\n opt_lenb = (s.opt_len + 3 + 7) >>> 3;\n static_lenb = (s.static_len + 3 + 7) >>> 3;\n\n // Tracev((stderr, \"\\nopt %lu(%lu) stat %lu(%lu) stored %lu lit %u \",\n // opt_lenb, s->opt_len, static_lenb, s->static_len, stored_len,\n // s->sym_next / 3));\n\n if (static_lenb <= opt_lenb) { opt_lenb = static_lenb; }\n\n } else {\n // Assert(buf != (char*)0, \"lost buf\");\n opt_lenb = static_lenb = stored_len + 5; /* force a stored block */\n }\n\n if ((stored_len + 4 <= opt_lenb) && (buf !== -1)) {\n /* 4: two words for the lengths */\n\n /* The test buf != NULL is only necessary if LIT_BUFSIZE > WSIZE.\n * Otherwise we can't have processed more than WSIZE input bytes since\n * the last block flush, because compression would have been\n * successful. If LIT_BUFSIZE <= WSIZE, it is never too late to\n * transform a block into a stored block.\n */\n _tr_stored_block(s, buf, stored_len, last);\n\n } else if (s.strategy === Z_FIXED || static_lenb === opt_lenb) {\n\n send_bits(s, (STATIC_TREES << 1) + (last ? 1 : 0), 3);\n compress_block(s, static_ltree, static_dtree);\n\n } else {\n send_bits(s, (DYN_TREES << 1) + (last ? 1 : 0), 3);\n send_all_trees(s, s.l_desc.max_code + 1, s.d_desc.max_code + 1, max_blindex + 1);\n compress_block(s, s.dyn_ltree, s.dyn_dtree);\n }\n // Assert (s->compressed_len == s->bits_sent, \"bad compressed size\");\n /* The above check is made mod 2^32, for files larger than 512 MB\n * and uLong implemented on 32 bits.\n */\n init_block(s);\n\n if (last) {\n bi_windup(s);\n }\n // Tracev((stderr,\"\\ncomprlen %lu(%lu) \", s->compressed_len>>3,\n // s->compressed_len-7*last));\n};\n\n/* ===========================================================================\n * Save the match info and tally the frequency counts. Return true if\n * the current block must be flushed.\n */\nconst _tr_tally = (s, dist, lc) => {\n// deflate_state *s;\n// unsigned dist; /* distance of matched string */\n// unsigned lc; /* match length-MIN_MATCH or unmatched char (if dist==0) */\n\n s.pending_buf[s.sym_buf + s.sym_next++] = dist;\n s.pending_buf[s.sym_buf + s.sym_next++] = dist >> 8;\n s.pending_buf[s.sym_buf + s.sym_next++] = lc;\n if (dist === 0) {\n /* lc is the unmatched char */\n s.dyn_ltree[lc * 2]/*.Freq*/++;\n } else {\n s.matches++;\n /* Here, lc is the match length - MIN_MATCH */\n dist--; /* dist = match distance - 1 */\n //Assert((ush)dist < (ush)MAX_DIST(s) &&\n // (ush)lc <= (ush)(MAX_MATCH-MIN_MATCH) &&\n // (ush)d_code(dist) < (ush)D_CODES, \"_tr_tally: bad match\");\n\n s.dyn_ltree[(_length_code[lc] + LITERALS + 1) * 2]/*.Freq*/++;\n s.dyn_dtree[d_code(dist) * 2]/*.Freq*/++;\n }\n\n return (s.sym_next === s.sym_end);\n};\n\nmodule.exports._tr_init = _tr_init;\nmodule.exports._tr_stored_block = _tr_stored_block;\nmodule.exports._tr_flush_block = _tr_flush_block;\nmodule.exports._tr_tally = _tr_tally;\nmodule.exports._tr_align = _tr_align;\n","var baseIsArguments = require('./_baseIsArguments'),\n isObjectLike = require('./isObjectLike');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Built-in value references. */\nvar propertyIsEnumerable = objectProto.propertyIsEnumerable;\n\n/**\n * Checks if `value` is likely an `arguments` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n * else `false`.\n * @example\n *\n * _.isArguments(function() { return arguments; }());\n * // => true\n *\n * _.isArguments([1, 2, 3]);\n * // => false\n */\nvar isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {\n return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&\n !propertyIsEnumerable.call(value, 'callee');\n};\n\nmodule.exports = isArguments;\n","'use strict';\n\n\nconst _has = (obj, key) => {\n return Object.prototype.hasOwnProperty.call(obj, key);\n};\n\nmodule.exports.assign = function (obj /*from1, from2, from3, ...*/) {\n const sources = Array.prototype.slice.call(arguments, 1);\n while (sources.length) {\n const source = sources.shift();\n if (!source) { continue; }\n\n if (typeof source !== 'object') {\n throw new TypeError(source + 'must be non-object');\n }\n\n for (const p in source) {\n if (_has(source, p)) {\n obj[p] = source[p];\n }\n }\n }\n\n return obj;\n};\n\n\n// Join array of chunks to single array.\nmodule.exports.flattenChunks = (chunks) => {\n // calculate data length\n let len = 0;\n\n for (let i = 0, l = chunks.length; i < l; i++) {\n len += chunks[i].length;\n }\n\n // join chunks\n const result = new Uint8Array(len);\n\n for (let i = 0, pos = 0, l = chunks.length; i < l; i++) {\n let chunk = chunks[i];\n result.set(chunk, pos);\n pos += chunk.length;\n }\n\n return result;\n};\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n return nativeObjectToString.call(value);\n}\n\nmodule.exports = objectToString;\n","/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/** Used to detect unsigned integer values. */\nvar reIsUint = /^(?:0|[1-9]\\d*)$/;\n\n/**\n * Checks if `value` is a valid array-like index.\n *\n * @private\n * @param {*} value The value to check.\n * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.\n * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.\n */\nfunction isIndex(value, length) {\n var type = typeof value;\n length = length == null ? MAX_SAFE_INTEGER : length;\n\n return !!length &&\n (type == 'number' ||\n (type != 'symbol' && reIsUint.test(value))) &&\n (value > -1 && value % 1 == 0 && value < length);\n}\n\nmodule.exports = isIndex;\n","/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return value != null && typeof value == 'object';\n}\n\nmodule.exports = isObjectLike;\n","var copyObject = require('./_copyObject'),\n keysIn = require('./keysIn');\n\n/**\n * Converts `value` to a plain object flattening inherited enumerable string\n * keyed properties of `value` to own properties of the plain object.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {Object} Returns the converted plain object.\n * @example\n *\n * function Foo() {\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.assign({ 'a': 1 }, new Foo);\n * // => { 'a': 1, 'b': 2 }\n *\n * _.assign({ 'a': 1 }, _.toPlainObject(new Foo));\n * // => { 'a': 1, 'b': 2, 'c': 3 }\n */\nfunction toPlainObject(value) {\n return copyObject(value, keysIn(value));\n}\n\nmodule.exports = toPlainObject;\n","/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\nmodule.exports = freeGlobal;\n","var baseGetTag = require('./_baseGetTag'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]';\n\n/**\n * The base implementation of `_.isArguments`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n */\nfunction baseIsArguments(value) {\n return isObjectLike(value) && baseGetTag(value) == argsTag;\n}\n\nmodule.exports = baseIsArguments;\n","var iota = require(\"iota-array\")\nvar isBuffer = require(\"is-buffer\")\n\nvar hasTypedArrays = ((typeof Float64Array) !== \"undefined\")\n\nfunction compare1st(a, b) {\n return a[0] - b[0]\n}\n\nfunction order() {\n var stride = this.stride\n var terms = new Array(stride.length)\n var i\n for(i=0; i<terms.length; ++i) {\n terms[i] = [Math.abs(stride[i]), i]\n }\n terms.sort(compare1st)\n var result = new Array(terms.length)\n for(i=0; i<result.length; ++i) {\n result[i] = terms[i][1]\n }\n return result\n}\n\nfunction compileConstructor(dtype, dimension) {\n var className = [\"View\", dimension, \"d\", dtype].join(\"\")\n if(dimension < 0) {\n className = \"View_Nil\" + dtype\n }\n var useGetters = (dtype === \"generic\")\n\n if(dimension === -1) {\n //Special case for trivial arrays\n var code =\n \"function \"+className+\"(a){this.data=a;};\\\nvar proto=\"+className+\".prototype;\\\nproto.dtype='\"+dtype+\"';\\\nproto.index=function(){return -1};\\\nproto.size=0;\\\nproto.dimension=-1;\\\nproto.shape=proto.stride=proto.order=[];\\\nproto.lo=proto.hi=proto.transpose=proto.step=\\\nfunction(){return new \"+className+\"(this.data);};\\\nproto.get=proto.set=function(){};\\\nproto.pick=function(){return null};\\\nreturn function construct_\"+className+\"(a){return new \"+className+\"(a);}\"\n var procedure = new Function(code)\n return procedure()\n } else if(dimension === 0) {\n //Special case for 0d arrays\n var code =\n \"function \"+className+\"(a,d) {\\\nthis.data = a;\\\nthis.offset = d\\\n};\\\nvar proto=\"+className+\".prototype;\\\nproto.dtype='\"+dtype+\"';\\\nproto.index=function(){return this.offset};\\\nproto.dimension=0;\\\nproto.size=1;\\\nproto.shape=\\\nproto.stride=\\\nproto.order=[];\\\nproto.lo=\\\nproto.hi=\\\nproto.transpose=\\\nproto.step=function \"+className+\"_copy() {\\\nreturn new \"+className+\"(this.data,this.offset)\\\n};\\\nproto.pick=function \"+className+\"_pick(){\\\nreturn TrivialArray(this.data);\\\n};\\\nproto.valueOf=proto.get=function \"+className+\"_get(){\\\nreturn \"+(useGetters ? \"this.data.get(this.offset)\" : \"this.data[this.offset]\")+\n\"};\\\nproto.set=function \"+className+\"_set(v){\\\nreturn \"+(useGetters ? \"this.data.set(this.offset,v)\" : \"this.data[this.offset]=v\")+\"\\\n};\\\nreturn function construct_\"+className+\"(a,b,c,d){return new \"+className+\"(a,d)}\"\n var procedure = new Function(\"TrivialArray\", code)\n return procedure(CACHED_CONSTRUCTORS[dtype][0])\n }\n\n var code = [\"'use strict'\"]\n\n //Create constructor for view\n var indices = iota(dimension)\n var args = indices.map(function(i) { return \"i\"+i })\n var index_str = \"this.offset+\" + indices.map(function(i) {\n return \"this.stride[\" + i + \"]*i\" + i\n }).join(\"+\")\n var shapeArg = indices.map(function(i) {\n return \"b\"+i\n }).join(\",\")\n var strideArg = indices.map(function(i) {\n return \"c\"+i\n }).join(\",\")\n code.push(\n \"function \"+className+\"(a,\" + shapeArg + \",\" + strideArg + \",d){this.data=a\",\n \"this.shape=[\" + shapeArg + \"]\",\n \"this.stride=[\" + strideArg + \"]\",\n \"this.offset=d|0}\",\n \"var proto=\"+className+\".prototype\",\n \"proto.dtype='\"+dtype+\"'\",\n \"proto.dimension=\"+dimension)\n\n //view.size:\n code.push(\"Object.defineProperty(proto,'size',{get:function \"+className+\"_size(){\\\nreturn \"+indices.map(function(i) { return \"this.shape[\"+i+\"]\" }).join(\"*\"),\n\"}})\")\n\n //view.order:\n if(dimension === 1) {\n code.push(\"proto.order=[0]\")\n } else {\n code.push(\"Object.defineProperty(proto,'order',{get:\")\n if(dimension < 4) {\n code.push(\"function \"+className+\"_order(){\")\n if(dimension === 2) {\n code.push(\"return (Math.abs(this.stride[0])>Math.abs(this.stride[1]))?[1,0]:[0,1]}})\")\n } else if(dimension === 3) {\n code.push(\n\"var s0=Math.abs(this.stride[0]),s1=Math.abs(this.stride[1]),s2=Math.abs(this.stride[2]);\\\nif(s0>s1){\\\nif(s1>s2){\\\nreturn [2,1,0];\\\n}else if(s0>s2){\\\nreturn [1,2,0];\\\n}else{\\\nreturn [1,0,2];\\\n}\\\n}else if(s0>s2){\\\nreturn [2,0,1];\\\n}else if(s2>s1){\\\nreturn [0,1,2];\\\n}else{\\\nreturn [0,2,1];\\\n}}})\")\n }\n } else {\n code.push(\"ORDER})\")\n }\n }\n\n //view.set(i0, ..., v):\n code.push(\n\"proto.set=function \"+className+\"_set(\"+args.join(\",\")+\",v){\")\n if(useGetters) {\n code.push(\"return this.data.set(\"+index_str+\",v)}\")\n } else {\n code.push(\"return this.data[\"+index_str+\"]=v}\")\n }\n\n //view.get(i0, ...):\n code.push(\"proto.get=function \"+className+\"_get(\"+args.join(\",\")+\"){\")\n if(useGetters) {\n code.push(\"return this.data.get(\"+index_str+\")}\")\n } else {\n code.push(\"return this.data[\"+index_str+\"]}\")\n }\n\n //view.index:\n code.push(\n \"proto.index=function \"+className+\"_index(\", args.join(), \"){return \"+index_str+\"}\")\n\n //view.hi():\n code.push(\"proto.hi=function \"+className+\"_hi(\"+args.join(\",\")+\"){return new \"+className+\"(this.data,\"+\n indices.map(function(i) {\n return [\"(typeof i\",i,\"!=='number'||i\",i,\"<0)?this.shape[\", i, \"]:i\", i,\"|0\"].join(\"\")\n }).join(\",\")+\",\"+\n indices.map(function(i) {\n return \"this.stride[\"+i + \"]\"\n }).join(\",\")+\",this.offset)}\")\n\n //view.lo():\n var a_vars = indices.map(function(i) { return \"a\"+i+\"=this.shape[\"+i+\"]\" })\n var c_vars = indices.map(function(i) { return \"c\"+i+\"=this.stride[\"+i+\"]\" })\n code.push(\"proto.lo=function \"+className+\"_lo(\"+args.join(\",\")+\"){var b=this.offset,d=0,\"+a_vars.join(\",\")+\",\"+c_vars.join(\",\"))\n for(var i=0; i<dimension; ++i) {\n code.push(\n\"if(typeof i\"+i+\"==='number'&&i\"+i+\">=0){\\\nd=i\"+i+\"|0;\\\nb+=c\"+i+\"*d;\\\na\"+i+\"-=d}\")\n }\n code.push(\"return new \"+className+\"(this.data,\"+\n indices.map(function(i) {\n return \"a\"+i\n }).join(\",\")+\",\"+\n indices.map(function(i) {\n return \"c\"+i\n }).join(\",\")+\",b)}\")\n\n //view.step():\n code.push(\"proto.step=function \"+className+\"_step(\"+args.join(\",\")+\"){var \"+\n indices.map(function(i) {\n return \"a\"+i+\"=this.shape[\"+i+\"]\"\n }).join(\",\")+\",\"+\n indices.map(function(i) {\n return \"b\"+i+\"=this.stride[\"+i+\"]\"\n }).join(\",\")+\",c=this.offset,d=0,ceil=Math.ceil\")\n for(var i=0; i<dimension; ++i) {\n code.push(\n\"if(typeof i\"+i+\"==='number'){\\\nd=i\"+i+\"|0;\\\nif(d<0){\\\nc+=b\"+i+\"*(a\"+i+\"-1);\\\na\"+i+\"=ceil(-a\"+i+\"/d)\\\n}else{\\\na\"+i+\"=ceil(a\"+i+\"/d)\\\n}\\\nb\"+i+\"*=d\\\n}\")\n }\n code.push(\"return new \"+className+\"(this.data,\"+\n indices.map(function(i) {\n return \"a\" + i\n }).join(\",\")+\",\"+\n indices.map(function(i) {\n return \"b\" + i\n }).join(\",\")+\",c)}\")\n\n //view.transpose():\n var tShape = new Array(dimension)\n var tStride = new Array(dimension)\n for(var i=0; i<dimension; ++i) {\n tShape[i] = \"a[i\"+i+\"]\"\n tStride[i] = \"b[i\"+i+\"]\"\n }\n code.push(\"proto.transpose=function \"+className+\"_transpose(\"+args+\"){\"+\n args.map(function(n,idx) { return n + \"=(\" + n + \"===undefined?\" + idx + \":\" + n + \"|0)\"}).join(\";\"),\n \"var a=this.shape,b=this.stride;return new \"+className+\"(this.data,\"+tShape.join(\",\")+\",\"+tStride.join(\",\")+\",this.offset)}\")\n\n //view.pick():\n code.push(\"proto.pick=function \"+className+\"_pick(\"+args+\"){var a=[],b=[],c=this.offset\")\n for(var i=0; i<dimension; ++i) {\n code.push(\"if(typeof i\"+i+\"==='number'&&i\"+i+\">=0){c=(c+this.stride[\"+i+\"]*i\"+i+\")|0}else{a.push(this.shape[\"+i+\"]);b.push(this.stride[\"+i+\"])}\")\n }\n code.push(\"var ctor=CTOR_LIST[a.length+1];return ctor(this.data,a,b,c)}\")\n\n //Add return statement\n code.push(\"return function construct_\"+className+\"(data,shape,stride,offset){return new \"+className+\"(data,\"+\n indices.map(function(i) {\n return \"shape[\"+i+\"]\"\n }).join(\",\")+\",\"+\n indices.map(function(i) {\n return \"stride[\"+i+\"]\"\n }).join(\",\")+\",offset)}\")\n\n //Compile procedure\n var procedure = new Function(\"CTOR_LIST\", \"ORDER\", code.join(\"\\n\"))\n return procedure(CACHED_CONSTRUCTORS[dtype], order)\n}\n\nfunction arrayDType(data) {\n if(isBuffer(data)) {\n return \"buffer\"\n }\n if(hasTypedArrays) {\n switch(Object.prototype.toString.call(data)) {\n case \"[object Float64Array]\":\n return \"float64\"\n case \"[object Float32Array]\":\n return \"float32\"\n case \"[object Int8Array]\":\n return \"int8\"\n case \"[object Int16Array]\":\n return \"int16\"\n case \"[object Int32Array]\":\n return \"int32\"\n case \"[object Uint8Array]\":\n return \"uint8\"\n case \"[object Uint16Array]\":\n return \"uint16\"\n case \"[object Uint32Array]\":\n return \"uint32\"\n case \"[object Uint8ClampedArray]\":\n return \"uint8_clamped\"\n case \"[object BigInt64Array]\":\n return \"bigint64\"\n case \"[object BigUint64Array]\":\n return \"biguint64\"\n }\n }\n if(Array.isArray(data)) {\n return \"array\"\n }\n return \"generic\"\n}\n\nvar CACHED_CONSTRUCTORS = {\n \"float32\":[],\n \"float64\":[],\n \"int8\":[],\n \"int16\":[],\n \"int32\":[],\n \"uint8\":[],\n \"uint16\":[],\n \"uint32\":[],\n \"array\":[],\n \"uint8_clamped\":[],\n \"bigint64\": [],\n \"biguint64\": [],\n \"buffer\":[],\n \"generic\":[]\n}\n\n;(function() {\n for(var id in CACHED_CONSTRUCTORS) {\n CACHED_CONSTRUCTORS[id].push(compileConstructor(id, -1))\n }\n});\n\nfunction wrappedNDArrayCtor(data, shape, stride, offset) {\n if(data === undefined) {\n var ctor = CACHED_CONSTRUCTORS.array[0]\n return ctor([])\n } else if(typeof data === \"number\") {\n data = [data]\n }\n if(shape === undefined) {\n shape = [ data.length ]\n }\n var d = shape.length\n if(stride === undefined) {\n stride = new Array(d)\n for(var i=d-1, sz=1; i>=0; --i) {\n stride[i] = sz\n sz *= shape[i]\n }\n }\n if(offset === undefined) {\n offset = 0\n for(var i=0; i<d; ++i) {\n if(stride[i] < 0) {\n offset -= (shape[i]-1)*stride[i]\n }\n }\n }\n var dtype = arrayDType(data)\n var ctor_list = CACHED_CONSTRUCTORS[dtype]\n while(ctor_list.length <= d+1) {\n ctor_list.push(compileConstructor(dtype, ctor_list.length-1))\n }\n var ctor = ctor_list[d+1]\n return ctor(data, shape, stride, offset)\n}\n\nmodule.exports = wrappedNDArrayCtor\n","'use strict';\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\nconst MAXBITS = 15;\nconst ENOUGH_LENS = 852;\nconst ENOUGH_DISTS = 592;\n//const ENOUGH = (ENOUGH_LENS+ENOUGH_DISTS);\n\nconst CODES = 0;\nconst LENS = 1;\nconst DISTS = 2;\n\nconst lbase = new Uint16Array([ /* Length codes 257..285 base */\n 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31,\n 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0\n]);\n\nconst lext = new Uint8Array([ /* Length codes 257..285 extra */\n 16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18,\n 19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 16, 72, 78\n]);\n\nconst dbase = new Uint16Array([ /* Distance codes 0..29 base */\n 1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193,\n 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145,\n 8193, 12289, 16385, 24577, 0, 0\n]);\n\nconst dext = new Uint8Array([ /* Distance codes 0..29 extra */\n 16, 16, 16, 16, 17, 17, 18, 18, 19, 19, 20, 20, 21, 21, 22, 22,\n 23, 23, 24, 24, 25, 25, 26, 26, 27, 27,\n 28, 28, 29, 29, 64, 64\n]);\n\nconst inflate_table = (type, lens, lens_index, codes, table, table_index, work, opts) =>\n{\n const bits = opts.bits;\n //here = opts.here; /* table entry for duplication */\n\n let len = 0; /* a code's length in bits */\n let sym = 0; /* index of code symbols */\n let min = 0, max = 0; /* minimum and maximum code lengths */\n let root = 0; /* number of index bits for root table */\n let curr = 0; /* number of index bits for current table */\n let drop = 0; /* code bits to drop for sub-table */\n let left = 0; /* number of prefix codes available */\n let used = 0; /* code entries in table used */\n let huff = 0; /* Huffman code */\n let incr; /* for incrementing code, index */\n let fill; /* index for replicating entries */\n let low; /* low bits for current root entry */\n let mask; /* mask for low root bits */\n let next; /* next available space in table */\n let base = null; /* base value table to use */\n// let shoextra; /* extra bits table to use */\n let match; /* use base and extra for symbol >= match */\n const count = new Uint16Array(MAXBITS + 1); //[MAXBITS+1]; /* number of codes of each length */\n const offs = new Uint16Array(MAXBITS + 1); //[MAXBITS+1]; /* offsets in table for each length */\n let extra = null;\n\n let here_bits, here_op, here_val;\n\n /*\n Process a set of code lengths to create a canonical Huffman code. The\n code lengths are lens[0..codes-1]. Each length corresponds to the\n symbols 0..codes-1. The Huffman code is generated by first sorting the\n symbols by length from short to long, and retaining the symbol order\n for codes with equal lengths. Then the code starts with all zero bits\n for the first code of the shortest length, and the codes are integer\n increments for the same length, and zeros are appended as the length\n increases. For the deflate format, these bits are stored backwards\n from their more natural integer increment ordering, and so when the\n decoding tables are built in the large loop below, the integer codes\n are incremented backwards.\n\n This routine assumes, but does not check, that all of the entries in\n lens[] are in the range 0..MAXBITS. The caller must assure this.\n 1..MAXBITS is interpreted as that code length. zero means that that\n symbol does not occur in this code.\n\n The codes are sorted by computing a count of codes for each length,\n creating from that a table of starting indices for each length in the\n sorted table, and then entering the symbols in order in the sorted\n table. The sorted table is work[], with that space being provided by\n the caller.\n\n The length counts are used for other purposes as well, i.e. finding\n the minimum and maximum length codes, determining if there are any\n codes at all, checking for a valid set of lengths, and looking ahead\n at length counts to determine sub-table sizes when building the\n decoding tables.\n */\n\n /* accumulate lengths for codes (assumes lens[] all in 0..MAXBITS) */\n for (len = 0; len <= MAXBITS; len++) {\n count[len] = 0;\n }\n for (sym = 0; sym < codes; sym++) {\n count[lens[lens_index + sym]]++;\n }\n\n /* bound code lengths, force root to be within code lengths */\n root = bits;\n for (max = MAXBITS; max >= 1; max--) {\n if (count[max] !== 0) { break; }\n }\n if (root > max) {\n root = max;\n }\n if (max === 0) { /* no symbols to code at all */\n //table.op[opts.table_index] = 64; //here.op = (var char)64; /* invalid code marker */\n //table.bits[opts.table_index] = 1; //here.bits = (var char)1;\n //table.val[opts.table_index++] = 0; //here.val = (var short)0;\n table[table_index++] = (1 << 24) | (64 << 16) | 0;\n\n\n //table.op[opts.table_index] = 64;\n //table.bits[opts.table_index] = 1;\n //table.val[opts.table_index++] = 0;\n table[table_index++] = (1 << 24) | (64 << 16) | 0;\n\n opts.bits = 1;\n return 0; /* no symbols, but wait for decoding to report error */\n }\n for (min = 1; min < max; min++) {\n if (count[min] !== 0) { break; }\n }\n if (root < min) {\n root = min;\n }\n\n /* check for an over-subscribed or incomplete set of lengths */\n left = 1;\n for (len = 1; len <= MAXBITS; len++) {\n left <<= 1;\n left -= count[len];\n if (left < 0) {\n return -1;\n } /* over-subscribed */\n }\n if (left > 0 && (type === CODES || max !== 1)) {\n return -1; /* incomplete set */\n }\n\n /* generate offsets into symbol table for each length for sorting */\n offs[1] = 0;\n for (len = 1; len < MAXBITS; len++) {\n offs[len + 1] = offs[len] + count[len];\n }\n\n /* sort symbols by length, by symbol order within each length */\n for (sym = 0; sym < codes; sym++) {\n if (lens[lens_index + sym] !== 0) {\n work[offs[lens[lens_index + sym]]++] = sym;\n }\n }\n\n /*\n Create and fill in decoding tables. In this loop, the table being\n filled is at next and has curr index bits. The code being used is huff\n with length len. That code is converted to an index by dropping drop\n bits off of the bottom. For codes where len is less than drop + curr,\n those top drop + curr - len bits are incremented through all values to\n fill the table with replicated entries.\n\n root is the number of index bits for the root table. When len exceeds\n root, sub-tables are created pointed to by the root entry with an index\n of the low root bits of huff. This is saved in low to check for when a\n new sub-table should be started. drop is zero when the root table is\n being filled, and drop is root when sub-tables are being filled.\n\n When a new sub-table is needed, it is necessary to look ahead in the\n code lengths to determine what size sub-table is needed. The length\n counts are used for this, and so count[] is decremented as codes are\n entered in the tables.\n\n used keeps track of how many table entries have been allocated from the\n provided *table space. It is checked for LENS and DIST tables against\n the constants ENOUGH_LENS and ENOUGH_DISTS to guard against changes in\n the initial root table size constants. See the comments in inftrees.h\n for more information.\n\n sym increments through all symbols, and the loop terminates when\n all codes of length max, i.e. all codes, have been processed. This\n routine permits incomplete codes, so another loop after this one fills\n in the rest of the decoding tables with invalid code markers.\n */\n\n /* set up for code type */\n // poor man optimization - use if-else instead of switch,\n // to avoid deopts in old v8\n if (type === CODES) {\n base = extra = work; /* dummy value--not used */\n match = 20;\n\n } else if (type === LENS) {\n base = lbase;\n extra = lext;\n match = 257;\n\n } else { /* DISTS */\n base = dbase;\n extra = dext;\n match = 0;\n }\n\n /* initialize opts for loop */\n huff = 0; /* starting code */\n sym = 0; /* starting code symbol */\n len = min; /* starting code length */\n next = table_index; /* current table to fill in */\n curr = root; /* current table index bits */\n drop = 0; /* current bits to drop from code for index */\n low = -1; /* trigger new sub-table when len > root */\n used = 1 << root; /* use root table entries */\n mask = used - 1; /* mask for comparing low */\n\n /* check available table space */\n if ((type === LENS && used > ENOUGH_LENS) ||\n (type === DISTS && used > ENOUGH_DISTS)) {\n return 1;\n }\n\n /* process all codes and make table entries */\n for (;;) {\n /* create table entry */\n here_bits = len - drop;\n if (work[sym] + 1 < match) {\n here_op = 0;\n here_val = work[sym];\n }\n else if (work[sym] >= match) {\n here_op = extra[work[sym] - match];\n here_val = base[work[sym] - match];\n }\n else {\n here_op = 32 + 64; /* end of block */\n here_val = 0;\n }\n\n /* replicate for those indices with low len bits equal to huff */\n incr = 1 << (len - drop);\n fill = 1 << curr;\n min = fill; /* save offset to next table */\n do {\n fill -= incr;\n table[next + (huff >> drop) + fill] = (here_bits << 24) | (here_op << 16) | here_val |0;\n } while (fill !== 0);\n\n /* backwards increment the len-bit code huff */\n incr = 1 << (len - 1);\n while (huff & incr) {\n incr >>= 1;\n }\n if (incr !== 0) {\n huff &= incr - 1;\n huff += incr;\n } else {\n huff = 0;\n }\n\n /* go to next symbol, update count, len */\n sym++;\n if (--count[len] === 0) {\n if (len === max) { break; }\n len = lens[lens_index + work[sym]];\n }\n\n /* create new sub-table if needed */\n if (len > root && (huff & mask) !== low) {\n /* if first time, transition to sub-tables */\n if (drop === 0) {\n drop = root;\n }\n\n /* increment past last table */\n next += min; /* here min is 1 << curr */\n\n /* determine length of next table */\n curr = len - drop;\n left = 1 << curr;\n while (curr + drop < max) {\n left -= count[curr + drop];\n if (left <= 0) { break; }\n curr++;\n left <<= 1;\n }\n\n /* check for enough space */\n used += 1 << curr;\n if ((type === LENS && used > ENOUGH_LENS) ||\n (type === DISTS && used > ENOUGH_DISTS)) {\n return 1;\n }\n\n /* point entry in root table to sub-table */\n low = huff & mask;\n /*table.op[low] = curr;\n table.bits[low] = root;\n table.val[low] = next - opts.table_index;*/\n table[low] = (root << 24) | (curr << 16) | (next - table_index) |0;\n }\n }\n\n /* fill in remaining table entry if code is incomplete (guaranteed to have\n at most one remaining entry, since if the code is incomplete, the\n maximum code length that was allowed to get this far is one bit) */\n if (huff !== 0) {\n //table.op[next + huff] = 64; /* invalid code marker */\n //table.bits[next + huff] = len - drop;\n //table.val[next + huff] = 0;\n table[next + huff] = ((len - drop) << 24) | (64 << 16) |0;\n }\n\n /* set return parameters */\n //opts.table_index += used;\n opts.bits = root;\n return 0;\n};\n\n\nmodule.exports = inflate_table;\n","'use strict';\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\nconst { _tr_init, _tr_stored_block, _tr_flush_block, _tr_tally, _tr_align } = require('./trees');\nconst adler32 = require('./adler32');\nconst crc32 = require('./crc32');\nconst msg = require('./messages');\n\n/* Public constants ==========================================================*/\n/* ===========================================================================*/\n\nconst {\n Z_NO_FLUSH, Z_PARTIAL_FLUSH, Z_FULL_FLUSH, Z_FINISH, Z_BLOCK,\n Z_OK, Z_STREAM_END, Z_STREAM_ERROR, Z_DATA_ERROR, Z_BUF_ERROR,\n Z_DEFAULT_COMPRESSION,\n Z_FILTERED, Z_HUFFMAN_ONLY, Z_RLE, Z_FIXED, Z_DEFAULT_STRATEGY,\n Z_UNKNOWN,\n Z_DEFLATED\n} = require('./constants');\n\n/*============================================================================*/\n\n\nconst MAX_MEM_LEVEL = 9;\n/* Maximum value for memLevel in deflateInit2 */\nconst MAX_WBITS = 15;\n/* 32K LZ77 window */\nconst DEF_MEM_LEVEL = 8;\n\n\nconst LENGTH_CODES = 29;\n/* number of length codes, not counting the special END_BLOCK code */\nconst LITERALS = 256;\n/* number of literal bytes 0..255 */\nconst L_CODES = LITERALS + 1 + LENGTH_CODES;\n/* number of Literal or Length codes, including the END_BLOCK code */\nconst D_CODES = 30;\n/* number of distance codes */\nconst BL_CODES = 19;\n/* number of codes used to transfer the bit lengths */\nconst HEAP_SIZE = 2 * L_CODES + 1;\n/* maximum heap size */\nconst MAX_BITS = 15;\n/* All codes must not exceed MAX_BITS bits */\n\nconst MIN_MATCH = 3;\nconst MAX_MATCH = 258;\nconst MIN_LOOKAHEAD = (MAX_MATCH + MIN_MATCH + 1);\n\nconst PRESET_DICT = 0x20;\n\nconst INIT_STATE = 42; /* zlib header -> BUSY_STATE */\n//#ifdef GZIP\nconst GZIP_STATE = 57; /* gzip header -> BUSY_STATE | EXTRA_STATE */\n//#endif\nconst EXTRA_STATE = 69; /* gzip extra block -> NAME_STATE */\nconst NAME_STATE = 73; /* gzip file name -> COMMENT_STATE */\nconst COMMENT_STATE = 91; /* gzip comment -> HCRC_STATE */\nconst HCRC_STATE = 103; /* gzip header CRC -> BUSY_STATE */\nconst BUSY_STATE = 113; /* deflate -> FINISH_STATE */\nconst FINISH_STATE = 666; /* stream complete */\n\nconst BS_NEED_MORE = 1; /* block not completed, need more input or more output */\nconst BS_BLOCK_DONE = 2; /* block flush performed */\nconst BS_FINISH_STARTED = 3; /* finish started, need only more output at next deflate */\nconst BS_FINISH_DONE = 4; /* finish done, accept no more input or output */\n\nconst OS_CODE = 0x03; // Unix :) . Don't detect, use this default.\n\nconst err = (strm, errorCode) => {\n strm.msg = msg[errorCode];\n return errorCode;\n};\n\nconst rank = (f) => {\n return ((f) * 2) - ((f) > 4 ? 9 : 0);\n};\n\nconst zero = (buf) => {\n let len = buf.length; while (--len >= 0) { buf[len] = 0; }\n};\n\n/* ===========================================================================\n * Slide the hash table when sliding the window down (could be avoided with 32\n * bit values at the expense of memory usage). We slide even when level == 0 to\n * keep the hash table consistent if we switch back to level > 0 later.\n */\nconst slide_hash = (s) => {\n let n, m;\n let p;\n let wsize = s.w_size;\n\n n = s.hash_size;\n p = n;\n do {\n m = s.head[--p];\n s.head[p] = (m >= wsize ? m - wsize : 0);\n } while (--n);\n n = wsize;\n//#ifndef FASTEST\n p = n;\n do {\n m = s.prev[--p];\n s.prev[p] = (m >= wsize ? m - wsize : 0);\n /* If n is not on any hash chain, prev[n] is garbage but\n * its value will never be used.\n */\n } while (--n);\n//#endif\n};\n\n/* eslint-disable new-cap */\nlet HASH_ZLIB = (s, prev, data) => ((prev << s.hash_shift) ^ data) & s.hash_mask;\n// This hash causes less collisions, https://github.com/nodeca/pako/issues/135\n// But breaks binary compatibility\n//let HASH_FAST = (s, prev, data) => ((prev << 8) + (prev >> 8) + (data << 4)) & s.hash_mask;\nlet HASH = HASH_ZLIB;\n\n\n/* =========================================================================\n * Flush as much pending output as possible. All deflate() output, except for\n * some deflate_stored() output, goes through this function so some\n * applications may wish to modify it to avoid allocating a large\n * strm->next_out buffer and copying into it. (See also read_buf()).\n */\nconst flush_pending = (strm) => {\n const s = strm.state;\n\n //_tr_flush_bits(s);\n let len = s.pending;\n if (len > strm.avail_out) {\n len = strm.avail_out;\n }\n if (len === 0) { return; }\n\n strm.output.set(s.pending_buf.subarray(s.pending_out, s.pending_out + len), strm.next_out);\n strm.next_out += len;\n s.pending_out += len;\n strm.total_out += len;\n strm.avail_out -= len;\n s.pending -= len;\n if (s.pending === 0) {\n s.pending_out = 0;\n }\n};\n\n\nconst flush_block_only = (s, last) => {\n _tr_flush_block(s, (s.block_start >= 0 ? s.block_start : -1), s.strstart - s.block_start, last);\n s.block_start = s.strstart;\n flush_pending(s.strm);\n};\n\n\nconst put_byte = (s, b) => {\n s.pending_buf[s.pending++] = b;\n};\n\n\n/* =========================================================================\n * Put a short in the pending buffer. The 16-bit value is put in MSB order.\n * IN assertion: the stream state is correct and there is enough room in\n * pending_buf.\n */\nconst putShortMSB = (s, b) => {\n\n // put_byte(s, (Byte)(b >> 8));\n// put_byte(s, (Byte)(b & 0xff));\n s.pending_buf[s.pending++] = (b >>> 8) & 0xff;\n s.pending_buf[s.pending++] = b & 0xff;\n};\n\n\n/* ===========================================================================\n * Read a new buffer from the current input stream, update the adler32\n * and total number of bytes read. All deflate() input goes through\n * this function so some applications may wish to modify it to avoid\n * allocating a large strm->input buffer and copying from it.\n * (See also flush_pending()).\n */\nconst read_buf = (strm, buf, start, size) => {\n\n let len = strm.avail_in;\n\n if (len > size) { len = size; }\n if (len === 0) { return 0; }\n\n strm.avail_in -= len;\n\n // zmemcpy(buf, strm->next_in, len);\n buf.set(strm.input.subarray(strm.next_in, strm.next_in + len), start);\n if (strm.state.wrap === 1) {\n strm.adler = adler32(strm.adler, buf, len, start);\n }\n\n else if (strm.state.wrap === 2) {\n strm.adler = crc32(strm.adler, buf, len, start);\n }\n\n strm.next_in += len;\n strm.total_in += len;\n\n return len;\n};\n\n\n/* ===========================================================================\n * Set match_start to the longest match starting at the given string and\n * return its length. Matches shorter or equal to prev_length are discarded,\n * in which case the result is equal to prev_length and match_start is\n * garbage.\n * IN assertions: cur_match is the head of the hash chain for the current\n * string (strstart) and its distance is <= MAX_DIST, and prev_length >= 1\n * OUT assertion: the match length is not greater than s->lookahead.\n */\nconst longest_match = (s, cur_match) => {\n\n let chain_length = s.max_chain_length; /* max hash chain length */\n let scan = s.strstart; /* current string */\n let match; /* matched string */\n let len; /* length of current match */\n let best_len = s.prev_length; /* best match length so far */\n let nice_match = s.nice_match; /* stop if match long enough */\n const limit = (s.strstart > (s.w_size - MIN_LOOKAHEAD)) ?\n s.strstart - (s.w_size - MIN_LOOKAHEAD) : 0/*NIL*/;\n\n const _win = s.window; // shortcut\n\n const wmask = s.w_mask;\n const prev = s.prev;\n\n /* Stop when cur_match becomes <= limit. To simplify the code,\n * we prevent matches with the string of window index 0.\n */\n\n const strend = s.strstart + MAX_MATCH;\n let scan_end1 = _win[scan + best_len - 1];\n let scan_end = _win[scan + best_len];\n\n /* The code is optimized for HASH_BITS >= 8 and MAX_MATCH-2 multiple of 16.\n * It is easy to get rid of this optimization if necessary.\n */\n // Assert(s->hash_bits >= 8 && MAX_MATCH == 258, \"Code too clever\");\n\n /* Do not waste too much time if we already have a good match: */\n if (s.prev_length >= s.good_match) {\n chain_length >>= 2;\n }\n /* Do not look for matches beyond the end of the input. This is necessary\n * to make deflate deterministic.\n */\n if (nice_match > s.lookahead) { nice_match = s.lookahead; }\n\n // Assert((ulg)s->strstart <= s->window_size-MIN_LOOKAHEAD, \"need lookahead\");\n\n do {\n // Assert(cur_match < s->strstart, \"no future\");\n match = cur_match;\n\n /* Skip to next match if the match length cannot increase\n * or if the match length is less than 2. Note that the checks below\n * for insufficient lookahead only occur occasionally for performance\n * reasons. Therefore uninitialized memory will be accessed, and\n * conditional jumps will be made that depend on those values.\n * However the length of the match is limited to the lookahead, so\n * the output of deflate is not affected by the uninitialized values.\n */\n\n if (_win[match + best_len] !== scan_end ||\n _win[match + best_len - 1] !== scan_end1 ||\n _win[match] !== _win[scan] ||\n _win[++match] !== _win[scan + 1]) {\n continue;\n }\n\n /* The check at best_len-1 can be removed because it will be made\n * again later. (This heuristic is not always a win.)\n * It is not necessary to compare scan[2] and match[2] since they\n * are always equal when the other bytes match, given that\n * the hash keys are equal and that HASH_BITS >= 8.\n */\n scan += 2;\n match++;\n // Assert(*scan == *match, \"match[2]?\");\n\n /* We check for insufficient lookahead only every 8th comparison;\n * the 256th check will be made at strstart+258.\n */\n do {\n /*jshint noempty:false*/\n } while (_win[++scan] === _win[++match] && _win[++scan] === _win[++match] &&\n _win[++scan] === _win[++match] && _win[++scan] === _win[++match] &&\n _win[++scan] === _win[++match] && _win[++scan] === _win[++match] &&\n _win[++scan] === _win[++match] && _win[++scan] === _win[++match] &&\n scan < strend);\n\n // Assert(scan <= s->window+(unsigned)(s->window_size-1), \"wild scan\");\n\n len = MAX_MATCH - (strend - scan);\n scan = strend - MAX_MATCH;\n\n if (len > best_len) {\n s.match_start = cur_match;\n best_len = len;\n if (len >= nice_match) {\n break;\n }\n scan_end1 = _win[scan + best_len - 1];\n scan_end = _win[scan + best_len];\n }\n } while ((cur_match = prev[cur_match & wmask]) > limit && --chain_length !== 0);\n\n if (best_len <= s.lookahead) {\n return best_len;\n }\n return s.lookahead;\n};\n\n\n/* ===========================================================================\n * Fill the window when the lookahead becomes insufficient.\n * Updates strstart and lookahead.\n *\n * IN assertion: lookahead < MIN_LOOKAHEAD\n * OUT assertions: strstart <= window_size-MIN_LOOKAHEAD\n * At least one byte has been read, or avail_in == 0; reads are\n * performed for at least two bytes (required for the zip translate_eol\n * option -- not supported here).\n */\nconst fill_window = (s) => {\n\n const _w_size = s.w_size;\n let n, more, str;\n\n //Assert(s->lookahead < MIN_LOOKAHEAD, \"already enough lookahead\");\n\n do {\n more = s.window_size - s.lookahead - s.strstart;\n\n // JS ints have 32 bit, block below not needed\n /* Deal with !@#$% 64K limit: */\n //if (sizeof(int) <= 2) {\n // if (more == 0 && s->strstart == 0 && s->lookahead == 0) {\n // more = wsize;\n //\n // } else if (more == (unsigned)(-1)) {\n // /* Very unlikely, but possible on 16 bit machine if\n // * strstart == 0 && lookahead == 1 (input done a byte at time)\n // */\n // more--;\n // }\n //}\n\n\n /* If the window is almost full and there is insufficient lookahead,\n * move the upper half to the lower one to make room in the upper half.\n */\n if (s.strstart >= _w_size + (_w_size - MIN_LOOKAHEAD)) {\n\n s.window.set(s.window.subarray(_w_size, _w_size + _w_size - more), 0);\n s.match_start -= _w_size;\n s.strstart -= _w_size;\n /* we now have strstart >= MAX_DIST */\n s.block_start -= _w_size;\n if (s.insert > s.strstart) {\n s.insert = s.strstart;\n }\n slide_hash(s);\n more += _w_size;\n }\n if (s.strm.avail_in === 0) {\n break;\n }\n\n /* If there was no sliding:\n * strstart <= WSIZE+MAX_DIST-1 && lookahead <= MIN_LOOKAHEAD - 1 &&\n * more == window_size - lookahead - strstart\n * => more >= window_size - (MIN_LOOKAHEAD-1 + WSIZE + MAX_DIST-1)\n * => more >= window_size - 2*WSIZE + 2\n * In the BIG_MEM or MMAP case (not yet supported),\n * window_size == input_size + MIN_LOOKAHEAD &&\n * strstart + s->lookahead <= input_size => more >= MIN_LOOKAHEAD.\n * Otherwise, window_size == 2*WSIZE so more >= 2.\n * If there was sliding, more >= WSIZE. So in all cases, more >= 2.\n */\n //Assert(more >= 2, \"more < 2\");\n n = read_buf(s.strm, s.window, s.strstart + s.lookahead, more);\n s.lookahead += n;\n\n /* Initialize the hash value now that we have some input: */\n if (s.lookahead + s.insert >= MIN_MATCH) {\n str = s.strstart - s.insert;\n s.ins_h = s.window[str];\n\n /* UPDATE_HASH(s, s->ins_h, s->window[str + 1]); */\n s.ins_h = HASH(s, s.ins_h, s.window[str + 1]);\n//#if MIN_MATCH != 3\n// Call update_hash() MIN_MATCH-3 more times\n//#endif\n while (s.insert) {\n /* UPDATE_HASH(s, s->ins_h, s->window[str + MIN_MATCH-1]); */\n s.ins_h = HASH(s, s.ins_h, s.window[str + MIN_MATCH - 1]);\n\n s.prev[str & s.w_mask] = s.head[s.ins_h];\n s.head[s.ins_h] = str;\n str++;\n s.insert--;\n if (s.lookahead + s.insert < MIN_MATCH) {\n break;\n }\n }\n }\n /* If the whole input has less than MIN_MATCH bytes, ins_h is garbage,\n * but this is not important since only literal bytes will be emitted.\n */\n\n } while (s.lookahead < MIN_LOOKAHEAD && s.strm.avail_in !== 0);\n\n /* If the WIN_INIT bytes after the end of the current data have never been\n * written, then zero those bytes in order to avoid memory check reports of\n * the use of uninitialized (or uninitialised as Julian writes) bytes by\n * the longest match routines. Update the high water mark for the next\n * time through here. WIN_INIT is set to MAX_MATCH since the longest match\n * routines allow scanning to strstart + MAX_MATCH, ignoring lookahead.\n */\n// if (s.high_water < s.window_size) {\n// const curr = s.strstart + s.lookahead;\n// let init = 0;\n//\n// if (s.high_water < curr) {\n// /* Previous high water mark below current data -- zero WIN_INIT\n// * bytes or up to end of window, whichever is less.\n// */\n// init = s.window_size - curr;\n// if (init > WIN_INIT)\n// init = WIN_INIT;\n// zmemzero(s->window + curr, (unsigned)init);\n// s->high_water = curr + init;\n// }\n// else if (s->high_water < (ulg)curr + WIN_INIT) {\n// /* High water mark at or above current data, but below current data\n// * plus WIN_INIT -- zero out to current data plus WIN_INIT, or up\n// * to end of window, whichever is less.\n// */\n// init = (ulg)curr + WIN_INIT - s->high_water;\n// if (init > s->window_size - s->high_water)\n// init = s->window_size - s->high_water;\n// zmemzero(s->window + s->high_water, (unsigned)init);\n// s->high_water += init;\n// }\n// }\n//\n// Assert((ulg)s->strstart <= s->window_size - MIN_LOOKAHEAD,\n// \"not enough room for search\");\n};\n\n/* ===========================================================================\n * Copy without compression as much as possible from the input stream, return\n * the current block state.\n *\n * In case deflateParams() is used to later switch to a non-zero compression\n * level, s->matches (otherwise unused when storing) keeps track of the number\n * of hash table slides to perform. If s->matches is 1, then one hash table\n * slide will be done when switching. If s->matches is 2, the maximum value\n * allowed here, then the hash table will be cleared, since two or more slides\n * is the same as a clear.\n *\n * deflate_stored() is written to minimize the number of times an input byte is\n * copied. It is most efficient with large input and output buffers, which\n * maximizes the opportunites to have a single copy from next_in to next_out.\n */\nconst deflate_stored = (s, flush) => {\n\n /* Smallest worthy block size when not flushing or finishing. By default\n * this is 32K. This can be as small as 507 bytes for memLevel == 1. For\n * large input and output buffers, the stored block size will be larger.\n */\n let min_block = s.pending_buf_size - 5 > s.w_size ? s.w_size : s.pending_buf_size - 5;\n\n /* Copy as many min_block or larger stored blocks directly to next_out as\n * possible. If flushing, copy the remaining available input to next_out as\n * stored blocks, if there is enough space.\n */\n let len, left, have, last = 0;\n let used = s.strm.avail_in;\n do {\n /* Set len to the maximum size block that we can copy directly with the\n * available input data and output space. Set left to how much of that\n * would be copied from what's left in the window.\n */\n len = 65535/* MAX_STORED */; /* maximum deflate stored block length */\n have = (s.bi_valid + 42) >> 3; /* number of header bytes */\n if (s.strm.avail_out < have) { /* need room for header */\n break;\n }\n /* maximum stored block length that will fit in avail_out: */\n have = s.strm.avail_out - have;\n left = s.strstart - s.block_start; /* bytes left in window */\n if (len > left + s.strm.avail_in) {\n len = left + s.strm.avail_in; /* limit len to the input */\n }\n if (len > have) {\n len = have; /* limit len to the output */\n }\n\n /* If the stored block would be less than min_block in length, or if\n * unable to copy all of the available input when flushing, then try\n * copying to the window and the pending buffer instead. Also don't\n * write an empty block when flushing -- deflate() does that.\n */\n if (len < min_block && ((len === 0 && flush !== Z_FINISH) ||\n flush === Z_NO_FLUSH ||\n len !== left + s.strm.avail_in)) {\n break;\n }\n\n /* Make a dummy stored block in pending to get the header bytes,\n * including any pending bits. This also updates the debugging counts.\n */\n last = flush === Z_FINISH && len === left + s.strm.avail_in ? 1 : 0;\n _tr_stored_block(s, 0, 0, last);\n\n /* Replace the lengths in the dummy stored block with len. */\n s.pending_buf[s.pending - 4] = len;\n s.pending_buf[s.pending - 3] = len >> 8;\n s.pending_buf[s.pending - 2] = ~len;\n s.pending_buf[s.pending - 1] = ~len >> 8;\n\n /* Write the stored block header bytes. */\n flush_pending(s.strm);\n\n//#ifdef ZLIB_DEBUG\n// /* Update debugging counts for the data about to be copied. */\n// s->compressed_len += len << 3;\n// s->bits_sent += len << 3;\n//#endif\n\n /* Copy uncompressed bytes from the window to next_out. */\n if (left) {\n if (left > len) {\n left = len;\n }\n //zmemcpy(s->strm->next_out, s->window + s->block_start, left);\n s.strm.output.set(s.window.subarray(s.block_start, s.block_start + left), s.strm.next_out);\n s.strm.next_out += left;\n s.strm.avail_out -= left;\n s.strm.total_out += left;\n s.block_start += left;\n len -= left;\n }\n\n /* Copy uncompressed bytes directly from next_in to next_out, updating\n * the check value.\n */\n if (len) {\n read_buf(s.strm, s.strm.output, s.strm.next_out, len);\n s.strm.next_out += len;\n s.strm.avail_out -= len;\n s.strm.total_out += len;\n }\n } while (last === 0);\n\n /* Update the sliding window with the last s->w_size bytes of the copied\n * data, or append all of the copied data to the existing window if less\n * than s->w_size bytes were copied. Also update the number of bytes to\n * insert in the hash tables, in the event that deflateParams() switches to\n * a non-zero compression level.\n */\n used -= s.strm.avail_in; /* number of input bytes directly copied */\n if (used) {\n /* If any input was used, then no unused input remains in the window,\n * therefore s->block_start == s->strstart.\n */\n if (used >= s.w_size) { /* supplant the previous history */\n s.matches = 2; /* clear hash */\n //zmemcpy(s->window, s->strm->next_in - s->w_size, s->w_size);\n s.window.set(s.strm.input.subarray(s.strm.next_in - s.w_size, s.strm.next_in), 0);\n s.strstart = s.w_size;\n s.insert = s.strstart;\n }\n else {\n if (s.window_size - s.strstart <= used) {\n /* Slide the window down. */\n s.strstart -= s.w_size;\n //zmemcpy(s->window, s->window + s->w_size, s->strstart);\n s.window.set(s.window.subarray(s.w_size, s.w_size + s.strstart), 0);\n if (s.matches < 2) {\n s.matches++; /* add a pending slide_hash() */\n }\n if (s.insert > s.strstart) {\n s.insert = s.strstart;\n }\n }\n //zmemcpy(s->window + s->strstart, s->strm->next_in - used, used);\n s.window.set(s.strm.input.subarray(s.strm.next_in - used, s.strm.next_in), s.strstart);\n s.strstart += used;\n s.insert += used > s.w_size - s.insert ? s.w_size - s.insert : used;\n }\n s.block_start = s.strstart;\n }\n if (s.high_water < s.strstart) {\n s.high_water = s.strstart;\n }\n\n /* If the last block was written to next_out, then done. */\n if (last) {\n return BS_FINISH_DONE;\n }\n\n /* If flushing and all input has been consumed, then done. */\n if (flush !== Z_NO_FLUSH && flush !== Z_FINISH &&\n s.strm.avail_in === 0 && s.strstart === s.block_start) {\n return BS_BLOCK_DONE;\n }\n\n /* Fill the window with any remaining input. */\n have = s.window_size - s.strstart;\n if (s.strm.avail_in > have && s.block_start >= s.w_size) {\n /* Slide the window down. */\n s.block_start -= s.w_size;\n s.strstart -= s.w_size;\n //zmemcpy(s->window, s->window + s->w_size, s->strstart);\n s.window.set(s.window.subarray(s.w_size, s.w_size + s.strstart), 0);\n if (s.matches < 2) {\n s.matches++; /* add a pending slide_hash() */\n }\n have += s.w_size; /* more space now */\n if (s.insert > s.strstart) {\n s.insert = s.strstart;\n }\n }\n if (have > s.strm.avail_in) {\n have = s.strm.avail_in;\n }\n if (have) {\n read_buf(s.strm, s.window, s.strstart, have);\n s.strstart += have;\n s.insert += have > s.w_size - s.insert ? s.w_size - s.insert : have;\n }\n if (s.high_water < s.strstart) {\n s.high_water = s.strstart;\n }\n\n /* There was not enough avail_out to write a complete worthy or flushed\n * stored block to next_out. Write a stored block to pending instead, if we\n * have enough input for a worthy block, or if flushing and there is enough\n * room for the remaining input as a stored block in the pending buffer.\n */\n have = (s.bi_valid + 42) >> 3; /* number of header bytes */\n /* maximum stored block length that will fit in pending: */\n have = s.pending_buf_size - have > 65535/* MAX_STORED */ ? 65535/* MAX_STORED */ : s.pending_buf_size - have;\n min_block = have > s.w_size ? s.w_size : have;\n left = s.strstart - s.block_start;\n if (left >= min_block ||\n ((left || flush === Z_FINISH) && flush !== Z_NO_FLUSH &&\n s.strm.avail_in === 0 && left <= have)) {\n len = left > have ? have : left;\n last = flush === Z_FINISH && s.strm.avail_in === 0 &&\n len === left ? 1 : 0;\n _tr_stored_block(s, s.block_start, len, last);\n s.block_start += len;\n flush_pending(s.strm);\n }\n\n /* We've done all we can with the available input and output. */\n return last ? BS_FINISH_STARTED : BS_NEED_MORE;\n};\n\n\n/* ===========================================================================\n * Compress as much as possible from the input stream, return the current\n * block state.\n * This function does not perform lazy evaluation of matches and inserts\n * new strings in the dictionary only for unmatched strings or for short\n * matches. It is used only for the fast compression options.\n */\nconst deflate_fast = (s, flush) => {\n\n let hash_head; /* head of the hash chain */\n let bflush; /* set if current block must be flushed */\n\n for (;;) {\n /* Make sure that we always have enough lookahead, except\n * at the end of the input file. We need MAX_MATCH bytes\n * for the next match, plus MIN_MATCH bytes to insert the\n * string following the next match.\n */\n if (s.lookahead < MIN_LOOKAHEAD) {\n fill_window(s);\n if (s.lookahead < MIN_LOOKAHEAD && flush === Z_NO_FLUSH) {\n return BS_NEED_MORE;\n }\n if (s.lookahead === 0) {\n break; /* flush the current block */\n }\n }\n\n /* Insert the string window[strstart .. strstart+2] in the\n * dictionary, and set hash_head to the head of the hash chain:\n */\n hash_head = 0/*NIL*/;\n if (s.lookahead >= MIN_MATCH) {\n /*** INSERT_STRING(s, s.strstart, hash_head); ***/\n s.ins_h = HASH(s, s.ins_h, s.window[s.strstart + MIN_MATCH - 1]);\n hash_head = s.prev[s.strstart & s.w_mask] = s.head[s.ins_h];\n s.head[s.ins_h] = s.strstart;\n /***/\n }\n\n /* Find the longest match, discarding those <= prev_length.\n * At this point we have always match_length < MIN_MATCH\n */\n if (hash_head !== 0/*NIL*/ && ((s.strstart - hash_head) <= (s.w_size - MIN_LOOKAHEAD))) {\n /* To simplify the code, we prevent matches with the string\n * of window index 0 (in particular we have to avoid a match\n * of the string with itself at the start of the input file).\n */\n s.match_length = longest_match(s, hash_head);\n /* longest_match() sets match_start */\n }\n if (s.match_length >= MIN_MATCH) {\n // check_match(s, s.strstart, s.match_start, s.match_length); // for debug only\n\n /*** _tr_tally_dist(s, s.strstart - s.match_start,\n s.match_length - MIN_MATCH, bflush); ***/\n bflush = _tr_tally(s, s.strstart - s.match_start, s.match_length - MIN_MATCH);\n\n s.lookahead -= s.match_length;\n\n /* Insert new strings in the hash table only if the match length\n * is not too large. This saves time but degrades compression.\n */\n if (s.match_length <= s.max_lazy_match/*max_insert_length*/ && s.lookahead >= MIN_MATCH) {\n s.match_length--; /* string at strstart already in table */\n do {\n s.strstart++;\n /*** INSERT_STRING(s, s.strstart, hash_head); ***/\n s.ins_h = HASH(s, s.ins_h, s.window[s.strstart + MIN_MATCH - 1]);\n hash_head = s.prev[s.strstart & s.w_mask] = s.head[s.ins_h];\n s.head[s.ins_h] = s.strstart;\n /***/\n /* strstart never exceeds WSIZE-MAX_MATCH, so there are\n * always MIN_MATCH bytes ahead.\n */\n } while (--s.match_length !== 0);\n s.strstart++;\n } else\n {\n s.strstart += s.match_length;\n s.match_length = 0;\n s.ins_h = s.window[s.strstart];\n /* UPDATE_HASH(s, s.ins_h, s.window[s.strstart+1]); */\n s.ins_h = HASH(s, s.ins_h, s.window[s.strstart + 1]);\n\n//#if MIN_MATCH != 3\n// Call UPDATE_HASH() MIN_MATCH-3 more times\n//#endif\n /* If lookahead < MIN_MATCH, ins_h is garbage, but it does not\n * matter since it will be recomputed at next deflate call.\n */\n }\n } else {\n /* No match, output a literal byte */\n //Tracevv((stderr,\"%c\", s.window[s.strstart]));\n /*** _tr_tally_lit(s, s.window[s.strstart], bflush); ***/\n bflush = _tr_tally(s, 0, s.window[s.strstart]);\n\n s.lookahead--;\n s.strstart++;\n }\n if (bflush) {\n /*** FLUSH_BLOCK(s, 0); ***/\n flush_block_only(s, false);\n if (s.strm.avail_out === 0) {\n return BS_NEED_MORE;\n }\n /***/\n }\n }\n s.insert = ((s.strstart < (MIN_MATCH - 1)) ? s.strstart : MIN_MATCH - 1);\n if (flush === Z_FINISH) {\n /*** FLUSH_BLOCK(s, 1); ***/\n flush_block_only(s, true);\n if (s.strm.avail_out === 0) {\n return BS_FINISH_STARTED;\n }\n /***/\n return BS_FINISH_DONE;\n }\n if (s.sym_next) {\n /*** FLUSH_BLOCK(s, 0); ***/\n flush_block_only(s, false);\n if (s.strm.avail_out === 0) {\n return BS_NEED_MORE;\n }\n /***/\n }\n return BS_BLOCK_DONE;\n};\n\n/* ===========================================================================\n * Same as above, but achieves better compression. We use a lazy\n * evaluation for matches: a match is finally adopted only if there is\n * no better match at the next window position.\n */\nconst deflate_slow = (s, flush) => {\n\n let hash_head; /* head of hash chain */\n let bflush; /* set if current block must be flushed */\n\n let max_insert;\n\n /* Process the input block. */\n for (;;) {\n /* Make sure that we always have enough lookahead, except\n * at the end of the input file. We need MAX_MATCH bytes\n * for the next match, plus MIN_MATCH bytes to insert the\n * string following the next match.\n */\n if (s.lookahead < MIN_LOOKAHEAD) {\n fill_window(s);\n if (s.lookahead < MIN_LOOKAHEAD && flush === Z_NO_FLUSH) {\n return BS_NEED_MORE;\n }\n if (s.lookahead === 0) { break; } /* flush the current block */\n }\n\n /* Insert the string window[strstart .. strstart+2] in the\n * dictionary, and set hash_head to the head of the hash chain:\n */\n hash_head = 0/*NIL*/;\n if (s.lookahead >= MIN_MATCH) {\n /*** INSERT_STRING(s, s.strstart, hash_head); ***/\n s.ins_h = HASH(s, s.ins_h, s.window[s.strstart + MIN_MATCH - 1]);\n hash_head = s.prev[s.strstart & s.w_mask] = s.head[s.ins_h];\n s.head[s.ins_h] = s.strstart;\n /***/\n }\n\n /* Find the longest match, discarding those <= prev_length.\n */\n s.prev_length = s.match_length;\n s.prev_match = s.match_start;\n s.match_length = MIN_MATCH - 1;\n\n if (hash_head !== 0/*NIL*/ && s.prev_length < s.max_lazy_match &&\n s.strstart - hash_head <= (s.w_size - MIN_LOOKAHEAD)/*MAX_DIST(s)*/) {\n /* To simplify the code, we prevent matches with the string\n * of window index 0 (in particular we have to avoid a match\n * of the string with itself at the start of the input file).\n */\n s.match_length = longest_match(s, hash_head);\n /* longest_match() sets match_start */\n\n if (s.match_length <= 5 &&\n (s.strategy === Z_FILTERED || (s.match_length === MIN_MATCH && s.strstart - s.match_start > 4096/*TOO_FAR*/))) {\n\n /* If prev_match is also MIN_MATCH, match_start is garbage\n * but we will ignore the current match anyway.\n */\n s.match_length = MIN_MATCH - 1;\n }\n }\n /* If there was a match at the previous step and the current\n * match is not better, output the previous match:\n */\n if (s.prev_length >= MIN_MATCH && s.match_length <= s.prev_length) {\n max_insert = s.strstart + s.lookahead - MIN_MATCH;\n /* Do not insert strings in hash table beyond this. */\n\n //check_match(s, s.strstart-1, s.prev_match, s.prev_length);\n\n /***_tr_tally_dist(s, s.strstart - 1 - s.prev_match,\n s.prev_length - MIN_MATCH, bflush);***/\n bflush = _tr_tally(s, s.strstart - 1 - s.prev_match, s.prev_length - MIN_MATCH);\n /* Insert in hash table all strings up to the end of the match.\n * strstart-1 and strstart are already inserted. If there is not\n * enough lookahead, the last two strings are not inserted in\n * the hash table.\n */\n s.lookahead -= s.prev_length - 1;\n s.prev_length -= 2;\n do {\n if (++s.strstart <= max_insert) {\n /*** INSERT_STRING(s, s.strstart, hash_head); ***/\n s.ins_h = HASH(s, s.ins_h, s.window[s.strstart + MIN_MATCH - 1]);\n hash_head = s.prev[s.strstart & s.w_mask] = s.head[s.ins_h];\n s.head[s.ins_h] = s.strstart;\n /***/\n }\n } while (--s.prev_length !== 0);\n s.match_available = 0;\n s.match_length = MIN_MATCH - 1;\n s.strstart++;\n\n if (bflush) {\n /*** FLUSH_BLOCK(s, 0); ***/\n flush_block_only(s, false);\n if (s.strm.avail_out === 0) {\n return BS_NEED_MORE;\n }\n /***/\n }\n\n } else if (s.match_available) {\n /* If there was no match at the previous position, output a\n * single literal. If there was a match but the current match\n * is longer, truncate the previous match to a single literal.\n */\n //Tracevv((stderr,\"%c\", s->window[s->strstart-1]));\n /*** _tr_tally_lit(s, s.window[s.strstart-1], bflush); ***/\n bflush = _tr_tally(s, 0, s.window[s.strstart - 1]);\n\n if (bflush) {\n /*** FLUSH_BLOCK_ONLY(s, 0) ***/\n flush_block_only(s, false);\n /***/\n }\n s.strstart++;\n s.lookahead--;\n if (s.strm.avail_out === 0) {\n return BS_NEED_MORE;\n }\n } else {\n /* There is no previous match to compare with, wait for\n * the next step to decide.\n */\n s.match_available = 1;\n s.strstart++;\n s.lookahead--;\n }\n }\n //Assert (flush != Z_NO_FLUSH, \"no flush?\");\n if (s.match_available) {\n //Tracevv((stderr,\"%c\", s->window[s->strstart-1]));\n /*** _tr_tally_lit(s, s.window[s.strstart-1], bflush); ***/\n bflush = _tr_tally(s, 0, s.window[s.strstart - 1]);\n\n s.match_available = 0;\n }\n s.insert = s.strstart < MIN_MATCH - 1 ? s.strstart : MIN_MATCH - 1;\n if (flush === Z_FINISH) {\n /*** FLUSH_BLOCK(s, 1); ***/\n flush_block_only(s, true);\n if (s.strm.avail_out === 0) {\n return BS_FINISH_STARTED;\n }\n /***/\n return BS_FINISH_DONE;\n }\n if (s.sym_next) {\n /*** FLUSH_BLOCK(s, 0); ***/\n flush_block_only(s, false);\n if (s.strm.avail_out === 0) {\n return BS_NEED_MORE;\n }\n /***/\n }\n\n return BS_BLOCK_DONE;\n};\n\n\n/* ===========================================================================\n * For Z_RLE, simply look for runs of bytes, generate matches only of distance\n * one. Do not maintain a hash table. (It will be regenerated if this run of\n * deflate switches away from Z_RLE.)\n */\nconst deflate_rle = (s, flush) => {\n\n let bflush; /* set if current block must be flushed */\n let prev; /* byte at distance one to match */\n let scan, strend; /* scan goes up to strend for length of run */\n\n const _win = s.window;\n\n for (;;) {\n /* Make sure that we always have enough lookahead, except\n * at the end of the input file. We need MAX_MATCH bytes\n * for the longest run, plus one for the unrolled loop.\n */\n if (s.lookahead <= MAX_MATCH) {\n fill_window(s);\n if (s.lookahead <= MAX_MATCH && flush === Z_NO_FLUSH) {\n return BS_NEED_MORE;\n }\n if (s.lookahead === 0) { break; } /* flush the current block */\n }\n\n /* See how many times the previous byte repeats */\n s.match_length = 0;\n if (s.lookahead >= MIN_MATCH && s.strstart > 0) {\n scan = s.strstart - 1;\n prev = _win[scan];\n if (prev === _win[++scan] && prev === _win[++scan] && prev === _win[++scan]) {\n strend = s.strstart + MAX_MATCH;\n do {\n /*jshint noempty:false*/\n } while (prev === _win[++scan] && prev === _win[++scan] &&\n prev === _win[++scan] && prev === _win[++scan] &&\n prev === _win[++scan] && prev === _win[++scan] &&\n prev === _win[++scan] && prev === _win[++scan] &&\n scan < strend);\n s.match_length = MAX_MATCH - (strend - scan);\n if (s.match_length > s.lookahead) {\n s.match_length = s.lookahead;\n }\n }\n //Assert(scan <= s->window+(uInt)(s->window_size-1), \"wild scan\");\n }\n\n /* Emit match if have run of MIN_MATCH or longer, else emit literal */\n if (s.match_length >= MIN_MATCH) {\n //check_match(s, s.strstart, s.strstart - 1, s.match_length);\n\n /*** _tr_tally_dist(s, 1, s.match_length - MIN_MATCH, bflush); ***/\n bflush = _tr_tally(s, 1, s.match_length - MIN_MATCH);\n\n s.lookahead -= s.match_length;\n s.strstart += s.match_length;\n s.match_length = 0;\n } else {\n /* No match, output a literal byte */\n //Tracevv((stderr,\"%c\", s->window[s->strstart]));\n /*** _tr_tally_lit(s, s.window[s.strstart], bflush); ***/\n bflush = _tr_tally(s, 0, s.window[s.strstart]);\n\n s.lookahead--;\n s.strstart++;\n }\n if (bflush) {\n /*** FLUSH_BLOCK(s, 0); ***/\n flush_block_only(s, false);\n if (s.strm.avail_out === 0) {\n return BS_NEED_MORE;\n }\n /***/\n }\n }\n s.insert = 0;\n if (flush === Z_FINISH) {\n /*** FLUSH_BLOCK(s, 1); ***/\n flush_block_only(s, true);\n if (s.strm.avail_out === 0) {\n return BS_FINISH_STARTED;\n }\n /***/\n return BS_FINISH_DONE;\n }\n if (s.sym_next) {\n /*** FLUSH_BLOCK(s, 0); ***/\n flush_block_only(s, false);\n if (s.strm.avail_out === 0) {\n return BS_NEED_MORE;\n }\n /***/\n }\n return BS_BLOCK_DONE;\n};\n\n/* ===========================================================================\n * For Z_HUFFMAN_ONLY, do not look for matches. Do not maintain a hash table.\n * (It will be regenerated if this run of deflate switches away from Huffman.)\n */\nconst deflate_huff = (s, flush) => {\n\n let bflush; /* set if current block must be flushed */\n\n for (;;) {\n /* Make sure that we have a literal to write. */\n if (s.lookahead === 0) {\n fill_window(s);\n if (s.lookahead === 0) {\n if (flush === Z_NO_FLUSH) {\n return BS_NEED_MORE;\n }\n break; /* flush the current block */\n }\n }\n\n /* Output a literal byte */\n s.match_length = 0;\n //Tracevv((stderr,\"%c\", s->window[s->strstart]));\n /*** _tr_tally_lit(s, s.window[s.strstart], bflush); ***/\n bflush = _tr_tally(s, 0, s.window[s.strstart]);\n s.lookahead--;\n s.strstart++;\n if (bflush) {\n /*** FLUSH_BLOCK(s, 0); ***/\n flush_block_only(s, false);\n if (s.strm.avail_out === 0) {\n return BS_NEED_MORE;\n }\n /***/\n }\n }\n s.insert = 0;\n if (flush === Z_FINISH) {\n /*** FLUSH_BLOCK(s, 1); ***/\n flush_block_only(s, true);\n if (s.strm.avail_out === 0) {\n return BS_FINISH_STARTED;\n }\n /***/\n return BS_FINISH_DONE;\n }\n if (s.sym_next) {\n /*** FLUSH_BLOCK(s, 0); ***/\n flush_block_only(s, false);\n if (s.strm.avail_out === 0) {\n return BS_NEED_MORE;\n }\n /***/\n }\n return BS_BLOCK_DONE;\n};\n\n/* Values for max_lazy_match, good_match and max_chain_length, depending on\n * the desired pack level (0..9). The values given below have been tuned to\n * exclude worst case performance for pathological files. Better values may be\n * found for specific files.\n */\nfunction Config(good_length, max_lazy, nice_length, max_chain, func) {\n\n this.good_length = good_length;\n this.max_lazy = max_lazy;\n this.nice_length = nice_length;\n this.max_chain = max_chain;\n this.func = func;\n}\n\nconst configuration_table = [\n /* good lazy nice chain */\n new Config(0, 0, 0, 0, deflate_stored), /* 0 store only */\n new Config(4, 4, 8, 4, deflate_fast), /* 1 max speed, no lazy matches */\n new Config(4, 5, 16, 8, deflate_fast), /* 2 */\n new Config(4, 6, 32, 32, deflate_fast), /* 3 */\n\n new Config(4, 4, 16, 16, deflate_slow), /* 4 lazy matches */\n new Config(8, 16, 32, 32, deflate_slow), /* 5 */\n new Config(8, 16, 128, 128, deflate_slow), /* 6 */\n new Config(8, 32, 128, 256, deflate_slow), /* 7 */\n new Config(32, 128, 258, 1024, deflate_slow), /* 8 */\n new Config(32, 258, 258, 4096, deflate_slow) /* 9 max compression */\n];\n\n\n/* ===========================================================================\n * Initialize the \"longest match\" routines for a new zlib stream\n */\nconst lm_init = (s) => {\n\n s.window_size = 2 * s.w_size;\n\n /*** CLEAR_HASH(s); ***/\n zero(s.head); // Fill with NIL (= 0);\n\n /* Set the default configuration parameters:\n */\n s.max_lazy_match = configuration_table[s.level].max_lazy;\n s.good_match = configuration_table[s.level].good_length;\n s.nice_match = configuration_table[s.level].nice_length;\n s.max_chain_length = configuration_table[s.level].max_chain;\n\n s.strstart = 0;\n s.block_start = 0;\n s.lookahead = 0;\n s.insert = 0;\n s.match_length = s.prev_length = MIN_MATCH - 1;\n s.match_available = 0;\n s.ins_h = 0;\n};\n\n\nfunction DeflateState() {\n this.strm = null; /* pointer back to this zlib stream */\n this.status = 0; /* as the name implies */\n this.pending_buf = null; /* output still pending */\n this.pending_buf_size = 0; /* size of pending_buf */\n this.pending_out = 0; /* next pending byte to output to the stream */\n this.pending = 0; /* nb of bytes in the pending buffer */\n this.wrap = 0; /* bit 0 true for zlib, bit 1 true for gzip */\n this.gzhead = null; /* gzip header information to write */\n this.gzindex = 0; /* where in extra, name, or comment */\n this.method = Z_DEFLATED; /* can only be DEFLATED */\n this.last_flush = -1; /* value of flush param for previous deflate call */\n\n this.w_size = 0; /* LZ77 window size (32K by default) */\n this.w_bits = 0; /* log2(w_size) (8..16) */\n this.w_mask = 0; /* w_size - 1 */\n\n this.window = null;\n /* Sliding window. Input bytes are read into the second half of the window,\n * and move to the first half later to keep a dictionary of at least wSize\n * bytes. With this organization, matches are limited to a distance of\n * wSize-MAX_MATCH bytes, but this ensures that IO is always\n * performed with a length multiple of the block size.\n */\n\n this.window_size = 0;\n /* Actual size of window: 2*wSize, except when the user input buffer\n * is directly used as sliding window.\n */\n\n this.prev = null;\n /* Link to older string with same hash index. To limit the size of this\n * array to 64K, this link is maintained only for the last 32K strings.\n * An index in this array is thus a window index modulo 32K.\n */\n\n this.head = null; /* Heads of the hash chains or NIL. */\n\n this.ins_h = 0; /* hash index of string to be inserted */\n this.hash_size = 0; /* number of elements in hash table */\n this.hash_bits = 0; /* log2(hash_size) */\n this.hash_mask = 0; /* hash_size-1 */\n\n this.hash_shift = 0;\n /* Number of bits by which ins_h must be shifted at each input\n * step. It must be such that after MIN_MATCH steps, the oldest\n * byte no longer takes part in the hash key, that is:\n * hash_shift * MIN_MATCH >= hash_bits\n */\n\n this.block_start = 0;\n /* Window position at the beginning of the current output block. Gets\n * negative when the window is moved backwards.\n */\n\n this.match_length = 0; /* length of best match */\n this.prev_match = 0; /* previous match */\n this.match_available = 0; /* set if previous match exists */\n this.strstart = 0; /* start of string to insert */\n this.match_start = 0; /* start of matching string */\n this.lookahead = 0; /* number of valid bytes ahead in window */\n\n this.prev_length = 0;\n /* Length of the best match at previous step. Matches not greater than this\n * are discarded. This is used in the lazy match evaluation.\n */\n\n this.max_chain_length = 0;\n /* To speed up deflation, hash chains are never searched beyond this\n * length. A higher limit improves compression ratio but degrades the\n * speed.\n */\n\n this.max_lazy_match = 0;\n /* Attempt to find a better match only when the current match is strictly\n * smaller than this value. This mechanism is used only for compression\n * levels >= 4.\n */\n // That's alias to max_lazy_match, don't use directly\n //this.max_insert_length = 0;\n /* Insert new strings in the hash table only if the match length is not\n * greater than this length. This saves time but degrades compression.\n * max_insert_length is used only for compression levels <= 3.\n */\n\n this.level = 0; /* compression level (1..9) */\n this.strategy = 0; /* favor or force Huffman coding*/\n\n this.good_match = 0;\n /* Use a faster search when the previous match is longer than this */\n\n this.nice_match = 0; /* Stop searching when current match exceeds this */\n\n /* used by trees.c: */\n\n /* Didn't use ct_data typedef below to suppress compiler warning */\n\n // struct ct_data_s dyn_ltree[HEAP_SIZE]; /* literal and length tree */\n // struct ct_data_s dyn_dtree[2*D_CODES+1]; /* distance tree */\n // struct ct_data_s bl_tree[2*BL_CODES+1]; /* Huffman tree for bit lengths */\n\n // Use flat array of DOUBLE size, with interleaved fata,\n // because JS does not support effective\n this.dyn_ltree = new Uint16Array(HEAP_SIZE * 2);\n this.dyn_dtree = new Uint16Array((2 * D_CODES + 1) * 2);\n this.bl_tree = new Uint16Array((2 * BL_CODES + 1) * 2);\n zero(this.dyn_ltree);\n zero(this.dyn_dtree);\n zero(this.bl_tree);\n\n this.l_desc = null; /* desc. for literal tree */\n this.d_desc = null; /* desc. for distance tree */\n this.bl_desc = null; /* desc. for bit length tree */\n\n //ush bl_count[MAX_BITS+1];\n this.bl_count = new Uint16Array(MAX_BITS + 1);\n /* number of codes at each bit length for an optimal tree */\n\n //int heap[2*L_CODES+1]; /* heap used to build the Huffman trees */\n this.heap = new Uint16Array(2 * L_CODES + 1); /* heap used to build the Huffman trees */\n zero(this.heap);\n\n this.heap_len = 0; /* number of elements in the heap */\n this.heap_max = 0; /* element of largest frequency */\n /* The sons of heap[n] are heap[2*n] and heap[2*n+1]. heap[0] is not used.\n * The same heap array is used to build all trees.\n */\n\n this.depth = new Uint16Array(2 * L_CODES + 1); //uch depth[2*L_CODES+1];\n zero(this.depth);\n /* Depth of each subtree used as tie breaker for trees of equal frequency\n */\n\n this.sym_buf = 0; /* buffer for distances and literals/lengths */\n\n this.lit_bufsize = 0;\n /* Size of match buffer for literals/lengths. There are 4 reasons for\n * limiting lit_bufsize to 64K:\n * - frequencies can be kept in 16 bit counters\n * - if compression is not successful for the first block, all input\n * data is still in the window so we can still emit a stored block even\n * when input comes from standard input. (This can also be done for\n * all blocks if lit_bufsize is not greater than 32K.)\n * - if compression is not successful for a file smaller than 64K, we can\n * even emit a stored file instead of a stored block (saving 5 bytes).\n * This is applicable only for zip (not gzip or zlib).\n * - creating new Huffman trees less frequently may not provide fast\n * adaptation to changes in the input data statistics. (Take for\n * example a binary file with poorly compressible code followed by\n * a highly compressible string table.) Smaller buffer sizes give\n * fast adaptation but have of course the overhead of transmitting\n * trees more frequently.\n * - I can't count above 4\n */\n\n this.sym_next = 0; /* running index in sym_buf */\n this.sym_end = 0; /* symbol table full when sym_next reaches this */\n\n this.opt_len = 0; /* bit length of current block with optimal trees */\n this.static_len = 0; /* bit length of current block with static trees */\n this.matches = 0; /* number of string matches in current block */\n this.insert = 0; /* bytes at end of window left to insert */\n\n\n this.bi_buf = 0;\n /* Output buffer. bits are inserted starting at the bottom (least\n * significant bits).\n */\n this.bi_valid = 0;\n /* Number of valid bits in bi_buf. All bits above the last valid bit\n * are always zero.\n */\n\n // Used for window memory init. We safely ignore it for JS. That makes\n // sense only for pointers and memory check tools.\n //this.high_water = 0;\n /* High water mark offset in window for initialized bytes -- bytes above\n * this are set to zero in order to avoid memory check warnings when\n * longest match routines access bytes past the input. This is then\n * updated to the new high water mark.\n */\n}\n\n\n/* =========================================================================\n * Check for a valid deflate stream state. Return 0 if ok, 1 if not.\n */\nconst deflateStateCheck = (strm) => {\n\n if (!strm) {\n return 1;\n }\n const s = strm.state;\n if (!s || s.strm !== strm || (s.status !== INIT_STATE &&\n//#ifdef GZIP\n s.status !== GZIP_STATE &&\n//#endif\n s.status !== EXTRA_STATE &&\n s.status !== NAME_STATE &&\n s.status !== COMMENT_STATE &&\n s.status !== HCRC_STATE &&\n s.status !== BUSY_STATE &&\n s.status !== FINISH_STATE)) {\n return 1;\n }\n return 0;\n};\n\n\nconst deflateResetKeep = (strm) => {\n\n if (deflateStateCheck(strm)) {\n return err(strm, Z_STREAM_ERROR);\n }\n\n strm.total_in = strm.total_out = 0;\n strm.data_type = Z_UNKNOWN;\n\n const s = strm.state;\n s.pending = 0;\n s.pending_out = 0;\n\n if (s.wrap < 0) {\n s.wrap = -s.wrap;\n /* was made negative by deflate(..., Z_FINISH); */\n }\n s.status =\n//#ifdef GZIP\n s.wrap === 2 ? GZIP_STATE :\n//#endif\n s.wrap ? INIT_STATE : BUSY_STATE;\n strm.adler = (s.wrap === 2) ?\n 0 // crc32(0, Z_NULL, 0)\n :\n 1; // adler32(0, Z_NULL, 0)\n s.last_flush = -2;\n _tr_init(s);\n return Z_OK;\n};\n\n\nconst deflateReset = (strm) => {\n\n const ret = deflateResetKeep(strm);\n if (ret === Z_OK) {\n lm_init(strm.state);\n }\n return ret;\n};\n\n\nconst deflateSetHeader = (strm, head) => {\n\n if (deflateStateCheck(strm) || strm.state.wrap !== 2) {\n return Z_STREAM_ERROR;\n }\n strm.state.gzhead = head;\n return Z_OK;\n};\n\n\nconst deflateInit2 = (strm, level, method, windowBits, memLevel, strategy) => {\n\n if (!strm) { // === Z_NULL\n return Z_STREAM_ERROR;\n }\n let wrap = 1;\n\n if (level === Z_DEFAULT_COMPRESSION) {\n level = 6;\n }\n\n if (windowBits < 0) { /* suppress zlib wrapper */\n wrap = 0;\n windowBits = -windowBits;\n }\n\n else if (windowBits > 15) {\n wrap = 2; /* write gzip wrapper instead */\n windowBits -= 16;\n }\n\n\n if (memLevel < 1 || memLevel > MAX_MEM_LEVEL || method !== Z_DEFLATED ||\n windowBits < 8 || windowBits > 15 || level < 0 || level > 9 ||\n strategy < 0 || strategy > Z_FIXED || (windowBits === 8 && wrap !== 1)) {\n return err(strm, Z_STREAM_ERROR);\n }\n\n\n if (windowBits === 8) {\n windowBits = 9;\n }\n /* until 256-byte window bug fixed */\n\n const s = new DeflateState();\n\n strm.state = s;\n s.strm = strm;\n s.status = INIT_STATE; /* to pass state test in deflateReset() */\n\n s.wrap = wrap;\n s.gzhead = null;\n s.w_bits = windowBits;\n s.w_size = 1 << s.w_bits;\n s.w_mask = s.w_size - 1;\n\n s.hash_bits = memLevel + 7;\n s.hash_size = 1 << s.hash_bits;\n s.hash_mask = s.hash_size - 1;\n s.hash_shift = ~~((s.hash_bits + MIN_MATCH - 1) / MIN_MATCH);\n\n s.window = new Uint8Array(s.w_size * 2);\n s.head = new Uint16Array(s.hash_size);\n s.prev = new Uint16Array(s.w_size);\n\n // Don't need mem init magic for JS.\n //s.high_water = 0; /* nothing written to s->window yet */\n\n s.lit_bufsize = 1 << (memLevel + 6); /* 16K elements by default */\n\n /* We overlay pending_buf and sym_buf. This works since the average size\n * for length/distance pairs over any compressed block is assured to be 31\n * bits or less.\n *\n * Analysis: The longest fixed codes are a length code of 8 bits plus 5\n * extra bits, for lengths 131 to 257. The longest fixed distance codes are\n * 5 bits plus 13 extra bits, for distances 16385 to 32768. The longest\n * possible fixed-codes length/distance pair is then 31 bits total.\n *\n * sym_buf starts one-fourth of the way into pending_buf. So there are\n * three bytes in sym_buf for every four bytes in pending_buf. Each symbol\n * in sym_buf is three bytes -- two for the distance and one for the\n * literal/length. As each symbol is consumed, the pointer to the next\n * sym_buf value to read moves forward three bytes. From that symbol, up to\n * 31 bits are written to pending_buf. The closest the written pending_buf\n * bits gets to the next sym_buf symbol to read is just before the last\n * code is written. At that time, 31*(n-2) bits have been written, just\n * after 24*(n-2) bits have been consumed from sym_buf. sym_buf starts at\n * 8*n bits into pending_buf. (Note that the symbol buffer fills when n-1\n * symbols are written.) The closest the writing gets to what is unread is\n * then n+14 bits. Here n is lit_bufsize, which is 16384 by default, and\n * can range from 128 to 32768.\n *\n * Therefore, at a minimum, there are 142 bits of space between what is\n * written and what is read in the overlain buffers, so the symbols cannot\n * be overwritten by the compressed data. That space is actually 139 bits,\n * due to the three-bit fixed-code block header.\n *\n * That covers the case where either Z_FIXED is specified, forcing fixed\n * codes, or when the use of fixed codes is chosen, because that choice\n * results in a smaller compressed block than dynamic codes. That latter\n * condition then assures that the above analysis also covers all dynamic\n * blocks. A dynamic-code block will only be chosen to be emitted if it has\n * fewer bits than a fixed-code block would for the same set of symbols.\n * Therefore its average symbol length is assured to be less than 31. So\n * the compressed data for a dynamic block also cannot overwrite the\n * symbols from which it is being constructed.\n */\n\n s.pending_buf_size = s.lit_bufsize * 4;\n s.pending_buf = new Uint8Array(s.pending_buf_size);\n\n // It is offset from `s.pending_buf` (size is `s.lit_bufsize * 2`)\n //s->sym_buf = s->pending_buf + s->lit_bufsize;\n s.sym_buf = s.lit_bufsize;\n\n //s->sym_end = (s->lit_bufsize - 1) * 3;\n s.sym_end = (s.lit_bufsize - 1) * 3;\n /* We avoid equality with lit_bufsize*3 because of wraparound at 64K\n * on 16 bit machines and because stored blocks are restricted to\n * 64K-1 bytes.\n */\n\n s.level = level;\n s.strategy = strategy;\n s.method = method;\n\n return deflateReset(strm);\n};\n\nconst deflateInit = (strm, level) => {\n\n return deflateInit2(strm, level, Z_DEFLATED, MAX_WBITS, DEF_MEM_LEVEL, Z_DEFAULT_STRATEGY);\n};\n\n\n/* ========================================================================= */\nconst deflate = (strm, flush) => {\n\n if (deflateStateCheck(strm) || flush > Z_BLOCK || flush < 0) {\n return strm ? err(strm, Z_STREAM_ERROR) : Z_STREAM_ERROR;\n }\n\n const s = strm.state;\n\n if (!strm.output ||\n (strm.avail_in !== 0 && !strm.input) ||\n (s.status === FINISH_STATE && flush !== Z_FINISH)) {\n return err(strm, (strm.avail_out === 0) ? Z_BUF_ERROR : Z_STREAM_ERROR);\n }\n\n const old_flush = s.last_flush;\n s.last_flush = flush;\n\n /* Flush as much pending output as possible */\n if (s.pending !== 0) {\n flush_pending(strm);\n if (strm.avail_out === 0) {\n /* Since avail_out is 0, deflate will be called again with\n * more output space, but possibly with both pending and\n * avail_in equal to zero. There won't be anything to do,\n * but this is not an error situation so make sure we\n * return OK instead of BUF_ERROR at next call of deflate:\n */\n s.last_flush = -1;\n return Z_OK;\n }\n\n /* Make sure there is something to do and avoid duplicate consecutive\n * flushes. For repeated and useless calls with Z_FINISH, we keep\n * returning Z_STREAM_END instead of Z_BUF_ERROR.\n */\n } else if (strm.avail_in === 0 && rank(flush) <= rank(old_flush) &&\n flush !== Z_FINISH) {\n return err(strm, Z_BUF_ERROR);\n }\n\n /* User must not provide more input after the first FINISH: */\n if (s.status === FINISH_STATE && strm.avail_in !== 0) {\n return err(strm, Z_BUF_ERROR);\n }\n\n /* Write the header */\n if (s.status === INIT_STATE && s.wrap === 0) {\n s.status = BUSY_STATE;\n }\n if (s.status === INIT_STATE) {\n /* zlib header */\n let header = (Z_DEFLATED + ((s.w_bits - 8) << 4)) << 8;\n let level_flags = -1;\n\n if (s.strategy >= Z_HUFFMAN_ONLY || s.level < 2) {\n level_flags = 0;\n } else if (s.level < 6) {\n level_flags = 1;\n } else if (s.level === 6) {\n level_flags = 2;\n } else {\n level_flags = 3;\n }\n header |= (level_flags << 6);\n if (s.strstart !== 0) { header |= PRESET_DICT; }\n header += 31 - (header % 31);\n\n putShortMSB(s, header);\n\n /* Save the adler32 of the preset dictionary: */\n if (s.strstart !== 0) {\n putShortMSB(s, strm.adler >>> 16);\n putShortMSB(s, strm.adler & 0xffff);\n }\n strm.adler = 1; // adler32(0L, Z_NULL, 0);\n s.status = BUSY_STATE;\n\n /* Compression must start with an empty pending buffer */\n flush_pending(strm);\n if (s.pending !== 0) {\n s.last_flush = -1;\n return Z_OK;\n }\n }\n//#ifdef GZIP\n if (s.status === GZIP_STATE) {\n /* gzip header */\n strm.adler = 0; //crc32(0L, Z_NULL, 0);\n put_byte(s, 31);\n put_byte(s, 139);\n put_byte(s, 8);\n if (!s.gzhead) { // s->gzhead == Z_NULL\n put_byte(s, 0);\n put_byte(s, 0);\n put_byte(s, 0);\n put_byte(s, 0);\n put_byte(s, 0);\n put_byte(s, s.level === 9 ? 2 :\n (s.strategy >= Z_HUFFMAN_ONLY || s.level < 2 ?\n 4 : 0));\n put_byte(s, OS_CODE);\n s.status = BUSY_STATE;\n\n /* Compression must start with an empty pending buffer */\n flush_pending(strm);\n if (s.pending !== 0) {\n s.last_flush = -1;\n return Z_OK;\n }\n }\n else {\n put_byte(s, (s.gzhead.text ? 1 : 0) +\n (s.gzhead.hcrc ? 2 : 0) +\n (!s.gzhead.extra ? 0 : 4) +\n (!s.gzhead.name ? 0 : 8) +\n (!s.gzhead.comment ? 0 : 16)\n );\n put_byte(s, s.gzhead.time & 0xff);\n put_byte(s, (s.gzhead.time >> 8) & 0xff);\n put_byte(s, (s.gzhead.time >> 16) & 0xff);\n put_byte(s, (s.gzhead.time >> 24) & 0xff);\n put_byte(s, s.level === 9 ? 2 :\n (s.strategy >= Z_HUFFMAN_ONLY || s.level < 2 ?\n 4 : 0));\n put_byte(s, s.gzhead.os & 0xff);\n if (s.gzhead.extra && s.gzhead.extra.length) {\n put_byte(s, s.gzhead.extra.length & 0xff);\n put_byte(s, (s.gzhead.extra.length >> 8) & 0xff);\n }\n if (s.gzhead.hcrc) {\n strm.adler = crc32(strm.adler, s.pending_buf, s.pending, 0);\n }\n s.gzindex = 0;\n s.status = EXTRA_STATE;\n }\n }\n if (s.status === EXTRA_STATE) {\n if (s.gzhead.extra/* != Z_NULL*/) {\n let beg = s.pending; /* start of bytes to update crc */\n let left = (s.gzhead.extra.length & 0xffff) - s.gzindex;\n while (s.pending + left > s.pending_buf_size) {\n let copy = s.pending_buf_size - s.pending;\n // zmemcpy(s.pending_buf + s.pending,\n // s.gzhead.extra + s.gzindex, copy);\n s.pending_buf.set(s.gzhead.extra.subarray(s.gzindex, s.gzindex + copy), s.pending);\n s.pending = s.pending_buf_size;\n //--- HCRC_UPDATE(beg) ---//\n if (s.gzhead.hcrc && s.pending > beg) {\n strm.adler = crc32(strm.adler, s.pending_buf, s.pending - beg, beg);\n }\n //---//\n s.gzindex += copy;\n flush_pending(strm);\n if (s.pending !== 0) {\n s.last_flush = -1;\n return Z_OK;\n }\n beg = 0;\n left -= copy;\n }\n // JS specific: s.gzhead.extra may be TypedArray or Array for backward compatibility\n // TypedArray.slice and TypedArray.from don't exist in IE10-IE11\n let gzhead_extra = new Uint8Array(s.gzhead.extra);\n // zmemcpy(s->pending_buf + s->pending,\n // s->gzhead->extra + s->gzindex, left);\n s.pending_buf.set(gzhead_extra.subarray(s.gzindex, s.gzindex + left), s.pending);\n s.pending += left;\n //--- HCRC_UPDATE(beg) ---//\n if (s.gzhead.hcrc && s.pending > beg) {\n strm.adler = crc32(strm.adler, s.pending_buf, s.pending - beg, beg);\n }\n //---//\n s.gzindex = 0;\n }\n s.status = NAME_STATE;\n }\n if (s.status === NAME_STATE) {\n if (s.gzhead.name/* != Z_NULL*/) {\n let beg = s.pending; /* start of bytes to update crc */\n let val;\n do {\n if (s.pending === s.pending_buf_size) {\n //--- HCRC_UPDATE(beg) ---//\n if (s.gzhead.hcrc && s.pending > beg) {\n strm.adler = crc32(strm.adler, s.pending_buf, s.pending - beg, beg);\n }\n //---//\n flush_pending(strm);\n if (s.pending !== 0) {\n s.last_flush = -1;\n return Z_OK;\n }\n beg = 0;\n }\n // JS specific: little magic to add zero terminator to end of string\n if (s.gzindex < s.gzhead.name.length) {\n val = s.gzhead.name.charCodeAt(s.gzindex++) & 0xff;\n } else {\n val = 0;\n }\n put_byte(s, val);\n } while (val !== 0);\n //--- HCRC_UPDATE(beg) ---//\n if (s.gzhead.hcrc && s.pending > beg) {\n strm.adler = crc32(strm.adler, s.pending_buf, s.pending - beg, beg);\n }\n //---//\n s.gzindex = 0;\n }\n s.status = COMMENT_STATE;\n }\n if (s.status === COMMENT_STATE) {\n if (s.gzhead.comment/* != Z_NULL*/) {\n let beg = s.pending; /* start of bytes to update crc */\n let val;\n do {\n if (s.pending === s.pending_buf_size) {\n //--- HCRC_UPDATE(beg) ---//\n if (s.gzhead.hcrc && s.pending > beg) {\n strm.adler = crc32(strm.adler, s.pending_buf, s.pending - beg, beg);\n }\n //---//\n flush_pending(strm);\n if (s.pending !== 0) {\n s.last_flush = -1;\n return Z_OK;\n }\n beg = 0;\n }\n // JS specific: little magic to add zero terminator to end of string\n if (s.gzindex < s.gzhead.comment.length) {\n val = s.gzhead.comment.charCodeAt(s.gzindex++) & 0xff;\n } else {\n val = 0;\n }\n put_byte(s, val);\n } while (val !== 0);\n //--- HCRC_UPDATE(beg) ---//\n if (s.gzhead.hcrc && s.pending > beg) {\n strm.adler = crc32(strm.adler, s.pending_buf, s.pending - beg, beg);\n }\n //---//\n }\n s.status = HCRC_STATE;\n }\n if (s.status === HCRC_STATE) {\n if (s.gzhead.hcrc) {\n if (s.pending + 2 > s.pending_buf_size) {\n flush_pending(strm);\n if (s.pending !== 0) {\n s.last_flush = -1;\n return Z_OK;\n }\n }\n put_byte(s, strm.adler & 0xff);\n put_byte(s, (strm.adler >> 8) & 0xff);\n strm.adler = 0; //crc32(0L, Z_NULL, 0);\n }\n s.status = BUSY_STATE;\n\n /* Compression must start with an empty pending buffer */\n flush_pending(strm);\n if (s.pending !== 0) {\n s.last_flush = -1;\n return Z_OK;\n }\n }\n//#endif\n\n /* Start a new block or continue the current one.\n */\n if (strm.avail_in !== 0 || s.lookahead !== 0 ||\n (flush !== Z_NO_FLUSH && s.status !== FINISH_STATE)) {\n let bstate = s.level === 0 ? deflate_stored(s, flush) :\n s.strategy === Z_HUFFMAN_ONLY ? deflate_huff(s, flush) :\n s.strategy === Z_RLE ? deflate_rle(s, flush) :\n configuration_table[s.level].func(s, flush);\n\n if (bstate === BS_FINISH_STARTED || bstate === BS_FINISH_DONE) {\n s.status = FINISH_STATE;\n }\n if (bstate === BS_NEED_MORE || bstate === BS_FINISH_STARTED) {\n if (strm.avail_out === 0) {\n s.last_flush = -1;\n /* avoid BUF_ERROR next call, see above */\n }\n return Z_OK;\n /* If flush != Z_NO_FLUSH && avail_out == 0, the next call\n * of deflate should use the same flush parameter to make sure\n * that the flush is complete. So we don't have to output an\n * empty block here, this will be done at next call. This also\n * ensures that for a very small output buffer, we emit at most\n * one empty block.\n */\n }\n if (bstate === BS_BLOCK_DONE) {\n if (flush === Z_PARTIAL_FLUSH) {\n _tr_align(s);\n }\n else if (flush !== Z_BLOCK) { /* FULL_FLUSH or SYNC_FLUSH */\n\n _tr_stored_block(s, 0, 0, false);\n /* For a full flush, this empty block will be recognized\n * as a special marker by inflate_sync().\n */\n if (flush === Z_FULL_FLUSH) {\n /*** CLEAR_HASH(s); ***/ /* forget history */\n zero(s.head); // Fill with NIL (= 0);\n\n if (s.lookahead === 0) {\n s.strstart = 0;\n s.block_start = 0;\n s.insert = 0;\n }\n }\n }\n flush_pending(strm);\n if (strm.avail_out === 0) {\n s.last_flush = -1; /* avoid BUF_ERROR at next call, see above */\n return Z_OK;\n }\n }\n }\n\n if (flush !== Z_FINISH) { return Z_OK; }\n if (s.wrap <= 0) { return Z_STREAM_END; }\n\n /* Write the trailer */\n if (s.wrap === 2) {\n put_byte(s, strm.adler & 0xff);\n put_byte(s, (strm.adler >> 8) & 0xff);\n put_byte(s, (strm.adler >> 16) & 0xff);\n put_byte(s, (strm.adler >> 24) & 0xff);\n put_byte(s, strm.total_in & 0xff);\n put_byte(s, (strm.total_in >> 8) & 0xff);\n put_byte(s, (strm.total_in >> 16) & 0xff);\n put_byte(s, (strm.total_in >> 24) & 0xff);\n }\n else\n {\n putShortMSB(s, strm.adler >>> 16);\n putShortMSB(s, strm.adler & 0xffff);\n }\n\n flush_pending(strm);\n /* If avail_out is zero, the application will call deflate again\n * to flush the rest.\n */\n if (s.wrap > 0) { s.wrap = -s.wrap; }\n /* write the trailer only once! */\n return s.pending !== 0 ? Z_OK : Z_STREAM_END;\n};\n\n\nconst deflateEnd = (strm) => {\n\n if (deflateStateCheck(strm)) {\n return Z_STREAM_ERROR;\n }\n\n const status = strm.state.status;\n\n strm.state = null;\n\n return status === BUSY_STATE ? err(strm, Z_DATA_ERROR) : Z_OK;\n};\n\n\n/* =========================================================================\n * Initializes the compression dictionary from the given byte\n * sequence without producing any compressed output.\n */\nconst deflateSetDictionary = (strm, dictionary) => {\n\n let dictLength = dictionary.length;\n\n if (deflateStateCheck(strm)) {\n return Z_STREAM_ERROR;\n }\n\n const s = strm.state;\n const wrap = s.wrap;\n\n if (wrap === 2 || (wrap === 1 && s.status !== INIT_STATE) || s.lookahead) {\n return Z_STREAM_ERROR;\n }\n\n /* when using zlib wrappers, compute Adler-32 for provided dictionary */\n if (wrap === 1) {\n /* adler32(strm->adler, dictionary, dictLength); */\n strm.adler = adler32(strm.adler, dictionary, dictLength, 0);\n }\n\n s.wrap = 0; /* avoid computing Adler-32 in read_buf */\n\n /* if dictionary would fill window, just replace the history */\n if (dictLength >= s.w_size) {\n if (wrap === 0) { /* already empty otherwise */\n /*** CLEAR_HASH(s); ***/\n zero(s.head); // Fill with NIL (= 0);\n s.strstart = 0;\n s.block_start = 0;\n s.insert = 0;\n }\n /* use the tail */\n // dictionary = dictionary.slice(dictLength - s.w_size);\n let tmpDict = new Uint8Array(s.w_size);\n tmpDict.set(dictionary.subarray(dictLength - s.w_size, dictLength), 0);\n dictionary = tmpDict;\n dictLength = s.w_size;\n }\n /* insert dictionary into window and hash */\n const avail = strm.avail_in;\n const next = strm.next_in;\n const input = strm.input;\n strm.avail_in = dictLength;\n strm.next_in = 0;\n strm.input = dictionary;\n fill_window(s);\n while (s.lookahead >= MIN_MATCH) {\n let str = s.strstart;\n let n = s.lookahead - (MIN_MATCH - 1);\n do {\n /* UPDATE_HASH(s, s->ins_h, s->window[str + MIN_MATCH-1]); */\n s.ins_h = HASH(s, s.ins_h, s.window[str + MIN_MATCH - 1]);\n\n s.prev[str & s.w_mask] = s.head[s.ins_h];\n\n s.head[s.ins_h] = str;\n str++;\n } while (--n);\n s.strstart = str;\n s.lookahead = MIN_MATCH - 1;\n fill_window(s);\n }\n s.strstart += s.lookahead;\n s.block_start = s.strstart;\n s.insert = s.lookahead;\n s.lookahead = 0;\n s.match_length = s.prev_length = MIN_MATCH - 1;\n s.match_available = 0;\n strm.next_in = next;\n strm.input = input;\n strm.avail_in = avail;\n s.wrap = wrap;\n return Z_OK;\n};\n\n\nmodule.exports.deflateInit = deflateInit;\nmodule.exports.deflateInit2 = deflateInit2;\nmodule.exports.deflateReset = deflateReset;\nmodule.exports.deflateResetKeep = deflateResetKeep;\nmodule.exports.deflateSetHeader = deflateSetHeader;\nmodule.exports.deflate = deflate;\nmodule.exports.deflateEnd = deflateEnd;\nmodule.exports.deflateSetDictionary = deflateSetDictionary;\nmodule.exports.deflateInfo = 'pako deflate (from Nodeca project)';\n\n/* Not implemented\nmodule.exports.deflateBound = deflateBound;\nmodule.exports.deflateCopy = deflateCopy;\nmodule.exports.deflateGetDictionary = deflateGetDictionary;\nmodule.exports.deflateParams = deflateParams;\nmodule.exports.deflatePending = deflatePending;\nmodule.exports.deflatePrime = deflatePrime;\nmodule.exports.deflateTune = deflateTune;\n*/\n","var root = require('./_root');\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? root.Buffer : undefined,\n allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined;\n\n/**\n * Creates a clone of `buffer`.\n *\n * @private\n * @param {Buffer} buffer The buffer to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Buffer} Returns the cloned buffer.\n */\nfunction cloneBuffer(buffer, isDeep) {\n if (isDeep) {\n return buffer.slice();\n }\n var length = buffer.length,\n result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length);\n\n buffer.copy(result);\n return result;\n}\n\nmodule.exports = cloneBuffer;\n","var getNative = require('./_getNative');\n\nvar defineProperty = (function() {\n try {\n var func = getNative(Object, 'defineProperty');\n func({}, '', {});\n return func;\n } catch (e) {}\n}());\n\nmodule.exports = defineProperty;\n","'use strict';\n\n\nconst zlib_inflate = require('./zlib/inflate');\nconst utils = require('./utils/common');\nconst strings = require('./utils/strings');\nconst msg = require('./zlib/messages');\nconst ZStream = require('./zlib/zstream');\nconst GZheader = require('./zlib/gzheader');\n\nconst toString = Object.prototype.toString;\n\n/* Public constants ==========================================================*/\n/* ===========================================================================*/\n\nconst {\n Z_NO_FLUSH, Z_FINISH,\n Z_OK, Z_STREAM_END, Z_NEED_DICT, Z_STREAM_ERROR, Z_DATA_ERROR, Z_MEM_ERROR\n} = require('./zlib/constants');\n\n/* ===========================================================================*/\n\n\n/**\n * class Inflate\n *\n * Generic JS-style wrapper for zlib calls. If you don't need\n * streaming behaviour - use more simple functions: [[inflate]]\n * and [[inflateRaw]].\n **/\n\n/* internal\n * inflate.chunks -> Array\n *\n * Chunks of output data, if [[Inflate#onData]] not overridden.\n **/\n\n/**\n * Inflate.result -> Uint8Array|String\n *\n * Uncompressed result, generated by default [[Inflate#onData]]\n * and [[Inflate#onEnd]] handlers. Filled after you push last chunk\n * (call [[Inflate#push]] with `Z_FINISH` / `true` param).\n **/\n\n/**\n * Inflate.err -> Number\n *\n * Error code after inflate finished. 0 (Z_OK) on success.\n * Should be checked if broken data possible.\n **/\n\n/**\n * Inflate.msg -> String\n *\n * Error message, if [[Inflate.err]] != 0\n **/\n\n\n/**\n * new Inflate(options)\n * - options (Object): zlib inflate options.\n *\n * Creates new inflator instance with specified params. Throws exception\n * on bad params. Supported options:\n *\n * - `windowBits`\n * - `dictionary`\n *\n * [http://zlib.net/manual.html#Advanced](http://zlib.net/manual.html#Advanced)\n * for more information on these.\n *\n * Additional options, for internal needs:\n *\n * - `chunkSize` - size of generated data chunks (16K by default)\n * - `raw` (Boolean) - do raw inflate\n * - `to` (String) - if equal to 'string', then result will be converted\n * from utf8 to utf16 (javascript) string. When string output requested,\n * chunk length can differ from `chunkSize`, depending on content.\n *\n * By default, when no options set, autodetect deflate/gzip data format via\n * wrapper header.\n *\n * ##### Example:\n *\n * ```javascript\n * const pako = require('pako')\n * const chunk1 = new Uint8Array([1,2,3,4,5,6,7,8,9])\n * const chunk2 = new Uint8Array([10,11,12,13,14,15,16,17,18,19]);\n *\n * const inflate = new pako.Inflate({ level: 3});\n *\n * inflate.push(chunk1, false);\n * inflate.push(chunk2, true); // true -> last chunk\n *\n * if (inflate.err) { throw new Error(inflate.err); }\n *\n * console.log(inflate.result);\n * ```\n **/\nfunction Inflate(options) {\n this.options = utils.assign({\n chunkSize: 1024 * 64,\n windowBits: 15,\n to: ''\n }, options || {});\n\n const opt = this.options;\n\n // Force window size for `raw` data, if not set directly,\n // because we have no header for autodetect.\n if (opt.raw && (opt.windowBits >= 0) && (opt.windowBits < 16)) {\n opt.windowBits = -opt.windowBits;\n if (opt.windowBits === 0) { opt.windowBits = -15; }\n }\n\n // If `windowBits` not defined (and mode not raw) - set autodetect flag for gzip/deflate\n if ((opt.windowBits >= 0) && (opt.windowBits < 16) &&\n !(options && options.windowBits)) {\n opt.windowBits += 32;\n }\n\n // Gzip header has no info about windows size, we can do autodetect only\n // for deflate. So, if window size not set, force it to max when gzip possible\n if ((opt.windowBits > 15) && (opt.windowBits < 48)) {\n // bit 3 (16) -> gzipped data\n // bit 4 (32) -> autodetect gzip/deflate\n if ((opt.windowBits & 15) === 0) {\n opt.windowBits |= 15;\n }\n }\n\n this.err = 0; // error code, if happens (0 = Z_OK)\n this.msg = ''; // error message\n this.ended = false; // used to avoid multiple onEnd() calls\n this.chunks = []; // chunks of compressed data\n\n this.strm = new ZStream();\n this.strm.avail_out = 0;\n\n let status = zlib_inflate.inflateInit2(\n this.strm,\n opt.windowBits\n );\n\n if (status !== Z_OK) {\n throw new Error(msg[status]);\n }\n\n this.header = new GZheader();\n\n zlib_inflate.inflateGetHeader(this.strm, this.header);\n\n // Setup dictionary\n if (opt.dictionary) {\n // Convert data if needed\n if (typeof opt.dictionary === 'string') {\n opt.dictionary = strings.string2buf(opt.dictionary);\n } else if (toString.call(opt.dictionary) === '[object ArrayBuffer]') {\n opt.dictionary = new Uint8Array(opt.dictionary);\n }\n if (opt.raw) { //In raw mode we need to set the dictionary early\n status = zlib_inflate.inflateSetDictionary(this.strm, opt.dictionary);\n if (status !== Z_OK) {\n throw new Error(msg[status]);\n }\n }\n }\n}\n\n/**\n * Inflate#push(data[, flush_mode]) -> Boolean\n * - data (Uint8Array|ArrayBuffer): input data\n * - flush_mode (Number|Boolean): 0..6 for corresponding Z_NO_FLUSH..Z_TREE\n * flush modes. See constants. Skipped or `false` means Z_NO_FLUSH,\n * `true` means Z_FINISH.\n *\n * Sends input data to inflate pipe, generating [[Inflate#onData]] calls with\n * new output chunks. Returns `true` on success. If end of stream detected,\n * [[Inflate#onEnd]] will be called.\n *\n * `flush_mode` is not needed for normal operation, because end of stream\n * detected automatically. You may try to use it for advanced things, but\n * this functionality was not tested.\n *\n * On fail call [[Inflate#onEnd]] with error code and return false.\n *\n * ##### Example\n *\n * ```javascript\n * push(chunk, false); // push one of data chunks\n * ...\n * push(chunk, true); // push last chunk\n * ```\n **/\nInflate.prototype.push = function (data, flush_mode) {\n const strm = this.strm;\n const chunkSize = this.options.chunkSize;\n const dictionary = this.options.dictionary;\n let status, _flush_mode, last_avail_out;\n\n if (this.ended) return false;\n\n if (flush_mode === ~~flush_mode) _flush_mode = flush_mode;\n else _flush_mode = flush_mode === true ? Z_FINISH : Z_NO_FLUSH;\n\n // Convert data if needed\n if (toString.call(data) === '[object ArrayBuffer]') {\n strm.input = new Uint8Array(data);\n } else {\n strm.input = data;\n }\n\n strm.next_in = 0;\n strm.avail_in = strm.input.length;\n\n for (;;) {\n if (strm.avail_out === 0) {\n strm.output = new Uint8Array(chunkSize);\n strm.next_out = 0;\n strm.avail_out = chunkSize;\n }\n\n status = zlib_inflate.inflate(strm, _flush_mode);\n\n if (status === Z_NEED_DICT && dictionary) {\n status = zlib_inflate.inflateSetDictionary(strm, dictionary);\n\n if (status === Z_OK) {\n status = zlib_inflate.inflate(strm, _flush_mode);\n } else if (status === Z_DATA_ERROR) {\n // Replace code with more verbose\n status = Z_NEED_DICT;\n }\n }\n\n // Skip snyc markers if more data follows and not raw mode\n while (strm.avail_in > 0 &&\n status === Z_STREAM_END &&\n strm.state.wrap > 0 &&\n data[strm.next_in] !== 0)\n {\n zlib_inflate.inflateReset(strm);\n status = zlib_inflate.inflate(strm, _flush_mode);\n }\n\n switch (status) {\n case Z_STREAM_ERROR:\n case Z_DATA_ERROR:\n case Z_NEED_DICT:\n case Z_MEM_ERROR:\n this.onEnd(status);\n this.ended = true;\n return false;\n }\n\n // Remember real `avail_out` value, because we may patch out buffer content\n // to align utf8 strings boundaries.\n last_avail_out = strm.avail_out;\n\n if (strm.next_out) {\n if (strm.avail_out === 0 || status === Z_STREAM_END) {\n\n if (this.options.to === 'string') {\n\n let next_out_utf8 = strings.utf8border(strm.output, strm.next_out);\n\n let tail = strm.next_out - next_out_utf8;\n let utf8str = strings.buf2string(strm.output, next_out_utf8);\n\n // move tail & realign counters\n strm.next_out = tail;\n strm.avail_out = chunkSize - tail;\n if (tail) strm.output.set(strm.output.subarray(next_out_utf8, next_out_utf8 + tail), 0);\n\n this.onData(utf8str);\n\n } else {\n this.onData(strm.output.length === strm.next_out ? strm.output : strm.output.subarray(0, strm.next_out));\n }\n }\n }\n\n // Must repeat iteration if out buffer is full\n if (status === Z_OK && last_avail_out === 0) continue;\n\n // Finalize if end of stream reached.\n if (status === Z_STREAM_END) {\n status = zlib_inflate.inflateEnd(this.strm);\n this.onEnd(status);\n this.ended = true;\n return true;\n }\n\n if (strm.avail_in === 0) break;\n }\n\n return true;\n};\n\n\n/**\n * Inflate#onData(chunk) -> Void\n * - chunk (Uint8Array|String): output data. When string output requested,\n * each chunk will be string.\n *\n * By default, stores data blocks in `chunks[]` property and glue\n * those in `onEnd`. Override this handler, if you need another behaviour.\n **/\nInflate.prototype.onData = function (chunk) {\n this.chunks.push(chunk);\n};\n\n\n/**\n * Inflate#onEnd(status) -> Void\n * - status (Number): inflate status. 0 (Z_OK) on success,\n * other if not.\n *\n * Called either after you tell inflate that the input stream is\n * complete (Z_FINISH). By default - join collected chunks,\n * free memory and fill `results` / `err` properties.\n **/\nInflate.prototype.onEnd = function (status) {\n // On success - join\n if (status === Z_OK) {\n if (this.options.to === 'string') {\n this.result = this.chunks.join('');\n } else {\n this.result = utils.flattenChunks(this.chunks);\n }\n }\n this.chunks = [];\n this.err = status;\n this.msg = this.strm.msg;\n};\n\n\n/**\n * inflate(data[, options]) -> Uint8Array|String\n * - data (Uint8Array|ArrayBuffer): input data to decompress.\n * - options (Object): zlib inflate options.\n *\n * Decompress `data` with inflate/ungzip and `options`. Autodetect\n * format via wrapper header by default. That's why we don't provide\n * separate `ungzip` method.\n *\n * Supported options are:\n *\n * - windowBits\n *\n * [http://zlib.net/manual.html#Advanced](http://zlib.net/manual.html#Advanced)\n * for more information.\n *\n * Sugar (options):\n *\n * - `raw` (Boolean) - say that we work with raw stream, if you don't wish to specify\n * negative windowBits implicitly.\n * - `to` (String) - if equal to 'string', then result will be converted\n * from utf8 to utf16 (javascript) string. When string output requested,\n * chunk length can differ from `chunkSize`, depending on content.\n *\n *\n * ##### Example:\n *\n * ```javascript\n * const pako = require('pako');\n * const input = pako.deflate(new Uint8Array([1,2,3,4,5,6,7,8,9]));\n * let output;\n *\n * try {\n * output = pako.inflate(input);\n * } catch (err) {\n * console.log(err);\n * }\n * ```\n **/\nfunction inflate(input, options) {\n const inflator = new Inflate(options);\n\n inflator.push(input);\n\n // That will never happens, if you don't cheat with options :)\n if (inflator.err) throw inflator.msg || msg[inflator.err];\n\n return inflator.result;\n}\n\n\n/**\n * inflateRaw(data[, options]) -> Uint8Array|String\n * - data (Uint8Array|ArrayBuffer): input data to decompress.\n * - options (Object): zlib inflate options.\n *\n * The same as [[inflate]], but creates raw data, without wrapper\n * (header and adler32 crc).\n **/\nfunction inflateRaw(input, options) {\n options = options || {};\n options.raw = true;\n return inflate(input, options);\n}\n\n\n/**\n * ungzip(data[, options]) -> Uint8Array|String\n * - data (Uint8Array|ArrayBuffer): input data to decompress.\n * - options (Object): zlib inflate options.\n *\n * Just shortcut to [[inflate]], because it autodetects format\n * by header.content. Done for convenience.\n **/\n\n\nmodule.exports.Inflate = Inflate;\nmodule.exports.inflate = inflate;\nmodule.exports.inflateRaw = inflateRaw;\nmodule.exports.ungzip = inflate;\nmodule.exports.constants = require('./zlib/constants');\n","var mapCacheClear = require('./_mapCacheClear'),\n mapCacheDelete = require('./_mapCacheDelete'),\n mapCacheGet = require('./_mapCacheGet'),\n mapCacheHas = require('./_mapCacheHas'),\n mapCacheSet = require('./_mapCacheSet');\n\n/**\n * Creates a map cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction MapCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `MapCache`.\nMapCache.prototype.clear = mapCacheClear;\nMapCache.prototype['delete'] = mapCacheDelete;\nMapCache.prototype.get = mapCacheGet;\nMapCache.prototype.has = mapCacheHas;\nMapCache.prototype.set = mapCacheSet;\n\nmodule.exports = MapCache;\n","var identity = require('./identity'),\n overRest = require('./_overRest'),\n setToString = require('./_setToString');\n\n/**\n * The base implementation of `_.rest` which doesn't validate or coerce arguments.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @returns {Function} Returns the new function.\n */\nfunction baseRest(func, start) {\n return setToString(overRest(func, start, identity), func + '');\n}\n\nmodule.exports = baseRest;\n","var hashClear = require('./_hashClear'),\n hashDelete = require('./_hashDelete'),\n hashGet = require('./_hashGet'),\n hashHas = require('./_hashHas'),\n hashSet = require('./_hashSet');\n\n/**\n * Creates a hash object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Hash(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `Hash`.\nHash.prototype.clear = hashClear;\nHash.prototype['delete'] = hashDelete;\nHash.prototype.get = hashGet;\nHash.prototype.has = hashHas;\nHash.prototype.set = hashSet;\n\nmodule.exports = Hash;\n","// Copyright (c) Zhendong Peng\n// Distributed under the terms of the Modified BSD License.\n\nimport merge from 'lodash/merge'\nimport { DOMWidgetModel, DOMWidgetView, ISerializers } from '@jupyter-widgets/base'\n\nimport { MODULE_NAME, MODULE_VERSION } from './version'\nimport Player from './wavesurfer/player'\n\n// Import the CSS\nimport 'bootstrap/dist/css/bootstrap.min.css'\n\nimport '../css/widget.css'\n\nexport class PlayerModel extends DOMWidgetModel {\n defaults() {\n return {\n ...super.defaults(),\n _model_name: PlayerModel.model_name,\n _model_module: PlayerModel.model_module,\n _model_module_version: PlayerModel.model_module_version,\n _view_name: PlayerModel.view_name,\n _view_module: PlayerModel.view_module,\n _view_module_version: PlayerModel.view_module_version,\n }\n }\n\n static serializers: ISerializers = {\n ...DOMWidgetModel.serializers,\n // Add any extra serializers here\n }\n\n static model_name = 'PlayerModel'\n static model_module = MODULE_NAME\n static model_module_version = MODULE_VERSION\n static view_name = 'PlayerView' // Set to null if no view\n static view_module = MODULE_NAME // Set to null if no view\n static view_module_version = MODULE_VERSION\n}\n\nexport class PlayerView extends DOMWidgetView {\n private _player: Player\n\n render() {\n super.render()\n this.displayed.then(async () => {\n const config = {\n isStreaming: this.model.get('is_streaming'),\n language: this.model.get('language'),\n }\n this._player = Player.create(merge({}, this.model.get('config'), config))\n this.el.appendChild(this._player.el)\n this.model.on('change:audio', () => {\n this._player.sampleRate = this.model.get('rate')\n this._player.load(this.model.get('audio'))\n })\n this.model.on('change:is_done', () => {\n this._player.setDone()\n })\n })\n }\n}\n","\"use strict\";\n\nmodule.exports = function (url, options) {\n if (!options) {\n options = {};\n }\n if (!url) {\n return url;\n }\n url = String(url.__esModule ? url.default : url);\n\n // If url is already wrapped in quotes, remove them\n if (/^['\"].*['\"]$/.test(url)) {\n url = url.slice(1, -1);\n }\n if (options.hash) {\n url += options.hash;\n }\n\n // Should url be wrapped?\n // See https://drafts.csswg.org/css-values-3/#urls\n if (/[\"'() \\t\\n]|(%20)/.test(url) || options.needQuotes) {\n return \"\\\"\".concat(url.replace(/\"/g, '\\\\\"').replace(/\\n/g, \"\\\\n\"), \"\\\"\");\n }\n return url;\n};","// Top level file is just a mixin of submodules & constants\n'use strict';\n\nconst { Deflate, deflate, deflateRaw, gzip } = require('./lib/deflate');\n\nconst { Inflate, inflate, inflateRaw, ungzip } = require('./lib/inflate');\n\nconst constants = require('./lib/zlib/constants');\n\nmodule.exports.Deflate = Deflate;\nmodule.exports.deflate = deflate;\nmodule.exports.deflateRaw = deflateRaw;\nmodule.exports.gzip = gzip;\nmodule.exports.Inflate = Inflate;\nmodule.exports.inflate = inflate;\nmodule.exports.inflateRaw = inflateRaw;\nmodule.exports.ungzip = ungzip;\nmodule.exports.constants = constants;\n","/**\n * Removes `key` and its value from the stack.\n *\n * @private\n * @name delete\n * @memberOf Stack\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction stackDelete(key) {\n var data = this.__data__,\n result = data['delete'](key);\n\n this.size = data.size;\n return result;\n}\n\nmodule.exports = stackDelete;\n","var cloneArrayBuffer = require('./_cloneArrayBuffer');\n\n/**\n * Creates a clone of `typedArray`.\n *\n * @private\n * @param {Object} typedArray The typed array to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the cloned typed array.\n */\nfunction cloneTypedArray(typedArray, isDeep) {\n var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer;\n return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length);\n}\n\nmodule.exports = cloneTypedArray;\n","\"use strict\";class t{constructor(){this.listeners={}}on(t,s,e){if(this.listeners[t]||(this.listeners[t]=new Set),this.listeners[t].add(s),null==e?void 0:e.once){const e=()=>{this.un(t,e),this.un(t,s)};return this.on(t,e),e}return()=>this.un(t,s)}un(t,s){var e;null===(e=this.listeners[t])||void 0===e||e.delete(s)}once(t,s){return this.on(t,s,{once:!0})}unAll(){this.listeners={}}emit(t,...s){this.listeners[t]&&this.listeners[t].forEach((t=>t(...s)))}}class s extends t{constructor(t){super(),this.subscriptions=[],this.options=t}onInit(){}_init(t){this.wavesurfer=t,this.onInit()}destroy(){this.emit(\"destroy\"),this.subscriptions.forEach((t=>t()))}}const e={scale:.5,deltaThreshold:5,exponentialZooming:!1,iterations:20};class i extends s{constructor(t){super(t||{}),this.wrapper=void 0,this.container=null,this.accumulatedDelta=0,this.pointerTime=0,this.oldX=0,this.endZoom=0,this.startZoom=0,this.onWheel=t=>{if(this.wavesurfer&&this.container&&!(Math.abs(t.deltaX)>=Math.abs(t.deltaY))&&(t.preventDefault(),this.accumulatedDelta+=-t.deltaY,0===this.startZoom&&this.options.exponentialZooming&&(this.startZoom=this.wavesurfer.getWrapper().clientWidth/this.wavesurfer.getDuration()),0===this.options.deltaThreshold||Math.abs(this.accumulatedDelta)>=this.options.deltaThreshold)){const s=this.wavesurfer.getDuration(),e=0===this.wavesurfer.options.minPxPerSec?this.wavesurfer.getWrapper().scrollWidth/s:this.wavesurfer.options.minPxPerSec,i=t.clientX-this.container.getBoundingClientRect().left,o=this.container.clientWidth,n=this.wavesurfer.getScroll();i===this.oldX&&0!==this.oldX||(this.pointerTime=(n+i)/e),this.oldX=i;const r=this.calculateNewZoom(e,this.accumulatedDelta),h=o/r*(i/o);r*s<o?(this.wavesurfer.zoom(o/s),this.container.scrollLeft=0):(this.wavesurfer.zoom(r),this.container.scrollLeft=(this.pointerTime-h)*r),this.accumulatedDelta=0}},this.calculateNewZoom=(t,s)=>{let e;if(this.options.exponentialZooming){const i=s>0?Math.pow(this.endZoom/this.startZoom,1/(this.options.iterations-1)):Math.pow(this.startZoom/this.endZoom,1/(this.options.iterations-1));e=Math.max(0,t*i)}else e=Math.max(0,t+s*this.options.scale);return Math.min(e,this.options.maxZoom)},this.options=Object.assign({},e,t)}static create(t){return new i(t)}onInit(){var t;this.wrapper=null===(t=this.wavesurfer)||void 0===t?void 0:t.getWrapper(),this.wrapper&&(this.container=this.wrapper.parentElement,this.container.addEventListener(\"wheel\",this.onWheel),void 0===this.options.maxZoom&&(this.options.maxZoom=this.container.clientWidth),this.endZoom=this.options.maxZoom)}destroy(){this.wrapper&&this.wrapper.removeEventListener(\"wheel\",this.onWheel),super.destroy()}}module.exports=i;\n","// Copyright (c) Zhendong Peng\n// Distributed under the terms of the Modified BSD License.\n\nimport { createElement, createObjectURL } from './utils'\n\nexport class PCMPlayer {\n public playButton: HTMLButtonElement\n private _isDone: boolean = false\n private _isPlaying: boolean = true\n private _interval: number\n private _samples: Int16Array = new Int16Array(0)\n private _allSamples: Int16Array = new Int16Array(0)\n private _audioCtx: AudioContext\n private _gainNode: GainNode\n private _startTime: number\n private _options: { channels: number; sampleRate: number; flushTime: number; language: string }\n\n constructor(\n options?: Partial<{\n channels: number\n sampleRate: number\n flushTime: number\n language: string\n }>,\n ) {\n this._options = Object.assign({ channels: 1, sampleRate: 16000, flushTime: 100, language: 'en' }, options)\n this.playButton = createElement('button', 'btn btn-danger me-3 my-3', '<i class=\"fa fa-pause\"></i>')\n this.playButton.onclick = () => {\n this._isPlaying = !this._isPlaying\n this._isPlaying ? this.play() : this.pause()\n this.playButton.innerHTML = `<i class=\"fa fa-${this._isPlaying ? 'pause' : 'play'}\"></i>`\n }\n\n this._interval = window.setInterval(this.flush.bind(this), this._options.flushTime)\n this._audioCtx = new (window.AudioContext || (window as any).webkitAudioContext)()\n this._gainNode = this._audioCtx.createGain()\n this._gainNode.gain.value = 1.0\n this._gainNode.connect(this._audioCtx.destination)\n this._startTime = this._audioCtx.currentTime\n }\n\n set sampleRate(rate: number) {\n this._options.sampleRate = rate\n }\n\n setDone() {\n this._isDone = true\n }\n\n feed(base64Data: string) {\n const binaryString = atob(base64Data)\n const buffer = new ArrayBuffer(binaryString.length)\n const bufferView = new Uint8Array(buffer)\n for (let i = 0; i < binaryString.length; i++) {\n bufferView[i] = binaryString.charCodeAt(i)\n }\n const data = new Int16Array(buffer)\n this._samples = new Int16Array([...this._samples, ...data])\n this._allSamples = new Int16Array([...this._allSamples, ...data])\n }\n\n get url() {\n return createObjectURL(this._allSamples.buffer, {\n numChannels: this._options.channels,\n sampleRate: this._options.sampleRate,\n })\n }\n\n private flush() {\n if (!this._samples.length) {\n return\n }\n const isDone = this._isDone\n const bufferSource = this._audioCtx.createBufferSource()\n const length = this._samples.length / this._options.channels\n const audioBuffer = this._audioCtx.createBuffer(this._options.channels, length, this._options.sampleRate)\n\n for (let channel = 0; channel < this._options.channels; channel++) {\n const audioData = audioBuffer.getChannelData(channel)\n let offset = channel\n for (let i = 0; i < length; i++) {\n audioData[i] = this._samples[offset] / 32768\n offset += this._options.channels\n }\n }\n\n this._startTime = Math.max(this._startTime, this._audioCtx.currentTime)\n bufferSource.buffer = audioBuffer\n bufferSource.connect(this._gainNode)\n bufferSource.start(this._startTime)\n bufferSource.onended = () => {\n this.playButton.disabled = isDone ? true : false\n }\n this._startTime += audioBuffer.duration\n this._samples = new Int16Array(0)\n }\n\n async play() {\n await this._audioCtx.resume()\n }\n\n async pause() {\n await this._audioCtx.suspend()\n }\n\n volume(volume: number) {\n this._gainNode.gain.value = volume\n }\n\n destroy() {\n if (this._interval) {\n clearInterval(this._interval)\n }\n this._samples = new Int16Array(0)\n this._audioCtx.close()\n }\n}\n\nexport default PCMPlayer\n","var root = require('./_root');\n\n/** Used to detect overreaching core-js shims. */\nvar coreJsData = root['__core-js_shared__'];\n\nmodule.exports = coreJsData;\n","var isObject = require('./isObject');\n\n/** Built-in value references. */\nvar objectCreate = Object.create;\n\n/**\n * The base implementation of `_.create` without support for assigning\n * properties to the created object.\n *\n * @private\n * @param {Object} proto The object to inherit from.\n * @returns {Object} Returns the new object.\n */\nvar baseCreate = (function() {\n function object() {}\n return function(proto) {\n if (!isObject(proto)) {\n return {};\n }\n if (objectCreate) {\n return objectCreate(proto);\n }\n object.prototype = proto;\n var result = new object;\n object.prototype = undefined;\n return result;\n };\n}());\n\nmodule.exports = baseCreate;\n","var baseIsNative = require('./_baseIsNative'),\n getValue = require('./_getValue');\n\n/**\n * Gets the native function at `key` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the method to get.\n * @returns {*} Returns the function if it's native, else `undefined`.\n */\nfunction getNative(object, key) {\n var value = getValue(object, key);\n return baseIsNative(value) ? value : undefined;\n}\n\nmodule.exports = getNative;\n","var baseCreate = require('./_baseCreate'),\n getPrototype = require('./_getPrototype'),\n isPrototype = require('./_isPrototype');\n\n/**\n * Initializes an object clone.\n *\n * @private\n * @param {Object} object The object to clone.\n * @returns {Object} Returns the initialized clone.\n */\nfunction initCloneObject(object) {\n return (typeof object.constructor == 'function' && !isPrototype(object))\n ? baseCreate(getPrototype(object))\n : {};\n}\n\nmodule.exports = initCloneObject;\n","// Copyright (c) Jupyter Development Team.\r\n// Distributed under the terms of the Modified BSD License.\r\n\r\nimport {\r\n WidgetModel\r\n} from '@jupyter-widgets/base';\r\n\r\nimport ndarray = require('ndarray');\r\n\r\nexport { ISerializers } from '@jupyter-widgets/base';\r\n\r\n\r\n\r\n/**\r\n * An interface for a data source.\r\n */\r\nexport interface IDataSource {\r\n getNDArray(key?: string): ndarray.NdArray | null;\r\n}\r\n\r\n\r\n/**\r\n * An interface for a data widget that can be written back to.\r\n *\r\n * Widgets that sync the data back and forth between the kernel and\r\n * frontend should implement this, while widgets that generate the\r\n * data from a process without a reverse can choose not to.\r\n */\r\nexport interface IDataWriteBack {\r\n setNDArray(array: ndarray.NdArray | null, key?: string, options?: any): void;\r\n\r\n canWriteBack(key?: string): boolean;\r\n}\r\n\r\n/**\r\n * A widget that might expose IDataSource and/or IDataSink.\r\n */\r\nexport type DataWidget = WidgetModel & IDataSource & Partial<IDataWriteBack>\r\n\r\n\r\n/**\r\n * Whether an object implements the data source interface.\r\n */\r\nexport function isDataSource(candidate: any): candidate is IDataSource {\r\n return candidate && typeof candidate.getNDArray === 'function';\r\n}\r\n\r\n\r\n/**\r\n * Whether an object implements the data source interface.\r\n */\r\nexport function isDataWriteBack(candidate: any): candidate is IDataWriteBack {\r\n return candidate && typeof candidate.setNDArray === 'function';\r\n}\r\n\r\n\r\n/**\r\n * Gets the array of any array source.\r\n */\r\nexport function getArray(\r\n source: ndarray.NdArray | IDataSource | null,\r\n key?: string\r\n): ndarray.NdArray | null {\r\n\r\n if (isDataSource(source)) {\r\n return source.getNDArray(key);\r\n }\r\n return source;\r\n\r\n}\r\n\r\n\r\n/**\r\n * Sets the union attribute of a widget to an array, in place.\r\n *\r\n * If current value of the attribute is a data sink, (i.e. implements the\r\n * setNDArray method), it will set its data. Otherwise it will set\r\n * the attribute value to the array.\r\n *\r\n * Note: If you never want to overwrite the data of a widget reference,\r\n * instead just call `widget.set(key, array)` directly.\r\n */\r\nexport function setArray(\r\n widget: WidgetModel,\r\n attrName: string,\r\n array: ndarray.NdArray | null,\r\n options?: any\r\n): void {\r\n\r\n const current = widget.get(attrName);\r\n if (isDataWriteBack(current) && current.canWriteBack()) {\r\n current.setNDArray(array, undefined, options);\r\n } else {\r\n widget.set(attrName, array, options);\r\n }\r\n\r\n}\r\n","// Copyright (c) Jupyter Development Team.\n// Distributed under the terms of the Modified BSD License.\n\n// Entry point for the notebook bundle containing custom model definitions.\n//\n// Setup notebook base URL\n//\n// Some static assets may be required by the custom widget javascript. The base\n// url for the notebook is not known at build time and is therefore computed\n// dynamically.\n// eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n;(window as any).__webpack_public_path__ =\n document.querySelector('body')!.getAttribute('data-base-url') + 'nbextensions/ipyaudio'\n\nexport * from './index'\n","/**\n * Removes all key-value entries from the list cache.\n *\n * @private\n * @name clear\n * @memberOf ListCache\n */\nfunction listCacheClear() {\n this.__data__ = [];\n this.size = 0;\n}\n\nmodule.exports = listCacheClear;\n","var Stack = require('./_Stack'),\n assignMergeValue = require('./_assignMergeValue'),\n baseFor = require('./_baseFor'),\n baseMergeDeep = require('./_baseMergeDeep'),\n isObject = require('./isObject'),\n keysIn = require('./keysIn'),\n safeGet = require('./_safeGet');\n\n/**\n * The base implementation of `_.merge` without support for multiple sources.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} [customizer] The function to customize merged values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\nfunction baseMerge(object, source, srcIndex, customizer, stack) {\n if (object === source) {\n return;\n }\n baseFor(source, function(srcValue, key) {\n stack || (stack = new Stack);\n if (isObject(srcValue)) {\n baseMergeDeep(object, source, key, srcIndex, baseMerge, customizer, stack);\n }\n else {\n var newValue = customizer\n ? customizer(safeGet(object, key), srcValue, (key + ''), object, source, stack)\n : undefined;\n\n if (newValue === undefined) {\n newValue = srcValue;\n }\n assignMergeValue(object, key, newValue);\n }\n }, keysIn);\n}\n\nmodule.exports = baseMerge;\n","/**\n * This function is like\n * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * except that it includes inherited enumerable properties.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction nativeKeysIn(object) {\n var result = [];\n if (object != null) {\n for (var key in Object(object)) {\n result.push(key);\n }\n }\n return result;\n}\n\nmodule.exports = nativeKeysIn;\n","// Copyright (c) Zhendong Peng\n// Distributed under the terms of the Modified BSD License.\n\nimport WaveSurfer, { WaveSurferOptions } from 'wavesurfer.js'\nimport { type GenericPlugin } from 'wavesurfer.js/dist/base-plugin.js'\nimport HoverPlugin, { HoverPluginOptions } from 'wavesurfer.js/dist/plugins/hover.js'\nimport MinimapPlugin, { MinimapPluginOptions } from 'wavesurfer.js/dist/plugins/minimap.js'\nimport SpectrogramPlugin, { SpectrogramPluginOptions } from 'wavesurfer.js/dist/plugins/spectrogram.js'\nimport TimelinePlugin, { TimelinePluginOptions } from 'wavesurfer.js/dist/plugins/timeline.js'\nimport ZoomPlugin, { ZoomPluginOptions } from 'wavesurfer.js/dist/plugins/zoom.js'\n\nimport PCMPlayer from './pcm_player'\nimport { createElement, createObjectURL, formatTime } from './utils'\n\nexport interface PlayerConfig {\n options: WaveSurferOptions\n isStreaming: boolean\n language?: string\n plugins?: string[]\n pluginOptions?: {\n hover?: HoverPluginOptions\n minimap?: MinimapPluginOptions\n spectrogram?: SpectrogramPluginOptions\n timeline?: TimelinePluginOptions\n zoom?: ZoomPluginOptions\n }\n}\n\nexport default class Player {\n public el: HTMLDivElement\n private _container: HTMLDivElement\n private _duration: HTMLDivElement\n private _currentTime: HTMLDivElement\n private _downloadButton: HTMLButtonElement\n private _wavesurfer: WaveSurfer\n private _config: PlayerConfig\n // streaming\n private _pcmPlayer: PCMPlayer\n\n constructor(config: PlayerConfig) {\n this.el = createElement('div', 'lm-Widget')\n this._container = createElement('div', 'waveform')\n this._duration = createElement('div', 'duration', '0:00')\n this._currentTime = createElement('div', 'time', '0:00')\n this._container.append(this._duration, this._currentTime)\n this.el.append(this._container)\n this._config = config\n }\n\n get url() {\n if (this._config.isStreaming) {\n return this._pcmPlayer.url\n } else {\n return createObjectURL(this._wavesurfer.getDecodedData())\n }\n }\n\n set sampleRate(rate: number) {\n if (this._config.isStreaming) {\n this._pcmPlayer.sampleRate = rate\n }\n this._wavesurfer.options.sampleRate = rate\n }\n\n load(url: string) {\n if (this._config.isStreaming) {\n this._pcmPlayer.feed(url)\n this._wavesurfer.load(this.url)\n } else {\n this._wavesurfer.load(url)\n }\n }\n\n setDone() {\n this._pcmPlayer.setDone()\n }\n\n createPCMPlayer() {\n if (this._config.isStreaming) {\n this._pcmPlayer = new PCMPlayer({\n channels: 1,\n sampleRate: this._config.options.sampleRate,\n })\n this.el.append(this._pcmPlayer.playButton)\n }\n }\n\n createDownloadButton() {\n this._downloadButton = createElement('button', 'btn btn-success my-3')\n const label = this._config.language === 'zh' ? '下载' : 'Download'\n this._downloadButton.innerHTML = `${label} <i class=\"fa fa-download\"></i>`\n this.el.append(this._downloadButton)\n this._downloadButton.onclick = () => {\n const link = document.createElement('a')\n link.href = this.url\n link.download = 'audio.wav'\n link.click()\n }\n }\n\n static createPlugins(config: PlayerConfig) {\n const pluginMap = {\n hover: () => HoverPlugin.create(config.pluginOptions?.hover),\n minimap: () =>\n MinimapPlugin.create({\n ...config.pluginOptions?.minimap,\n plugins: [\n HoverPlugin.create({\n ...config.pluginOptions?.hover,\n lineWidth: 1,\n }),\n ],\n }),\n spectrogram: () => SpectrogramPlugin.create(config.pluginOptions?.spectrogram),\n timeline: () => TimelinePlugin.create(config.pluginOptions?.timeline),\n zoom: () => ZoomPlugin.create(config.pluginOptions?.zoom),\n }\n return Array.from(config.plugins ?? [])\n .map((plugin) => pluginMap[plugin as keyof typeof pluginMap]?.())\n .filter(Boolean) as GenericPlugin[]\n }\n\n createWaveSurfer() {\n this._wavesurfer = WaveSurfer.create({\n ...this._config.options,\n container: this._container,\n plugins: Player.createPlugins(this._config),\n })\n this._wavesurfer.on('interaction', () => this._wavesurfer.playPause())\n this._wavesurfer.on('decode', (time) => (this._duration.textContent = formatTime(time)))\n this._wavesurfer.on('timeupdate', (time) => (this._currentTime.textContent = formatTime(time)))\n }\n\n static create(config: PlayerConfig) {\n const instance = new Player(config)\n instance.createWaveSurfer()\n instance.createPCMPlayer()\n instance.createDownloadButton()\n return instance\n }\n}\n","var eq = require('./eq');\n\n/**\n * Gets the index at which the `key` is found in `array` of key-value pairs.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} key The key to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\nfunction assocIndexOf(array, key) {\n var length = array.length;\n while (length--) {\n if (eq(array[length][0], key)) {\n return length;\n }\n }\n return -1;\n}\n\nmodule.exports = assocIndexOf;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, `.waveform {\n background-color: black;\n cursor: pointer;\n position: relative;\n width: 100%;\n}\n\n.duration, .time {\n background: rgba(0, 0, 0, 0.75);\n color: #DDDD;\n font-size: 11px;\n position: absolute;\n bottom: 0;\n z-index: 11;\n}\n\n.duration {\n right: 0;\n}\n\n.time {\n left: 0;\n}\n`, \"\",{\"version\":3,\"sources\":[\"webpack://./css/widget.css\"],\"names\":[],\"mappings\":\"AAAA;EACE,uBAAuB;EACvB,eAAe;EACf,kBAAkB;EAClB,WAAW;AACb;;AAEA;EACE,+BAA+B;EAC/B,YAAY;EACZ,eAAe;EACf,kBAAkB;EAClB,SAAS;EACT,WAAW;AACb;;AAEA;EACE,QAAQ;AACV;;AAEA;EACE,OAAO;AACT\",\"sourcesContent\":[\".waveform {\\n background-color: black;\\n cursor: pointer;\\n position: relative;\\n width: 100%;\\n}\\n\\n.duration, .time {\\n background: rgba(0, 0, 0, 0.75);\\n color: #DDDD;\\n font-size: 11px;\\n position: absolute;\\n bottom: 0;\\n z-index: 11;\\n}\\n\\n.duration {\\n right: 0;\\n}\\n\\n.time {\\n left: 0;\\n}\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","\"use strict\";\n\n/* istanbul ignore next */\nfunction setAttributesWithoutAttributes(styleElement) {\n var nonce = typeof __webpack_nonce__ !== \"undefined\" ? __webpack_nonce__ : null;\n if (nonce) {\n styleElement.setAttribute(\"nonce\", nonce);\n }\n}\nmodule.exports = setAttributesWithoutAttributes;","\"use strict\";\n\nvar stylesInDOM = [];\nfunction getIndexByIdentifier(identifier) {\n var result = -1;\n for (var i = 0; i < stylesInDOM.length; i++) {\n if (stylesInDOM[i].identifier === identifier) {\n result = i;\n break;\n }\n }\n return result;\n}\nfunction modulesToDom(list, options) {\n var idCountMap = {};\n var identifiers = [];\n for (var i = 0; i < list.length; i++) {\n var item = list[i];\n var id = options.base ? item[0] + options.base : item[0];\n var count = idCountMap[id] || 0;\n var identifier = \"\".concat(id, \" \").concat(count);\n idCountMap[id] = count + 1;\n var indexByIdentifier = getIndexByIdentifier(identifier);\n var obj = {\n css: item[1],\n media: item[2],\n sourceMap: item[3],\n supports: item[4],\n layer: item[5]\n };\n if (indexByIdentifier !== -1) {\n stylesInDOM[indexByIdentifier].references++;\n stylesInDOM[indexByIdentifier].updater(obj);\n } else {\n var updater = addElementStyle(obj, options);\n options.byIndex = i;\n stylesInDOM.splice(i, 0, {\n identifier: identifier,\n updater: updater,\n references: 1\n });\n }\n identifiers.push(identifier);\n }\n return identifiers;\n}\nfunction addElementStyle(obj, options) {\n var api = options.domAPI(options);\n api.update(obj);\n var updater = function updater(newObj) {\n if (newObj) {\n if (newObj.css === obj.css && newObj.media === obj.media && newObj.sourceMap === obj.sourceMap && newObj.supports === obj.supports && newObj.layer === obj.layer) {\n return;\n }\n api.update(obj = newObj);\n } else {\n api.remove();\n }\n };\n return updater;\n}\nmodule.exports = function (list, options) {\n options = options || {};\n list = list || [];\n var lastIdentifiers = modulesToDom(list, options);\n return function update(newList) {\n newList = newList || [];\n for (var i = 0; i < lastIdentifiers.length; i++) {\n var identifier = lastIdentifiers[i];\n var index = getIndexByIdentifier(identifier);\n stylesInDOM[index].references--;\n }\n var newLastIdentifiers = modulesToDom(newList, options);\n for (var _i = 0; _i < lastIdentifiers.length; _i++) {\n var _identifier = lastIdentifiers[_i];\n var _index = getIndexByIdentifier(_identifier);\n if (stylesInDOM[_index].references === 0) {\n stylesInDOM[_index].updater();\n stylesInDOM.splice(_index, 1);\n }\n }\n lastIdentifiers = newLastIdentifiers;\n };\n};","// Copyright (c) Zhendong Peng\n// Distributed under the terms of the Modified BSD License.\n\nexport const createElement = <T extends HTMLElement>(\n tagName: keyof HTMLElementTagNameMap,\n className: string,\n innerHTML: string = '',\n): T => {\n const element = document.createElement(tagName) as T\n element.className = className\n element.innerHTML = innerHTML\n return element\n}\n\nexport const formatTime = (seconds: number) => {\n const minutes = Math.floor(seconds / 60)\n const secondsRemainder = Math.round(seconds) % 60\n const paddedSeconds = `0${secondsRemainder}`.slice(-2)\n return `${minutes}:${paddedSeconds}`\n}\n\nfunction getWavHeader(options: {\n numFrames: number\n numChannels?: number\n sampleRate?: number\n isFloat?: boolean\n}): Uint8Array {\n const numFrames = options.numFrames\n const numChannels = options.numChannels || 2\n const sampleRate = options.sampleRate || 44100\n const bytesPerSample = options.isFloat ? 4 : 2\n const format = options.isFloat ? 3 : 1\n const blockAlign = numChannels * bytesPerSample\n const byteRate = sampleRate * blockAlign\n const dataSize = numFrames * blockAlign\n const buffer = new ArrayBuffer(44)\n const dv = new DataView(buffer)\n let p = 0\n function writeString(s: string) {\n for (let i = 0; i < s.length; i++) {\n dv.setUint8(p + i, s.charCodeAt(i))\n }\n p += s.length\n }\n function writeUint32(d: number) {\n dv.setUint32(p, d, true)\n p += 4\n }\n function writeUint16(d: number) {\n dv.setUint16(p, d, true)\n p += 2\n }\n writeString('RIFF') // ChunkID\n writeUint32(dataSize + 36) // ChunkSize\n writeString('WAVE') // Format\n writeString('fmt ') // Subchunk1ID\n writeUint32(16) // Subchunk1Size\n writeUint16(format) // AudioFormat https://i.stack.imgur.com/BuSmb.png\n writeUint16(numChannels) // NumChannels\n writeUint32(sampleRate) // SampleRate\n writeUint32(byteRate) // ByteRate\n writeUint16(blockAlign) // BlockAlign\n writeUint16(bytesPerSample * 8) // BitsPerSample\n writeString('data') // Subchunk2ID\n writeUint32(dataSize) // Subchunk2Size\n return new Uint8Array(buffer)\n}\n\nfunction interleaveChannels(buffer: AudioBuffer): Int16Array {\n const { numberOfChannels, length } = buffer\n const pcmData = new Int16Array(length * numberOfChannels)\n for (let channel = 0; channel < numberOfChannels; channel++) {\n const data = buffer.getChannelData(channel)\n const isFloat = data instanceof Float32Array\n for (let i = 0; i < length; i++) {\n // convert float32 to int16\n pcmData[i * numberOfChannels + channel] = isFloat ? data[i] * 32767 : data[i]\n }\n }\n return pcmData\n}\n\nfunction getWavBytes(\n buffer: ArrayBuffer | AudioBuffer | null,\n options: { numChannels: number; sampleRate: number },\n): Uint8Array {\n if (!buffer) {\n return new Uint8Array()\n }\n\n let headerBytes: Uint8Array\n let pcmData: Uint8Array\n\n if (buffer instanceof ArrayBuffer) {\n headerBytes = getWavHeader({\n isFloat: false,\n numChannels: options.numChannels,\n sampleRate: options.sampleRate,\n numFrames: buffer.byteLength / Int16Array.BYTES_PER_ELEMENT,\n })\n pcmData = new Uint8Array(buffer)\n } else {\n headerBytes = getWavHeader({\n isFloat: false,\n numChannels: buffer.numberOfChannels,\n sampleRate: buffer.sampleRate,\n numFrames: buffer.length,\n })\n pcmData = new Uint8Array(interleaveChannels(buffer).buffer)\n }\n const wavBytes = new Uint8Array(headerBytes.length + pcmData.length)\n wavBytes.set(headerBytes, 0)\n wavBytes.set(pcmData, headerBytes.length)\n\n return wavBytes\n}\n\nexport const createObjectURL = (\n buffer: ArrayBuffer | AudioBuffer | null,\n options: { numChannels: number; sampleRate: number } = {\n numChannels: 1,\n sampleRate: 44100,\n },\n): string => {\n let wavBytes: Uint8Array\n\n if (buffer instanceof AudioBuffer) {\n wavBytes = getWavBytes(buffer, {\n numChannels: buffer.numberOfChannels,\n sampleRate: buffer.sampleRate,\n })\n } else {\n wavBytes = getWavBytes(buffer, options)\n }\n\n return URL.createObjectURL(new Blob([wavBytes], { type: 'audio/wav' }))\n}\n","var getMapData = require('./_getMapData');\n\n/**\n * Sets the map `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf MapCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the map cache instance.\n */\nfunction mapCacheSet(key, value) {\n var data = getMapData(this, key),\n size = data.size;\n\n data.set(key, value);\n this.size += data.size == size ? 0 : 1;\n return this;\n}\n\nmodule.exports = mapCacheSet;\n","var listCacheClear = require('./_listCacheClear'),\n listCacheDelete = require('./_listCacheDelete'),\n listCacheGet = require('./_listCacheGet'),\n listCacheHas = require('./_listCacheHas'),\n listCacheSet = require('./_listCacheSet');\n\n/**\n * Creates an list cache object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction ListCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `ListCache`.\nListCache.prototype.clear = listCacheClear;\nListCache.prototype['delete'] = listCacheDelete;\nListCache.prototype.get = listCacheGet;\nListCache.prototype.has = listCacheHas;\nListCache.prototype.set = listCacheSet;\n\nmodule.exports = ListCache;\n","var baseGetTag = require('./_baseGetTag'),\n isLength = require('./isLength'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n funcTag = '[object Function]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n objectTag = '[object Object]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n weakMapTag = '[object WeakMap]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]',\n float32Tag = '[object Float32Array]',\n float64Tag = '[object Float64Array]',\n int8Tag = '[object Int8Array]',\n int16Tag = '[object Int16Array]',\n int32Tag = '[object Int32Array]',\n uint8Tag = '[object Uint8Array]',\n uint8ClampedTag = '[object Uint8ClampedArray]',\n uint16Tag = '[object Uint16Array]',\n uint32Tag = '[object Uint32Array]';\n\n/** Used to identify `toStringTag` values of typed arrays. */\nvar typedArrayTags = {};\ntypedArrayTags[float32Tag] = typedArrayTags[float64Tag] =\ntypedArrayTags[int8Tag] = typedArrayTags[int16Tag] =\ntypedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =\ntypedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =\ntypedArrayTags[uint32Tag] = true;\ntypedArrayTags[argsTag] = typedArrayTags[arrayTag] =\ntypedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =\ntypedArrayTags[dataViewTag] = typedArrayTags[dateTag] =\ntypedArrayTags[errorTag] = typedArrayTags[funcTag] =\ntypedArrayTags[mapTag] = typedArrayTags[numberTag] =\ntypedArrayTags[objectTag] = typedArrayTags[regexpTag] =\ntypedArrayTags[setTag] = typedArrayTags[stringTag] =\ntypedArrayTags[weakMapTag] = false;\n\n/**\n * The base implementation of `_.isTypedArray` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n */\nfunction baseIsTypedArray(value) {\n return isObjectLike(value) &&\n isLength(value.length) && !!typedArrayTags[baseGetTag(value)];\n}\n\nmodule.exports = baseIsTypedArray;\n","/**\n * The base implementation of `_.times` without support for iteratee shorthands\n * or max array length checks.\n *\n * @private\n * @param {number} n The number of times to invoke `iteratee`.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the array of results.\n */\nfunction baseTimes(n, iteratee) {\n var index = -1,\n result = Array(n);\n\n while (++index < n) {\n result[index] = iteratee(index);\n }\n return result;\n}\n\nmodule.exports = baseTimes;\n","var overArg = require('./_overArg');\n\n/** Built-in value references. */\nvar getPrototype = overArg(Object.getPrototypeOf, Object);\n\nmodule.exports = getPrototype;\n","\"use strict\";\n\nmodule.exports = function (item) {\n var content = item[1];\n var cssMapping = item[3];\n if (!cssMapping) {\n return content;\n }\n if (typeof btoa === \"function\") {\n var base64 = btoa(unescape(encodeURIComponent(JSON.stringify(cssMapping))));\n var data = \"sourceMappingURL=data:application/json;charset=utf-8;base64,\".concat(base64);\n var sourceMapping = \"/*# \".concat(data, \" */\");\n return [content].concat([sourceMapping]).join(\"\\n\");\n }\n return [content].join(\"\\n\");\n};","/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return value != null && (type == 'object' || type == 'function');\n}\n\nmodule.exports = isObject;\n","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar Map = getNative(root, 'Map');\n\nmodule.exports = Map;\n","// Copyright (c) Zhendong Peng\n// Distributed under the terms of the Modified BSD License.\n\n// eslint-disable-next-line @typescript-eslint/ban-ts-comment\n// @ts-ignore\n// eslint-disable-next-line @typescript-eslint/no-var-requires\nconst data = require('../package.json')\n\n/**\n * The _model_module_version/_view_module_version this package implements.\n *\n * The html widget manager assumes that this is the same as the npm package\n * version number.\n */\nexport const MODULE_VERSION = data.version\n\n/*\n * The current package name.\n */\nexport const MODULE_NAME = data.name\n","var apply = require('./_apply');\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeMax = Math.max;\n\n/**\n * A specialized version of `baseRest` which transforms the rest array.\n *\n * @private\n * @param {Function} func The function to apply a rest parameter to.\n * @param {number} [start=func.length-1] The start position of the rest parameter.\n * @param {Function} transform The rest array transform.\n * @returns {Function} Returns the new function.\n */\nfunction overRest(func, start, transform) {\n start = nativeMax(start === undefined ? (func.length - 1) : start, 0);\n return function() {\n var args = arguments,\n index = -1,\n length = nativeMax(args.length - start, 0),\n array = Array(length);\n\n while (++index < length) {\n array[index] = args[start + index];\n }\n index = -1;\n var otherArgs = Array(start + 1);\n while (++index < start) {\n otherArgs[index] = args[index];\n }\n otherArgs[start] = transform(array);\n return apply(func, this, otherArgs);\n };\n}\n\nmodule.exports = overRest;\n","// Copyright (c) Zhendong Peng\n// Distributed under the terms of the Modified BSD License.\n\nimport merge from 'lodash/merge'\nimport { simplearray_serialization } from 'jupyter-dataserializers'\nimport { DOMWidgetModel, DOMWidgetView, ISerializers } from '@jupyter-widgets/base'\n\nimport { MODULE_NAME, MODULE_VERSION } from './version'\nimport Recorder from './wavesurfer/recorder'\n\n// Import the CSS\nimport 'bootstrap/dist/css/bootstrap.min.css'\n\nimport '../css/widget.css'\n\nexport class RecorderModel extends DOMWidgetModel {\n defaults() {\n return {\n ...super.defaults(),\n _model_name: RecorderModel.model_name,\n _model_module: RecorderModel.model_module,\n _model_module_version: RecorderModel.model_module_version,\n _view_name: RecorderModel.view_name,\n _view_module: RecorderModel.view_module,\n _view_module_version: RecorderModel.view_module_version,\n\n chunk: new Uint8Array(0),\n rate: 16000,\n end: false,\n }\n }\n\n static serializers: ISerializers = {\n ...DOMWidgetModel.serializers,\n // Add any extra serializers here\n chunk: simplearray_serialization as any,\n }\n\n static model_name = 'RecorderModel'\n static model_module = MODULE_NAME\n static model_module_version = MODULE_VERSION\n static view_name = 'RecorderView' // Set to null if no view\n static view_module = MODULE_NAME // Set to null if no view\n static view_module_version = MODULE_VERSION\n}\n\nexport class RecorderView extends DOMWidgetView {\n private _recorder: Recorder\n private _chunks: Uint8Array[] = []\n private _isFirstChunk = true\n private _isCompleted = false\n\n private _sendChunk() {\n if (this._chunks.length > 0) {\n const chunk = this._chunks[0]\n this.model.set('chunk', { array: chunk, shape: [chunk.length] })\n this.model.save_changes()\n this._chunks.shift()\n } else if (this._isCompleted) {\n this.model.set('completed', true)\n this.model.save_changes()\n }\n }\n\n render() {\n super.render()\n this.displayed.then(async () => {\n const language = this.model.get('language')\n this._recorder = Recorder.create(\n merge({}, this.model.get('config'), { language }),\n merge({}, this.model.get('player_config'), { language }),\n )\n this.el.appendChild(this._recorder.el)\n\n this.model.on('msg:custom', async (msg: any) => {\n // 3 seconds maximum wait time\n const maxWaitTime = 3000 + (this._recorder.timeSlice ?? 32)\n const startTime = Date.now()\n if (msg.msg_type === 'chunk_received') {\n // Wait for a recording chunk to send to backend\n while (this._chunks.length === 0 && Date.now() - startTime < maxWaitTime) {\n await new Promise((resolve) => setTimeout(resolve, 32))\n }\n this._sendChunk()\n }\n })\n\n this._recorder.onRecordStart(() => {\n this._isCompleted = false\n this._isFirstChunk = true\n this.model.set('completed', false)\n this.model.set('rate', this._recorder.sampleRate)\n this.model.save_changes()\n })\n\n this._recorder.onRecordChunk(async (blob) => {\n this._chunks.push(new Uint8Array(await blob.arrayBuffer()))\n if (this.model.get('sync') && this._isFirstChunk) {\n this._isFirstChunk = false\n this._sendChunk()\n }\n })\n\n this._recorder.onRecordEnd(async (blob) => {\n this._isCompleted = true\n if (!this.model.get('sync')) {\n this.model.set('completed', true)\n this.model.save_changes()\n }\n })\n })\n }\n}\n","var eq = require('./eq'),\n isArrayLike = require('./isArrayLike'),\n isIndex = require('./_isIndex'),\n isObject = require('./isObject');\n\n/**\n * Checks if the given arguments are from an iteratee call.\n *\n * @private\n * @param {*} value The potential iteratee value argument.\n * @param {*} index The potential iteratee index or key argument.\n * @param {*} object The potential iteratee object argument.\n * @returns {boolean} Returns `true` if the arguments are from an iteratee call,\n * else `false`.\n */\nfunction isIterateeCall(value, index, object) {\n if (!isObject(object)) {\n return false;\n }\n var type = typeof index;\n if (type == 'number'\n ? (isArrayLike(object) && isIndex(index, object.length))\n : (type == 'string' && index in object)\n ) {\n return eq(object[index], value);\n }\n return false;\n}\n\nmodule.exports = isIterateeCall;\n","var getNative = require('./_getNative');\n\n/* Built-in method references that are verified to be native. */\nvar nativeCreate = getNative(Object, 'create');\n\nmodule.exports = nativeCreate;\n","\r\nexport * from './ndarray';\r\n\r\nexport * from './common';\r\n\r\nexport * from './union';\r\n\r\n\r\n/**\r\n * The current package version.\r\n */\r\nexport\r\nconst version = (require('../package.json') as any).version;\r\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Checks if `value` is likely a prototype object.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.\n */\nfunction isPrototype(value) {\n var Ctor = value && value.constructor,\n proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;\n\n return value === proto;\n}\n\nmodule.exports = isPrototype;\n","'use strict';\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\nmodule.exports = {\n 2: 'need dictionary', /* Z_NEED_DICT 2 */\n 1: 'stream end', /* Z_STREAM_END 1 */\n 0: '', /* Z_OK 0 */\n '-1': 'file error', /* Z_ERRNO (-1) */\n '-2': 'stream error', /* Z_STREAM_ERROR (-2) */\n '-3': 'data error', /* Z_DATA_ERROR (-3) */\n '-4': 'insufficient memory', /* Z_MEM_ERROR (-4) */\n '-5': 'buffer error', /* Z_BUF_ERROR (-5) */\n '-6': 'incompatible version' /* Z_VERSION_ERROR (-6) */\n};\n","var isFunction = require('./isFunction'),\n isLength = require('./isLength');\n\n/**\n * Checks if `value` is array-like. A value is considered array-like if it's\n * not a function and has a `value.length` that's an integer greater than or\n * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is array-like, else `false`.\n * @example\n *\n * _.isArrayLike([1, 2, 3]);\n * // => true\n *\n * _.isArrayLike(document.body.children);\n * // => true\n *\n * _.isArrayLike('abc');\n * // => true\n *\n * _.isArrayLike(_.noop);\n * // => false\n */\nfunction isArrayLike(value) {\n return value != null && isLength(value.length) && !isFunction(value);\n}\n\nmodule.exports = isArrayLike;\n","var assignMergeValue = require('./_assignMergeValue'),\n cloneBuffer = require('./_cloneBuffer'),\n cloneTypedArray = require('./_cloneTypedArray'),\n copyArray = require('./_copyArray'),\n initCloneObject = require('./_initCloneObject'),\n isArguments = require('./isArguments'),\n isArray = require('./isArray'),\n isArrayLikeObject = require('./isArrayLikeObject'),\n isBuffer = require('./isBuffer'),\n isFunction = require('./isFunction'),\n isObject = require('./isObject'),\n isPlainObject = require('./isPlainObject'),\n isTypedArray = require('./isTypedArray'),\n safeGet = require('./_safeGet'),\n toPlainObject = require('./toPlainObject');\n\n/**\n * A specialized version of `baseMerge` for arrays and objects which performs\n * deep merges and tracks traversed objects enabling objects with circular\n * references to be merged.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @param {string} key The key of the value to merge.\n * @param {number} srcIndex The index of `source`.\n * @param {Function} mergeFunc The function to merge values.\n * @param {Function} [customizer] The function to customize assigned values.\n * @param {Object} [stack] Tracks traversed source values and their merged\n * counterparts.\n */\nfunction baseMergeDeep(object, source, key, srcIndex, mergeFunc, customizer, stack) {\n var objValue = safeGet(object, key),\n srcValue = safeGet(source, key),\n stacked = stack.get(srcValue);\n\n if (stacked) {\n assignMergeValue(object, key, stacked);\n return;\n }\n var newValue = customizer\n ? customizer(objValue, srcValue, (key + ''), object, source, stack)\n : undefined;\n\n var isCommon = newValue === undefined;\n\n if (isCommon) {\n var isArr = isArray(srcValue),\n isBuff = !isArr && isBuffer(srcValue),\n isTyped = !isArr && !isBuff && isTypedArray(srcValue);\n\n newValue = srcValue;\n if (isArr || isBuff || isTyped) {\n if (isArray(objValue)) {\n newValue = objValue;\n }\n else if (isArrayLikeObject(objValue)) {\n newValue = copyArray(objValue);\n }\n else if (isBuff) {\n isCommon = false;\n newValue = cloneBuffer(srcValue, true);\n }\n else if (isTyped) {\n isCommon = false;\n newValue = cloneTypedArray(srcValue, true);\n }\n else {\n newValue = [];\n }\n }\n else if (isPlainObject(srcValue) || isArguments(srcValue)) {\n newValue = objValue;\n if (isArguments(objValue)) {\n newValue = toPlainObject(objValue);\n }\n else if (!isObject(objValue) || isFunction(objValue)) {\n newValue = initCloneObject(srcValue);\n }\n }\n else {\n isCommon = false;\n }\n }\n if (isCommon) {\n // Recursively merge objects and arrays (susceptible to call stack limits).\n stack.set(srcValue, newValue);\n mergeFunc(newValue, srcValue, srcIndex, customizer, stack);\n stack['delete'](srcValue);\n }\n assignMergeValue(object, key, newValue);\n}\n\nmodule.exports = baseMergeDeep;\n","\n import API from \"!../../../style-loader/dist/runtime/injectStylesIntoStyleTag.js\";\n import domAPI from \"!../../../style-loader/dist/runtime/styleDomAPI.js\";\n import insertFn from \"!../../../style-loader/dist/runtime/insertBySelector.js\";\n import setAttributes from \"!../../../style-loader/dist/runtime/setAttributesWithoutAttributes.js\";\n import insertStyleElement from \"!../../../style-loader/dist/runtime/insertStyleElement.js\";\n import styleTagTransformFn from \"!../../../style-loader/dist/runtime/styleTagTransform.js\";\n import content, * as namedExport from \"!!../../../css-loader/dist/cjs.js!./bootstrap.min.css\";\n \n \n\nvar options = {};\n\noptions.styleTagTransform = styleTagTransformFn;\noptions.setAttributes = setAttributes;\n\n options.insert = insertFn.bind(null, \"head\");\n \noptions.domAPI = domAPI;\noptions.insertStyleElement = insertStyleElement;\n\nvar update = API(content, options);\n\n\n\nexport * from \"!!../../../css-loader/dist/cjs.js!./bootstrap.min.css\";\n export default content && content.locals ? content.locals : undefined;\n","var baseSetToString = require('./_baseSetToString'),\n shortOut = require('./_shortOut');\n\n/**\n * Sets the `toString` method of `func` to return `string`.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\nvar setToString = shortOut(baseSetToString);\n\nmodule.exports = setToString;\n","'use strict';\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\n// See state defs from inflate.js\nconst BAD = 16209; /* got a data error -- remain here until reset */\nconst TYPE = 16191; /* i: waiting for type bits, including last-flag bit */\n\n/*\n Decode literal, length, and distance codes and write out the resulting\n literal and match bytes until either not enough input or output is\n available, an end-of-block is encountered, or a data error is encountered.\n When large enough input and output buffers are supplied to inflate(), for\n example, a 16K input buffer and a 64K output buffer, more than 95% of the\n inflate execution time is spent in this routine.\n\n Entry assumptions:\n\n state.mode === LEN\n strm.avail_in >= 6\n strm.avail_out >= 258\n start >= strm.avail_out\n state.bits < 8\n\n On return, state.mode is one of:\n\n LEN -- ran out of enough output space or enough available input\n TYPE -- reached end of block code, inflate() to interpret next block\n BAD -- error in block data\n\n Notes:\n\n - The maximum input bits used by a length/distance pair is 15 bits for the\n length code, 5 bits for the length extra, 15 bits for the distance code,\n and 13 bits for the distance extra. This totals 48 bits, or six bytes.\n Therefore if strm.avail_in >= 6, then there is enough input to avoid\n checking for available input while decoding.\n\n - The maximum bytes that a single length/distance pair can output is 258\n bytes, which is the maximum length that can be coded. inflate_fast()\n requires strm.avail_out >= 258 for each loop to avoid checking for\n output space.\n */\nmodule.exports = function inflate_fast(strm, start) {\n let _in; /* local strm.input */\n let last; /* have enough input while in < last */\n let _out; /* local strm.output */\n let beg; /* inflate()'s initial strm.output */\n let end; /* while out < end, enough space available */\n//#ifdef INFLATE_STRICT\n let dmax; /* maximum distance from zlib header */\n//#endif\n let wsize; /* window size or zero if not using window */\n let whave; /* valid bytes in the window */\n let wnext; /* window write index */\n // Use `s_window` instead `window`, avoid conflict with instrumentation tools\n let s_window; /* allocated sliding window, if wsize != 0 */\n let hold; /* local strm.hold */\n let bits; /* local strm.bits */\n let lcode; /* local strm.lencode */\n let dcode; /* local strm.distcode */\n let lmask; /* mask for first level of length codes */\n let dmask; /* mask for first level of distance codes */\n let here; /* retrieved table entry */\n let op; /* code bits, operation, extra bits, or */\n /* window position, window bytes to copy */\n let len; /* match length, unused bytes */\n let dist; /* match distance */\n let from; /* where to copy match from */\n let from_source;\n\n\n let input, output; // JS specific, because we have no pointers\n\n /* copy state to local variables */\n const state = strm.state;\n //here = state.here;\n _in = strm.next_in;\n input = strm.input;\n last = _in + (strm.avail_in - 5);\n _out = strm.next_out;\n output = strm.output;\n beg = _out - (start - strm.avail_out);\n end = _out + (strm.avail_out - 257);\n//#ifdef INFLATE_STRICT\n dmax = state.dmax;\n//#endif\n wsize = state.wsize;\n whave = state.whave;\n wnext = state.wnext;\n s_window = state.window;\n hold = state.hold;\n bits = state.bits;\n lcode = state.lencode;\n dcode = state.distcode;\n lmask = (1 << state.lenbits) - 1;\n dmask = (1 << state.distbits) - 1;\n\n\n /* decode literals and length/distances until end-of-block or not enough\n input data or output space */\n\n top:\n do {\n if (bits < 15) {\n hold += input[_in++] << bits;\n bits += 8;\n hold += input[_in++] << bits;\n bits += 8;\n }\n\n here = lcode[hold & lmask];\n\n dolen:\n for (;;) { // Goto emulation\n op = here >>> 24/*here.bits*/;\n hold >>>= op;\n bits -= op;\n op = (here >>> 16) & 0xff/*here.op*/;\n if (op === 0) { /* literal */\n //Tracevv((stderr, here.val >= 0x20 && here.val < 0x7f ?\n // \"inflate: literal '%c'\\n\" :\n // \"inflate: literal 0x%02x\\n\", here.val));\n output[_out++] = here & 0xffff/*here.val*/;\n }\n else if (op & 16) { /* length base */\n len = here & 0xffff/*here.val*/;\n op &= 15; /* number of extra bits */\n if (op) {\n if (bits < op) {\n hold += input[_in++] << bits;\n bits += 8;\n }\n len += hold & ((1 << op) - 1);\n hold >>>= op;\n bits -= op;\n }\n //Tracevv((stderr, \"inflate: length %u\\n\", len));\n if (bits < 15) {\n hold += input[_in++] << bits;\n bits += 8;\n hold += input[_in++] << bits;\n bits += 8;\n }\n here = dcode[hold & dmask];\n\n dodist:\n for (;;) { // goto emulation\n op = here >>> 24/*here.bits*/;\n hold >>>= op;\n bits -= op;\n op = (here >>> 16) & 0xff/*here.op*/;\n\n if (op & 16) { /* distance base */\n dist = here & 0xffff/*here.val*/;\n op &= 15; /* number of extra bits */\n if (bits < op) {\n hold += input[_in++] << bits;\n bits += 8;\n if (bits < op) {\n hold += input[_in++] << bits;\n bits += 8;\n }\n }\n dist += hold & ((1 << op) - 1);\n//#ifdef INFLATE_STRICT\n if (dist > dmax) {\n strm.msg = 'invalid distance too far back';\n state.mode = BAD;\n break top;\n }\n//#endif\n hold >>>= op;\n bits -= op;\n //Tracevv((stderr, \"inflate: distance %u\\n\", dist));\n op = _out - beg; /* max distance in output */\n if (dist > op) { /* see if copy from window */\n op = dist - op; /* distance back in window */\n if (op > whave) {\n if (state.sane) {\n strm.msg = 'invalid distance too far back';\n state.mode = BAD;\n break top;\n }\n\n// (!) This block is disabled in zlib defaults,\n// don't enable it for binary compatibility\n//#ifdef INFLATE_ALLOW_INVALID_DISTANCE_TOOFAR_ARRR\n// if (len <= op - whave) {\n// do {\n// output[_out++] = 0;\n// } while (--len);\n// continue top;\n// }\n// len -= op - whave;\n// do {\n// output[_out++] = 0;\n// } while (--op > whave);\n// if (op === 0) {\n// from = _out - dist;\n// do {\n// output[_out++] = output[from++];\n// } while (--len);\n// continue top;\n// }\n//#endif\n }\n from = 0; // window index\n from_source = s_window;\n if (wnext === 0) { /* very common case */\n from += wsize - op;\n if (op < len) { /* some from window */\n len -= op;\n do {\n output[_out++] = s_window[from++];\n } while (--op);\n from = _out - dist; /* rest from output */\n from_source = output;\n }\n }\n else if (wnext < op) { /* wrap around window */\n from += wsize + wnext - op;\n op -= wnext;\n if (op < len) { /* some from end of window */\n len -= op;\n do {\n output[_out++] = s_window[from++];\n } while (--op);\n from = 0;\n if (wnext < len) { /* some from start of window */\n op = wnext;\n len -= op;\n do {\n output[_out++] = s_window[from++];\n } while (--op);\n from = _out - dist; /* rest from output */\n from_source = output;\n }\n }\n }\n else { /* contiguous in window */\n from += wnext - op;\n if (op < len) { /* some from window */\n len -= op;\n do {\n output[_out++] = s_window[from++];\n } while (--op);\n from = _out - dist; /* rest from output */\n from_source = output;\n }\n }\n while (len > 2) {\n output[_out++] = from_source[from++];\n output[_out++] = from_source[from++];\n output[_out++] = from_source[from++];\n len -= 3;\n }\n if (len) {\n output[_out++] = from_source[from++];\n if (len > 1) {\n output[_out++] = from_source[from++];\n }\n }\n }\n else {\n from = _out - dist; /* copy direct from output */\n do { /* minimum length is three */\n output[_out++] = output[from++];\n output[_out++] = output[from++];\n output[_out++] = output[from++];\n len -= 3;\n } while (len > 2);\n if (len) {\n output[_out++] = output[from++];\n if (len > 1) {\n output[_out++] = output[from++];\n }\n }\n }\n }\n else if ((op & 64) === 0) { /* 2nd level distance code */\n here = dcode[(here & 0xffff)/*here.val*/ + (hold & ((1 << op) - 1))];\n continue dodist;\n }\n else {\n strm.msg = 'invalid distance code';\n state.mode = BAD;\n break top;\n }\n\n break; // need to emulate goto via \"continue\"\n }\n }\n else if ((op & 64) === 0) { /* 2nd level length code */\n here = lcode[(here & 0xffff)/*here.val*/ + (hold & ((1 << op) - 1))];\n continue dolen;\n }\n else if (op & 32) { /* end-of-block */\n //Tracevv((stderr, \"inflate: end of block\\n\"));\n state.mode = TYPE;\n break top;\n }\n else {\n strm.msg = 'invalid literal/length code';\n state.mode = BAD;\n break top;\n }\n\n break; // need to emulate goto via \"continue\"\n }\n } while (_in < last && _out < end);\n\n /* return unused bytes (on entry, bits < 8, so in won't go too far back) */\n len = bits >> 3;\n _in -= len;\n bits -= len << 3;\n hold &= (1 << bits) - 1;\n\n /* update state and return */\n strm.next_in = _in;\n strm.next_out = _out;\n strm.avail_in = (_in < last ? 5 + (last - _in) : 5 - (_in - last));\n strm.avail_out = (_out < end ? 257 + (end - _out) : 257 - (_out - end));\n state.hold = hold;\n state.bits = bits;\n return;\n};\n","var ListCache = require('./_ListCache'),\n stackClear = require('./_stackClear'),\n stackDelete = require('./_stackDelete'),\n stackGet = require('./_stackGet'),\n stackHas = require('./_stackHas'),\n stackSet = require('./_stackSet');\n\n/**\n * Creates a stack cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Stack(entries) {\n var data = this.__data__ = new ListCache(entries);\n this.size = data.size;\n}\n\n// Add methods to `Stack`.\nStack.prototype.clear = stackClear;\nStack.prototype['delete'] = stackDelete;\nStack.prototype.get = stackGet;\nStack.prototype.has = stackHas;\nStack.prototype.set = stackSet;\n\nmodule.exports = Stack;\n","var baseRest = require('./_baseRest'),\n isIterateeCall = require('./_isIterateeCall');\n\n/**\n * Creates a function like `_.assign`.\n *\n * @private\n * @param {Function} assigner The function to assign values.\n * @returns {Function} Returns the new assigner function.\n */\nfunction createAssigner(assigner) {\n return baseRest(function(object, sources) {\n var index = -1,\n length = sources.length,\n customizer = length > 1 ? sources[length - 1] : undefined,\n guard = length > 2 ? sources[2] : undefined;\n\n customizer = (assigner.length > 3 && typeof customizer == 'function')\n ? (length--, customizer)\n : undefined;\n\n if (guard && isIterateeCall(sources[0], sources[1], guard)) {\n customizer = length < 3 ? undefined : customizer;\n length = 1;\n }\n object = Object(object);\n while (++index < length) {\n var source = sources[index];\n if (source) {\n assigner(object, source, index, customizer);\n }\n }\n return object;\n });\n}\n\nmodule.exports = createAssigner;\n","/**\n * Gets the stack value for `key`.\n *\n * @private\n * @name get\n * @memberOf Stack\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction stackGet(key) {\n return this.__data__.get(key);\n}\n\nmodule.exports = stackGet;\n","var Symbol = require('./_Symbol'),\n getRawTag = require('./_getRawTag'),\n objectToString = require('./_objectToString');\n\n/** `Object#toString` result references. */\nvar nullTag = '[object Null]',\n undefinedTag = '[object Undefined]';\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nfunction baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n return (symToStringTag && symToStringTag in Object(value))\n ? getRawTag(value)\n : objectToString(value);\n}\n\nmodule.exports = baseGetTag;\n","var baseAssignValue = require('./_baseAssignValue'),\n eq = require('./eq');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Assigns `value` to `key` of `object` if the existing value is not equivalent\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction assignValue(object, key, value) {\n var objValue = object[key];\n if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n}\n\nmodule.exports = assignValue;\n","var root = require('./_root');\n\n/** Built-in value references. */\nvar Symbol = root.Symbol;\n\nmodule.exports = Symbol;\n","// String encode/decode helpers\n'use strict';\n\n\n// Quick check if we can use fast array to bin string conversion\n//\n// - apply(Array) can fail on Android 2.2\n// - apply(Uint8Array) can fail on iOS 5.1 Safari\n//\nlet STR_APPLY_UIA_OK = true;\n\ntry { String.fromCharCode.apply(null, new Uint8Array(1)); } catch (__) { STR_APPLY_UIA_OK = false; }\n\n\n// Table with utf8 lengths (calculated by first byte of sequence)\n// Note, that 5 & 6-byte values and some 4-byte values can not be represented in JS,\n// because max possible codepoint is 0x10ffff\nconst _utf8len = new Uint8Array(256);\nfor (let q = 0; q < 256; q++) {\n _utf8len[q] = (q >= 252 ? 6 : q >= 248 ? 5 : q >= 240 ? 4 : q >= 224 ? 3 : q >= 192 ? 2 : 1);\n}\n_utf8len[254] = _utf8len[254] = 1; // Invalid sequence start\n\n\n// convert string to array (typed, when possible)\nmodule.exports.string2buf = (str) => {\n if (typeof TextEncoder === 'function' && TextEncoder.prototype.encode) {\n return new TextEncoder().encode(str);\n }\n\n let buf, c, c2, m_pos, i, str_len = str.length, buf_len = 0;\n\n // count binary size\n for (m_pos = 0; m_pos < str_len; m_pos++) {\n c = str.charCodeAt(m_pos);\n if ((c & 0xfc00) === 0xd800 && (m_pos + 1 < str_len)) {\n c2 = str.charCodeAt(m_pos + 1);\n if ((c2 & 0xfc00) === 0xdc00) {\n c = 0x10000 + ((c - 0xd800) << 10) + (c2 - 0xdc00);\n m_pos++;\n }\n }\n buf_len += c < 0x80 ? 1 : c < 0x800 ? 2 : c < 0x10000 ? 3 : 4;\n }\n\n // allocate buffer\n buf = new Uint8Array(buf_len);\n\n // convert\n for (i = 0, m_pos = 0; i < buf_len; m_pos++) {\n c = str.charCodeAt(m_pos);\n if ((c & 0xfc00) === 0xd800 && (m_pos + 1 < str_len)) {\n c2 = str.charCodeAt(m_pos + 1);\n if ((c2 & 0xfc00) === 0xdc00) {\n c = 0x10000 + ((c - 0xd800) << 10) + (c2 - 0xdc00);\n m_pos++;\n }\n }\n if (c < 0x80) {\n /* one byte */\n buf[i++] = c;\n } else if (c < 0x800) {\n /* two bytes */\n buf[i++] = 0xC0 | (c >>> 6);\n buf[i++] = 0x80 | (c & 0x3f);\n } else if (c < 0x10000) {\n /* three bytes */\n buf[i++] = 0xE0 | (c >>> 12);\n buf[i++] = 0x80 | (c >>> 6 & 0x3f);\n buf[i++] = 0x80 | (c & 0x3f);\n } else {\n /* four bytes */\n buf[i++] = 0xf0 | (c >>> 18);\n buf[i++] = 0x80 | (c >>> 12 & 0x3f);\n buf[i++] = 0x80 | (c >>> 6 & 0x3f);\n buf[i++] = 0x80 | (c & 0x3f);\n }\n }\n\n return buf;\n};\n\n// Helper\nconst buf2binstring = (buf, len) => {\n // On Chrome, the arguments in a function call that are allowed is `65534`.\n // If the length of the buffer is smaller than that, we can use this optimization,\n // otherwise we will take a slower path.\n if (len < 65534) {\n if (buf.subarray && STR_APPLY_UIA_OK) {\n return String.fromCharCode.apply(null, buf.length === len ? buf : buf.subarray(0, len));\n }\n }\n\n let result = '';\n for (let i = 0; i < len; i++) {\n result += String.fromCharCode(buf[i]);\n }\n return result;\n};\n\n\n// convert array to string\nmodule.exports.buf2string = (buf, max) => {\n const len = max || buf.length;\n\n if (typeof TextDecoder === 'function' && TextDecoder.prototype.decode) {\n return new TextDecoder().decode(buf.subarray(0, max));\n }\n\n let i, out;\n\n // Reserve max possible length (2 words per char)\n // NB: by unknown reasons, Array is significantly faster for\n // String.fromCharCode.apply than Uint16Array.\n const utf16buf = new Array(len * 2);\n\n for (out = 0, i = 0; i < len;) {\n let c = buf[i++];\n // quick process ascii\n if (c < 0x80) { utf16buf[out++] = c; continue; }\n\n let c_len = _utf8len[c];\n // skip 5 & 6 byte codes\n if (c_len > 4) { utf16buf[out++] = 0xfffd; i += c_len - 1; continue; }\n\n // apply mask on first byte\n c &= c_len === 2 ? 0x1f : c_len === 3 ? 0x0f : 0x07;\n // join the rest\n while (c_len > 1 && i < len) {\n c = (c << 6) | (buf[i++] & 0x3f);\n c_len--;\n }\n\n // terminated by end of string?\n if (c_len > 1) { utf16buf[out++] = 0xfffd; continue; }\n\n if (c < 0x10000) {\n utf16buf[out++] = c;\n } else {\n c -= 0x10000;\n utf16buf[out++] = 0xd800 | ((c >> 10) & 0x3ff);\n utf16buf[out++] = 0xdc00 | (c & 0x3ff);\n }\n }\n\n return buf2binstring(utf16buf, out);\n};\n\n\n// Calculate max possible position in utf8 buffer,\n// that will not break sequence. If that's not possible\n// - (very small limits) return max size as is.\n//\n// buf[] - utf8 bytes array\n// max - length limit (mandatory);\nmodule.exports.utf8border = (buf, max) => {\n\n max = max || buf.length;\n if (max > buf.length) { max = buf.length; }\n\n // go back from last position, until start of sequence found\n let pos = max - 1;\n while (pos >= 0 && (buf[pos] & 0xC0) === 0x80) { pos--; }\n\n // Very small and broken sequence,\n // return max, because we should return something anyway.\n if (pos < 0) { return max; }\n\n // If we came to start of buffer - that means buffer is too small,\n // return max too.\n if (pos === 0) { return max; }\n\n return (pos + _utf8len[buf[pos]] > max) ? pos : max;\n};\n","var getMapData = require('./_getMapData');\n\n/**\n * Gets the map value for `key`.\n *\n * @private\n * @name get\n * @memberOf MapCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction mapCacheGet(key) {\n return getMapData(this, key).get(key);\n}\n\nmodule.exports = mapCacheGet;\n","var nativeCreate = require('./_nativeCreate');\n\n/**\n * Removes all key-value entries from the hash.\n *\n * @private\n * @name clear\n * @memberOf Hash\n */\nfunction hashClear() {\n this.__data__ = nativeCreate ? nativeCreate(null) : {};\n this.size = 0;\n}\n\nmodule.exports = hashClear;\n","'use strict';\n\n// Note: adler32 takes 12% for level 0 and 2% for level 6.\n// It isn't worth it to make additional optimizations as in original.\n// Small size is preferable.\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\nconst adler32 = (adler, buf, len, pos) => {\n let s1 = (adler & 0xffff) |0,\n s2 = ((adler >>> 16) & 0xffff) |0,\n n = 0;\n\n while (len !== 0) {\n // Set limit ~ twice less than 5552, to keep\n // s2 in 31-bits, because we force signed ints.\n // in other case %= will fail.\n n = len > 2000 ? 2000 : len;\n len -= n;\n\n do {\n s1 = (s1 + buf[pos++]) |0;\n s2 = (s2 + s1) |0;\n } while (--n);\n\n s1 %= 65521;\n s2 %= 65521;\n }\n\n return (s1 | (s2 << 16)) |0;\n};\n\n\nmodule.exports = adler32;\n","var isKeyable = require('./_isKeyable');\n\n/**\n * Gets the data for `map`.\n *\n * @private\n * @param {Object} map The map to query.\n * @param {string} key The reference key.\n * @returns {*} Returns the map data.\n */\nfunction getMapData(map, key) {\n var data = map.__data__;\n return isKeyable(key)\n ? data[typeof key == 'string' ? 'string' : 'hash']\n : data.map;\n}\n\nmodule.exports = getMapData;\n","/**\n * Gets the value at `key`, unless `key` is \"__proto__\" or \"constructor\".\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction safeGet(object, key) {\n if (key === 'constructor' && typeof object[key] === 'function') {\n return;\n }\n\n if (key == '__proto__') {\n return;\n }\n\n return object[key];\n}\n\nmodule.exports = safeGet;\n","var baseTimes = require('./_baseTimes'),\n isArguments = require('./isArguments'),\n isArray = require('./isArray'),\n isBuffer = require('./isBuffer'),\n isIndex = require('./_isIndex'),\n isTypedArray = require('./isTypedArray');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Creates an array of the enumerable property names of the array-like `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @param {boolean} inherited Specify returning inherited property names.\n * @returns {Array} Returns the array of property names.\n */\nfunction arrayLikeKeys(value, inherited) {\n var isArr = isArray(value),\n isArg = !isArr && isArguments(value),\n isBuff = !isArr && !isArg && isBuffer(value),\n isType = !isArr && !isArg && !isBuff && isTypedArray(value),\n skipIndexes = isArr || isArg || isBuff || isType,\n result = skipIndexes ? baseTimes(value.length, String) : [],\n length = result.length;\n\n for (var key in value) {\n if ((inherited || hasOwnProperty.call(value, key)) &&\n !(skipIndexes && (\n // Safari 9 has enumerable `arguments.length` in strict mode.\n key == 'length' ||\n // Node.js 0.10 has enumerable non-index properties on buffers.\n (isBuff && (key == 'offset' || key == 'parent')) ||\n // PhantomJS 2 has enumerable non-index properties on typed arrays.\n (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||\n // Skip index properties.\n isIndex(key, length)\n ))) {\n result.push(key);\n }\n }\n return result;\n}\n\nmodule.exports = arrayLikeKeys;\n","/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/**\n * Checks if `value` is a valid array-like length.\n *\n * **Note:** This method is loosely based on\n * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.\n * @example\n *\n * _.isLength(3);\n * // => true\n *\n * _.isLength(Number.MIN_VALUE);\n * // => false\n *\n * _.isLength(Infinity);\n * // => false\n *\n * _.isLength('3');\n * // => false\n */\nfunction isLength(value) {\n return typeof value == 'number' &&\n value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;\n}\n\nmodule.exports = isLength;\n","var nativeCreate = require('./_nativeCreate');\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Gets the hash value for `key`.\n *\n * @private\n * @name get\n * @memberOf Hash\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction hashGet(key) {\n var data = this.__data__;\n if (nativeCreate) {\n var result = data[key];\n return result === HASH_UNDEFINED ? undefined : result;\n }\n return hasOwnProperty.call(data, key) ? data[key] : undefined;\n}\n\nmodule.exports = hashGet;\n","'use strict';\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\nfunction GZheader() {\n /* true if compressed data believed to be text */\n this.text = 0;\n /* modification time */\n this.time = 0;\n /* extra flags (not used when writing a gzip file) */\n this.xflags = 0;\n /* operating system */\n this.os = 0;\n /* pointer to extra field or Z_NULL if none */\n this.extra = null;\n /* extra field length (valid if extra != Z_NULL) */\n this.extra_len = 0; // Actually, we don't need it in JS,\n // but leave for few code modifications\n\n //\n // Setup limits is not necessary because in js we should not preallocate memory\n // for inflate use constant limit in 65536 bytes\n //\n\n /* space at extra (only when reading header) */\n // this.extra_max = 0;\n /* pointer to zero-terminated file name or Z_NULL */\n this.name = '';\n /* space at name (only when reading header) */\n // this.name_max = 0;\n /* pointer to zero-terminated comment or Z_NULL */\n this.comment = '';\n /* space at comment (only when reading header) */\n // this.comm_max = 0;\n /* true if there was or will be a header crc */\n this.hcrc = 0;\n /* true when done reading gzip header (not used when writing a gzip file) */\n this.done = false;\n}\n\nmodule.exports = GZheader;\n","'use strict';\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\nfunction ZStream() {\n /* next input byte */\n this.input = null; // JS specific, because we have no pointers\n this.next_in = 0;\n /* number of bytes available at input */\n this.avail_in = 0;\n /* total number of input bytes read so far */\n this.total_in = 0;\n /* next output byte should be put there */\n this.output = null; // JS specific, because we have no pointers\n this.next_out = 0;\n /* remaining free space at output */\n this.avail_out = 0;\n /* total number of bytes output so far */\n this.total_out = 0;\n /* last error message, NULL if no error */\n this.msg = ''/*Z_NULL*/;\n /* not visible by applications */\n this.state = null;\n /* best guess about the data type: binary or text */\n this.data_type = 2/*Z_UNKNOWN*/;\n /* adler32 value of the uncompressed data */\n this.adler = 0;\n}\n\nmodule.exports = ZStream;\n","var arrayLikeKeys = require('./_arrayLikeKeys'),\n baseKeysIn = require('./_baseKeysIn'),\n isArrayLike = require('./isArrayLike');\n\n/**\n * Creates an array of the own and inherited enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keysIn(new Foo);\n * // => ['a', 'b', 'c'] (iteration order is not guaranteed)\n */\nfunction keysIn(object) {\n return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);\n}\n\nmodule.exports = keysIn;\n","var baseMerge = require('./_baseMerge'),\n createAssigner = require('./_createAssigner');\n\n/**\n * This method is like `_.assign` except that it recursively merges own and\n * inherited enumerable string keyed properties of source objects into the\n * destination object. Source properties that resolve to `undefined` are\n * skipped if a destination value exists. Array and plain object properties\n * are merged recursively. Other objects and value types are overridden by\n * assignment. Source objects are applied from left to right. Subsequent\n * sources overwrite property assignments of previous sources.\n *\n * **Note:** This method mutates `object`.\n *\n * @static\n * @memberOf _\n * @since 0.5.0\n * @category Object\n * @param {Object} object The destination object.\n * @param {...Object} [sources] The source objects.\n * @returns {Object} Returns `object`.\n * @example\n *\n * var object = {\n * 'a': [{ 'b': 2 }, { 'd': 4 }]\n * };\n *\n * var other = {\n * 'a': [{ 'c': 3 }, { 'e': 5 }]\n * };\n *\n * _.merge(object, other);\n * // => { 'a': [{ 'b': 2, 'c': 3 }, { 'd': 4, 'e': 5 }] }\n */\nvar merge = createAssigner(function(object, source, srcIndex) {\n baseMerge(object, source, srcIndex);\n});\n\nmodule.exports = merge;\n","\"use strict\";\n\nvar memo = {};\n\n/* istanbul ignore next */\nfunction getTarget(target) {\n if (typeof memo[target] === \"undefined\") {\n var styleTarget = document.querySelector(target);\n\n // Special case to return head of iframe instead of iframe itself\n if (window.HTMLIFrameElement && styleTarget instanceof window.HTMLIFrameElement) {\n try {\n // This will throw an exception if access to iframe is blocked\n // due to cross-origin restrictions\n styleTarget = styleTarget.contentDocument.head;\n } catch (e) {\n // istanbul ignore next\n styleTarget = null;\n }\n }\n memo[target] = styleTarget;\n }\n return memo[target];\n}\n\n/* istanbul ignore next */\nfunction insertBySelector(insert, style) {\n var target = getTarget(insert);\n if (!target) {\n throw new Error(\"Couldn't find a style target. This probably means that the value for the 'insert' parameter is invalid.\");\n }\n target.appendChild(style);\n}\nmodule.exports = insertBySelector;","/**\n * Creates a function that returns `value`.\n *\n * @static\n * @memberOf _\n * @since 2.4.0\n * @category Util\n * @param {*} value The value to return from the new function.\n * @returns {Function} Returns the new constant function.\n * @example\n *\n * var objects = _.times(2, _.constant({ 'a': 1 }));\n *\n * console.log(objects);\n * // => [{ 'a': 1 }, { 'a': 1 }]\n *\n * console.log(objects[0] === objects[1]);\n * // => true\n */\nfunction constant(value) {\n return function() {\n return value;\n };\n}\n\nmodule.exports = constant;\n","// Copyright (c) Jupyter Development Team.\r\n// Distributed under the terms of the Modified BSD License.\r\n\r\nimport {\r\n IWidgetManager, WidgetModel, unpack_models\r\n} from '@jupyter-widgets/base';\r\n\r\nimport {\r\n IReceivedSerializedArray, ISendSerializedArray, JSONToArray, arrayToJSON,\r\n JSONToTypedArray, typedArrayToJSON, JSONToSimple, simpleToJSON, TypedArray,\r\n ISimpleObject\r\n} from './ndarray';\r\n\r\n// This is OK, as long as we only use it for type declarations\r\nimport {\r\n DataWidget, getArray\r\n} from './common';\r\n\r\nimport ndarray = require('ndarray');\r\n\r\n\r\n/**\r\n * Union type declaration of an NDArrayModel and a raw ndarray.\r\n */\r\nexport type DataUnion = DataWidget | ndarray.NdArray;\r\n\r\n\r\n/**\r\n * Deserializes union JSON to an ndarray or a NDArrayModel, as appropriate.\r\n */\r\nexport async function JSONToUnion(\r\n obj: IReceivedSerializedArray | string | null,\r\n manager?: IWidgetManager\r\n): Promise<ndarray.NdArray | DataWidget | null> {\r\n\r\n if (typeof obj === 'string') {\r\n const modelPromise = unpack_models(obj, manager!) as Promise<DataWidget>;\r\n return modelPromise;\r\n } else {\r\n return Promise.resolve(JSONToArray(obj, manager));\r\n }\r\n\r\n}\r\n\r\n/**\r\n * Deserializes union JSON to an ndarray, regardless of whether it is a widget reference or direct data.\r\n */\r\nexport async function JSONToUnionArray(\r\n obj: IReceivedSerializedArray | string | null,\r\n manager?: IWidgetManager\r\n): Promise<ndarray.NdArray | null> {\r\n\r\n return getArray(await JSONToUnion(obj, manager));\r\n\r\n}\r\n\r\n/**\r\n * Serializes a union to JSON.\r\n */\r\nexport function unionToJSON(\r\n obj: DataUnion | null,\r\n widget?: WidgetModel\r\n): ISendSerializedArray | string | null {\r\n\r\n if (obj instanceof WidgetModel) {\r\n return obj.toJSON(undefined);\r\n } else {\r\n return arrayToJSON(obj as ndarray.NdArray | null, widget);\r\n }\r\n\r\n}\r\n\r\n/**\r\n * Sets up backbone events for listening to union changes.\r\n *\r\n * The callback will be called when:\r\n * - The model is a widget, and its data changes\r\n *\r\n * Specify `allChanges` as truthy to also cover these cases:\r\n * - The union changes from a widget to an array or vice-versa\r\n * - The union is an array and its content changes\r\n *\r\n * To stop listening, call the return value.\r\n */\r\nexport function listenToUnion(\r\n model: WidgetModel,\r\n unionName: string,\r\n callback: (model: WidgetModel, options: any) => any,\r\n allChanges?: boolean\r\n): () => void {\r\n\r\n function listenToWidgetChanges(union: DataUnion) {\r\n if (union instanceof WidgetModel) {\r\n // listen to changes in current model\r\n model.listenTo(union, 'change', callback);\r\n }\r\n }\r\n\r\n function onUnionChange(unionModel: WidgetModel, value: any, subOptions: any) {\r\n const prev = model.previous(unionName) || [];\r\n const curr = value || [];\r\n\r\n if (prev instanceof WidgetModel) {\r\n model.stopListening(prev);\r\n } else if (allChanges && !(curr instanceof WidgetModel)) {\r\n // The union was an array, and has changed to a new array\r\n callback(unionModel, subOptions);\r\n }\r\n if (allChanges && (prev instanceof WidgetModel) !== (curr instanceof WidgetModel)) {\r\n // Union type has changed, call out\r\n callback(unionModel, subOptions);\r\n }\r\n listenToWidgetChanges(curr);\r\n }\r\n\r\n listenToWidgetChanges(model.get(unionName));\r\n\r\n // make sure to (un)hook listeners when property changes\r\n model.on('change:' + unionName, onUnionChange);\r\n\r\n function stopListening() {\r\n const curr = model.get(unionName);\r\n if (curr instanceof WidgetModel) {\r\n model.stopListening(curr);\r\n }\r\n model.off('change:' + unionName, onUnionChange);\r\n }\r\n\r\n return stopListening;\r\n\r\n}\r\n\r\n\r\nexport const data_union_array_serialization = {\r\n deserialize: JSONToUnionArray,\r\n serialize: unionToJSON\r\n};\r\n\r\nexport const data_union_serialization = {\r\n deserialize: JSONToUnion,\r\n serialize: unionToJSON\r\n};\r\n\r\n\r\n/**\r\n * Deserializes union JSON to an ndarray, regardless of whether it is a widget reference or direct data.\r\n */\r\nexport function JSONToUnionTypedArray(\r\n obj: IReceivedSerializedArray | string | null,\r\n manager?: IWidgetManager\r\n): Promise<TypedArray | null> {\r\n\r\n if (typeof obj === 'string') {\r\n const modelPromise = unpack_models(obj, manager!) as Promise<DataWidget>;\r\n return modelPromise.then((model) => {\r\n const array = model.getNDArray();\r\n if (array === null) {\r\n return array;\r\n }\r\n return array.data as TypedArray;\r\n });\r\n } else {\r\n return Promise.resolve(JSONToTypedArray(obj, manager));\r\n }\r\n\r\n}\r\n\r\n\r\nexport const data_union_typedarray_serialization = {\r\n deserialize: JSONToUnionTypedArray,\r\n serialize: typedArrayToJSON\r\n};\r\n\r\n\r\n/**\r\n * Deserializes union JSON to an ndarray, regardless of whether it is a widget reference or direct data.\r\n */\r\nexport function JSONToSimpleUnion(\r\n obj: IReceivedSerializedArray | string | null,\r\n manager?: IWidgetManager\r\n): Promise<ISimpleObject | null> {\r\n\r\n if (typeof obj === 'string') {\r\n const modelPromise = unpack_models(obj, manager!) as Promise<DataWidget>;\r\n return modelPromise.then((model) => {\r\n const array = model.getNDArray();\r\n if (array === null) {\r\n return null;\r\n }\r\n return {array: array.data as TypedArray, shape: array.shape};\r\n });\r\n } else {\r\n return Promise.resolve(JSONToSimple(obj, manager));\r\n }\r\n\r\n}\r\n\r\n\r\nexport const data_union_simple_serialization = {\r\n deserialize: JSONToSimpleUnion,\r\n serialize: simpleToJSON\r\n};\r\n","var nativeCreate = require('./_nativeCreate');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Checks if a hash value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Hash\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction hashHas(key) {\n var data = this.__data__;\n return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);\n}\n\nmodule.exports = hashHas;\n","\"use strict\";\n\n/* istanbul ignore next */\nfunction apply(styleElement, options, obj) {\n var css = \"\";\n if (obj.supports) {\n css += \"@supports (\".concat(obj.supports, \") {\");\n }\n if (obj.media) {\n css += \"@media \".concat(obj.media, \" {\");\n }\n var needLayer = typeof obj.layer !== \"undefined\";\n if (needLayer) {\n css += \"@layer\".concat(obj.layer.length > 0 ? \" \".concat(obj.layer) : \"\", \" {\");\n }\n css += obj.css;\n if (needLayer) {\n css += \"}\";\n }\n if (obj.media) {\n css += \"}\";\n }\n if (obj.supports) {\n css += \"}\";\n }\n var sourceMap = obj.sourceMap;\n if (sourceMap && typeof btoa !== \"undefined\") {\n css += \"\\n/*# sourceMappingURL=data:application/json;base64,\".concat(btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))), \" */\");\n }\n\n // For old IE\n /* istanbul ignore if */\n options.styleTagTransform(css, styleElement, options.options);\n}\nfunction removeStyleElement(styleElement) {\n // istanbul ignore if\n if (styleElement.parentNode === null) {\n return false;\n }\n styleElement.parentNode.removeChild(styleElement);\n}\n\n/* istanbul ignore next */\nfunction domAPI(options) {\n if (typeof document === \"undefined\") {\n return {\n update: function update() {},\n remove: function remove() {}\n };\n }\n var styleElement = options.insertStyleElement(options);\n return {\n update: function update(obj) {\n apply(styleElement, options, obj);\n },\n remove: function remove() {\n removeStyleElement(styleElement);\n }\n };\n}\nmodule.exports = domAPI;","var constant = require('./constant'),\n defineProperty = require('./_defineProperty'),\n identity = require('./identity');\n\n/**\n * The base implementation of `setToString` without support for hot loop shorting.\n *\n * @private\n * @param {Function} func The function to modify.\n * @param {Function} string The `toString` result.\n * @returns {Function} Returns `func`.\n */\nvar baseSetToString = !defineProperty ? identity : function(func, string) {\n return defineProperty(func, 'toString', {\n 'configurable': true,\n 'enumerable': false,\n 'value': constant(string),\n 'writable': true\n });\n};\n\nmodule.exports = baseSetToString;\n","\"use strict\"\n\nfunction iota(n) {\n var result = new Array(n)\n for(var i=0; i<n; ++i) {\n result[i] = i\n }\n return result\n}\n\nmodule.exports = iota","var assignValue = require('./_assignValue'),\n baseAssignValue = require('./_baseAssignValue');\n\n/**\n * Copies properties of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy properties from.\n * @param {Array} props The property identifiers to copy.\n * @param {Object} [object={}] The object to copy properties to.\n * @param {Function} [customizer] The function to customize copied values.\n * @returns {Object} Returns `object`.\n */\nfunction copyObject(source, props, object, customizer) {\n var isNew = !object;\n object || (object = {});\n\n var index = -1,\n length = props.length;\n\n while (++index < length) {\n var key = props[index];\n\n var newValue = customizer\n ? customizer(object[key], source[key], key, object, source)\n : undefined;\n\n if (newValue === undefined) {\n newValue = source[key];\n }\n if (isNew) {\n baseAssignValue(object, key, newValue);\n } else {\n assignValue(object, key, newValue);\n }\n }\n return object;\n}\n\nmodule.exports = copyObject;\n","var baseGetTag = require('./_baseGetTag'),\n isObject = require('./isObject');\n\n/** `Object#toString` result references. */\nvar asyncTag = '[object AsyncFunction]',\n funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n proxyTag = '[object Proxy]';\n\n/**\n * Checks if `value` is classified as a `Function` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a function, else `false`.\n * @example\n *\n * _.isFunction(_);\n * // => true\n *\n * _.isFunction(/abc/);\n * // => false\n */\nfunction isFunction(value) {\n if (!isObject(value)) {\n return false;\n }\n // The use of `Object#toString` avoids issues with the `typeof` operator\n // in Safari 9 which returns 'object' for typed arrays and other constructors.\n var tag = baseGetTag(value);\n return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;\n}\n\nmodule.exports = isFunction;\n","// Copyright (c) Zhendong Peng\n// Distributed under the terms of the Modified BSD License.\n\nexport * from './player'\nexport * from './recorder'\nexport * from './version'\n","var isObject = require('./isObject'),\n isPrototype = require('./_isPrototype'),\n nativeKeysIn = require('./_nativeKeysIn');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction baseKeysIn(object) {\n if (!isObject(object)) {\n return nativeKeysIn(object);\n }\n var isProto = isPrototype(object),\n result = [];\n\n for (var key in object) {\n if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) {\n result.push(key);\n }\n }\n return result;\n}\n\nmodule.exports = baseKeysIn;\n","var Hash = require('./_Hash'),\n ListCache = require('./_ListCache'),\n Map = require('./_Map');\n\n/**\n * Removes all key-value entries from the map.\n *\n * @private\n * @name clear\n * @memberOf MapCache\n */\nfunction mapCacheClear() {\n this.size = 0;\n this.__data__ = {\n 'hash': new Hash,\n 'map': new (Map || ListCache),\n 'string': new Hash\n };\n}\n\nmodule.exports = mapCacheClear;\n","var freeGlobal = require('./_freeGlobal');\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Detect free variable `process` from Node.js. */\nvar freeProcess = moduleExports && freeGlobal.process;\n\n/** Used to access faster Node.js helpers. */\nvar nodeUtil = (function() {\n try {\n // Use `util.types` for Node.js 10+.\n var types = freeModule && freeModule.require && freeModule.require('util').types;\n\n if (types) {\n return types;\n }\n\n // Legacy `process.binding('util')` for Node.js < 10.\n return freeProcess && freeProcess.binding && freeProcess.binding('util');\n } catch (e) {}\n}());\n\nmodule.exports = nodeUtil;\n","/**\n * Performs a\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * comparison between two values to determine if they are equivalent.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.eq(object, object);\n * // => true\n *\n * _.eq(object, other);\n * // => false\n *\n * _.eq('a', 'a');\n * // => true\n *\n * _.eq('a', Object('a'));\n * // => false\n *\n * _.eq(NaN, NaN);\n * // => true\n */\nfunction eq(value, other) {\n return value === other || (value !== value && other !== other);\n}\n\nmodule.exports = eq;\n","\"use strict\";function t(t,i,e,s){return new(e||(e=Promise))((function(o,r){function n(t){try{d(s.next(t))}catch(t){r(t)}}function a(t){try{d(s.throw(t))}catch(t){r(t)}}function d(t){var i;t.done?o(t.value):(i=t.value,i instanceof e?i:new e((function(t){t(i)}))).then(n,a)}d((s=s.apply(t,i||[])).next())}))}\"function\"==typeof SuppressedError&&SuppressedError;class i{constructor(){this.listeners={}}on(t,i,e){if(this.listeners[t]||(this.listeners[t]=new Set),this.listeners[t].add(i),null==e?void 0:e.once){const e=()=>{this.un(t,e),this.un(t,i)};return this.on(t,e),e}return()=>this.un(t,i)}un(t,i){var e;null===(e=this.listeners[t])||void 0===e||e.delete(i)}once(t,i){return this.on(t,i,{once:!0})}unAll(){this.listeners={}}emit(t,...i){this.listeners[t]&&this.listeners[t].forEach((t=>t(...i)))}}class e extends i{constructor(t){super(),this.subscriptions=[],this.options=t}onInit(){}_init(t){this.wavesurfer=t,this.onInit()}destroy(){this.emit(\"destroy\"),this.subscriptions.forEach((t=>t()))}}class s extends i{constructor(){super(...arguments),this.unsubscribe=()=>{}}start(){this.unsubscribe=this.on(\"tick\",(()=>{requestAnimationFrame((()=>{this.emit(\"tick\")}))})),this.emit(\"tick\")}stop(){this.unsubscribe()}destroy(){this.unsubscribe()}}const o=[\"audio/webm\",\"audio/wav\",\"audio/mpeg\",\"audio/mp4\",\"audio/mp3\"];class r extends e{constructor(t){var i,e,o,r,n,a;super(Object.assign(Object.assign({},t),{audioBitsPerSecond:null!==(i=t.audioBitsPerSecond)&&void 0!==i?i:128e3,scrollingWaveform:null!==(e=t.scrollingWaveform)&&void 0!==e&&e,scrollingWaveformWindow:null!==(o=t.scrollingWaveformWindow)&&void 0!==o?o:5,continuousWaveform:null!==(r=t.continuousWaveform)&&void 0!==r&&r,renderRecordedAudio:null===(n=t.renderRecordedAudio)||void 0===n||n,mediaRecorderTimeslice:null!==(a=t.mediaRecorderTimeslice)&&void 0!==a?a:void 0})),this.stream=null,this.mediaRecorder=null,this.dataWindow=null,this.isWaveformPaused=!1,this.lastStartTime=0,this.lastDuration=0,this.duration=0,this.timer=new s,this.subscriptions.push(this.timer.on(\"tick\",(()=>{const t=performance.now()-this.lastStartTime;this.duration=this.isPaused()?this.duration:this.lastDuration+t,this.emit(\"record-progress\",this.duration)})))}static create(t){return new r(t||{})}renderMicStream(t){var i;const e=new AudioContext,s=e.createMediaStreamSource(t),o=e.createAnalyser();s.connect(o),this.options.continuousWaveform&&(o.fftSize=32);const r=o.frequencyBinCount,n=new Float32Array(r);let a=0;this.wavesurfer&&(null!==(i=this.originalOptions)&&void 0!==i||(this.originalOptions=Object.assign({},this.wavesurfer.options)),this.wavesurfer.options.interact=!1,this.options.scrollingWaveform&&(this.wavesurfer.options.cursorWidth=0));const d=setInterval((()=>{var t,i,s,d;if(!this.isWaveformPaused){if(o.getFloatTimeDomainData(n),this.options.scrollingWaveform){const t=Math.floor((this.options.scrollingWaveformWindow||0)*e.sampleRate),i=Math.min(t,this.dataWindow?this.dataWindow.length+r:r),s=new Float32Array(t);if(this.dataWindow){const e=Math.max(0,t-this.dataWindow.length);s.set(this.dataWindow.slice(-i+r),e)}s.set(n,t-r),this.dataWindow=s}else if(this.options.continuousWaveform){if(!this.dataWindow){const e=this.options.continuousWaveformDuration?Math.round(100*this.options.continuousWaveformDuration):(null!==(i=null===(t=this.wavesurfer)||void 0===t?void 0:t.getWidth())&&void 0!==i?i:0)*window.devicePixelRatio;this.dataWindow=new Float32Array(e)}let e=0;for(let t=0;t<r;t++){const i=Math.abs(n[t]);i>e&&(e=i)}if(a+1>this.dataWindow.length){const t=new Float32Array(2*this.dataWindow.length);t.set(this.dataWindow,0),this.dataWindow=t}this.dataWindow[a]=e,a++}else this.dataWindow=n;if(this.wavesurfer){const t=(null!==(d=null===(s=this.dataWindow)||void 0===s?void 0:s.length)&&void 0!==d?d:0)/100;this.wavesurfer.load(\"\",[this.dataWindow],this.options.scrollingWaveform?this.options.scrollingWaveformWindow:t).then((()=>{this.wavesurfer&&this.options.continuousWaveform&&(this.wavesurfer.setTime(this.getDuration()/1e3),this.wavesurfer.options.minPxPerSec||this.wavesurfer.setOptions({minPxPerSec:this.wavesurfer.getWidth()/this.wavesurfer.getDuration()}))})).catch((t=>{console.error(\"Error rendering real-time recording data:\",t)}))}}}),10);return{onDestroy:()=>{clearInterval(d),null==s||s.disconnect(),null==e||e.close()},onEnd:()=>{this.isWaveformPaused=!0,clearInterval(d),this.stopMic()}}}startMic(i){return t(this,void 0,void 0,(function*(){let t;try{t=yield navigator.mediaDevices.getUserMedia({audio:!(null==i?void 0:i.deviceId)||{deviceId:i.deviceId}})}catch(t){throw new Error(\"Error accessing the microphone: \"+t.message)}const{onDestroy:e,onEnd:s}=this.renderMicStream(t);return this.subscriptions.push(this.once(\"destroy\",e)),this.subscriptions.push(this.once(\"record-end\",s)),this.stream=t,t}))}stopMic(){this.stream&&(this.stream.getTracks().forEach((t=>t.stop())),this.stream=null,this.mediaRecorder=null)}startRecording(i){return t(this,void 0,void 0,(function*(){const t=this.stream||(yield this.startMic(i));this.dataWindow=null;const e=this.mediaRecorder||new MediaRecorder(t,{mimeType:this.options.mimeType||o.find((t=>MediaRecorder.isTypeSupported(t))),audioBitsPerSecond:this.options.audioBitsPerSecond});this.mediaRecorder=e,this.stopRecording();const s=[];e.ondataavailable=t=>{t.data.size>0&&s.push(t.data),this.emit(\"record-data-available\",t.data)};const r=t=>{var i;const o=new Blob(s,{type:e.mimeType});this.emit(t,o),this.options.renderRecordedAudio&&(this.applyOriginalOptionsIfNeeded(),null===(i=this.wavesurfer)||void 0===i||i.load(URL.createObjectURL(o)))};e.onpause=()=>r(\"record-pause\"),e.onstop=()=>r(\"record-end\"),e.start(this.options.mediaRecorderTimeslice),this.lastStartTime=performance.now(),this.lastDuration=0,this.duration=0,this.isWaveformPaused=!1,this.timer.start(),this.emit(\"record-start\")}))}getDuration(){return this.duration}isRecording(){var t;return\"recording\"===(null===(t=this.mediaRecorder)||void 0===t?void 0:t.state)}isPaused(){var t;return\"paused\"===(null===(t=this.mediaRecorder)||void 0===t?void 0:t.state)}isActive(){var t;return\"inactive\"!==(null===(t=this.mediaRecorder)||void 0===t?void 0:t.state)}stopRecording(){var t;this.isActive()&&(null===(t=this.mediaRecorder)||void 0===t||t.stop(),this.timer.stop())}pauseRecording(){var t,i;this.isRecording()&&(this.isWaveformPaused=!0,null===(t=this.mediaRecorder)||void 0===t||t.requestData(),null===(i=this.mediaRecorder)||void 0===i||i.pause(),this.timer.stop(),this.lastDuration=this.duration)}resumeRecording(){var t;this.isPaused()&&(this.isWaveformPaused=!1,null===(t=this.mediaRecorder)||void 0===t||t.resume(),this.timer.start(),this.lastStartTime=performance.now(),this.emit(\"record-resume\"))}static getAvailableAudioDevices(){return t(this,void 0,void 0,(function*(){return navigator.mediaDevices.enumerateDevices().then((t=>t.filter((t=>\"audioinput\"===t.kind))))}))}destroy(){this.applyOriginalOptionsIfNeeded(),super.destroy(),this.stopRecording(),this.stopMic()}applyOriginalOptionsIfNeeded(){this.wavesurfer&&this.originalOptions&&(this.wavesurfer.setOptions(this.originalOptions),delete this.originalOptions)}}module.exports=r;\n","var assocIndexOf = require('./_assocIndexOf');\n\n/** Used for built-in method references. */\nvar arrayProto = Array.prototype;\n\n/** Built-in value references. */\nvar splice = arrayProto.splice;\n\n/**\n * Removes `key` and its value from the list cache.\n *\n * @private\n * @name delete\n * @memberOf ListCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction listCacheDelete(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n return false;\n }\n var lastIndex = data.length - 1;\n if (index == lastIndex) {\n data.pop();\n } else {\n splice.call(data, index, 1);\n }\n --this.size;\n return true;\n}\n\nmodule.exports = listCacheDelete;\n","\"use strict\";function t(t,e,s,r){return new(s||(s=Promise))((function(i,a){function n(t){try{o(r.next(t))}catch(t){a(t)}}function h(t){try{o(r.throw(t))}catch(t){a(t)}}function o(t){var e;t.done?i(t.value):(e=t.value,e instanceof s?e:new s((function(t){t(e)}))).then(n,h)}o((r=r.apply(t,e||[])).next())}))}\"function\"==typeof SuppressedError&&SuppressedError;class e{constructor(){this.listeners={}}on(t,e,s){if(this.listeners[t]||(this.listeners[t]=new Set),this.listeners[t].add(e),null==s?void 0:s.once){const s=()=>{this.un(t,s),this.un(t,e)};return this.on(t,s),s}return()=>this.un(t,e)}un(t,e){var s;null===(s=this.listeners[t])||void 0===s||s.delete(e)}once(t,e){return this.on(t,e,{once:!0})}unAll(){this.listeners={}}emit(t,...e){this.listeners[t]&&this.listeners[t].forEach((t=>t(...e)))}}class s extends e{constructor(t){super(),this.subscriptions=[],this.options=t}onInit(){}_init(t){this.wavesurfer=t,this.onInit()}destroy(){this.emit(\"destroy\"),this.subscriptions.forEach((t=>t()))}}function r(t,e){const s=e.xmlns?document.createElementNS(e.xmlns,t):document.createElement(t);for(const[t,i]of Object.entries(e))if(\"children\"===t)for(const[t,i]of Object.entries(e))\"string\"==typeof i?s.appendChild(document.createTextNode(i)):s.appendChild(r(t,i));else\"style\"===t?Object.assign(s.style,i):\"textContent\"===t?s.textContent=i:s.setAttribute(t,i.toString());return s}function i(t,e,s){const i=r(t,e||{});return null==s||s.appendChild(i),i}function a(t,e,s,r){switch(this.bufferSize=t,this.sampleRate=e,this.bandwidth=2/t*(e/2),this.sinTable=new Float32Array(t),this.cosTable=new Float32Array(t),this.windowValues=new Float32Array(t),this.reverseTable=new Uint32Array(t),this.peakBand=0,this.peak=0,s){case\"bartlett\":for(i=0;i<t;i++)this.windowValues[i]=2/(t-1)*((t-1)/2-Math.abs(i-(t-1)/2));break;case\"bartlettHann\":for(i=0;i<t;i++)this.windowValues[i]=.62-.48*Math.abs(i/(t-1)-.5)-.38*Math.cos(2*Math.PI*i/(t-1));break;case\"blackman\":for(r=r||.16,i=0;i<t;i++)this.windowValues[i]=(1-r)/2-.5*Math.cos(2*Math.PI*i/(t-1))+r/2*Math.cos(4*Math.PI*i/(t-1));break;case\"cosine\":for(i=0;i<t;i++)this.windowValues[i]=Math.cos(Math.PI*i/(t-1)-Math.PI/2);break;case\"gauss\":for(r=r||.25,i=0;i<t;i++)this.windowValues[i]=Math.pow(Math.E,-.5*Math.pow((i-(t-1)/2)/(r*(t-1)/2),2));break;case\"hamming\":for(i=0;i<t;i++)this.windowValues[i]=.54-.46*Math.cos(2*Math.PI*i/(t-1));break;case\"hann\":case void 0:for(i=0;i<t;i++)this.windowValues[i]=.5*(1-Math.cos(2*Math.PI*i/(t-1)));break;case\"lanczoz\":for(i=0;i<t;i++)this.windowValues[i]=Math.sin(Math.PI*(2*i/(t-1)-1))/(Math.PI*(2*i/(t-1)-1));break;case\"rectangular\":for(i=0;i<t;i++)this.windowValues[i]=1;break;case\"triangular\":for(i=0;i<t;i++)this.windowValues[i]=2/t*(t/2-Math.abs(i-(t-1)/2));break;default:throw Error(\"No such window function '\"+s+\"'\")}for(var i,a=1,n=t>>1;a<t;){for(i=0;i<a;i++)this.reverseTable[i+a]=this.reverseTable[i]+n;a<<=1,n>>=1}for(i=0;i<t;i++)this.sinTable[i]=Math.sin(-Math.PI/i),this.cosTable[i]=Math.cos(-Math.PI/i);this.calculateSpectrum=function(t){var e,s,r,i=this.bufferSize,a=this.cosTable,n=this.sinTable,h=this.reverseTable,o=new Float32Array(i),l=new Float32Array(i),c=2/this.bufferSize,u=Math.sqrt,f=new Float32Array(i/2),p=Math.floor(Math.log(i)/Math.LN2);if(Math.pow(2,p)!==i)throw\"Invalid buffer size, must be a power of 2.\";if(i!==t.length)throw\"Supplied buffer is not the same size as defined FFT. FFT Size: \"+i+\" Buffer Size: \"+t.length;for(var d,w,g,b,M,m,y,v,T=1,k=0;k<i;k++)o[k]=t[h[k]]*this.windowValues[h[k]],l[k]=0;for(;T<i;){d=a[T],w=n[T],g=1,b=0;for(var z=0;z<T;z++){for(k=z;k<i;)m=g*o[M=k+T]-b*l[M],y=g*l[M]+b*o[M],o[M]=o[k]-m,l[M]=l[k]-y,o[k]+=m,l[k]+=y,k+=T<<1;g=(v=g)*d-b*w,b=v*w+b*d}T<<=1}k=0;for(var F=i/2;k<F;k++)(r=c*u((e=o[k])*e+(s=l[k])*s))>this.peak&&(this.peakBand=k,this.peak=r),f[k]=r;return f}}const n=1e3*Math.log(10)/107.939;class h extends s{static create(t){return new h(t||{})}constructor(t){var e,s;if(super(t),this.frequenciesDataUrl=t.frequenciesDataUrl,this.container=\"string\"==typeof t.container?document.querySelector(t.container):t.container,t.colorMap&&\"string\"!=typeof t.colorMap){if(t.colorMap.length<256)throw new Error(\"Colormap must contain 256 elements\");for(let e=0;e<t.colorMap.length;e++){if(4!==t.colorMap[e].length)throw new Error(\"ColorMap entries must contain 4 values\")}this.colorMap=t.colorMap}else switch(this.colorMap=t.colorMap||\"roseus\",this.colorMap){case\"gray\":this.colorMap=[];for(let t=0;t<256;t++){const e=(255-t)/256;this.colorMap.push([e,e,e,1])}break;case\"igray\":this.colorMap=[];for(let t=0;t<256;t++){const e=t/256;this.colorMap.push([e,e,e,1])}break;case\"roseus\":this.colorMap=[[.004528,.004341,.004307,1],[.005625,.006156,.00601,1],[.006628,.008293,.008161,1],[.007551,.010738,.01079,1],[.008382,.013482,.013941,1],[.009111,.01652,.017662,1],[.009727,.019846,.022009,1],[.010223,.023452,.027035,1],[.010593,.027331,.032799,1],[.010833,.031475,.039361,1],[.010941,.035875,.046415,1],[.010918,.04052,.053597,1],[.010768,.045158,.060914,1],[.010492,.049708,.068367,1],[.010098,.054171,.075954,1],[.009594,.058549,.083672,1],[.008989,.06284,.091521,1],[.008297,.067046,.099499,1],[.00753,.071165,.107603,1],[.006704,.075196,.11583,1],[.005838,.07914,.124178,1],[.004949,.082994,.132643,1],[.004062,.086758,.141223,1],[.003198,.09043,.149913,1],[.002382,.09401,.158711,1],[.001643,.097494,.167612,1],[.001009,.100883,.176612,1],[514e-6,.104174,.185704,1],[187e-6,.107366,.194886,1],[66e-6,.110457,.204151,1],[186e-6,.113445,.213496,1],[587e-6,.116329,.222914,1],[.001309,.119106,.232397,1],[.002394,.121776,.241942,1],[.003886,.124336,.251542,1],[.005831,.126784,.261189,1],[.008276,.12912,.270876,1],[.011268,.131342,.280598,1],[.014859,.133447,.290345,1],[.0191,.135435,.300111,1],[.024043,.137305,.309888,1],[.029742,.139054,.319669,1],[.036252,.140683,.329441,1],[.043507,.142189,.339203,1],[.050922,.143571,.348942,1],[.058432,.144831,.358649,1],[.066041,.145965,.368319,1],[.073744,.146974,.377938,1],[.081541,.147858,.387501,1],[.089431,.148616,.396998,1],[.097411,.149248,.406419,1],[.105479,.149754,.415755,1],[.113634,.150134,.424998,1],[.121873,.150389,.434139,1],[.130192,.150521,.443167,1],[.138591,.150528,.452075,1],[.147065,.150413,.460852,1],[.155614,.150175,.469493,1],[.164232,.149818,.477985,1],[.172917,.149343,.486322,1],[.181666,.148751,.494494,1],[.190476,.148046,.502493,1],[.199344,.147229,.510313,1],[.208267,.146302,.517944,1],[.217242,.145267,.52538,1],[.226264,.144131,.532613,1],[.235331,.142894,.539635,1],[.24444,.141559,.546442,1],[.253587,.140131,.553026,1],[.262769,.138615,.559381,1],[.271981,.137016,.5655,1],[.281222,.135335,.571381,1],[.290487,.133581,.577017,1],[.299774,.131757,.582404,1],[.30908,.129867,.587538,1],[.318399,.12792,.592415,1],[.32773,.125921,.597032,1],[.337069,.123877,.601385,1],[.346413,.121793,.605474,1],[.355758,.119678,.609295,1],[.365102,.11754,.612846,1],[.374443,.115386,.616127,1],[.383774,.113226,.619138,1],[.393096,.111066,.621876,1],[.402404,.108918,.624343,1],[.411694,.106794,.62654,1],[.420967,.104698,.628466,1],[.430217,.102645,.630123,1],[.439442,.100647,.631513,1],[.448637,.098717,.632638,1],[.457805,.096861,.633499,1],[.46694,.095095,.6341,1],[.47604,.093433,.634443,1],[.485102,.091885,.634532,1],[.494125,.090466,.63437,1],[.503104,.08919,.633962,1],[.512041,.088067,.633311,1],[.520931,.087108,.63242,1],[.529773,.086329,.631297,1],[.538564,.085738,.629944,1],[.547302,.085346,.628367,1],[.555986,.085162,.626572,1],[.564615,.08519,.624563,1],[.573187,.085439,.622345,1],[.581698,.085913,.619926,1],[.590149,.086615,.617311,1],[.598538,.087543,.614503,1],[.606862,.0887,.611511,1],[.61512,.090084,.608343,1],[.623312,.09169,.605001,1],[.631438,.093511,.601489,1],[.639492,.095546,.597821,1],[.647476,.097787,.593999,1],[.655389,.100226,.590028,1],[.66323,.102856,.585914,1],[.670995,.105669,.581667,1],[.678686,.108658,.577291,1],[.686302,.111813,.57279,1],[.69384,.115129,.568175,1],[.7013,.118597,.563449,1],[.708682,.122209,.558616,1],[.715984,.125959,.553687,1],[.723206,.12984,.548666,1],[.730346,.133846,.543558,1],[.737406,.13797,.538366,1],[.744382,.142209,.533101,1],[.751274,.146556,.527767,1],[.758082,.151008,.522369,1],[.764805,.155559,.516912,1],[.771443,.160206,.511402,1],[.777995,.164946,.505845,1],[.784459,.169774,.500246,1],[.790836,.174689,.494607,1],[.797125,.179688,.488935,1],[.803325,.184767,.483238,1],[.809435,.189925,.477518,1],[.815455,.19516,.471781,1],[.821384,.200471,.466028,1],[.827222,.205854,.460267,1],[.832968,.211308,.454505,1],[.838621,.216834,.448738,1],[.844181,.222428,.442979,1],[.849647,.22809,.43723,1],[.855019,.233819,.431491,1],[.860295,.239613,.425771,1],[.865475,.245471,.420074,1],[.870558,.251393,.414403,1],[.875545,.25738,.408759,1],[.880433,.263427,.403152,1],[.885223,.269535,.397585,1],[.889913,.275705,.392058,1],[.894503,.281934,.386578,1],[.898993,.288222,.381152,1],[.903381,.294569,.375781,1],[.907667,.300974,.370469,1],[.911849,.307435,.365223,1],[.915928,.313953,.360048,1],[.919902,.320527,.354948,1],[.923771,.327155,.349928,1],[.927533,.333838,.344994,1],[.931188,.340576,.340149,1],[.934736,.347366,.335403,1],[.938175,.354207,.330762,1],[.941504,.361101,.326229,1],[.944723,.368045,.321814,1],[.947831,.375039,.317523,1],[.950826,.382083,.313364,1],[.953709,.389175,.309345,1],[.956478,.396314,.305477,1],[.959133,.403499,.301766,1],[.961671,.410731,.298221,1],[.964093,.418008,.294853,1],[.966399,.425327,.291676,1],[.968586,.43269,.288696,1],[.970654,.440095,.285926,1],[.972603,.44754,.28338,1],[.974431,.455025,.281067,1],[.976139,.462547,.279003,1],[.977725,.470107,.277198,1],[.979188,.477703,.275666,1],[.980529,.485332,.274422,1],[.981747,.492995,.273476,1],[.98284,.50069,.272842,1],[.983808,.508415,.272532,1],[.984653,.516168,.27256,1],[.985373,.523948,.272937,1],[.985966,.531754,.273673,1],[.986436,.539582,.274779,1],[.98678,.547434,.276264,1],[.986998,.555305,.278135,1],[.987091,.563195,.280401,1],[.987061,.5711,.283066,1],[.986907,.579019,.286137,1],[.986629,.58695,.289615,1],[.986229,.594891,.293503,1],[.985709,.602839,.297802,1],[.985069,.610792,.302512,1],[.98431,.618748,.307632,1],[.983435,.626704,.313159,1],[.982445,.634657,.319089,1],[.981341,.642606,.32542,1],[.98013,.650546,.332144,1],[.978812,.658475,.339257,1],[.977392,.666391,.346753,1],[.97587,.67429,.354625,1],[.974252,.68217,.362865,1],[.972545,.690026,.371466,1],[.97075,.697856,.380419,1],[.968873,.705658,.389718,1],[.966921,.713426,.399353,1],[.964901,.721157,.409313,1],[.962815,.728851,.419594,1],[.960677,.7365,.430181,1],[.95849,.744103,.44107,1],[.956263,.751656,.452248,1],[.954009,.759153,.463702,1],[.951732,.766595,.475429,1],[.949445,.773974,.487414,1],[.947158,.781289,.499647,1],[.944885,.788535,.512116,1],[.942634,.795709,.524811,1],[.940423,.802807,.537717,1],[.938261,.809825,.550825,1],[.936163,.81676,.564121,1],[.934146,.823608,.577591,1],[.932224,.830366,.59122,1],[.930412,.837031,.604997,1],[.928727,.843599,.618904,1],[.927187,.850066,.632926,1],[.925809,.856432,.647047,1],[.92461,.862691,.661249,1],[.923607,.868843,.675517,1],[.92282,.874884,.689832,1],[.922265,.880812,.704174,1],[.921962,.886626,.718523,1],[.92193,.892323,.732859,1],[.922183,.897903,.747163,1],[.922741,.903364,.76141,1],[.92362,.908706,.77558,1],[.924837,.913928,.789648,1],[.926405,.919031,.80359,1],[.92834,.924015,.817381,1],[.930655,.928881,.830995,1],[.93336,.933631,.844405,1],[.936466,.938267,.857583,1],[.939982,.942791,.870499,1],[.943914,.947207,.883122,1],[.948267,.951519,.895421,1],[.953044,.955732,.907359,1],[.958246,.959852,.918901,1],[.963869,.963887,.930004,1],[.969909,.967845,.940623,1],[.976355,.971737,.950704,1],[.983195,.97558,.960181,1],[.990402,.979395,.968966,1],[.99793,.983217,.97692,1]];break;default:throw Error(\"No such colormap '\"+this.colorMap+\"'\")}this.fftSamples=t.fftSamples||512,this.height=t.height||200,this.noverlap=t.noverlap||null,this.windowFunc=t.windowFunc||\"hann\",this.alpha=t.alpha,this.frequencyMin=t.frequencyMin||0,this.frequencyMax=t.frequencyMax||0,this.gainDB=null!==(e=t.gainDB)&&void 0!==e?e:20,this.rangeDB=null!==(s=t.rangeDB)&&void 0!==s?s:80,this.scale=t.scale||\"mel\",this.numMelFilters=this.fftSamples/2,this.numLogFilters=this.fftSamples/2,this.numBarkFilters=this.fftSamples/2,this.numErbFilters=this.fftSamples/2,this.createWrapper(),this.createCanvas()}onInit(){this.container=this.container||this.wavesurfer.getWrapper(),this.container.appendChild(this.wrapper),this.wavesurfer.options.fillParent&&Object.assign(this.wrapper.style,{width:\"100%\",overflowX:\"hidden\",overflowY:\"hidden\"}),this.subscriptions.push(this.wavesurfer.on(\"redraw\",(()=>this.render())))}destroy(){this.unAll(),this.wavesurfer.un(\"ready\",this._onReady),this.wavesurfer.un(\"redraw\",this._onRender),this.wavesurfer=null,this.util=null,this.options=null,this.wrapper&&(this.wrapper.remove(),this.wrapper=null),super.destroy()}loadFrequenciesData(e){return t(this,void 0,void 0,(function*(){const t=yield fetch(e);if(!t.ok)throw new Error(\"Unable to fetch frequencies data\");const s=yield t.json();this.drawSpectrogram(s)}))}createWrapper(){this.wrapper=i(\"div\",{style:{display:\"block\",position:\"relative\",userSelect:\"none\"}}),this.options.labels&&(this.labelsEl=i(\"canvas\",{part:\"spec-labels\",style:{position:\"absolute\",zIndex:9,width:\"55px\",height:\"100%\"}},this.wrapper)),this.wrapper.addEventListener(\"click\",this._onWrapperClick)}createCanvas(){this.canvas=i(\"canvas\",{style:{position:\"absolute\",left:0,top:0,width:\"100%\",height:\"100%\",zIndex:4}},this.wrapper),this.spectrCc=this.canvas.getContext(\"2d\")}render(){var t;if(this.frequenciesDataUrl)this.loadFrequenciesData(this.frequenciesDataUrl);else{const e=null===(t=this.wavesurfer)||void 0===t?void 0:t.getDecodedData();e&&this.drawSpectrogram(this.getFrequencies(e))}}drawSpectrogram(t){isNaN(t[0][0])||(t=[t]),this.wrapper.style.height=this.height*t.length+\"px\",this.canvas.width=this.getWidth(),this.canvas.height=this.height*t.length;const e=this.spectrCc,s=this.height,r=this.getWidth(),i=this.buffer.sampleRate/2,a=this.frequencyMin,n=this.frequencyMax;if(e){if(n>i){const i=this.colorMap[this.colorMap.length-1];e.fillStyle=`rgba(${i[0]}, ${i[1]}, ${i[2]}, ${i[3]})`,e.fillRect(0,0,r,s*t.length)}for(let h=0;h<t.length;h++){const o=this.resample(t[h]),l=o[0].length,c=new ImageData(r,l);for(let t=0;t<o.length;t++)for(let e=0;e<o[t].length;e++){const s=this.colorMap[o[t][e]],i=4*((l-e-1)*r+t);c.data[i]=255*s[0],c.data[i+1]=255*s[1],c.data[i+2]=255*s[2],c.data[i+3]=255*s[3]}const u=this.hzToScale(a)/this.hzToScale(i),f=this.hzToScale(n)/this.hzToScale(i),p=Math.min(1,f);createImageBitmap(c,0,Math.round(l*(1-p)),r,Math.round(l*(p-u))).then((t=>{e.drawImage(t,0,s*(h+1-p/f),r,s*p/f)}))}this.options.labels&&this.loadLabels(this.options.labelsBackground,\"12px\",\"12px\",\"\",this.options.labelsColor,this.options.labelsHzColor||this.options.labelsColor,\"center\",\"#specLabels\",t.length),this.emit(\"ready\")}}createFilterBank(t,e,s,r){const i=s(0),a=s(e/2),n=Array.from({length:t},(()=>Array(this.fftSamples/2+1).fill(0))),h=e/this.fftSamples;for(let e=0;e<t;e++){let s=r(i+e/t*(a-i)),o=Math.floor(s/h),l=o*h,c=(s-l)/((o+1)*h-l);n[e][o]=1-c,n[e][o+1]=c}return n}hzToMel(t){return 2595*Math.log10(1+t/700)}melToHz(t){return 700*(Math.pow(10,t/2595)-1)}createMelFilterBank(t,e){return this.createFilterBank(t,e,this.hzToMel,this.melToHz)}hzToLog(t){return Math.log10(Math.max(1,t))}logToHz(t){return Math.pow(10,t)}createLogFilterBank(t,e){return this.createFilterBank(t,e,this.hzToLog,this.logToHz)}hzToBark(t){let e=26.81*t/(1960+t)-.53;return e<2&&(e+=.15*(2-e)),e>20.1&&(e+=.22*(e-20.1)),e}barkToHz(t){return t<2&&(t=(t-.3)/.85),t>20.1&&(t=(t+4.422)/1.22),(t+.53)/(26.28-t)*1960}createBarkFilterBank(t,e){return this.createFilterBank(t,e,this.hzToBark,this.barkToHz)}hzToErb(t){return n*Math.log10(1+.00437*t)}erbToHz(t){return(Math.pow(10,t/n)-1)/.00437}createErbFilterBank(t,e){return this.createFilterBank(t,e,this.hzToErb,this.erbToHz)}hzToScale(t){switch(this.scale){case\"mel\":return this.hzToMel(t);case\"logarithmic\":return this.hzToLog(t);case\"bark\":return this.hzToBark(t);case\"erb\":return this.hzToErb(t)}return t}scaleToHz(t){switch(this.scale){case\"mel\":return this.melToHz(t);case\"logarithmic\":return this.logToHz(t);case\"bark\":return this.barkToHz(t);case\"erb\":return this.erbToHz(t)}return t}applyFilterBank(t,e){const s=e.length,r=Float32Array.from({length:s},(()=>0));for(let i=0;i<s;i++)for(let s=0;s<t.length;s++)r[i]+=t[s]*e[i][s];return r}getWidth(){return this.wavesurfer.getWrapper().offsetWidth}getFrequencies(t){var e,s;const r=this.fftSamples,i=(null!==(e=this.options.splitChannels)&&void 0!==e?e:null===(s=this.wavesurfer)||void 0===s?void 0:s.options.splitChannels)?t.numberOfChannels:1;if(this.frequencyMax=this.frequencyMax||t.sampleRate/2,!t)return;this.buffer=t;const n=t.sampleRate,h=[];let o=this.noverlap;if(!o){const e=t.length/this.canvas.width;o=Math.max(0,Math.round(r-e))}const l=new a(r,n,this.windowFunc,this.alpha);let c;switch(this.scale){case\"mel\":c=this.createFilterBank(this.numMelFilters,n,this.hzToMel,this.melToHz);break;case\"logarithmic\":c=this.createFilterBank(this.numLogFilters,n,this.hzToLog,this.logToHz);break;case\"bark\":c=this.createFilterBank(this.numBarkFilters,n,this.hzToBark,this.barkToHz);break;case\"erb\":c=this.createFilterBank(this.numErbFilters,n,this.hzToErb,this.erbToHz)}for(let e=0;e<i;e++){const s=t.getChannelData(e),i=[];let a=0;for(;a+r<s.length;){const t=s.slice(a,a+r),e=new Uint8Array(r/2);let n=l.calculateSpectrum(t);c&&(n=this.applyFilterBank(n,c));for(let t=0;t<r/2;t++){const s=n[t]>1e-12?n[t]:1e-12,r=20*Math.log10(s);r<-this.gainDB-this.rangeDB?e[t]=0:r>-this.gainDB?e[t]=255:e[t]=(r+this.gainDB)/this.rangeDB*255+256}i.push(e),a+=r-o}h.push(i)}return h}freqType(t){return t>=1e3?(t/1e3).toFixed(1):Math.round(t)}unitType(t){return t>=1e3?\"kHz\":\"Hz\"}getLabelFrequency(t,e){const s=this.hzToScale(this.frequencyMin),r=this.hzToScale(this.frequencyMax);return this.scaleToHz(s+t/e*(r-s))}loadLabels(t,e,s,r,i,a,n,h,o){t=t||\"rgba(68,68,68,0)\",e=e||\"12px\",s=s||\"12px\",r=r||\"Helvetica\",i=i||\"#fff\",a=a||\"#fff\",n=n||\"center\";const l=this.height||512,c=l/256*5;this.frequencyMin;this.frequencyMax;const u=this.labelsEl.getContext(\"2d\"),f=window.devicePixelRatio;if(this.labelsEl.height=this.height*o*f,this.labelsEl.width=55*f,u.scale(f,f),u)for(let h=0;h<o;h++){let o;for(u.fillStyle=t,u.fillRect(0,h*l,55,(1+h)*l),u.fill(),o=0;o<=c;o++){u.textAlign=n,u.textBaseline=\"middle\";const t=this.getLabelFrequency(o,c),f=this.freqType(t),p=this.unitType(t),d=16;let w=(1+h)*l-o/c*l;w=Math.min(Math.max(w,h*l+10),(1+h)*l-10),u.fillStyle=a,u.font=s+\" \"+r,u.fillText(p,d+24,w),u.fillStyle=i,u.font=e+\" \"+r,u.fillText(f,d,w)}}}resample(t){const e=this.getWidth(),s=[],r=1/t.length,i=1/e;let a;for(a=0;a<e;a++){const e=new Array(t[0].length);let n;for(n=0;n<t.length;n++){const s=n*r,h=s+r,o=a*i,l=o+i,c=Math.max(0,Math.min(h,l)-Math.max(s,o));let u;if(c>0)for(u=0;u<t[0].length;u++)null==e[u]&&(e[u]=0),e[u]+=c/i*t[n][u]}const h=new Uint8Array(t[0].length);let o;for(o=0;o<t[0].length;o++)h[o]=e[o];s.push(h)}return s}}module.exports=h;\n","var ListCache = require('./_ListCache');\n\n/**\n * Removes all key-value entries from the stack.\n *\n * @private\n * @name clear\n * @memberOf Stack\n */\nfunction stackClear() {\n this.__data__ = new ListCache;\n this.size = 0;\n}\n\nmodule.exports = stackClear;\n","\"use strict\";class t{constructor(){this.listeners={}}on(t,e,i){if(this.listeners[t]||(this.listeners[t]=new Set),this.listeners[t].add(e),null==i?void 0:i.once){const i=()=>{this.un(t,i),this.un(t,e)};return this.on(t,i),i}return()=>this.un(t,e)}un(t,e){var i;null===(i=this.listeners[t])||void 0===i||i.delete(e)}once(t,e){return this.on(t,e,{once:!0})}unAll(){this.listeners={}}emit(t,...e){this.listeners[t]&&this.listeners[t].forEach((t=>t(...e)))}}class e extends t{constructor(t){super(),this.subscriptions=[],this.options=t}onInit(){}_init(t){this.wavesurfer=t,this.onInit()}destroy(){this.emit(\"destroy\"),this.subscriptions.forEach((t=>t()))}}function i(t,e,i,s){return new(i||(i=Promise))((function(n,r){function o(t){try{h(s.next(t))}catch(t){r(t)}}function a(t){try{h(s.throw(t))}catch(t){r(t)}}function h(t){var e;t.done?n(t.value):(e=t.value,e instanceof i?e:new i((function(t){t(e)}))).then(o,a)}h((s=s.apply(t,e||[])).next())}))}\"function\"==typeof SuppressedError&&SuppressedError;const s={decode:function(t,e){return i(this,void 0,void 0,(function*(){const i=new AudioContext({sampleRate:e});return i.decodeAudioData(t).finally((()=>i.close()))}))},createBuffer:function(t,e){return\"number\"==typeof t[0]&&(t=[t]),function(t){const e=t[0];if(e.some((t=>t>1||t<-1))){const i=e.length;let s=0;for(let t=0;t<i;t++){const i=Math.abs(e[t]);i>s&&(s=i)}for(const e of t)for(let t=0;t<i;t++)e[t]/=s}}(t),{duration:e,length:t[0].length,sampleRate:t[0].length/e,numberOfChannels:t.length,getChannelData:e=>null==t?void 0:t[e],copyFromChannel:AudioBuffer.prototype.copyFromChannel,copyToChannel:AudioBuffer.prototype.copyToChannel}}};function n(t,e){const i=e.xmlns?document.createElementNS(e.xmlns,t):document.createElement(t);for(const[t,s]of Object.entries(e))if(\"children\"===t)for(const[t,s]of Object.entries(e))\"string\"==typeof s?i.appendChild(document.createTextNode(s)):i.appendChild(n(t,s));else\"style\"===t?Object.assign(i.style,s):\"textContent\"===t?i.textContent=s:i.setAttribute(t,s.toString());return i}function r(t,e,i){const s=n(t,e||{});return null==i||i.appendChild(s),s}var o=Object.freeze({__proto__:null,createElement:r,default:r});const a={fetchBlob:function(t,e,s){return i(this,void 0,void 0,(function*(){const n=yield fetch(t,s);if(n.status>=400)throw new Error(`Failed to fetch ${t}: ${n.status} (${n.statusText})`);return function(t,e){i(this,void 0,void 0,(function*(){if(!t.body||!t.headers)return;const s=t.body.getReader(),n=Number(t.headers.get(\"Content-Length\"))||0;let r=0;const o=t=>i(this,void 0,void 0,(function*(){r+=(null==t?void 0:t.length)||0;const i=Math.round(r/n*100);e(i)})),a=()=>i(this,void 0,void 0,(function*(){let t;try{t=yield s.read()}catch(t){return}t.done||(o(t.value),yield a())}));a()}))}(n.clone(),e),n.blob()}))}};class h extends t{constructor(t){super(),this.isExternalMedia=!1,t.media?(this.media=t.media,this.isExternalMedia=!0):this.media=document.createElement(\"audio\"),t.mediaControls&&(this.media.controls=!0),t.autoplay&&(this.media.autoplay=!0),null!=t.playbackRate&&this.onMediaEvent(\"canplay\",(()=>{null!=t.playbackRate&&(this.media.playbackRate=t.playbackRate)}),{once:!0})}onMediaEvent(t,e,i){return this.media.addEventListener(t,e,i),()=>this.media.removeEventListener(t,e,i)}getSrc(){return this.media.currentSrc||this.media.src||\"\"}revokeSrc(){const t=this.getSrc();t.startsWith(\"blob:\")&&URL.revokeObjectURL(t)}canPlayType(t){return\"\"!==this.media.canPlayType(t)}setSrc(t,e){const i=this.getSrc();if(t&&i===t)return;this.revokeSrc();const s=e instanceof Blob&&(this.canPlayType(e.type)||!t)?URL.createObjectURL(e):t;i&&(this.media.src=\"\");try{this.media.src=s}catch(e){this.media.src=t}}destroy(){this.isExternalMedia||(this.media.pause(),this.media.remove(),this.revokeSrc(),this.media.src=\"\",this.media.load())}setMediaElement(t){this.media=t}play(){return i(this,void 0,void 0,(function*(){return this.media.play()}))}pause(){this.media.pause()}isPlaying(){return!this.media.paused&&!this.media.ended}setTime(t){this.media.currentTime=Math.max(0,Math.min(t,this.getDuration()))}getDuration(){return this.media.duration}getCurrentTime(){return this.media.currentTime}getVolume(){return this.media.volume}setVolume(t){this.media.volume=t}getMuted(){return this.media.muted}setMuted(t){this.media.muted=t}getPlaybackRate(){return this.media.playbackRate}isSeeking(){return this.media.seeking}setPlaybackRate(t,e){null!=e&&(this.media.preservesPitch=e),this.media.playbackRate=t}getMediaElement(){return this.media}setSinkId(t){return this.media.setSinkId(t)}}class l extends t{constructor(t,e){super(),this.timeouts=[],this.isScrollable=!1,this.audioData=null,this.resizeObserver=null,this.lastContainerWidth=0,this.isDragging=!1,this.subscriptions=[],this.unsubscribeOnScroll=[],this.subscriptions=[],this.options=t;const i=this.parentFromOptionsContainer(t.container);this.parent=i;const[s,n]=this.initHtml();i.appendChild(s),this.container=s,this.scrollContainer=n.querySelector(\".scroll\"),this.wrapper=n.querySelector(\".wrapper\"),this.canvasWrapper=n.querySelector(\".canvases\"),this.progressWrapper=n.querySelector(\".progress\"),this.cursor=n.querySelector(\".cursor\"),e&&n.appendChild(e),this.initEvents()}parentFromOptionsContainer(t){let e;if(\"string\"==typeof t?e=document.querySelector(t):t instanceof HTMLElement&&(e=t),!e)throw new Error(\"Container not found\");return e}initEvents(){const t=t=>{const e=this.wrapper.getBoundingClientRect(),i=t.clientX-e.left,s=t.clientY-e.top;return[i/e.width,s/e.height]};if(this.wrapper.addEventListener(\"click\",(e=>{const[i,s]=t(e);this.emit(\"click\",i,s)})),this.wrapper.addEventListener(\"dblclick\",(e=>{const[i,s]=t(e);this.emit(\"dblclick\",i,s)})),!0!==this.options.dragToSeek&&\"object\"!=typeof this.options.dragToSeek||this.initDrag(),this.scrollContainer.addEventListener(\"scroll\",(()=>{const{scrollLeft:t,scrollWidth:e,clientWidth:i}=this.scrollContainer,s=t/e,n=(t+i)/e;this.emit(\"scroll\",s,n,t,t+i)})),\"function\"==typeof ResizeObserver){const t=this.createDelay(100);this.resizeObserver=new ResizeObserver((()=>{t().then((()=>this.onContainerResize())).catch((()=>{}))})),this.resizeObserver.observe(this.scrollContainer)}}onContainerResize(){const t=this.parent.clientWidth;t===this.lastContainerWidth&&\"auto\"!==this.options.height||(this.lastContainerWidth=t,this.reRender())}initDrag(){this.subscriptions.push(function(t,e,i,s,n=3,r=0,o=100){if(!t)return()=>{};const a=matchMedia(\"(pointer: coarse)\").matches;let h=()=>{};const l=l=>{if(l.button!==r)return;l.preventDefault(),l.stopPropagation();let d=l.clientX,c=l.clientY,u=!1;const p=Date.now(),m=s=>{if(s.preventDefault(),s.stopPropagation(),a&&Date.now()-p<o)return;const r=s.clientX,h=s.clientY,l=r-d,m=h-c;if(u||Math.abs(l)>n||Math.abs(m)>n){const s=t.getBoundingClientRect(),{left:n,top:o}=s;u||(null==i||i(d-n,c-o),u=!0),e(l,m,r-n,h-o),d=r,c=h}},f=e=>{if(u){const i=e.clientX,n=e.clientY,r=t.getBoundingClientRect(),{left:o,top:a}=r;null==s||s(i-o,n-a)}h()},v=t=>{t.relatedTarget&&t.relatedTarget!==document.documentElement||f(t)},g=t=>{u&&(t.stopPropagation(),t.preventDefault())},b=t=>{u&&t.preventDefault()};document.addEventListener(\"pointermove\",m),document.addEventListener(\"pointerup\",f),document.addEventListener(\"pointerout\",v),document.addEventListener(\"pointercancel\",v),document.addEventListener(\"touchmove\",b,{passive:!1}),document.addEventListener(\"click\",g,{capture:!0}),h=()=>{document.removeEventListener(\"pointermove\",m),document.removeEventListener(\"pointerup\",f),document.removeEventListener(\"pointerout\",v),document.removeEventListener(\"pointercancel\",v),document.removeEventListener(\"touchmove\",b),setTimeout((()=>{document.removeEventListener(\"click\",g,{capture:!0})}),10)}};return t.addEventListener(\"pointerdown\",l),()=>{h(),t.removeEventListener(\"pointerdown\",l)}}(this.wrapper,((t,e,i)=>{this.emit(\"drag\",Math.max(0,Math.min(1,i/this.wrapper.getBoundingClientRect().width)))}),(t=>{this.isDragging=!0,this.emit(\"dragstart\",Math.max(0,Math.min(1,t/this.wrapper.getBoundingClientRect().width)))}),(t=>{this.isDragging=!1,this.emit(\"dragend\",Math.max(0,Math.min(1,t/this.wrapper.getBoundingClientRect().width)))})))}getHeight(t,e){var i;const s=(null===(i=this.audioData)||void 0===i?void 0:i.numberOfChannels)||1;if(null==t)return 128;if(!isNaN(Number(t)))return Number(t);if(\"auto\"===t){const t=this.parent.clientHeight||128;return(null==e?void 0:e.every((t=>!t.overlay)))?t/s:t}return 128}initHtml(){const t=document.createElement(\"div\"),e=t.attachShadow({mode:\"open\"}),i=this.options.cspNonce&&\"string\"==typeof this.options.cspNonce?this.options.cspNonce.replace(/\"/g,\"\"):\"\";return e.innerHTML=`\\n <style${i?` nonce=\"${i}\"`:\"\"}>\\n :host {\\n user-select: none;\\n min-width: 1px;\\n }\\n :host audio {\\n display: block;\\n width: 100%;\\n }\\n :host .scroll {\\n overflow-x: auto;\\n overflow-y: hidden;\\n width: 100%;\\n position: relative;\\n }\\n :host .noScrollbar {\\n scrollbar-color: transparent;\\n scrollbar-width: none;\\n }\\n :host .noScrollbar::-webkit-scrollbar {\\n display: none;\\n -webkit-appearance: none;\\n }\\n :host .wrapper {\\n position: relative;\\n overflow: visible;\\n z-index: 2;\\n }\\n :host .canvases {\\n min-height: ${this.getHeight(this.options.height,this.options.splitChannels)}px;\\n }\\n :host .canvases > div {\\n position: relative;\\n }\\n :host canvas {\\n display: block;\\n position: absolute;\\n top: 0;\\n image-rendering: pixelated;\\n }\\n :host .progress {\\n pointer-events: none;\\n position: absolute;\\n z-index: 2;\\n top: 0;\\n left: 0;\\n width: 0;\\n height: 100%;\\n overflow: hidden;\\n }\\n :host .progress > div {\\n position: relative;\\n }\\n :host .cursor {\\n pointer-events: none;\\n position: absolute;\\n z-index: 5;\\n top: 0;\\n left: 0;\\n height: 100%;\\n border-radius: 2px;\\n }\\n </style>\\n\\n <div class=\"scroll\" part=\"scroll\">\\n <div class=\"wrapper\" part=\"wrapper\">\\n <div class=\"canvases\" part=\"canvases\"></div>\\n <div class=\"progress\" part=\"progress\"></div>\\n <div class=\"cursor\" part=\"cursor\"></div>\\n </div>\\n </div>\\n `,[t,e]}setOptions(t){if(this.options.container!==t.container){const e=this.parentFromOptionsContainer(t.container);e.appendChild(this.container),this.parent=e}!0!==t.dragToSeek&&\"object\"!=typeof this.options.dragToSeek||this.initDrag(),this.options=t,this.reRender()}getWrapper(){return this.wrapper}getWidth(){return this.scrollContainer.clientWidth}getScroll(){return this.scrollContainer.scrollLeft}setScroll(t){this.scrollContainer.scrollLeft=t}setScrollPercentage(t){const{scrollWidth:e}=this.scrollContainer,i=e*t;this.setScroll(i)}destroy(){var t,e;this.subscriptions.forEach((t=>t())),this.container.remove(),null===(t=this.resizeObserver)||void 0===t||t.disconnect(),null===(e=this.unsubscribeOnScroll)||void 0===e||e.forEach((t=>t())),this.unsubscribeOnScroll=[]}createDelay(t=10){let e,i;const s=()=>{e&&clearTimeout(e),i&&i()};return this.timeouts.push(s),()=>new Promise(((n,r)=>{s(),i=r,e=setTimeout((()=>{e=void 0,i=void 0,n()}),t)}))}convertColorValues(t){if(!Array.isArray(t))return t||\"\";if(t.length<2)return t[0]||\"\";const e=document.createElement(\"canvas\"),i=e.getContext(\"2d\"),s=e.height*(window.devicePixelRatio||1),n=i.createLinearGradient(0,0,0,s),r=1/(t.length-1);return t.forEach(((t,e)=>{const i=e*r;n.addColorStop(i,t)})),n}getPixelRatio(){return Math.max(1,window.devicePixelRatio||1)}renderBarWaveform(t,e,i,s){const n=t[0],r=t[1]||t[0],o=n.length,{width:a,height:h}=i.canvas,l=h/2,d=this.getPixelRatio(),c=e.barWidth?e.barWidth*d:1,u=e.barGap?e.barGap*d:e.barWidth?c/2:0,p=e.barRadius||0,m=a/(c+u)/o,f=p&&\"roundRect\"in i?\"roundRect\":\"rect\";i.beginPath();let v=0,g=0,b=0;for(let t=0;t<=o;t++){const o=Math.round(t*m);if(o>v){const t=Math.round(g*l*s),n=t+Math.round(b*l*s)||1;let r=l-t;\"top\"===e.barAlign?r=0:\"bottom\"===e.barAlign&&(r=h-n),i[f](v*(c+u),r,c,n,p),v=o,g=0,b=0}const a=Math.abs(n[t]||0),d=Math.abs(r[t]||0);a>g&&(g=a),d>b&&(b=d)}i.fill(),i.closePath()}renderLineWaveform(t,e,i,s){const n=e=>{const n=t[e]||t[0],r=n.length,{height:o}=i.canvas,a=o/2,h=i.canvas.width/r;i.moveTo(0,a);let l=0,d=0;for(let t=0;t<=r;t++){const r=Math.round(t*h);if(r>l){const t=a+(Math.round(d*a*s)||1)*(0===e?-1:1);i.lineTo(l,t),l=r,d=0}const o=Math.abs(n[t]||0);o>d&&(d=o)}i.lineTo(l,a)};i.beginPath(),n(0),n(1),i.fill(),i.closePath()}renderWaveform(t,e,i){if(i.fillStyle=this.convertColorValues(e.waveColor),e.renderFunction)return void e.renderFunction(t,i);let s=e.barHeight||1;if(e.normalize){const e=Array.from(t[0]).reduce(((t,e)=>Math.max(t,Math.abs(e))),0);s=e?1/e:1}e.barWidth||e.barGap||e.barAlign?this.renderBarWaveform(t,e,i,s):this.renderLineWaveform(t,e,i,s)}renderSingleCanvas(t,e,i,s,n,r,o){const a=this.getPixelRatio(),h=document.createElement(\"canvas\");h.width=Math.round(i*a),h.height=Math.round(s*a),h.style.width=`${i}px`,h.style.height=`${s}px`,h.style.left=`${Math.round(n)}px`,r.appendChild(h);const l=h.getContext(\"2d\");if(this.renderWaveform(t,e,l),h.width>0&&h.height>0){const t=h.cloneNode(),i=t.getContext(\"2d\");i.drawImage(h,0,0),i.globalCompositeOperation=\"source-in\",i.fillStyle=this.convertColorValues(e.progressColor),i.fillRect(0,0,h.width,h.height),o.appendChild(t)}}renderMultiCanvas(t,e,i,s,n,r){const o=this.getPixelRatio(),{clientWidth:a}=this.scrollContainer,h=i/o;let d=Math.min(l.MAX_CANVAS_WIDTH,a,h),c={};if(0===d)return;if(e.barWidth||e.barGap){const t=e.barWidth||.5,i=t+(e.barGap||t/2);d%i!=0&&(d=Math.floor(d/i)*i)}const u=i=>{if(i<0||i>=p)return;if(c[i])return;c[i]=!0;const o=i*d,a=Math.min(h-o,d);if(a<=0)return;const l=t.map((t=>{const e=Math.floor(o/h*t.length),i=Math.floor((o+a)/h*t.length);return t.slice(e,i)}));this.renderSingleCanvas(l,e,a,s,o,n,r)},p=Math.ceil(h/d);if(!this.isScrollable){for(let t=0;t<p;t++)u(t);return}const m=this.scrollContainer.scrollLeft/h,f=Math.floor(m*p);if(u(f-1),u(f),u(f+1),p>1){const t=this.on(\"scroll\",(()=>{const{scrollLeft:t}=this.scrollContainer,e=Math.floor(t/h*p);Object.keys(c).length>l.MAX_NODES&&(n.innerHTML=\"\",r.innerHTML=\"\",c={}),u(e-1),u(e),u(e+1)}));this.unsubscribeOnScroll.push(t)}}renderChannel(t,e,i,s){var{overlay:n}=e,r=function(t,e){var i={};for(var s in t)Object.prototype.hasOwnProperty.call(t,s)&&e.indexOf(s)<0&&(i[s]=t[s]);if(null!=t&&\"function\"==typeof Object.getOwnPropertySymbols){var n=0;for(s=Object.getOwnPropertySymbols(t);n<s.length;n++)e.indexOf(s[n])<0&&Object.prototype.propertyIsEnumerable.call(t,s[n])&&(i[s[n]]=t[s[n]])}return i}(e,[\"overlay\"]);const o=document.createElement(\"div\"),a=this.getHeight(r.height,r.splitChannels);o.style.height=`${a}px`,n&&s>0&&(o.style.marginTop=`-${a}px`),this.canvasWrapper.style.minHeight=`${a}px`,this.canvasWrapper.appendChild(o);const h=o.cloneNode();this.progressWrapper.appendChild(h),this.renderMultiCanvas(t,r,i,a,o,h)}render(t){return i(this,void 0,void 0,(function*(){var e;this.timeouts.forEach((t=>t())),this.timeouts=[],this.canvasWrapper.innerHTML=\"\",this.progressWrapper.innerHTML=\"\",null!=this.options.width&&(this.scrollContainer.style.width=\"number\"==typeof this.options.width?`${this.options.width}px`:this.options.width);const i=this.getPixelRatio(),s=this.scrollContainer.clientWidth,n=Math.ceil(t.duration*(this.options.minPxPerSec||0));this.isScrollable=n>s;const r=this.options.fillParent&&!this.isScrollable,o=(r?s:n)*i;if(this.wrapper.style.width=r?\"100%\":`${n}px`,this.scrollContainer.style.overflowX=this.isScrollable?\"auto\":\"hidden\",this.scrollContainer.classList.toggle(\"noScrollbar\",!!this.options.hideScrollbar),this.cursor.style.backgroundColor=`${this.options.cursorColor||this.options.progressColor}`,this.cursor.style.width=`${this.options.cursorWidth}px`,this.audioData=t,this.emit(\"render\"),this.options.splitChannels)for(let i=0;i<t.numberOfChannels;i++){const s=Object.assign(Object.assign({},this.options),null===(e=this.options.splitChannels)||void 0===e?void 0:e[i]);this.renderChannel([t.getChannelData(i)],s,o,i)}else{const e=[t.getChannelData(0)];t.numberOfChannels>1&&e.push(t.getChannelData(1)),this.renderChannel(e,this.options,o,0)}Promise.resolve().then((()=>this.emit(\"rendered\")))}))}reRender(){if(this.unsubscribeOnScroll.forEach((t=>t())),this.unsubscribeOnScroll=[],!this.audioData)return;const{scrollWidth:t}=this.scrollContainer,{right:e}=this.progressWrapper.getBoundingClientRect();if(this.render(this.audioData),this.isScrollable&&t!==this.scrollContainer.scrollWidth){const{right:t}=this.progressWrapper.getBoundingClientRect();let i=t-e;i*=2,i=i<0?Math.floor(i):Math.ceil(i),i/=2,this.scrollContainer.scrollLeft+=i}}zoom(t){this.options.minPxPerSec=t,this.reRender()}scrollIntoView(t,e=!1){const{scrollLeft:i,scrollWidth:s,clientWidth:n}=this.scrollContainer,r=t*s,o=i,a=i+n,h=n/2;if(this.isDragging){const t=30;r+t>a?this.scrollContainer.scrollLeft+=t:r-t<o&&(this.scrollContainer.scrollLeft-=t)}else{(r<o||r>a)&&(this.scrollContainer.scrollLeft=r-(this.options.autoCenter?h:0));const t=r-i-h;e&&this.options.autoCenter&&t>0&&(this.scrollContainer.scrollLeft+=Math.min(t,10))}{const t=this.scrollContainer.scrollLeft,e=t/s,i=(t+n)/s;this.emit(\"scroll\",e,i,t,t+n)}}renderProgress(t,e){if(isNaN(t))return;const i=100*t;this.canvasWrapper.style.clipPath=`polygon(${i}% 0, 100% 0, 100% 100%, ${i}% 100%)`,this.progressWrapper.style.width=`${i}%`,this.cursor.style.left=`${i}%`,this.cursor.style.transform=`translateX(-${100===Math.round(i)?this.options.cursorWidth:0}px)`,this.isScrollable&&this.options.autoScroll&&this.scrollIntoView(t,e)}exportImage(t,e,s){return i(this,void 0,void 0,(function*(){const i=this.canvasWrapper.querySelectorAll(\"canvas\");if(!i.length)throw new Error(\"No waveform data\");if(\"dataURL\"===s){const s=Array.from(i).map((i=>i.toDataURL(t,e)));return Promise.resolve(s)}return Promise.all(Array.from(i).map((i=>new Promise(((s,n)=>{i.toBlob((t=>{t?s(t):n(new Error(\"Could not export image\"))}),t,e)})))))}))}}l.MAX_CANVAS_WIDTH=8e3,l.MAX_NODES=10;class d extends t{constructor(){super(...arguments),this.unsubscribe=()=>{}}start(){this.unsubscribe=this.on(\"tick\",(()=>{requestAnimationFrame((()=>{this.emit(\"tick\")}))})),this.emit(\"tick\")}stop(){this.unsubscribe()}destroy(){this.unsubscribe()}}class c extends t{constructor(t=new AudioContext){super(),this.bufferNode=null,this.playStartTime=0,this.playedDuration=0,this._muted=!1,this._playbackRate=1,this._duration=void 0,this.buffer=null,this.currentSrc=\"\",this.paused=!0,this.crossOrigin=null,this.seeking=!1,this.autoplay=!1,this.addEventListener=this.on,this.removeEventListener=this.un,this.audioContext=t,this.gainNode=this.audioContext.createGain(),this.gainNode.connect(this.audioContext.destination)}load(){return i(this,void 0,void 0,(function*(){}))}get src(){return this.currentSrc}set src(t){if(this.currentSrc=t,this._duration=void 0,!t)return this.buffer=null,void this.emit(\"emptied\");fetch(t).then((e=>{if(e.status>=400)throw new Error(`Failed to fetch ${t}: ${e.status} (${e.statusText})`);return e.arrayBuffer()})).then((e=>this.currentSrc!==t?null:this.audioContext.decodeAudioData(e))).then((e=>{this.currentSrc===t&&(this.buffer=e,this.emit(\"loadedmetadata\"),this.emit(\"canplay\"),this.autoplay&&this.play())}))}_play(){var t;if(!this.paused)return;this.paused=!1,null===(t=this.bufferNode)||void 0===t||t.disconnect(),this.bufferNode=this.audioContext.createBufferSource(),this.buffer&&(this.bufferNode.buffer=this.buffer),this.bufferNode.playbackRate.value=this._playbackRate,this.bufferNode.connect(this.gainNode);let e=this.playedDuration*this._playbackRate;(e>=this.duration||e<0)&&(e=0,this.playedDuration=0),this.bufferNode.start(this.audioContext.currentTime,e),this.playStartTime=this.audioContext.currentTime,this.bufferNode.onended=()=>{this.currentTime>=this.duration&&(this.pause(),this.emit(\"ended\"))}}_pause(){var t;this.paused=!0,null===(t=this.bufferNode)||void 0===t||t.stop(),this.playedDuration+=this.audioContext.currentTime-this.playStartTime}play(){return i(this,void 0,void 0,(function*(){this.paused&&(this._play(),this.emit(\"play\"))}))}pause(){this.paused||(this._pause(),this.emit(\"pause\"))}stopAt(t){const e=t-this.currentTime,i=this.bufferNode;null==i||i.stop(this.audioContext.currentTime+e),null==i||i.addEventListener(\"ended\",(()=>{i===this.bufferNode&&(this.bufferNode=null,this.pause())}),{once:!0})}setSinkId(t){return i(this,void 0,void 0,(function*(){return this.audioContext.setSinkId(t)}))}get playbackRate(){return this._playbackRate}set playbackRate(t){this._playbackRate=t,this.bufferNode&&(this.bufferNode.playbackRate.value=t)}get currentTime(){return(this.paused?this.playedDuration:this.playedDuration+(this.audioContext.currentTime-this.playStartTime))*this._playbackRate}set currentTime(t){const e=!this.paused;e&&this._pause(),this.playedDuration=t/this._playbackRate,e&&this._play(),this.emit(\"seeking\"),this.emit(\"timeupdate\")}get duration(){var t,e;return null!==(t=this._duration)&&void 0!==t?t:(null===(e=this.buffer)||void 0===e?void 0:e.duration)||0}set duration(t){this._duration=t}get volume(){return this.gainNode.gain.value}set volume(t){this.gainNode.gain.value=t,this.emit(\"volumechange\")}get muted(){return this._muted}set muted(t){this._muted!==t&&(this._muted=t,this._muted?this.gainNode.disconnect():this.gainNode.connect(this.audioContext.destination))}canPlayType(t){return/^(audio|video)\\//.test(t)}getGainNode(){return this.gainNode}getChannelData(){const t=[];if(!this.buffer)return t;const e=this.buffer.numberOfChannels;for(let i=0;i<e;i++)t.push(this.buffer.getChannelData(i));return t}}const u={waveColor:\"#999\",progressColor:\"#555\",cursorWidth:1,minPxPerSec:0,fillParent:!0,interact:!0,dragToSeek:!1,autoScroll:!0,autoCenter:!0,sampleRate:8e3};class p extends h{static create(t){return new p(t)}constructor(t){const e=t.media||(\"WebAudio\"===t.backend?new c:void 0);super({media:e,mediaControls:t.mediaControls,autoplay:t.autoplay,playbackRate:t.audioRate}),this.plugins=[],this.decodedData=null,this.stopAtPosition=null,this.subscriptions=[],this.mediaSubscriptions=[],this.abortController=null,this.options=Object.assign({},u,t),this.timer=new d;const i=e?void 0:this.getMediaElement();this.renderer=new l(this.options,i),this.initPlayerEvents(),this.initRendererEvents(),this.initTimerEvents(),this.initPlugins();const s=this.options.url||this.getSrc()||\"\";Promise.resolve().then((()=>{this.emit(\"init\");const{peaks:t,duration:e}=this.options;(s||t&&e)&&this.load(s,t,e).catch((()=>null))}))}updateProgress(t=this.getCurrentTime()){return this.renderer.renderProgress(t/this.getDuration(),this.isPlaying()),t}initTimerEvents(){this.subscriptions.push(this.timer.on(\"tick\",(()=>{if(!this.isSeeking()){const t=this.updateProgress();this.emit(\"timeupdate\",t),this.emit(\"audioprocess\",t),null!=this.stopAtPosition&&this.isPlaying()&&t>=this.stopAtPosition&&this.pause()}})))}initPlayerEvents(){this.isPlaying()&&(this.emit(\"play\"),this.timer.start()),this.mediaSubscriptions.push(this.onMediaEvent(\"timeupdate\",(()=>{const t=this.updateProgress();this.emit(\"timeupdate\",t)})),this.onMediaEvent(\"play\",(()=>{this.emit(\"play\"),this.timer.start()})),this.onMediaEvent(\"pause\",(()=>{this.emit(\"pause\"),this.timer.stop(),this.stopAtPosition=null})),this.onMediaEvent(\"emptied\",(()=>{this.timer.stop(),this.stopAtPosition=null})),this.onMediaEvent(\"ended\",(()=>{this.emit(\"timeupdate\",this.getDuration()),this.emit(\"finish\"),this.stopAtPosition=null})),this.onMediaEvent(\"seeking\",(()=>{this.emit(\"seeking\",this.getCurrentTime())})),this.onMediaEvent(\"error\",(()=>{var t;this.emit(\"error\",null!==(t=this.getMediaElement().error)&&void 0!==t?t:new Error(\"Media error\")),this.stopAtPosition=null})))}initRendererEvents(){this.subscriptions.push(this.renderer.on(\"click\",((t,e)=>{this.options.interact&&(this.seekTo(t),this.emit(\"interaction\",t*this.getDuration()),this.emit(\"click\",t,e))})),this.renderer.on(\"dblclick\",((t,e)=>{this.emit(\"dblclick\",t,e)})),this.renderer.on(\"scroll\",((t,e,i,s)=>{const n=this.getDuration();this.emit(\"scroll\",t*n,e*n,i,s)})),this.renderer.on(\"render\",(()=>{this.emit(\"redraw\")})),this.renderer.on(\"rendered\",(()=>{this.emit(\"redrawcomplete\")})),this.renderer.on(\"dragstart\",(t=>{this.emit(\"dragstart\",t)})),this.renderer.on(\"dragend\",(t=>{this.emit(\"dragend\",t)})));{let t;this.subscriptions.push(this.renderer.on(\"drag\",(e=>{if(!this.options.interact)return;let i;this.renderer.renderProgress(e),clearTimeout(t),this.isPlaying()?i=0:!0===this.options.dragToSeek?i=200:\"object\"==typeof this.options.dragToSeek&&void 0!==this.options.dragToSeek&&(i=this.options.dragToSeek.debounceTime),t=setTimeout((()=>{this.seekTo(e)}),i),this.emit(\"interaction\",e*this.getDuration()),this.emit(\"drag\",e)})))}}initPlugins(){var t;(null===(t=this.options.plugins)||void 0===t?void 0:t.length)&&this.options.plugins.forEach((t=>{this.registerPlugin(t)}))}unsubscribePlayerEvents(){this.mediaSubscriptions.forEach((t=>t())),this.mediaSubscriptions=[]}setOptions(t){this.options=Object.assign({},this.options,t),t.duration&&!t.peaks&&(this.decodedData=s.createBuffer(this.exportPeaks(),t.duration)),t.peaks&&t.duration&&(this.decodedData=s.createBuffer(t.peaks,t.duration)),this.renderer.setOptions(this.options),t.audioRate&&this.setPlaybackRate(t.audioRate),null!=t.mediaControls&&(this.getMediaElement().controls=t.mediaControls)}registerPlugin(t){return t._init(this),this.plugins.push(t),this.subscriptions.push(t.once(\"destroy\",(()=>{this.plugins=this.plugins.filter((e=>e!==t))}))),t}getWrapper(){return this.renderer.getWrapper()}getWidth(){return this.renderer.getWidth()}getScroll(){return this.renderer.getScroll()}setScroll(t){return this.renderer.setScroll(t)}setScrollTime(t){const e=t/this.getDuration();this.renderer.setScrollPercentage(e)}getActivePlugins(){return this.plugins}loadAudio(t,e,n,r){return i(this,void 0,void 0,(function*(){var i;if(this.emit(\"load\",t),!this.options.media&&this.isPlaying()&&this.pause(),this.decodedData=null,this.stopAtPosition=null,!e&&!n){const s=this.options.fetchParams||{};window.AbortController&&!s.signal&&(this.abortController=new AbortController,s.signal=null===(i=this.abortController)||void 0===i?void 0:i.signal);const n=t=>this.emit(\"loading\",t);e=yield a.fetchBlob(t,n,s);const r=this.options.blobMimeType;r&&(e=new Blob([e],{type:r}))}this.setSrc(t,e);const o=yield new Promise((t=>{const e=r||this.getDuration();e?t(e):this.mediaSubscriptions.push(this.onMediaEvent(\"loadedmetadata\",(()=>t(this.getDuration())),{once:!0}))}));if(!t&&!e){const t=this.getMediaElement();t instanceof c&&(t.duration=o)}if(n)this.decodedData=s.createBuffer(n,o||0);else if(e){const t=yield e.arrayBuffer();this.decodedData=yield s.decode(t,this.options.sampleRate)}this.decodedData&&(this.emit(\"decode\",this.getDuration()),this.renderer.render(this.decodedData)),this.emit(\"ready\",this.getDuration())}))}load(t,e,s){return i(this,void 0,void 0,(function*(){try{return yield this.loadAudio(t,void 0,e,s)}catch(t){throw this.emit(\"error\",t),t}}))}loadBlob(t,e,s){return i(this,void 0,void 0,(function*(){try{return yield this.loadAudio(\"\",t,e,s)}catch(t){throw this.emit(\"error\",t),t}}))}zoom(t){if(!this.decodedData)throw new Error(\"No audio loaded\");this.renderer.zoom(t),this.emit(\"zoom\",t)}getDecodedData(){return this.decodedData}exportPeaks({channels:t=2,maxLength:e=8e3,precision:i=1e4}={}){if(!this.decodedData)throw new Error(\"The audio has not been decoded yet\");const s=Math.min(t,this.decodedData.numberOfChannels),n=[];for(let t=0;t<s;t++){const s=this.decodedData.getChannelData(t),r=[],o=s.length/e;for(let t=0;t<e;t++){const e=s.slice(Math.floor(t*o),Math.ceil((t+1)*o));let n=0;for(let t=0;t<e.length;t++){const i=e[t];Math.abs(i)>Math.abs(n)&&(n=i)}r.push(Math.round(n*i)/i)}n.push(r)}return n}getDuration(){let t=super.getDuration()||0;return 0!==t&&t!==1/0||!this.decodedData||(t=this.decodedData.duration),t}toggleInteraction(t){this.options.interact=t}setTime(t){this.stopAtPosition=null,super.setTime(t),this.updateProgress(t),this.emit(\"timeupdate\",t)}seekTo(t){const e=this.getDuration()*t;this.setTime(e)}play(t,e){const s=Object.create(null,{play:{get:()=>super.play}});return i(this,void 0,void 0,(function*(){null!=t&&this.setTime(t);const i=yield s.play.call(this);return null!=e&&(this.media instanceof c?this.media.stopAt(e):this.stopAtPosition=e),i}))}playPause(){return i(this,void 0,void 0,(function*(){return this.isPlaying()?this.pause():this.play()}))}stop(){this.pause(),this.setTime(0)}skip(t){this.setTime(this.getCurrentTime()+t)}empty(){this.load(\"\",[[0]],.001)}setMediaElement(t){this.unsubscribePlayerEvents(),super.setMediaElement(t),this.initPlayerEvents()}exportImage(){return i(this,arguments,void 0,(function*(t=\"image/png\",e=1,i=\"dataURL\"){return this.renderer.exportImage(t,e,i)}))}destroy(){var t;this.emit(\"destroy\"),null===(t=this.abortController)||void 0===t||t.abort(),this.plugins.forEach((t=>t.destroy())),this.subscriptions.forEach((t=>t())),this.unsubscribePlayerEvents(),this.timer.destroy(),this.renderer.destroy(),super.destroy()}}p.BasePlugin=e,p.dom=o;const m={height:50,overlayColor:\"rgba(100, 100, 100, 0.1)\",insertPosition:\"afterend\"};class f extends e{constructor(t){super(t),this.miniWavesurfer=null,this.container=null,this.options=Object.assign({},m,t),this.minimapWrapper=this.initMinimapWrapper(),this.overlay=this.initOverlay()}static create(t){return new f(t)}onInit(){var t,e;if(!this.wavesurfer)throw Error(\"WaveSurfer is not initialized\");this.options.container?(\"string\"==typeof this.options.container?this.container=document.querySelector(this.options.container):this.options.container instanceof HTMLElement&&(this.container=this.options.container),null===(t=this.container)||void 0===t||t.appendChild(this.minimapWrapper)):(this.container=this.wavesurfer.getWrapper().parentElement,null===(e=this.container)||void 0===e||e.insertAdjacentElement(this.options.insertPosition,this.minimapWrapper)),this.initWaveSurferEvents(),Promise.resolve().then((()=>{this.initMinimap()}))}initMinimapWrapper(){return r(\"div\",{part:\"minimap\",style:{position:\"relative\"}})}initOverlay(){return r(\"div\",{part:\"minimap-overlay\",style:{position:\"absolute\",zIndex:\"2\",left:\"0\",top:\"0\",bottom:\"0\",transition:\"left 100ms ease-out\",pointerEvents:\"none\",backgroundColor:this.options.overlayColor}},this.minimapWrapper)}initMinimap(){if(this.miniWavesurfer&&(this.miniWavesurfer.destroy(),this.miniWavesurfer=null),!this.wavesurfer)return;const t=this.wavesurfer.getDecodedData(),e=this.wavesurfer.getMediaElement();if(!t||!e)return;const i=[];for(let e=0;e<t.numberOfChannels;e++)i.push(t.getChannelData(e));this.miniWavesurfer=p.create(Object.assign(Object.assign({},this.options),{container:this.minimapWrapper,minPxPerSec:0,fillParent:!0,media:e,peaks:i,duration:t.duration})),this.subscriptions.push(this.miniWavesurfer.on(\"audioprocess\",(t=>{this.emit(\"audioprocess\",t)})),this.miniWavesurfer.on(\"click\",((t,e)=>{this.emit(\"click\",t,e)})),this.miniWavesurfer.on(\"dblclick\",((t,e)=>{this.emit(\"dblclick\",t,e)})),this.miniWavesurfer.on(\"decode\",(t=>{this.emit(\"decode\",t)})),this.miniWavesurfer.on(\"destroy\",(()=>{this.emit(\"destroy\")})),this.miniWavesurfer.on(\"drag\",(t=>{this.emit(\"drag\",t)})),this.miniWavesurfer.on(\"dragend\",(t=>{this.emit(\"dragend\",t)})),this.miniWavesurfer.on(\"dragstart\",(t=>{this.emit(\"dragstart\",t)})),this.miniWavesurfer.on(\"interaction\",(()=>{this.emit(\"interaction\")})),this.miniWavesurfer.on(\"init\",(()=>{this.emit(\"init\")})),this.miniWavesurfer.on(\"ready\",(()=>{this.emit(\"ready\")})),this.miniWavesurfer.on(\"redraw\",(()=>{this.emit(\"redraw\")})),this.miniWavesurfer.on(\"redrawcomplete\",(()=>{this.emit(\"redrawcomplete\")})),this.miniWavesurfer.on(\"seeking\",(t=>{this.emit(\"seeking\",t)})),this.miniWavesurfer.on(\"timeupdate\",(t=>{this.emit(\"timeupdate\",t)})))}getOverlayWidth(){var t;const e=(null===(t=this.wavesurfer)||void 0===t?void 0:t.getWrapper().clientWidth)||1;return Math.round(this.minimapWrapper.clientWidth/e*100)}onRedraw(){const t=this.getOverlayWidth();this.overlay.style.width=`${t}%`}onScroll(t){if(!this.wavesurfer)return;const e=this.wavesurfer.getDuration();this.overlay.style.left=t/e*100+\"%\"}initWaveSurferEvents(){this.wavesurfer&&this.subscriptions.push(this.wavesurfer.on(\"decode\",(()=>{this.initMinimap()})),this.wavesurfer.on(\"scroll\",(t=>{this.onScroll(t)})),this.wavesurfer.on(\"redraw\",(()=>{this.onRedraw()})))}destroy(){var t;null===(t=this.miniWavesurfer)||void 0===t||t.destroy(),this.minimapWrapper.remove(),super.destroy()}}module.exports=f;\n","/*!\n * Determine if an object is a Buffer\n *\n * @author Feross Aboukhadijeh <https://feross.org>\n * @license MIT\n */\n\n// The _isBuffer check is for Safari 5-7 support, because it's missing\n// Object.prototype.constructor. Remove this eventually\nmodule.exports = function (obj) {\n return obj != null && (isBuffer(obj) || isSlowBuffer(obj) || !!obj._isBuffer)\n}\n\nfunction isBuffer (obj) {\n return !!obj.constructor && typeof obj.constructor.isBuffer === 'function' && obj.constructor.isBuffer(obj)\n}\n\n// For Node v0.10 support. Remove this eventually.\nfunction isSlowBuffer (obj) {\n return typeof obj.readFloatLE === 'function' && typeof obj.slice === 'function' && isBuffer(obj.slice(0, 0))\n}\n","// Copyright (c) Zhendong Peng\n// Distributed under the terms of the Modified BSD License.\n\nimport WaveSurfer, { WaveSurferOptions } from 'wavesurfer.js'\nimport RecordPlugin, { RecordPluginOptions } from 'wavesurfer.js/dist/plugins/record.js'\n\nimport Player, { PlayerConfig } from './player'\nimport { createElement, formatTime } from './utils'\n\ninterface RecorderConfig {\n options: WaveSurferOptions\n language?: string\n recordOptions?: RecordPluginOptions\n}\n\nexport default class Recorder {\n public el: HTMLDivElement\n private _container: HTMLDivElement\n private _currentTime: HTMLDivElement\n private _wavesurfer: WaveSurfer\n private _config: RecorderConfig\n private _recorder: RecordPlugin\n private _micSelect: HTMLSelectElement\n private _rateSelect: HTMLSelectElement\n private _recordButton: HTMLButtonElement\n private _pauseButton: HTMLButtonElement\n private _player: Player\n\n constructor(config: RecorderConfig, playerConfig: PlayerConfig) {\n this.el = createElement('div', 'lm-Widget')\n this._container = createElement('div', 'waveform')\n this._currentTime = createElement('div', 'time', '0:00')\n this._container.append(this._currentTime)\n this._config = config\n this._player = Player.create(playerConfig)\n }\n\n get sampleRate() {\n return this._wavesurfer.options.sampleRate\n }\n\n get timeSlice() {\n return this._config.recordOptions?.mediaRecorderTimeslice\n }\n\n set sampleRate(rate: number) {\n this._wavesurfer.options.sampleRate = rate\n this._player.sampleRate = rate\n }\n\n createWaveSurfer() {\n this._wavesurfer = WaveSurfer.create({\n ...this._config.options,\n container: this._container,\n })\n }\n\n createRateSelect() {\n this._rateSelect = createElement('select', 'form-select-sm d-inline-block me-3 my-3 w-25')\n const rates = [8000, 16000, 22050, 24000, 44100, 48000]\n rates.forEach((rate: number) => {\n const option = document.createElement('option')\n option.value = rate.toString()\n option.text = `${rate} Hz`\n if (rate === 16000) {\n option.selected = true\n }\n this._rateSelect.appendChild(option)\n })\n }\n\n createMicSelect() {\n this._micSelect = createElement('select', 'form-select-sm d-inline-block me-3 my-3 w-50')\n navigator.mediaDevices\n .getUserMedia({ audio: true, video: false })\n .then((stream) => {\n RecordPlugin.getAvailableAudioDevices().then((devices: MediaDeviceInfo[]) => {\n devices.forEach((device: MediaDeviceInfo) => {\n const option = document.createElement('option')\n option.value = device.deviceId\n option.text = device.label || device.deviceId\n this._micSelect.appendChild(option)\n })\n })\n })\n .catch((err) => {\n const label = this._config.language === 'zh' ? '访问麦克风失败' : 'Error accessing the microphone: '\n throw new Error(label + (err as Error).message)\n })\n }\n\n createPauseButton() {\n this._pauseButton = createElement('button', 'btn btn-outline-danger me-3 my-3', '<i class=\"fa fa-pause\"></i>')\n this._pauseButton.disabled = true\n this._pauseButton.onclick = () => {\n if (this._recorder.isRecording()) {\n this._recorder.pauseRecording()\n this._pauseButton.innerHTML = '<i class=\"fa fa-play\"></i>'\n this._container.style.display = 'none'\n this._player.el.style.display = 'block'\n } else {\n this._recorder.resumeRecording()\n this._pauseButton.innerHTML = '<i class=\"fa fa-pause\"></i>'\n this._container.style.display = 'block'\n this._player.el.style.display = 'none'\n }\n }\n }\n\n createRecordButton() {\n this._recordButton = createElement('button', 'btn btn-danger me-3 my-3', '<i class=\"fa fa-microphone\"></i>')\n this._recordButton.onclick = () => {\n if (this._recorder.isRecording() || this._recorder.isPaused()) {\n this._recorder.stopRecording()\n this._container.style.display = 'none'\n this._player.el.style.display = 'block'\n } else {\n this._wavesurfer.options.normalize = false\n this.sampleRate = parseInt(this._rateSelect.value)\n this._recorder.startRecording({ deviceId: this._micSelect.value }).then(() => {\n this._pauseButton.disabled = false\n this._rateSelect.disabled = true\n this._micSelect.disabled = true\n this._pauseButton.innerHTML = '<i class=\"fa fa-pause\"></i>'\n this._recordButton.innerHTML = '<i class=\"fa fa-stop\"></i>'\n this._container.style.display = 'block'\n this._player.el.style.display = 'none'\n })\n }\n }\n }\n\n onRecordStart(callback: () => void) {\n this._recorder.on('record-start', () => {\n callback()\n })\n }\n\n onRecordChunk(callback: (blob: Blob) => void) {\n this._recorder.on('record-data-available', (blob) => {\n callback(blob)\n })\n }\n\n onRecordEnd(callback: (blob: Blob) => Promise<void>) {\n this._recorder.on('record-end', async (blob) => {\n this._player.load(URL.createObjectURL(blob))\n this._recordButton.disabled = true\n this._pauseButton.disabled = true\n await callback(blob)\n this._recordButton.disabled = false\n this._pauseButton.disabled = true\n this._rateSelect.disabled = false\n this._micSelect.disabled = false\n this._pauseButton.innerHTML = '<i class=\"fa fa-play\"></i>'\n this._recordButton.innerHTML = '<i class=\"fa fa-microphone\"></i>'\n })\n }\n\n createRecorder() {\n this._wavesurfer.toggleInteraction(false)\n this._recorder = this._wavesurfer.registerPlugin(RecordPlugin.create(this._config.recordOptions))\n this.createRateSelect()\n this.createMicSelect()\n this.createPauseButton()\n this.createRecordButton()\n this._container.style.display = 'none'\n this._player.el.style.display = 'none'\n this.el.append(\n this._recordButton,\n this._pauseButton,\n this._rateSelect,\n this._micSelect,\n this._container,\n this._player.el,\n )\n\n this._recorder.on('record-pause', (blob) => {\n this._player.load(URL.createObjectURL(blob))\n })\n\n this._recorder.on('record-progress', (time) => {\n this._currentTime.textContent = formatTime(time / 1000)\n })\n }\n\n static create(config: RecorderConfig, playerConfig: PlayerConfig) {\n const instance = new Recorder(config, playerConfig)\n instance.createWaveSurfer()\n instance.createRecorder()\n return instance\n }\n}\n","'use strict';\n\n// Note: we can't get significant speed boost here.\n// So write code to minimize size - no pregenerated tables\n// and array tools dependencies.\n\n// (C) 1995-2013 Jean-loup Gailly and Mark Adler\n// (C) 2014-2017 Vitaly Puzrin and Andrey Tupitsin\n//\n// This software is provided 'as-is', without any express or implied\n// warranty. In no event will the authors be held liable for any damages\n// arising from the use of this software.\n//\n// Permission is granted to anyone to use this software for any purpose,\n// including commercial applications, and to alter it and redistribute it\n// freely, subject to the following restrictions:\n//\n// 1. The origin of this software must not be misrepresented; you must not\n// claim that you wrote the original software. If you use this software\n// in a product, an acknowledgment in the product documentation would be\n// appreciated but is not required.\n// 2. Altered source versions must be plainly marked as such, and must not be\n// misrepresented as being the original software.\n// 3. This notice may not be removed or altered from any source distribution.\n\n// Use ordinary array, since untyped makes no boost here\nconst makeTable = () => {\n let c, table = [];\n\n for (var n = 0; n < 256; n++) {\n c = n;\n for (var k = 0; k < 8; k++) {\n c = ((c & 1) ? (0xEDB88320 ^ (c >>> 1)) : (c >>> 1));\n }\n table[n] = c;\n }\n\n return table;\n};\n\n// Create table on load. Just 255 signed longs. Not a problem.\nconst crcTable = new Uint32Array(makeTable());\n\n\nconst crc32 = (crc, buf, len, pos) => {\n const t = crcTable;\n const end = pos + len;\n\n crc ^= -1;\n\n for (let i = pos; i < end; i++) {\n crc = (crc >>> 8) ^ t[(crc ^ buf[i]) & 0xFF];\n }\n\n return (crc ^ (-1)); // >>> 0;\n};\n\n\nmodule.exports = crc32;\n","/**\n * Copies the values of `source` to `array`.\n *\n * @private\n * @param {Array} source The array to copy values from.\n * @param {Array} [array=[]] The array to copy values to.\n * @returns {Array} Returns `array`.\n */\nfunction copyArray(source, array) {\n var index = -1,\n length = source.length;\n\n array || (array = Array(length));\n while (++index < length) {\n array[index] = source[index];\n }\n return array;\n}\n\nmodule.exports = copyArray;\n","// Copyright (c) Jupyter Development Team.\r\n// Distributed under the terms of the Modified BSD License.\r\n\r\nexport function arraysEqual<T>(a: T[] | null | undefined, b: T[] | null | undefined) {\r\n if (a === b) return true;\r\n if (a == null || b == null) return false;\r\n if (a.length !== b.length) return false;\r\n\r\n for (let i = 0; i < a.length; ++i) {\r\n if (a[i] !== b[i]) return false;\r\n }\r\n return true;\r\n}\r\n","var freeGlobal = require('./_freeGlobal');\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\nmodule.exports = root;\n","var baseIsTypedArray = require('./_baseIsTypedArray'),\n baseUnary = require('./_baseUnary'),\n nodeUtil = require('./_nodeUtil');\n\n/* Node.js helper references. */\nvar nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;\n\n/**\n * Checks if `value` is classified as a typed array.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n * @example\n *\n * _.isTypedArray(new Uint8Array);\n * // => true\n *\n * _.isTypedArray([]);\n * // => false\n */\nvar isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;\n\nmodule.exports = isTypedArray;\n","var root = require('./_root');\n\n/** Built-in value references. */\nvar Uint8Array = root.Uint8Array;\n\nmodule.exports = Uint8Array;\n","var baseAssignValue = require('./_baseAssignValue'),\n eq = require('./eq');\n\n/**\n * This function is like `assignValue` except that it doesn't assign\n * `undefined` values.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction assignMergeValue(object, key, value) {\n if ((value !== undefined && !eq(object[key], value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n}\n\nmodule.exports = assignMergeValue;\n","var defineProperty = require('./_defineProperty');\n\n/**\n * The base implementation of `assignValue` and `assignMergeValue` without\n * value checks.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction baseAssignValue(object, key, value) {\n if (key == '__proto__' && defineProperty) {\n defineProperty(object, key, {\n 'configurable': true,\n 'enumerable': true,\n 'value': value,\n 'writable': true\n });\n } else {\n object[key] = value;\n }\n}\n\nmodule.exports = baseAssignValue;\n","/** Used to detect hot functions by number of calls within a span of milliseconds. */\nvar HOT_COUNT = 800,\n HOT_SPAN = 16;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeNow = Date.now;\n\n/**\n * Creates a function that'll short out and invoke `identity` instead\n * of `func` when it's called `HOT_COUNT` or more times in `HOT_SPAN`\n * milliseconds.\n *\n * @private\n * @param {Function} func The function to restrict.\n * @returns {Function} Returns the new shortable function.\n */\nfunction shortOut(func) {\n var count = 0,\n lastCalled = 0;\n\n return function() {\n var stamp = nativeNow(),\n remaining = HOT_SPAN - (stamp - lastCalled);\n\n lastCalled = stamp;\n if (remaining > 0) {\n if (++count >= HOT_COUNT) {\n return arguments[0];\n }\n } else {\n count = 0;\n }\n return func.apply(undefined, arguments);\n };\n}\n\nmodule.exports = shortOut;\n","/**\n * Removes `key` and its value from the hash.\n *\n * @private\n * @name delete\n * @memberOf Hash\n * @param {Object} hash The hash to modify.\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction hashDelete(key) {\n var result = this.has(key) && delete this.__data__[key];\n this.size -= result ? 1 : 0;\n return result;\n}\n\nmodule.exports = hashDelete;\n","/**\n * Checks if `value` is suitable for use as unique object key.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is suitable, else `false`.\n */\nfunction isKeyable(value) {\n var type = typeof value;\n return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')\n ? (value !== '__proto__')\n : (value === null);\n}\n\nmodule.exports = isKeyable;\n","var getMapData = require('./_getMapData');\n\n/**\n * Removes `key` and its value from the map.\n *\n * @private\n * @name delete\n * @memberOf MapCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction mapCacheDelete(key) {\n var result = getMapData(this, key)['delete'](key);\n this.size -= result ? 1 : 0;\n return result;\n}\n\nmodule.exports = mapCacheDelete;\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\tid: moduleId,\n\t\tloaded: false,\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Flag the module as loaded\n\tmodule.loaded = true;\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = (module) => {\n\tvar getter = module && module.__esModule ?\n\t\t() => (module['default']) :\n\t\t() => (module);\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.g = (function() {\n\tif (typeof globalThis === 'object') return globalThis;\n\ttry {\n\t\treturn this || new Function('return this')();\n\t} catch (e) {\n\t\tif (typeof window === 'object') return window;\n\t}\n})();","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.nmd = (module) => {\n\tmodule.paths = [];\n\tif (!module.children) module.children = [];\n\treturn module;\n};","__webpack_require__.b = document.baseURI || self.location.href;\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t792: 0\n};\n\n// no chunk on demand loading\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n// no on chunks loaded\n\n// no jsonp function","__webpack_require__.nc = undefined;","// startup\n// Load entry module and return exports\n// This entry module is referenced by other modules so it can't be inlined\nvar __webpack_exports__ = __webpack_require__(4265);\n"],"names":["ListCache","Map","MapCache","module","exports","key","value","data","this","__data__","pairs","length","LARGE_ARRAY_SIZE","push","size","set","t","e","i","s","Promise","n","r","o","h","next","a","throw","done","then","apply","SuppressedError","constructor","listeners","on","Set","add","once","un","delete","unAll","emit","forEach","decode","AudioContext","sampleRate","decodeAudioData","finally","close","createBuffer","some","Math","abs","duration","numberOfChannels","getChannelData","copyFromChannel","AudioBuffer","prototype","copyToChannel","xmlns","document","createElementNS","createElement","Object","entries","appendChild","createTextNode","assign","style","textContent","setAttribute","toString","freeze","__proto__","default","fetchBlob","fetch","status","Error","statusText","body","headers","getReader","Number","get","round","read","clone","blob","super","isExternalMedia","media","mediaControls","controls","autoplay","playbackRate","onMediaEvent","addEventListener","removeEventListener","getSrc","currentSrc","src","revokeSrc","startsWith","URL","revokeObjectURL","canPlayType","setSrc","Blob","type","createObjectURL","destroy","pause","remove","load","setMediaElement","play","isPlaying","paused","ended","setTime","currentTime","max","min","getDuration","getCurrentTime","getVolume","volume","setVolume","getMuted","muted","setMuted","getPlaybackRate","isSeeking","seeking","setPlaybackRate","preservesPitch","getMediaElement","setSinkId","timeouts","isScrollable","audioData","resizeObserver","lastContainerWidth","isDragging","subscriptions","unsubscribeOnScroll","options","parentFromOptionsContainer","container","parent","initHtml","scrollContainer","querySelector","wrapper","canvasWrapper","progressWrapper","cursor","initEvents","HTMLElement","getBoundingClientRect","clientX","left","clientY","top","width","height","dragToSeek","initDrag","scrollLeft","scrollWidth","clientWidth","ResizeObserver","createDelay","onContainerResize","catch","observe","reRender","matchMedia","matches","l","button","preventDefault","stopPropagation","d","c","u","p","Date","now","m","f","g","relatedTarget","documentElement","v","b","passive","capture","setTimeout","getHeight","isNaN","clientHeight","every","overlay","attachShadow","mode","cspNonce","replace","innerHTML","splitChannels","setOptions","getWrapper","getWidth","getScroll","setScroll","setScrollPercentage","disconnect","clearTimeout","convertColorValues","Array","isArray","getContext","window","devicePixelRatio","createLinearGradient","addColorStop","getPixelRatio","renderBarWaveform","canvas","barWidth","barGap","barRadius","beginPath","barAlign","fill","closePath","renderLineWaveform","moveTo","lineTo","renderWaveform","fillStyle","waveColor","renderFunction","barHeight","normalize","from","reduce","renderSingleCanvas","cloneNode","drawImage","globalCompositeOperation","progressColor","fillRect","renderMultiCanvas","MAX_CANVAS_WIDTH","floor","map","slice","ceil","keys","MAX_NODES","renderChannel","hasOwnProperty","call","indexOf","getOwnPropertySymbols","propertyIsEnumerable","marginTop","minHeight","render","minPxPerSec","fillParent","overflowX","classList","toggle","hideScrollbar","backgroundColor","cursorColor","cursorWidth","resolve","right","zoom","scrollIntoView","autoCenter","renderProgress","clipPath","transform","autoScroll","exportImage","querySelectorAll","toDataURL","all","toBlob","arguments","unsubscribe","start","requestAnimationFrame","stop","bufferNode","playStartTime","playedDuration","_muted","_playbackRate","_duration","buffer","crossOrigin","audioContext","gainNode","createGain","connect","destination","arrayBuffer","_play","createBufferSource","onended","_pause","stopAt","gain","test","getGainNode","interact","create","backend","audioRate","plugins","decodedData","stopAtPosition","mediaSubscriptions","abortController","timer","renderer","initPlayerEvents","initRendererEvents","initTimerEvents","initPlugins","url","peaks","updateProgress","error","seekTo","debounceTime","registerPlugin","unsubscribePlayerEvents","exportPeaks","_init","filter","setScrollTime","getActivePlugins","loadAudio","fetchParams","AbortController","signal","blobMimeType","loadBlob","getDecodedData","channels","maxLength","precision","toggleInteraction","playPause","skip","empty","abort","BasePlugin","onInit","wavesurfer","dom","assocIndexOf","index","undefined","ensureSerializableDtype","dtype","JSONToArray","obj","manager","ndarray","typesToArray","shape","arrayToJSON","widget","compressedJSONToArray","compressed_buffer","decompress","arrayToCompressedJSON","level","compress","typedArrayToType","array","Int8Array","Int16Array","Int32Array","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","Float32Array","Float64Array","JSONToTypedArray","typedArrayToJSON","JSONToSimple","simpleToJSON","array_serialization","deserialize","serialize","int8","int16","int32","uint8","uint8_clamped","uint16","uint32","float32","float64","compressed_array_serialization","typedarray_serialization","simplearray_serialization","fixedLength","dim","arraysEqual","element","setAttributes","attributes","insert","getMapData","has","nativeCreate","zlib_deflate","utils","strings","msg","ZStream","Z_NO_FLUSH","Z_SYNC_FLUSH","Z_FULL_FLUSH","Z_FINISH","Z_OK","Z_STREAM_END","Z_DEFAULT_COMPRESSION","Z_DEFAULT_STRATEGY","Z_DEFLATED","Deflate","method","chunkSize","windowBits","memLevel","strategy","opt","raw","gzip","err","chunks","strm","avail_out","deflateInit2","header","deflateSetHeader","dictionary","dict","string2buf","deflateSetDictionary","_dict_set","deflate","input","deflator","result","flush_mode","_flush_mode","next_in","avail_in","output","next_out","onData","subarray","deflateEnd","onEnd","chunk","flattenChunks","deflateRaw","constants","func","thisArg","args","arg","Symbol","objectProto","nativeObjectToString","symToStringTag","toStringTag","isOwn","tag","unmasked","fromRight","object","iteratee","keysFunc","iterable","props","lineWidth","labelSize","formatTimeCallback","onPointerMove","opacity","label","offsetWidth","onPointerLeave","part","addUnits","lineColor","position","zIndex","pointerEvents","borderLeft","transition","display","labelBackground","color","labelColor","fontSize","padding","css","styleElement","styleSheet","cssText","firstChild","removeChild","pako","inflate","___CSS_LOADER_URL_IMPORT_0___","___CSS_LOADER_URL_IMPORT_1___","___CSS_LOADER_URL_IMPORT_2___","___CSS_LOADER_URL_IMPORT_3___","___CSS_LOADER_URL_IMPORT_4___","___CSS_LOADER_URL_IMPORT_5___","___CSS_LOADER_URL_IMPORT_6___","___CSS_LOADER_URL_IMPORT_7___","___CSS_LOADER_URL_IMPORT_8___","___CSS_LOADER_URL_IMPORT_9___","___CSS_LOADER_URL_IMPORT_10___","___CSS_LOADER_URL_IMPORT_11___","___CSS_LOADER_URL_IMPORT_12___","___CSS_LOADER_URL_IMPORT_13___","___CSS_LOADER_URL_IMPORT_14___","___CSS_LOADER_URL_IMPORT_15___","___CSS_LOADER_URL_IMPORT_16___","___CSS_LOADER_URL_IMPORT_17___","___CSS_LOADER_URL_IMPORT_18___","___CSS_LOADER_EXPORT___","___CSS_LOADER_URL_REPLACEMENT_0___","___CSS_LOADER_URL_REPLACEMENT_1___","___CSS_LOADER_URL_REPLACEMENT_2___","___CSS_LOADER_URL_REPLACEMENT_3___","___CSS_LOADER_URL_REPLACEMENT_4___","___CSS_LOADER_URL_REPLACEMENT_5___","___CSS_LOADER_URL_REPLACEMENT_6___","___CSS_LOADER_URL_REPLACEMENT_7___","___CSS_LOADER_URL_REPLACEMENT_8___","___CSS_LOADER_URL_REPLACEMENT_9___","___CSS_LOADER_URL_REPLACEMENT_10___","___CSS_LOADER_URL_REPLACEMENT_11___","___CSS_LOADER_URL_REPLACEMENT_12___","___CSS_LOADER_URL_REPLACEMENT_13___","___CSS_LOADER_URL_REPLACEMENT_14___","___CSS_LOADER_URL_REPLACEMENT_15___","___CSS_LOADER_URL_REPLACEMENT_16___","___CSS_LOADER_URL_REPLACEMENT_17___","___CSS_LOADER_URL_REPLACEMENT_18___","id","root","stubFalse","freeExports","nodeType","freeModule","Buffer","isBuffer","cssWithMappingToString","list","item","content","needLayer","concat","join","modules","dedupe","supports","layer","alreadyImportedModules","k","_k","uid","coreJsData","maskSrcKey","exec","IE_PROTO","timeOffset","timelineWrapper","initTimelineWrapper","insertPosition","firstElementChild","insertAdjacentElement","initTimeline","defaultTimeInterval","defaultPrimaryLabelInterval","defaultSecondaryLabelInterval","virtualAppend","timeInterval","primaryLabelInterval","primaryLabelSpacing","secondaryLabelInterval","secondaryLabelSpacing","y","overflow","whiteSpace","getAttribute","flexDirection","justifyContent","bottom","secondaryLabelOpacity","textIndent","baseGetTag","getPrototype","isObjectLike","funcProto","Function","funcToString","objectCtorString","proto","Ctor","styleTagTransform","domAPI","insertStyleElement","locals","baseFor","createBaseFor","Z_PARTIAL_FLUSH","Z_BLOCK","Z_TREES","Z_NEED_DICT","Z_ERRNO","Z_STREAM_ERROR","Z_DATA_ERROR","Z_MEM_ERROR","Z_BUF_ERROR","Z_NO_COMPRESSION","Z_BEST_SPEED","Z_BEST_COMPRESSION","Z_FILTERED","Z_HUFFMAN_ONLY","Z_RLE","Z_FIXED","Z_BINARY","Z_TEXT","Z_UNKNOWN","isArrayLike","byteLength","__WEBPACK_EXTERNAL_MODULE__2055__","isFunction","isMasked","isObject","toSource","reIsHostCtor","reIsNative","RegExp","adler32","crc32","inflate_fast","inflate_table","HEAD","DICT","TYPE","TYPEDO","COPY_","LEN_","LEN","CHECK","BAD","MEM","zswap32","q","InflateState","last","wrap","havedict","flags","dmax","check","total","head","wbits","wsize","whave","wnext","hold","bits","offset","extra","lencode","distcode","lenbits","distbits","ncode","nlen","ndist","have","lens","work","lendyn","distdyn","sane","back","was","inflateStateCheck","state","inflateResetKeep","total_in","total_out","adler","inflateReset","inflateReset2","inflateInit2","ret","lenfix","distfix","virgin","fixedtables","sym","updatewindow","end","copy","dist","inflateInit","flush","put","_in","_out","from_source","here_bits","here_op","here_val","last_bits","last_op","last_val","len","here","hbuf","opts","order","inf_leave","text","time","xflags","os","extra_len","name","String","fromCharCode","comment","hcrc","data_type","inflateEnd","inflateGetHeader","inflateSetDictionary","dictLength","dictid","inflateInfo","zero","buf","extra_lbits","extra_dbits","extra_blbits","bl_order","static_ltree","static_dtree","D_CODES","_dist_code","_length_code","MAX_MATCH","base_length","base_dist","StaticTreeDesc","static_tree","extra_bits","extra_base","elems","max_length","has_stree","static_l_desc","static_d_desc","static_bl_desc","TreeDesc","dyn_tree","stat_desc","max_code","d_code","put_short","w","pending_buf","pending","send_bits","bi_valid","bi_buf","send_code","tree","bi_reverse","code","res","gen_codes","bl_count","next_code","MAX_BITS","init_block","LITERALS","dyn_ltree","dyn_dtree","bl_tree","END_BLOCK","opt_len","static_len","sym_next","bi_windup","smaller","depth","_n2","_m2","pqdownheap","heap","j","heap_len","compress_block","ltree","dtree","lc","sx","sym_buf","build_tree","desc","stree","node","heap_max","base","xbits","gen_bitlen","scan_tree","curlen","prevlen","nextlen","count","max_count","min_count","REP_3_6","REPZ_3_10","REPZ_11_138","send_tree","static_init_done","_tr_stored_block","stored_len","_tr_init","LENGTH_CODES","L_CODES","tr_static_init","l_desc","d_desc","bl_desc","_tr_flush_block","opt_lenb","static_lenb","max_blindex","block_mask","detect_data_type","BL_CODES","build_bl_tree","lcodes","dcodes","blcodes","rank","send_all_trees","_tr_tally","sym_end","_tr_align","STATIC_TREES","bi_flush","baseIsArguments","isArguments","_has","sources","source","shift","TypeError","pos","reIsUint","copyObject","keysIn","freeGlobal","iota","hasTypedArrays","compare1st","stride","terms","sort","compileConstructor","dimension","className","useGetters","procedure","CACHED_CONSTRUCTORS","indices","index_str","shapeArg","strideArg","a_vars","c_vars","tShape","tStride","idx","ctor","sz","arrayDType","ctor_list","lbase","lext","dbase","dext","lens_index","codes","table","table_index","incr","low","mask","match","curr","drop","used","huff","MAXBITS","offs","MIN_LOOKAHEAD","INIT_STATE","BUSY_STATE","FINISH_STATE","errorCode","slide_hash","w_size","hash_size","prev","HASH","hash_shift","hash_mask","flush_pending","pending_out","flush_block_only","block_start","strstart","put_byte","putShortMSB","read_buf","longest_match","cur_match","chain_length","max_chain_length","scan","best_len","prev_length","nice_match","limit","_win","wmask","w_mask","strend","scan_end1","scan_end","good_match","lookahead","match_start","fill_window","_w_size","more","str","window_size","ins_h","deflate_stored","min_block","pending_buf_size","high_water","deflate_fast","hash_head","bflush","match_length","max_lazy_match","MIN_MATCH","deflate_slow","max_insert","prev_match","match_available","Config","good_length","max_lazy","nice_length","max_chain","configuration_table","DeflateState","gzhead","gzindex","last_flush","w_bits","hash_bits","HEAP_SIZE","lit_bufsize","deflateStateCheck","deflateResetKeep","deflateReset","deflateInit","old_flush","level_flags","beg","gzhead_extra","val","charCodeAt","bstate","deflate_huff","deflate_rle","tmpDict","avail","deflateInfo","allocUnsafe","isDeep","getNative","defineProperty","zlib_inflate","GZheader","Inflate","to","inflator","last_avail_out","next_out_utf8","utf8border","tail","utf8str","buf2string","inflateRaw","ungzip","mapCacheClear","mapCacheDelete","mapCacheGet","mapCacheHas","mapCacheSet","clear","entry","identity","overRest","setToString","hashClear","hashDelete","hashGet","hashHas","hashSet","Hash","PlayerModel","DOMWidgetModel","defaults","_model_name","model_name","_model_module","model_module","_model_module_version","model_module_version","_view_name","view_name","_view_module","view_module","_view_module_version","view_module_version","serializers","MODULE_NAME","MODULE_VERSION","PlayerView","DOMWidgetView","displayed","config","isStreaming","model","language","_player","el","setDone","__esModule","hash","needQuotes","cloneArrayBuffer","typedArray","byteOffset","scale","deltaThreshold","exponentialZooming","iterations","accumulatedDelta","pointerTime","oldX","endZoom","startZoom","onWheel","deltaX","deltaY","calculateNewZoom","pow","maxZoom","parentElement","PCMPlayer","_isDone","_isPlaying","_samples","_allSamples","_options","flushTime","playButton","onclick","_interval","setInterval","bind","_audioCtx","webkitAudioContext","_gainNode","_startTime","rate","feed","base64Data","binaryString","atob","ArrayBuffer","bufferView","numChannels","isDone","bufferSource","audioBuffer","channel","disabled","resume","suspend","clearInterval","objectCreate","baseCreate","baseIsNative","getValue","isPrototype","isDataSource","candidate","getNDArray","isDataWriteBack","setNDArray","attrName","current","canWriteBack","__webpack_public_path__","Stack","assignMergeValue","baseMergeDeep","safeGet","baseMerge","srcIndex","customizer","stack","srcValue","newValue","Player","_container","_currentTime","append","_config","_pcmPlayer","_wavesurfer","createPCMPlayer","createDownloadButton","_downloadButton","link","href","download","click","createPlugins","pluginMap","hover","pluginOptions","minimap","spectrogram","timeline","plugin","Boolean","createWaveSurfer","formatTime","instance","eq","nonce","stylesInDOM","getIndexByIdentifier","identifier","modulesToDom","idCountMap","identifiers","indexByIdentifier","sourceMap","references","updater","addElementStyle","byIndex","splice","api","update","newObj","lastIdentifiers","newList","newLastIdentifiers","_i","_index","getWavHeader","numFrames","bytesPerSample","isFloat","format","blockAlign","byteRate","dataSize","dv","DataView","writeString","setUint8","writeUint32","setUint32","writeUint16","setUint16","getWavBytes","headerBytes","pcmData","BYTES_PER_ELEMENT","interleaveChannels","wavBytes","tagName","seconds","listCacheClear","listCacheDelete","listCacheGet","listCacheHas","listCacheSet","isLength","typedArrayTags","overArg","getPrototypeOf","cssMapping","btoa","base64","unescape","encodeURIComponent","JSON","stringify","sourceMapping","version","nativeMax","otherArgs","RecorderModel","RecorderView","_chunks","_isFirstChunk","_isCompleted","_sendChunk","save_changes","_recorder","maxWaitTime","timeSlice","startTime","msg_type","onRecordStart","onRecordChunk","onRecordEnd","isIndex","cloneBuffer","cloneTypedArray","copyArray","initCloneObject","isArrayLikeObject","isPlainObject","isTypedArray","toPlainObject","mergeFunc","objValue","stacked","isCommon","isArr","isBuff","isTyped","baseSetToString","shortOut","s_window","lcode","dcode","lmask","dmask","op","dolen","stackClear","stackDelete","stackGet","stackHas","stackSet","baseRest","isIterateeCall","assigner","guard","getRawTag","objectToString","baseAssignValue","STR_APPLY_UIA_OK","__","_utf8len","TextEncoder","encode","c2","m_pos","str_len","buf_len","TextDecoder","out","utf16buf","c_len","buf2binstring","s1","s2","isKeyable","baseTimes","inherited","isArg","isType","skipIndexes","arrayLikeKeys","baseKeysIn","merge","createAssigner","memo","target","styleTarget","HTMLIFrameElement","contentDocument","getTarget","async","JSONToUnion","unpack_models","JSONToUnionArray","getArray","unionToJSON","WidgetModel","toJSON","JSONToUnionTypedArray","JSONToSimpleUnion","unionName","callback","allChanges","listenToWidgetChanges","union","listenTo","onUnionChange","unionModel","subOptions","previous","stopListening","off","data_union_array_serialization","data_union_serialization","data_union_typedarray_serialization","data_union_simple_serialization","parentNode","removeStyleElement","constant","string","assignValue","isNew","nativeKeysIn","isProto","freeProcess","process","nodeUtil","require","types","binding","other","audioBitsPerSecond","scrollingWaveform","scrollingWaveformWindow","continuousWaveform","renderRecordedAudio","mediaRecorderTimeslice","stream","mediaRecorder","dataWindow","isWaveformPaused","lastStartTime","lastDuration","performance","isPaused","renderMicStream","createMediaStreamSource","createAnalyser","fftSize","frequencyBinCount","originalOptions","getFloatTimeDomainData","continuousWaveformDuration","console","onDestroy","stopMic","startMic","navigator","mediaDevices","getUserMedia","audio","deviceId","message","getTracks","startRecording","MediaRecorder","mimeType","find","isTypeSupported","stopRecording","ondataavailable","applyOriginalOptionsIfNeeded","onpause","onstop","isRecording","isActive","pauseRecording","requestData","resumeRecording","getAvailableAudioDevices","enumerateDevices","kind","pop","bufferSize","bandwidth","sinTable","cosTable","windowValues","reverseTable","peakBand","peak","cos","PI","E","sin","calculateSpectrum","sqrt","log","LN2","M","T","z","F","frequenciesDataUrl","colorMap","fftSamples","noverlap","windowFunc","alpha","frequencyMin","frequencyMax","gainDB","rangeDB","numMelFilters","numLogFilters","numBarkFilters","numErbFilters","createWrapper","createCanvas","overflowY","_onReady","_onRender","util","loadFrequenciesData","ok","json","drawSpectrogram","userSelect","labels","labelsEl","_onWrapperClick","spectrCc","getFrequencies","resample","ImageData","hzToScale","createImageBitmap","loadLabels","labelsBackground","labelsColor","labelsHzColor","createFilterBank","hzToMel","log10","melToHz","createMelFilterBank","hzToLog","logToHz","createLogFilterBank","hzToBark","barkToHz","createBarkFilterBank","hzToErb","erbToHz","createErbFilterBank","scaleToHz","applyFilterBank","freqType","toFixed","unitType","getLabelFrequency","textAlign","textBaseline","font","fillText","overlayColor","miniWavesurfer","minimapWrapper","initMinimapWrapper","initOverlay","initWaveSurferEvents","initMinimap","getOverlayWidth","onRedraw","onScroll","readFloatLE","isSlowBuffer","_isBuffer","Recorder","playerConfig","recordOptions","createRateSelect","_rateSelect","option","selected","createMicSelect","_micSelect","video","devices","device","createPauseButton","_pauseButton","createRecordButton","_recordButton","parseInt","createRecorder","crcTable","makeTable","crc","freeSelf","self","baseIsTypedArray","baseUnary","nodeIsTypedArray","nativeNow","lastCalled","stamp","remaining","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","loaded","__webpack_modules__","getter","definition","enumerable","globalThis","prop","nmd","paths","children","baseURI","location","nc"],"sourceRoot":""}