@subiz/widget-v4 4.1.211 → 4.1.213

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 (42) hide show
  1. package/assets/img/dot_chat.svg +3 -0
  2. package/assets/less/widget.less +4 -12
  3. package/compiled_src/chatbox/ChatButton.js +13 -1
  4. package/compiled_src/chatbox/Header.js +1 -0
  5. package/compiled_src/chatbox/main.js +3 -0
  6. package/compiled_src/store/store.js +16 -0
  7. package/dist/{1a0ddc53cbb.27.js → 1a1101c351b.27.js} +1 -1
  8. package/dist/{1a0ddc53cbb.278.js → 1a1101c351b.278.js} +1 -1
  9. package/dist/{1a0ddc53cbb.339.js → 1a1101c351b.339.js} +1 -1
  10. package/dist/1a1101c351b.459.js +1 -0
  11. package/dist/1a1101c351b.app.js +1 -0
  12. package/dist/{1a0ddc53cbb.chat.html → 1a1101c351b.chat.html} +1 -1
  13. package/dist/1a1101c351b.chat.js +1 -0
  14. package/dist/{1a0ddc53cbb.form.html → 1a1101c351b.form.html} +1 -1
  15. package/dist/{1a0ddc53cbb.form.js → 1a1101c351b.form.js} +1 -1
  16. package/dist/{1a0ddc53cbb.index.html → 1a1101c351b.index.html} +1 -1
  17. package/dist/{1a0ddc53cbb.library.html → 1a1101c351b.library.html} +1 -1
  18. package/dist/1a1101c351b.library.js +1 -0
  19. package/dist/{1a0ddc53cbb.preview.html → 1a1101c351b.preview.html} +1 -1
  20. package/dist/1a1101c351b.preview.js +1 -0
  21. package/dist/1a1101c351b.webview.js +1 -0
  22. package/dist/27.js +3 -3
  23. package/dist/459.js +3 -3
  24. package/dist/HASH +1 -0
  25. package/dist/assets/img/dot_chat.335fd8a.svg +3 -0
  26. package/dist/screenshoot.js +48 -4
  27. package/package.json +6 -6
  28. package/src/chatbox/ChatButton.js +14 -1
  29. package/src/chatbox/Header.js +1 -0
  30. package/src/chatbox/main.js +3 -0
  31. package/src/store/store.js +18 -0
  32. package/dist/.HASH +0 -1
  33. package/dist/1a0ddc53cbb.459.js +0 -1
  34. package/dist/1a0ddc53cbb.app.js +0 -1
  35. package/dist/1a0ddc53cbb.chat.js +0 -1
  36. package/dist/1a0ddc53cbb.library.js +0 -1
  37. package/dist/1a0ddc53cbb.preview.js +0 -1
  38. package/dist/1a0ddc53cbb.webview.js +0 -1
  39. /package/dist/{1a0ddc53cbb.127.js → 1a1101c351b.127.js} +0 -0
  40. /package/dist/{1a0ddc53cbb.132.js → 1a1101c351b.132.js} +0 -0
  41. /package/dist/{1a0ddc53cbb.185.js → 1a1101c351b.185.js} +0 -0
  42. /package/dist/{1a0ddc53cbb.490.js → 1a1101c351b.490.js} +0 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@subiz/widget-v4",
3
- "version": "4.1.211",
3
+ "version": "4.1.213",
4
4
  "main": "./compiled_src/lib.js",
5
5
  "scripts": {
6
6
  "dev": "npx webpack serve --config webpack.dev.js",
@@ -20,8 +20,8 @@
20
20
  "core-js": "^3.50.0",
21
21
  "css-loader": "5.2.7",
22
22
  "file-loader": "^6.2.0",
23
- "less": "^4.6.4",
24
- "less-loader": "^12.3.2",
23
+ "less": "^4.9.1",
24
+ "less-loader": "^13.0.0",
25
25
  "preact": "10.19.3"
26
26
  },
27
27
  "devDependencies": {
@@ -32,10 +32,10 @@
32
32
  "@babel/preset-env": "^7.29.7",
33
33
  "babel-loader": "^10.1.1",
34
34
  "babel-plugin-syntax-jsx": "^6.18.0",
35
- "eslint": "^10.11.0",
36
- "globals": "^17.12.0",
35
+ "eslint": "^10.12.0",
36
+ "globals": "^17.13.0",
37
37
  "html-webpack-plugin": "^5.6.8",
38
- "jsdom": "^30.1.1",
38
+ "jsdom": "^30.1.2",
39
39
  "puppeteer": "^25.12.0",
40
40
  "tape": "^5.10.2",
41
41
  "webpack": "^5.111.1",
@@ -1,6 +1,7 @@
1
1
  import sb from '../util/index.js'
2
2
  import Emoji from './Emoji.js'
3
3
  var defaultBubble = require('../../assets/img/bubble_default.svg')
4
+ const dotChatIcon = require('../../assets/img/dot_chat.svg')
4
5
  let defaultAvatar = require('../../assets/img/default_avatar.png')
5
6
  import {Com} from '../common.js'
6
7
  import Block from './block.js'
@@ -410,7 +411,10 @@ export default class ChatButton extends Com {
410
411
  }
411
412
  }
412
413
 
413
- const imageUrl = (url) => addVersionParam(this.props.store.replaceFileUrl(url))
414
+ const imageUrl = (url) => {
415
+ const asset = normalizeButtonImageUrl(this.props.store.replaceFileUrl(url))
416
+ return asset === dotChatIcon ? asset : addVersionParam(asset)
417
+ }
414
418
  imgsrc = imageUrl(imgsrc)
415
419
  imgurl = imageUrl(imgurl)
416
420
  maskurl = imageUrl(maskurl)
@@ -458,6 +462,9 @@ export default class ChatButton extends Com {
458
462
  }
459
463
  if (this._buttonMaskUrl) URL.revokeObjectURL(this._buttonMaskUrl)
460
464
  this._buttonMaskUrl = mask
465
+ // Commit the hidden style before revealing even when images are cached.
466
+ // Otherwise older browsers can paint only the final state and skip the transition.
467
+ if (this._buttonElement) window.getComputedStyle(this._buttonElement).transform
461
468
  this.setState({ready, readyImageKey: appearance.key, fallbackButtonImage: fallback, buttonMaskUrl: mask})
462
469
  this.readyGate.open()
463
470
  }
@@ -554,6 +561,7 @@ export default class ChatButton extends Com {
554
561
 
555
562
  return (
556
563
  <button
564
+ ref={(element) => {this._buttonElement = element}}
557
565
  type='button'
558
566
  class={cls}
559
567
  aria-label={this.props.t('chat')}
@@ -629,6 +637,11 @@ function randomAgent(agentM) {
629
637
 
630
638
  const Ms30Mins = 30 * 60 * 1000
631
639
 
640
+ function normalizeButtonImageUrl(url) {
641
+ if (/^https:\/\/(?:storage\.googleapis\.com\/public-gcs\.subiz-cdn\.com|public-gcs\.subiz-cdn\.com|vcdn\.subiz-cdn\.com)\/dashboard-v4\/public\/img\/bubble\/dot_chat\.svg(?=$|[?#])/.test(url)) return dotChatIcon
642
+ return url
643
+ }
644
+
632
645
  // v=5 trick to clear cache
633
646
  const DEF_BG_URL = 'https://vcdn.subiz-cdn.com/file/bubble_11.svg?v=5'
634
647
  const DEF_BG = 'linear-gradient(280.16deg, #0053d3 22.03%, #0265ff 78.2%)'
@@ -198,6 +198,7 @@ Vui lòng hỏi chúng tôi bất cứ điều gì hoặc chia sẻ phản hồi
198
198
  getTitle() {
199
199
  let accSetting = this.props.plugin.chatbox || {}
200
200
  let acc = this.props.store.matchAccount() || {}
201
+ if (accSetting.hide_agent_profile) return acc.name || this.props.t('widget_title')
201
202
  let agentsJoined = this.getAgentJoined(this.props.cid)
202
203
  let caption = sb.get(this.props.plugin, 'chatbox.caption', {})
203
204
  let title = this.props.t.i18n(caption) || accSetting.title
@@ -201,6 +201,9 @@ export default class Main extends Com {
201
201
  newView.view = 'chat'
202
202
  newView.opts = {cid}
203
203
  }
204
+ if (newView.view === 'chat' && !newView.opts.cid && this.refWidget.current) {
205
+ return this.refWidget.current.goToConvo('')
206
+ }
204
207
 
205
208
  if (this.props.store.isMobile()) modifyViewport(this.shouldLockPageScroll())
206
209
  this.props.store.updateLastview(newView)
@@ -15,6 +15,9 @@ cookie.defaults.expires = 3650 // 10 year
15
15
  let memlocalStorage = require('./inmem_localstorage.js')
16
16
  const MAX_CONVO = 20
17
17
  const page_loaded = sb.Date.now()
18
+ const CHAT_STATE_RESET_AFTER_MS = 24 * 60 * 60 * 1000
19
+ const CHAT_STATE_CYCLE_STARTED_AT = 'chat_state_cycle_started_at'
20
+ const RESETTABLE_CHAT_STATE_KEYS = ['lastview', 'light_convos', 'bot_run_logs', 'close_preview_at']
18
21
 
19
22
  // available localstorage key mask, user, hasManuallyClosed, isopen, close_preview_at, lastview, bot_run_logs, plugin_run_logs
20
23
  export default class Store {
@@ -740,6 +743,20 @@ export default class Store {
740
743
  this.kv.put('lastview', lastView)
741
744
  }
742
745
 
746
+ resetChatStateIfExpired() {
747
+ const now = this.now()
748
+ const cycleStartedAt = this.kv.match(CHAT_STATE_CYCLE_STARTED_AT)
749
+ if (!Number.isFinite(cycleStartedAt) || cycleStartedAt <= 0 || cycleStartedAt > now) {
750
+ this.kv.put(CHAT_STATE_CYCLE_STARTED_AT, now)
751
+ return false
752
+ }
753
+ if (now - cycleStartedAt < CHAT_STATE_RESET_AFTER_MS) return false
754
+
755
+ sb.map(RESETTABLE_CHAT_STATE_KEYS, (key) => this.kv.del(key))
756
+ this.kv.put(CHAT_STATE_CYCLE_STARTED_AT, now)
757
+ return true
758
+ }
759
+
743
760
  async _initResource(accid, auth, realtimep) {
744
761
  this.g_sync = {}
745
762
 
@@ -752,6 +769,7 @@ export default class Store {
752
769
 
753
770
  this.readyGate.close()
754
771
  accid = (accid || '').trim()
772
+ this.resetChatStateIfExpired()
755
773
  let lightConvos = this.kv.match('light_convos') || {}
756
774
  this.lightConvos = {}
757
775
  sb.map(lightConvos, (convo) => {
package/dist/.HASH DELETED
@@ -1 +0,0 @@
1
- 1a0ddc53cbb
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunk_subiz_widget_v4=self.webpackChunk_subiz_widget_v4||[]).push([[459],{5488(n,t,o){o.r(t);const a=o(676);o.d(t,["default",0,a])},676(n,t,o){o.r(t);var a=o(6314),r=o.n(a)()(function(n){return n[1]});r.push([n.id,"@font-face {\n font-family: 'Dancing Script';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/dancingscript/v29/If2cXTr6YS-zF4S-kcSWSVi_sxjsohD9F50Ruu7BMSoHTQ.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Dancing Script';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/dancingscript/v29/If2cXTr6YS-zF4S-kcSWSVi_sxjsohD9F50Ruu7BAyoHTQ.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Dancing Script';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/dancingscript/v29/If2cXTr6YS-zF4S-kcSWSVi_sxjsohD9F50Ruu7B7y0HTQ.ttf) format('truetype');\n}\n@font-face {\n font-family: 'EB Garamond';\n font-style: italic;\n font-weight: 400;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/ebgaramond/v33/SlGFmQSNjdsmc35JDF1K5GRwUjcdlttVFm-rI7e8QI96.ttf) format('truetype');\n}\n@font-face {\n font-family: 'EB Garamond';\n font-style: italic;\n font-weight: 500;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/ebgaramond/v33/SlGFmQSNjdsmc35JDF1K5GRwUjcdlttVFm-rI7eOQI96.ttf) format('truetype');\n}\n@font-face {\n font-family: 'EB Garamond';\n font-style: italic;\n font-weight: 600;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/ebgaramond/v33/SlGFmQSNjdsmc35JDF1K5GRwUjcdlttVFm-rI7diR496.ttf) format('truetype');\n}\n@font-face {\n font-family: 'EB Garamond';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/ebgaramond/v33/SlGDmQSNjdsmc35JDF1K5E55YMjF_7DPuGi-6_RUAw.ttf) format('truetype');\n}\n@font-face {\n font-family: 'EB Garamond';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/ebgaramond/v33/SlGDmQSNjdsmc35JDF1K5E55YMjF_7DPuGi-2fRUAw.ttf) format('truetype');\n}\n@font-face {\n font-family: 'EB Garamond';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/ebgaramond/v33/SlGDmQSNjdsmc35JDF1K5E55YMjF_7DPuGi-NfNUAw.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Inconsolata';\n font-style: normal;\n font-weight: 300;\n font-stretch: normal;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/inconsolata/v37/QldgNThLqRwH-OJ1UHjlKENVzkWGVkL3GZQmAwLYxYWI2qfdm7Lpp9s8aRo.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Inconsolata';\n font-style: normal;\n font-weight: 400;\n font-stretch: normal;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/inconsolata/v37/QldgNThLqRwH-OJ1UHjlKENVzkWGVkL3GZQmAwLYxYWI2qfdm7Lpp4U8aRo.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Inconsolata';\n font-style: normal;\n font-weight: 500;\n font-stretch: normal;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/inconsolata/v37/QldgNThLqRwH-OJ1UHjlKENVzkWGVkL3GZQmAwLYxYWI2qfdm7Lpp7c8aRo.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Montserrat';\n font-style: italic;\n font-weight: 300;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq_p9aX8.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Montserrat';\n font-style: italic;\n font-weight: 400;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq6R9aX8.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Montserrat';\n font-style: italic;\n font-weight: 500;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq5Z9aX8.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Montserrat';\n font-style: italic;\n font-weight: 600;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq3p6aX8.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Montserrat';\n font-style: italic;\n font-weight: 700;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq0N6aX8.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Montserrat';\n font-style: normal;\n font-weight: 300;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCs16Ew-.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Montserrat';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtr6Ew-.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Montserrat';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtZ6Ew-.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Montserrat';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCu170w-.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Montserrat';\n font-style: normal;\n font-weight: 700;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCuM70w-.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Roboto';\n font-style: italic;\n font-weight: 300;\n font-stretch: normal;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/roboto/v51/KFOKCnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmOClHrs6ljXfMMLt_QiA8.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Roboto';\n font-style: italic;\n font-weight: 400;\n font-stretch: normal;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/roboto/v51/KFOKCnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmOClHrs6ljXfMMLoHQiA8.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Roboto';\n font-style: italic;\n font-weight: 500;\n font-stretch: normal;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/roboto/v51/KFOKCnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmOClHrs6ljXfMMLrPQiA8.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Roboto';\n font-style: italic;\n font-weight: 700;\n font-stretch: normal;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/roboto/v51/KFOKCnqEu92Fr1Mu53ZEC9_Vu3r1gIhOszmOClHrs6ljXfMMLmbXiA8.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Roboto';\n font-style: normal;\n font-weight: 300;\n font-stretch: normal;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/roboto/v51/KFOMCnqEu92Fr1ME7kSn66aGLdTylUAMQXC89YmC2DPNWuaabWmT.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Roboto';\n font-style: normal;\n font-weight: 400;\n font-stretch: normal;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/roboto/v51/KFOMCnqEu92Fr1ME7kSn66aGLdTylUAMQXC89YmC2DPNWubEbWmT.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Roboto';\n font-style: normal;\n font-weight: 500;\n font-stretch: normal;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/roboto/v51/KFOMCnqEu92Fr1ME7kSn66aGLdTylUAMQXC89YmC2DPNWub2bWmT.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Roboto';\n font-style: normal;\n font-weight: 700;\n font-stretch: normal;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/roboto/v51/KFOMCnqEu92Fr1ME7kSn66aGLdTylUAMQXC89YmC2DPNWuYjammT.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Signika';\n font-style: normal;\n font-weight: 300;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/signika/v29/vEF72_JTCgwQ5ejvMV0Ox_Kg1UwJ0tKfX4zNpD8E4ASzH1r93zuYzQ.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Signika';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/signika/v29/vEF72_JTCgwQ5ejvMV0Ox_Kg1UwJ0tKfX4zNpD8E4ASzH1r9gTuYzQ.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Signika';\n font-style: normal;\n font-weight: 500;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/signika/v29/vEF72_JTCgwQ5ejvMV0Ox_Kg1UwJ0tKfX4zNpD8E4ASzH1r9szuYzQ.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Signika';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/signika/v29/vEF72_JTCgwQ5ejvMV0Ox_Kg1UwJ0tKfX4zNpD8E4ASzH1r9XzyYzQ.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Source Serif Pro';\n font-style: italic;\n font-weight: 300;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/sourceserifpro/v18/neIVzD-0qpwxpaWvjeD0X88SAOeauXEGCSmqwQ.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Source Serif Pro';\n font-style: italic;\n font-weight: 400;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/sourceserifpro/v18/neIWzD-0qpwxpaWvjeD0X88SAOeauXE-pQ.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Source Serif Pro';\n font-style: italic;\n font-weight: 600;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/sourceserifpro/v18/neIVzD-0qpwxpaWvjeD0X88SAOeauXEGfS-qwQ.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Source Serif Pro';\n font-style: normal;\n font-weight: 300;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/sourceserifpro/v18/neIXzD-0qpwxpaWvjeD0X88SAOeasd8chSs.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Source Serif Pro';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/sourceserifpro/v18/neIQzD-0qpwxpaWvjeD0X88SAOeaiXM.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Source Serif Pro';\n font-style: normal;\n font-weight: 600;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/sourceserifpro/v18/neIXzD-0qpwxpaWvjeD0X88SAOeasasahSs.ttf) format('truetype');\n}\n@font-face {\n font-family: 'Yeseva One';\n font-style: normal;\n font-weight: 400;\n font-display: swap;\n src: url(https://fonts.gstatic.com/s/yesevaone/v24/OpNJno4ck8vc-xYpwWWxpio.ttf) format('truetype');\n}\n#sbz92 * {\n all: unset !important;\n}\n#sbz92 {\n z-index: 2000000100 !important;\n /* Handle on hover */\n}\n#sbz92 *,\n#sbz92 *::before,\n#sbz92 *::after {\n box-sizing: border-box !important;\n}\n#sbz92 [tabindex='-1']:focus:not(:focus-visible) {\n outline: 0 !important;\n}\n#sbz92 b,\n#sbz92 strong {\n font-weight: 500 !important;\n}\n#sbz92 a {\n color: #020202 !important;\n text-decoration: none !important;\n background-color: transparent !important;\n font-weight: 600 !important;\n}\n#sbz92 a:hover {\n cursor: pointer !important;\n color: #000000 !important;\n text-decoration: underline !important;\n}\n#sbz92 a:not([href]) {\n color: inherit !important;\n text-decoration: none !important;\n}\n#sbz92 a:not([href]):hover {\n color: inherit !important;\n text-decoration: none !important;\n}\n#sbz92 img {\n vertical-align: middle !important;\n border-style: none !important;\n}\n#sbz92 svg {\n overflow: hidden !important;\n vertical-align: middle !important;\n}\n#sbz92 label {\n display: inline-block !important;\n}\n#sbz92 button {\n border-radius: 0 !important;\n}\n#sbz92 button:focus {\n outline: 1px dotted !important;\n outline: 5px auto -webkit-focus-ring-color !important;\n}\n#sbz92 input,\n#sbz92 button,\n#sbz92 select,\n#sbz92 optgroup,\n#sbz92 textarea {\n margin: 0 !important;\n}\n#sbz92 button,\n#sbz92 input {\n overflow: visible !important;\n}\n#sbz92 button,\n#sbz92 select {\n text-transform: none !important;\n}\n#sbz92 select {\n word-wrap: normal !important;\n}\n#sbz92 button,\n#sbz92 [type=\"button\"],\n#sbz92 [type=\"reset\"],\n#sbz92 [type=\"submit\"] {\n -webkit-appearance: button !important;\n}\n#sbz92 button:not(:disabled),\n#sbz92 [type='button']:not(:disabled),\n#sbz92 [type='reset']:not(:disabled),\n#sbz92 [type='submit']:not(:disabled) {\n cursor: pointer !important;\n}\n#sbz92 button::-moz-focus-inner,\n#sbz92 [type='button']::-moz-focus-inner,\n#sbz92 [type='reset']::-moz-focus-inner,\n#sbz92 [type='submit']::-moz-focus-inner {\n padding: 0 !important;\n border-style: none !important;\n}\n#sbz92 input[type='radio'],\n#sbz92 input[type='checkbox'] {\n box-sizing: border-box !important;\n padding: 0 !important;\n}\n#sbz92 input[type='date'],\n#sbz92 input[type='time'],\n#sbz92 input[type='datetime-local'],\n#sbz92 input[type='month'] {\n -webkit-appearance: listbox !important;\n}\n#sbz92 textarea {\n overflow: auto !important;\n resize: vertical !important;\n}\n#sbz92 [type='number']::-webkit-inner-spin-button,\n#sbz92 [type='number']::-webkit-outer-spin-button {\n height: auto !important;\n}\n#sbz92 [hidden] {\n display: none !important;\n}\n#sbz92 ::-webkit-input-placeholder {\n /* Edge */\n color: #777 !important;\n}\n#sbz92 :-ms-input-placeholder {\n /* Internet Explorer 10-11 */\n color: #777 !important;\n}\n#sbz92 ::placeholder {\n color: #777 !important;\n}\n#sbz92 div {\n display: block !important;\n text-rendering: geometricPrecision !important;\n -webkit-font-smoothing: antialiased !important;\n -moz-osx-font-smoothing: grayscale !important;\n}\n#sbz92 ::-webkit-scrollbar {\n width: 7px !important;\n height: 7px !important;\n}\n#sbz92 ::-webkit-scrollbar-track {\n border-radius: 10px !important;\n}\n#sbz92 ::-webkit-scrollbar-thumb {\n border-radius: 10px !important;\n background: #d6d6d6 !important;\n}\n#sbz92 ::-webkit-scrollbar-thumb:hover {\n background: #aaa !important;\n}\n#sbz92 .badge {\n padding: 2px 8px !important;\n font-size: 12px !important;\n font-weight: 600 !important;\n border-radius: 6px !important;\n display: inline-flex !important;\n align-items: center !important;\n}\n#sbz92 .badge.badge--success {\n color: #28a745 !important;\n -webkit-text-fill-color: #28a745 !important;\n background: #28a74526 !important;\n}\n#sbz92 .dot {\n width: 8px !important;\n height: 8px !important;\n border-radius: 4px !important;\n flex-shrink: 0 !important;\n background: #000 !important;\n}\n#sbz92 .dot.dot--success {\n background: #28a745 !important;\n}\n@keyframes fadeOut {\n from {\n opacity: 1;\n }\n to {\n opacity: 0;\n }\n}\n#sbz92 .fadeOut {\n animation-name: fadeOut !important;\n animation-duration: 150ms !important;\n}\n@keyframes fadeInDownCenter {\n from {\n opacity: 0;\n transform: translate3d(0, -2000px, 0) translateX(-50%);\n }\n to {\n opacity: 1;\n transform: translate3d(0, 0, 0) translateX(-50%);\n }\n}\n#sbz92 .fadeInDownCenter {\n animation-name: fadeInDownCenter !important;\n animation-duration: 0.25s !important;\n}\n@keyframes fadeInUpCenter {\n from {\n opacity: 0;\n transform: translate3d(0, 400px, 0) translateX(-50%);\n }\n to {\n opacity: 1;\n transform: translate3d(0, 0, 0) translateX(-50%);\n }\n}\n#sbz92 .fadeInUpCenter {\n animation-name: fadeInUpCenter !important;\n animation-duration: 0.25s !important;\n}\n@keyframes fadeInDown {\n from {\n opacity: 0;\n transform: translate3d(0, -1000px, 0);\n }\n to {\n opacity: 1;\n transform: translate3d(0, 0, 0);\n }\n}\n#sbz92 .fadeInDown {\n animation-name: fadeInDown !important;\n animation-duration: 0.5s !important;\n}\n@keyframes fadeInUpBig {\n from {\n opacity: 0;\n transform: translate3d(0, 400px, 0);\n }\n to {\n opacity: 1;\n transform: translate3d(0, 0, 0);\n }\n}\n#sbz92 .fadeInUpBig {\n animation-name: fadeInUpBig !important;\n animation-duration: 0.25s !important;\n}\n@keyframes fadeInRightBig {\n from {\n opacity: 0;\n transform: translateY(-50%) translateX(200px);\n }\n to {\n opacity: 1;\n transform: translateY(-50%) translateX(0px);\n }\n}\n#sbz92 .fadeInRightBig {\n animation-name: fadeInRightBig !important;\n animation-duration: 0.5s !important;\n}\n@keyframes fadeInLeftBig {\n from {\n opacity: 0;\n transform: translateY(-50%) translateX(-200px);\n }\n to {\n opacity: 1;\n transform: translateY(-50%) translateX(0px);\n }\n}\n#sbz92 .fadeInLeftBig {\n animation-name: fadeInLeftBig !important;\n animation-duration: 0.5s !important;\n}\n@keyframes zoomIn {\n from {\n opacity: 0.3;\n transform: scale3d(0.5, 0.5, 0.5);\n }\n 50% {\n opacity: 1;\n }\n}\n#sbz92 .zoomIn {\n animation-name: zoomIn !important;\n transform-origin: top left !important;\n animation-duration: 0.15s !important;\n}\n@keyframes zoomOutCenter {\n from {\n opacity: 1;\n }\n 80% {\n opacity: 0.7;\n transform: scale3d(0.5, 0.5, 0.5) translateY(-50%) translateX(-50%);\n }\n}\n#sbz92 .zoomOutCenter {\n animation-name: zoomOutCenter !important;\n transform-origin: top left !important;\n animation-duration: 300ms !important;\n}\n@keyframes zoomInCenter {\n from {\n opacity: 0.3;\n transform: scale3d(0.5, 0.5, 0.5) translateY(-50%) translateX(-50%);\n }\n 50% {\n opacity: 1;\n }\n}\n#sbz92 .zoomInCenter {\n animation-name: zoomInCenter !important;\n transform-origin: top left !important;\n animation-duration: 0.15s !important;\n}\n@keyframes zoomDownYX {\n 0% {\n transform: scaleY(1);\n }\n 50% {\n transform: scaleY(0.01) scaleZ(1);\n }\n 100% {\n transform: scaleY(0.01) scaleX(0) scaleZ(0);\n }\n}\n#sbz92 .zoomDownYX {\n animation-duration: 0.5s !important;\n animation-name: zoomDownYX !important;\n}\n@keyframes zoomUpYX {\n 0% {\n transform: scaleY(0.01) scaleX(0) scaleZ(0);\n }\n 50% {\n transform: scaleY(0.01) scaleZ(1);\n }\n 100% {\n transform: scaleY(1);\n }\n}\n#sbz92 .zoomUpYX {\n animation-duration: 0.5s !important;\n animation-name: zoomUpYX !important;\n}\n@keyframes bounceIn {\n from,\n 20%,\n 40%,\n 60%,\n 80%,\n to {\n animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);\n }\n 0% {\n opacity: 0;\n transform: scale3d(0.3, 0.3, 0.3);\n }\n 20% {\n transform: scale3d(1.1, 1.1, 1.1);\n }\n 40% {\n transform: scale3d(0.9, 0.9, 0.9);\n }\n 60% {\n opacity: 1;\n transform: scale3d(1.03, 1.03, 1.03);\n }\n 80% {\n transform: scale3d(0.97, 0.97, 0.97);\n }\n to {\n opacity: 1;\n transform: scale3d(1, 1, 1);\n }\n}\n#sbz92 .bounceIn {\n animation-duration: 0.5s !important;\n animation-name: bounceIn !important;\n}\n@keyframes shake {\n 0% {\n transform: skewX(-15deg);\n }\n 5% {\n transform: skewX(15deg);\n }\n 10% {\n transform: skewX(-15deg);\n }\n 15% {\n transform: skewX(15deg);\n }\n 20% {\n transform: skewX(0deg);\n }\n 100% {\n transform: skewX(0deg);\n }\n}\n#sbz92 .notif {\n cursor: pointer !important;\n font-family: Inter !important;\n font-size: 14px !important;\n position: absolute !important;\n user-select: none !important;\n}\n#sbz92 .notif__bottom-left {\n bottom: 20px !important;\n left: 20px !important;\n}\n#sbz92 .notif__top-left {\n top: 20px !important;\n left: 20px !important;\n}\n#sbz92 .notif__top-right {\n top: 20px !important;\n right: 40px !important;\n}\n#sbz92 .notif__bottom-right {\n bottom: 20px !important;\n right: 40px !important;\n}\n#sbz92 .notif__bottom-center {\n transform: translateX(-50%) !important;\n left: 50% !important;\n bottom: 20px !important;\n}\n#sbz92 .notif__top-center {\n transform: translateX(-50%) !important;\n left: 50% !important;\n top: 20px !important;\n}\n#sbz92 .notif_avatar {\n margin-left: 15px !important;\n margin-top: 10px !important;\n margin-bottom: 10px !important;\n overflow: hidden !important;\n width: 70px !important;\n height: 70px !important;\n z-index: 1 !important;\n}\n#sbz92 .notif_avatar__img {\n width: 100% !important;\n height: 100% !important;\n object-fit: cover !important;\n}\n#sbz92 .notif_body {\n z-index: 1 !important;\n display: flex !important;\n flex-direction: column !important;\n justify-content: center !important;\n position: relative !important;\n padding-top: 10px !important;\n padding-left: 20px !important;\n padding-bottom: 30px !important;\n padding-right: 30px !important;\n width: 235px !important;\n height: 100px !important;\n overflow: hidden !important;\n}\n#sbz92 .btn_close {\n background: white !important;\n padding: 0 !important;\n right: -25px !important;\n top: 0px !important;\n position: absolute !important;\n z-index: 10 !important;\n cursor: pointer !important;\n transition: background-color 0.2s ease-out !important;\n box-shadow: rgba(0, 0, 0, 0.2) 0px 12px 28px 0px, rgba(0, 0, 0, 0.1) 0px 2px 4px 0px, rgba(255, 255, 255, 0.5) 0px 0px 0px 1px inset !important;\n border: none !important;\n width: 20px !important;\n height: 20px !important;\n display: flex !important;\n align-items: center !important;\n justify-content: center !important;\n border-radius: 50% !important;\n opacity: 0.7 !important;\n}\n#sbz92 .btn_close:hover {\n opacity: 1 !important;\n}\n#sbz92 .btn_close__icon {\n stroke: #444 !important;\n height: 16px !important;\n width: 16px !important;\n border: 0px !important;\n}\n#sbz92 .notif_bg {\n z-index: 0 !important;\n position: absolute !important;\n top: 50% !important;\n left: 50% !important;\n transform: translate(-50%, -50%) !important;\n}\n#sbz92 .notif_time {\n position: absolute !important;\n bottom: 15px !important;\n left: 20px !important;\n font-size: 12px !important;\n opacity: 0.5 !important;\n}\n#sbz92 .notif_title {\n white-space: nowrap !important;\n flex-shrink: 0 !important;\n text-overflow: ellipsis !important;\n overflow: hidden !important;\n}\n#sbz92 .notif_message {\n text-overflow: ellipsis !important;\n margin-top: 5px !important;\n overflow: hidden !important;\n}\ndiv#sbz92 {\n all: initial;\n}\nbody div#sbz92 {\n all: initial !important;\n}\n#sbz92 {\n z-index: 2000000100 !important;\n /* Handle on hover */\n}\n#sbz92 *,\n#sbz92 *::before,\n#sbz92 *::after {\n box-sizing: border-box;\n}\n#sbz92 [tabindex='-1']:focus:not(:focus-visible) {\n outline: 0;\n}\n#sbz92 b,\n#sbz92 strong {\n font-weight: 500;\n}\n#sbz92 a {\n color: #020202;\n text-decoration: none;\n background-color: transparent;\n font-weight: 600;\n}\n#sbz92 a:hover {\n cursor: pointer;\n color: #000000;\n text-decoration: underline;\n}\n#sbz92 a:not([href]) {\n color: inherit;\n text-decoration: none;\n}\n#sbz92 a:not([href]):hover {\n color: inherit;\n text-decoration: none;\n}\n#sbz92 img {\n vertical-align: middle;\n border-style: none;\n}\n#sbz92 svg {\n overflow: hidden;\n vertical-align: middle;\n}\n#sbz92 label {\n display: inline-block;\n}\n#sbz92 button {\n border-radius: 0;\n}\n#sbz92 button:focus {\n outline: 1px dotted;\n outline: 5px auto -webkit-focus-ring-color;\n}\n#sbz92 input,\n#sbz92 button,\n#sbz92 select,\n#sbz92 optgroup,\n#sbz92 textarea {\n margin: 0;\n}\n#sbz92 button,\n#sbz92 input {\n overflow: visible;\n}\n#sbz92 button,\n#sbz92 select {\n text-transform: none;\n}\n#sbz92 select {\n word-wrap: normal;\n}\n#sbz92 button,\n#sbz92 [type=\"button\"],\n#sbz92 [type=\"reset\"],\n#sbz92 [type=\"submit\"] {\n -webkit-appearance: button;\n}\n#sbz92 button:not(:disabled),\n#sbz92 [type='button']:not(:disabled),\n#sbz92 [type='reset']:not(:disabled),\n#sbz92 [type='submit']:not(:disabled) {\n cursor: pointer;\n}\n#sbz92 button::-moz-focus-inner,\n#sbz92 [type='button']::-moz-focus-inner,\n#sbz92 [type='reset']::-moz-focus-inner,\n#sbz92 [type='submit']::-moz-focus-inner {\n padding: 0;\n border-style: none;\n}\n#sbz92 input[type='radio'],\n#sbz92 input[type='checkbox'] {\n box-sizing: border-box;\n padding: 0;\n}\n#sbz92 input[type='date'],\n#sbz92 input[type='time'],\n#sbz92 input[type='datetime-local'],\n#sbz92 input[type='month'] {\n -webkit-appearance: listbox;\n}\n#sbz92 textarea {\n overflow: auto;\n resize: vertical;\n}\n#sbz92 [type='number']::-webkit-inner-spin-button,\n#sbz92 [type='number']::-webkit-outer-spin-button {\n height: auto;\n}\n#sbz92 [hidden] {\n display: none;\n}\n#sbz92 ::-webkit-input-placeholder {\n /* Edge */\n color: #777;\n}\n#sbz92 :-ms-input-placeholder {\n /* Internet Explorer 10-11 */\n color: #777;\n}\n#sbz92 ::placeholder {\n color: #777;\n}\n#sbz92 div {\n display: block;\n text-rendering: geometricPrecision;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n#sbz92 ::-webkit-scrollbar {\n width: 7px;\n height: 7px;\n}\n#sbz92 ::-webkit-scrollbar-track {\n border-radius: 10px;\n}\n#sbz92 ::-webkit-scrollbar-thumb {\n border-radius: 10px;\n background: #d6d6d6;\n}\n#sbz92 ::-webkit-scrollbar-thumb:hover {\n background: #aaa;\n}\n#sbz92 .badge {\n padding: 2px 8px;\n font-size: 12px;\n font-weight: 600;\n border-radius: 6px;\n display: inline-flex;\n align-items: center;\n}\n#sbz92 .badge.badge--success {\n color: #28a745;\n -webkit-text-fill-color: #28a745;\n background: #28a74526;\n}\n#sbz92 .dot {\n width: 8px;\n height: 8px;\n border-radius: 4px;\n flex-shrink: 0;\n background: #000;\n}\n#sbz92 .dot.dot--success {\n background: #28a745;\n}\n@keyframes fadeOut {\n from {\n opacity: 1;\n }\n to {\n opacity: 0;\n }\n}\n#sbz92 .fadeOut {\n animation-name: fadeOut;\n animation-duration: 150ms;\n}\n@keyframes fadeInDownCenter {\n from {\n opacity: 0;\n transform: translate3d(0, -2000px, 0) translateX(-50%);\n }\n to {\n opacity: 1;\n transform: translate3d(0, 0, 0) translateX(-50%);\n }\n}\n#sbz92 .fadeInDownCenter {\n animation-name: fadeInDownCenter;\n animation-duration: 0.25s;\n}\n@keyframes fadeInUpCenter {\n from {\n opacity: 0;\n transform: translate3d(0, 400px, 0) translateX(-50%);\n }\n to {\n opacity: 1;\n transform: translate3d(0, 0, 0) translateX(-50%);\n }\n}\n#sbz92 .fadeInUpCenter {\n animation-name: fadeInUpCenter;\n animation-duration: 0.25s;\n}\n@keyframes fadeInDown {\n from {\n opacity: 0;\n transform: translate3d(0, -1000px, 0);\n }\n to {\n opacity: 1;\n transform: translate3d(0, 0, 0);\n }\n}\n#sbz92 .fadeInDown {\n animation-name: fadeInDown;\n animation-duration: 0.5s;\n}\n@keyframes fadeInUpBig {\n from {\n opacity: 0;\n transform: translate3d(0, 400px, 0);\n }\n to {\n opacity: 1;\n transform: translate3d(0, 0, 0);\n }\n}\n#sbz92 .fadeInUpBig {\n animation-name: fadeInUpBig;\n animation-duration: 0.25s;\n}\n@keyframes fadeInRightBig {\n from {\n opacity: 0;\n transform: translateY(-50%) translateX(200px);\n }\n to {\n opacity: 1;\n transform: translateY(-50%) translateX(0px);\n }\n}\n#sbz92 .fadeInRightBig {\n animation-name: fadeInRightBig;\n animation-duration: 0.5s;\n}\n@keyframes fadeInLeftBig {\n from {\n opacity: 0;\n transform: translateY(-50%) translateX(-200px);\n }\n to {\n opacity: 1;\n transform: translateY(-50%) translateX(0px);\n }\n}\n#sbz92 .fadeInLeftBig {\n animation-name: fadeInLeftBig;\n animation-duration: 0.5s;\n}\n@keyframes zoomIn {\n from {\n opacity: 0.3;\n transform: scale3d(0.5, 0.5, 0.5);\n }\n 50% {\n opacity: 1;\n }\n}\n#sbz92 .zoomIn {\n animation-name: zoomIn;\n transform-origin: top left;\n animation-duration: 0.15s;\n}\n@keyframes zoomOutCenter {\n from {\n opacity: 1;\n }\n 80% {\n opacity: 0.7;\n transform: scale3d(0.5, 0.5, 0.5) translateY(-50%) translateX(-50%);\n }\n}\n#sbz92 .zoomOutCenter {\n animation-name: zoomOutCenter;\n transform-origin: top left;\n animation-duration: 300ms;\n}\n@keyframes zoomInCenter {\n from {\n opacity: 0.3;\n transform: scale3d(0.5, 0.5, 0.5) translateY(-50%) translateX(-50%);\n }\n 50% {\n opacity: 1;\n }\n}\n#sbz92 .zoomInCenter {\n animation-name: zoomInCenter;\n transform-origin: top left;\n animation-duration: 0.15s;\n}\n@keyframes zoomDownYX {\n 0% {\n transform: scaleY(1);\n }\n 50% {\n transform: scaleY(0.01) scaleZ(1);\n }\n 100% {\n transform: scaleY(0.01) scaleX(0) scaleZ(0);\n }\n}\n#sbz92 .zoomDownYX {\n animation-duration: 0.5s;\n animation-name: zoomDownYX;\n}\n@keyframes zoomUpYX {\n 0% {\n transform: scaleY(0.01) scaleX(0) scaleZ(0);\n }\n 50% {\n transform: scaleY(0.01) scaleZ(1);\n }\n 100% {\n transform: scaleY(1);\n }\n}\n#sbz92 .zoomUpYX {\n animation-duration: 0.5s;\n animation-name: zoomUpYX;\n}\n@keyframes bounceIn {\n from,\n 20%,\n 40%,\n 60%,\n 80%,\n to {\n animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);\n }\n 0% {\n opacity: 0;\n transform: scale3d(0.3, 0.3, 0.3);\n }\n 20% {\n transform: scale3d(1.1, 1.1, 1.1);\n }\n 40% {\n transform: scale3d(0.9, 0.9, 0.9);\n }\n 60% {\n opacity: 1;\n transform: scale3d(1.03, 1.03, 1.03);\n }\n 80% {\n transform: scale3d(0.97, 0.97, 0.97);\n }\n to {\n opacity: 1;\n transform: scale3d(1, 1, 1);\n }\n}\n#sbz92 .bounceIn {\n animation-duration: 0.5s;\n animation-name: bounceIn;\n}\n@keyframes shake {\n 0% {\n transform: skewX(-15deg);\n }\n 5% {\n transform: skewX(15deg);\n }\n 10% {\n transform: skewX(-15deg);\n }\n 15% {\n transform: skewX(15deg);\n }\n 20% {\n transform: skewX(0deg);\n }\n 100% {\n transform: skewX(0deg);\n }\n}\n#sbz92 .notif {\n cursor: pointer;\n font-family: Inter;\n font-size: 14px;\n position: absolute;\n user-select: none;\n}\n#sbz92 .notif__bottom-left {\n bottom: 20px;\n left: 20px;\n}\n#sbz92 .notif__top-left {\n top: 20px;\n left: 20px;\n}\n#sbz92 .notif__top-right {\n top: 20px;\n right: 40px;\n}\n#sbz92 .notif__bottom-right {\n bottom: 20px;\n right: 40px;\n}\n#sbz92 .notif__bottom-center {\n transform: translateX(-50%);\n left: 50%;\n bottom: 20px;\n}\n#sbz92 .notif__top-center {\n transform: translateX(-50%);\n left: 50%;\n top: 20px;\n}\n#sbz92 .notif_avatar {\n margin-left: 15px;\n margin-top: 10px;\n margin-bottom: 10px;\n overflow: hidden;\n width: 70px;\n height: 70px;\n z-index: 1;\n}\n#sbz92 .notif_avatar__img {\n width: 100%;\n height: 100%;\n object-fit: cover;\n}\n#sbz92 .notif_body {\n z-index: 1;\n display: flex;\n flex-direction: column;\n justify-content: center;\n position: relative;\n padding-top: 10px;\n padding-left: 20px;\n padding-bottom: 30px;\n padding-right: 30px;\n width: 235px;\n height: 100px;\n overflow: hidden;\n}\n#sbz92 .btn_close {\n background: white;\n padding: 0;\n right: -25px;\n top: 0px;\n position: absolute;\n z-index: 10;\n cursor: pointer;\n transition: background-color 0.2s ease-out;\n box-shadow: rgba(0, 0, 0, 0.2) 0px 12px 28px 0px, rgba(0, 0, 0, 0.1) 0px 2px 4px 0px, rgba(255, 255, 255, 0.5) 0px 0px 0px 1px inset;\n border: none;\n width: 20px;\n height: 20px;\n display: flex;\n align-items: center;\n justify-content: center;\n border-radius: 50%;\n opacity: 0.7;\n}\n#sbz92 .btn_close:hover {\n opacity: 1;\n}\n#sbz92 .btn_close__icon {\n stroke: #444;\n height: 16px;\n width: 16px;\n border: 0px;\n}\n#sbz92 .notif_bg {\n z-index: 0;\n position: absolute;\n top: 50%;\n left: 50%;\n transform: translate(-50%, -50%);\n}\n#sbz92 .notif_time {\n position: absolute;\n bottom: 15px;\n left: 20px;\n font-size: 12px;\n opacity: 0.5;\n}\n#sbz92 .notif_title {\n white-space: nowrap;\n flex-shrink: 0;\n text-overflow: ellipsis;\n overflow: hidden;\n}\n#sbz92 .notif_message {\n text-overflow: ellipsis;\n margin-top: 5px;\n overflow: hidden;\n}\n",""]);const e=r;o.d(t,["default",0,e])}}]);