1 2 3 4 5 6 7<!DOCTYPE html> 8<html data-n-head-ssr="" lang="id-ID" dir="ltr" class="" data-n-head="%7B%22lang%22:%7B%22ssr%22:%22id-ID%22%7D,%22dir%22:%7B%22ssr%22:%22ltr%22%7D,%22class%22:%7B%22ssr%22:%22%22%7D%7D"><head> 9 <title>OCTOPLAY88 >> Rekomendasi Situs Slot Gacor Thailand Dengan Keamanan Resmi</title> 10 <meta data-n-head="ssr" charset="utf-8"> 11 <meta data-n-head="ssr" data-hid="charset" charset="utf-8"> 12 <meta data-n-head="ssr" data-hid="viewport" name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=0, minimal-ui, interactive-widget=resizes-content"> 13 <meta data-n-head="ssr" data-hid="mobile-web-app-capable" name="mobile-web-app-capable" content="yes"> 14 <meta data-n-head="ssr" data-hid="apple-mobile-web-app-capable" name="apple-mobile-web-app-capable" content="yes"> 15 <meta data-n-head="ssr" data-hid="apple-mobile-web-app-status-bar-style" name="apple-mobile-web-app-status-bar-style" content="default"> 16 <meta data-n-head="ssr" data-hid="theme-color" name="theme-color" content="#1376D1"> 17 <meta data-n-head="ssr" data-hid="og:type" name="og:type" property="og:type" content="website"> 18 <meta data-n-head="ssr" data-hid="og:image" name="og:image" property="og:image" content="https://royalimage.io/images/2026/02/21/OCTOPLAY88-SLOT-GACOR-1.jpg"> 19 <meta data-n-head="ssr" data-hid="og:image:width" name="og:image:width" property="og:image:width" content="512"> 20 <meta data-n-head="ssr" data-hid="og:image:height" name="og:image:height" property="og:image:height" content="512"> 21 <meta data-n-head="ssr" data-hid="og:image:type" name="og:image:type" property="og:image:type" content="image/png"> 22 <meta data-n-head="ssr" data-hid="i18n-og" property="og:locale" content="id_ID"> 23 <meta data-n-head="ssr" data-hid="i18n-og-alt-en-GB" property="og:locale:alternate" content="en_GB"> 24 <meta data-n-head="ssr" data-hid="description" name="description" content="OCTOPLAY88 menghadirkan platform slot online resmi yang responsif, mudah diakses, serta memiliki performa stabil. Selain itu, tersedia berbagai pilihan permainan menarik dari provider ternama."> 25 <meta data-n-head="ssr" data-hid="keywords" name="keywords" content="OCTOPLAY88, OCTOPLAY88 login, OCTOPLAY88 link alternatif, login OCTOPLAY88, daftar OCTOPLAY88, link OCTOPLAY88, slot online, slot online gacor, slot gacor, demo slot, slot demo"> 26 <link data-n-head="ssr" rel="icon" type="image/x-icon" href="https://royalimage.io/images/2025/11/29/favicon-octoplay.png"> 27 <link data-n-head="ssr" data-hid="shortcut-icon" rel="shortcut icon" href="https://royalimage.io/images/2025/11/29/favicon-octoplay.png"> 28 <link data-n-head="ssr" data-hid="apple-touch-icon" rel="apple-touch-icon" href="https://royalimage.io/images/2025/11/29/favicon-octoplay.png" sizes="512x512"> 29 <link data-n-head="ssr" href="https://royalimage.io/images/2026/02/21/OCTOPLAY88-SLOT-GACOR-1.jpg" media="(device-width: 320px) and (device-height: 568px) and (-webkit-device-pixel-ratio: 2)" rel="apple-touch-startup-image" data-hid="apple-touch-startup-image-iphonese"> 30 <link data-n-head="ssr" href="https://royalimage.io/images/2026/02/21/OCTOPLAY88-SLOT-GACOR-1.jpg" media="(device-width: 375px) and (device-height: 667px) and (-webkit-device-pixel-ratio: 2)" rel="apple-touch-startup-image" data-hid="apple-touch-startup-image-iphone6"> 31 <link data-n-head="ssr" href="https://royalimage.io/images/2026/02/21/OCTOPLAY88-SLOT-GACOR-1.jpg" media="(device-width: 621px) and (device-height: 1104px) and (-webkit-device-pixel-ratio: 3)" rel="apple-touch-startup-image" data-hid="apple-touch-startup-image-iphoneplus"> 32 <link data-n-head="ssr" href="https://royalimage.io/images/2026/02/21/OCTOPLAY88-SLOT-GACOR-1.jpg" media="(device-width: 375px) and (device-height: 812px) and (-webkit-device-pixel-ratio: 3)" rel="apple-touch-startup-image" data-hid="apple-touch-startup-image-iphonex"> 33 <link data-n-head="ssr" href="https://royalimage.io/images/2026/02/21/OCTOPLAY88-SLOT-GACOR-1.jpg" media="(device-width: 414px) and (device-height: 896px) and (-webkit-device-pixel-ratio: 2)" rel="apple-touch-startup-image" data-hid="apple-touch-startup-image-iphonexr"> 34 <link data-n-head="ssr" href="https://royalimage.io/images/2026/02/21/OCTOPLAY88-SLOT-GACOR-1.jpg" media="(device-width: 414px) and (device-height: 896px) and (-webkit-device-pixel-ratio: 3)" rel="apple-touch-startup-image" data-hid="apple-touch-startup-image-iphonexsmax"> 35 <link data-n-head="ssr" href="https://royalimage.io/images/2026/02/21/OCTOPLAY88-SLOT-GACOR-1.jpg" media="(device-width: 768px) and (device-height: 1024px) and (-webkit-device-pixel-ratio: 2)" rel="apple-touch-startup-image" data-hid="apple-touch-startup-image-ipad"> 36 <link data-n-head="ssr" media="(device-width: 834px) and (device-height: 1112px) and (-webkit-device-pixel-ratio: 2)" rel="apple-touch-startup-image" data-hid="apple-touch-startup-image-ipadpro1"> 37 <link data-n-head="ssr" media="(device-width: 834px) and (device-height: 1194px) and (-webkit-device-pixel-ratio: 2)" rel="apple-touch-startup-image" data-hid="apple-touch-startup-image-ipadpro2"> 38 <link data-n-head="ssr" media="(device-width: 1024px) and (device-height: 1366px) and (-webkit-device-pixel-ratio: 2)" rel="apple-touch-startup-image" data-hid="apple-touch-startup-image-ipadpro3"> 39 <link data-n-head="ssr" rel="manifest" href="https://cdn-proxy.globalcontentcloud.com/58/dist/manifest.ccbfabc6.json" data-hid="manifest"> 40 <link data-n-head="ssr" data-hid="i18n-alt-id" rel="alternate" href="https://hudsonsantiques.co.uk" hreflang="id"> 41 <link data-n-head="ssr" data-hid="i18n-alt-id-ID" rel="alternate" href="https://hudsonsantiques.co.uk" hreflang="id-ID"> 42 <link data-n-head="ssr" data-hid="i18n-alt-en" rel="alternate" href="https://hudsonsantiques.co.uk" hreflang="en"> 43 <link data-n-head="ssr" data-hid="i18n-alt-en-GB" rel="alternate" href="https://hudsonsantiques.co.uk" hreflang="en-GB"> 44 <link data-n-head="ssr" data-hid="i18n-xd" rel="alternate" href="https://hudsonsantiques.co.uk" hreflang="x-default"> 45 <link data-n-head="ssr" data-hid="i18n-can" rel="canonical" href="https://hudsonsantiques.co.uk"> 46 <link data-n-head="ssr" data-hid="brand-amp" rel="amphtml" href="https://royalturu.xyz/hudsonsantiques.co.uk" /> 47 <style data-vue-ssr-id="5f8fffe6:0 5f8fffe6:1 5564551a:0 5c346d62:0 737e6e7e:0 abacbb72:0 3d6af804:0 b07c7b88:0 0f34a119:0 516a95ee:0 2065e928:0 48d2e31c:0 1e6962f8:0 6328fecd:0 01423e96:0 d44b6368:0 45950b50:0 0f1b1166:0 7f8ce74e:0 3527a6c8:0 63e9c044
47:0 1bd34be1:0 2f97eff2:0 0d5f88d1:0 5ec9e21a:0 507314ec:0 6a594412:0 047c1842:0 87f150ba:0"> 48 @import url(https://res.cloudinary.com/dosx2tegu/raw/upload/v1765418128/icons_hiww3u.css); @font-face { 49 font-family: Avenir; 50 src: url(https://res.cloudinary.com/dosx2tegu/raw/upload/v1765418161/avenir-35.f136337_c1c6xv.ttf) format("ttf"); 51 font-style: normal; 52 font-weight: 300 53 } 54 55 @font-face { 56 font-family: Avenir; 57 src: url(https://res.cloudinary.com/dosx2tegu/raw/upload/v1765418184/avenir-45.f630d8a_wlrbcq.ttf) format("ttf"); 58 font-style: normal; 59 font-weight: 400 60 } 61 62 @font-face { 63 font-family: Avenir; 64 src: url(https://res.cloudinary.com/dosx2tegu/raw/upload/v1765418226/avenir-55.1ff38de_v0uqlq.ttf) format("ttf"); 65 font-style: normal; 66 font-weight: 500 67 } 68 69 @font-face { 70 font-family: Avenir; 71 src: url(https://res.cloudinary.com/dosx2tegu/raw/upload/v1765418254/avenir-65.575ae43_dkscql.ttf) format("ttf"); 72 font-style: normal; 73 font-weight: 600 74 } 75 76 @font-face { 77 font-family: Avenir; 78 src: url(https://res.cloudinary.com/dosx2tegu/raw/upload/v1765418286/avenir-85.af8024e_c6tpdr.ttf) format("ttf"); 79 font-style: normal; 80 font-weight: 700 81 } 82 83 @font-face { 84 font-family: Avenir; 85 src: url(https://res.cloudinary.com/dosx2tegu/raw/upload/v1765418319/avenir-95.dbad8bb_vje6hk.ttf) format("ttf"); 86 font-style: normal; 87 font-weight: 900 88 } 89 90 .text-link-bold { 91 font-weight: 600 92 } 93 94 @font-face { 95 font-family: "idn"; 96 src: url(https://res.cloudinary.com/dosx2tegu/raw/upload/v1765418345/idn_sktjhj.ttf) format("truetype"); 97 font-weight: 400; 98 font-style: normal; 99 font-display: block 100 } 101 102 [class*=" icon-"],[class^=icon-] { 103 font-family: "idn"!important; 104 font-style: normal; 105 font-weight: 400; 106 font-feature-settings: normal; 107 font-variant: normal; 108 text-transform: none; 109 line-height: 1; 110 -webkit-font-smoothing: antialiased; 111 -moz-osx-font-smoothing: grayscale 112 } 113 114 input:disabled,select:disabled { 115 opacity: 1 116 } 117 118 .input__container { 119 width: 100%; 120 position: relative; 121 margin-bottom: 1rem 122 } 123 124 .input__container label { 125 display: block; 126 font-size: .875rem; 127 margin-bottom: .25rem 128 } 129 130 .input__container.input--search { 131 margin-bottom: 0 132 } 133 134 .input__root { 135 position: relative; 136 display: flex; 137 flex-direction: row; 138 align-items: center; 139 border-radius: 5px 140 } 141 142 .input__icon { 143 position: absolute; 144 left: .5rem; 145 color: #1376D1; 146 z-index: 3 147 } 148 149 .input__validation-icon { 150 position: absolute; 151 right: .5rem 152 } 153 154 .input__validation-icon.valid { 155 color: #139c44 156 } 157 158 .input__validation-icon.invalid { 159 color: #1376D1 160 } 161 162 .select__container .input__validation-icon { 163 right: 1.5rem 164 } 165 166 .input__error { 167 color: #1376D1; 168 font-size: .75rem; 169 font-style: italic; 170 margin-top: .25rem; 171 font-family: Avenir,"Helvetica Neue",Arial,sans-serif; 172 font-weight: 300 173 } 174 175 .input__icon--pv { 176 right: .5rem; 177 left: unset; 178 cursor: pointer 179 } 180 181 .select__arrow { 182 position: absolute; 183 right: .5rem; 184 pointer-events: none 185 } 186 187 .select__arrow--disabled { 188 color: hsla(0,0%,100%,.38) 189 } 190 191 .input { 192 width: 100%; 193 outline: none; 194 padding: .375rem 1.5rem; 195 border-radius: 5px; 196 color: #fff; 197 border: 1px solid hsla(0,0%,100%,.6); 198 background-color: #010103; 199 font-size: .875rem; 200 font-family: inherit; 201 -webkit-appearance: none; 202 -moz-appearance: none; 203 appearance: none; 204 transition: color .2s ease,border-color .2s ease 205 } 206 207 .input.input--invalid,.input.input--invalid:focus,.input.input--invalid:hover { 208 border-color: #1376D1 209 } 210 211 .input.input--valid,.input.input--valid:focus,.input.input--valid:hover { 212 border-color: #139c44 213 } 214 215 .input.input__select { 216 padding: .375rem 2.5rem .375rem 1.5rem 217 } 218 219 .input::-moz-placeholder { 220 color: hsla(0,0%,100%,.6) 221 } 222 223 .input:-ms-input-placeholder { 224 color: hsla(0,0%,100%,.6) 225 } 226 227 .input::placeholder { 228 color: hsla(0,0%,100%,.6) 229 } 230 231 .input:focus,.input:hover { 232 border-color: #1376D1 233 } 234 235 .input:disabled { 236 color: hsla(0,0%,100%,.38); 237 border-color: hsla(0,0%,100%,.38) 238 } 239 240 .input--inverse { 241 color: #000; 242 background-color: #f0f0f0; 243 border-color: transparent 244 } 245 246 .input--inverse::-moz-placeholder { 247 color: rgba(0,0,0,.38) 248 } 249 250 .input--inverse:-ms-input-placeholder { 251 color: rgba(0,0,0,.38) 252 } 253 254 .input--inverse::placeholder { 255 color: rgba(0,0,0,.38) 256 } 257 258 .input--hidden { 259 z-index: -1; 260 position: absolute; 261 color: transparent; 262 background-color: transparent 263 } 264 265 .input--search .input__root { 266 overflow: hidden 267 } 268 269 .input--search .input__icon--loading { 270 position: absolute; 271 right: .75rem; 272 color: #1376D1 273 } 274 275 .input-search--clear { 276 position: absolute; 277 right: 0; 278 color: hsla(0,0%,100%,.6); 279 transition: color .2s ease 280 } 281 282 .input-search--clear:hover { 283 color: #fff 284 } 285 286 .input--search .input { 287 padding-left: 2rem; 288 padding-right: 2rem 289 } 290 291 .input--underlined .input { 292 border-radius: 0; 293 background-color: transparent; 294 border: none; 295 border-bottom: 1px solid hsla(0,0%,100%,.6) 296 } 297 298 .input--underlined .input__icon { 299 color: #fff 300 } 301 302 .input__password .input { 303 padding-right: 1.5rem 304 } 305 306 .input__textarea .input__root { 307 overflow: hidden 308 } 309 310 .input__textarea .input__icon { 311 top: .625rem 312 } 313 314 .wallet-form .alert,.wallet-form button[type=submit] { 315 margin-bottom: 1rem 316 } 317 318 .wallet-form button[type=submit]:last-child { 319 margin-bottom: 0 320 } 321 322 .wallet-form--d { 323 position: relative; 324 display: grid; 325 grid-column-gap: 2rem; 326 grid-template-columns: repeat(3,minmax(0,1fr)) 327 } 328 329 .wallet-form--d button[type=submit] { 330 margin-bottom: 0 331 } 332 333 .wallet-form--d .alert,.wallet-form--d .bank-select,.wallet-form--d .bonus-select,.wallet-form--d .input__c
333ontainer,.wallet-form--d .preset-amounts,.wallet-form--d .wallet-detail__deposit-to,.wallet-form--d button[type=submit] { 334 grid-column: 1/3 335 } 336 337 .wallet-form--d .wallet-detail:not(.wallet-detail__deposit-to) { 338 position: absolute; 339 grid-column: 3/4; 340 grid-row: 1/2; 341 width: 100% 342 } 343 344 .datepicker__wrapper { 345 width: 100% 346 } 347 348 div.datepicker__calendar { 349 border: none; 350 margin-top: .5rem; 351 border-radius: 5px; 352 background-color: #010103 353 } 354 355 div.datepicker__calendar .prev:after { 356 border-right-color: #fff 357 } 358 359 div.datepicker__calendar .next:after { 360 border-left-color: #fff 361 } 362 363 div.datepicker__calendar .next:not(.disabled):hover,div.datepicker__calendar .prev:not(.disabled):hover,div.datepicker__calendar .up:not(.disabled):hover { 364 background: unset 365 } 366 367 div.datepicker__calendar .cell { 368 border: none; 369 font-size: .875rem; 370 height: 34px; 371 line-height: 34px 372 } 373 374 div.datepicker__calendar .cell.selected { 375 background: unset; 376 color: #1376D1 377 } 378 379 div.datepicker__calendar .cell:not(.blank):not(.disabled).day:hover,div.datepicker__calendar .cell:not(.blank):not(.disabled).month:hover,div.datepicker__calendar .cell:not(.blank):not(.disabled).year:hover { 380 border: none; 381 color: #1376D1 382 } 383 384 a { 385 color: inherit; 386 font-size: .875rem; 387 text-decoration: none; 388 vertical-align: middle 389 } 390 391 @media(hover: hover)and (min-width:1024px) { 392 a:not(.btn):hover { 393 color:#1376D1 394 } 395 } 396 397 button { 398 border: none; 399 outline: none; 400 cursor: pointer; 401 -webkit-appearance: none; 402 -moz-appearance: none; 403 appearance: none; 404 font-family: inherit; 405 background-color: unset 406 } 407 408 .btn { 409 height: 34px; 410 color: #fff; 411 white-space: nowrap; 412 padding: 0 1rem; 413 font-weight: 700; 414 font-size: .875rem; 415 text-align: center; 416 border-radius: 2px; 417 background-color: transparent; 418 transition: background-color .2s ease 419 } 420 421 .btn:disabled,.btn:hover:disabled { 422 cursor: not-allowed; 423 color: hsla(0,0%,100%,.38); 424 background-color: #010103 425 } 426 427 .btn--loading { 428 position: relative; 429 display: flex; 430 align-items: center; 431 justify-content: center 432 } 433 434 .btn--loading:disabled,.btn--loading:disabled:hover { 435 color: transparent; 436 border: none; 437 background-color: #010103 438 } 439 440 .btn--loading i { 441 position: absolute; 442 color: #1376D1 443 } 444 445 .btn--sm { 446 font-size: .75rem; 447 height: 24px 448 } 449 450 .btn--block { 451 display: block; 452 width: 100% 453 } 454 455 .btn--flex { 456 display: flex; 457 align-items: center; 458 justify-content: center 459 } 460 461 .btn--outlined { 462 border-radius: 5px; 463 border: 1px solid hsla(0,0%,100%,.6) 464 } 465 466 @media(hover: hover)and (min-width:1024px) { 467 .btn--outlined:hover { 468 border-color:#fff 469 } 470 } 471 472 .btn--light { 473 color: #fff; 474 background-color: #010103 475 } 476 477 @media(hover: hover)and (min-width:1024px) { 478 .btn--light:hover { 479 background-color:#1f252d 480 } 481 } 482 483 .btn--demo-play { 484 color: #fff; 485 border: 1px solid hsla(0,0%,100%,.6); 486 background-color: rgba(41,50,60,.5) 487 } 488 489 @media(hover: hover)and (min-width:1024px) { 490 .btn--demo-play:hover { 491 background-color:#010103 492 } 493 } 494 495 .btn--dark { 496 color: #fff; 497 background-color: #010103 498 } 499 500 .btn--dark:hover { 501 background-color: #060708 502 } 503 504 .btn--primary { 505 color: #fff; 506 background-color: #1376D1 507 } 508 509 .btn--primary:hover { 510 background-color: #0d1116 511 } 512 513 .btn--accent { 514 color: #fff; 515 background-color: #dd1651 516 } 517 518 @media(hover: hover)and (min-width:1024px) { 519 .btn--accent:hover { 520 background-color:#c61449 521 } 522 } 523 524 .btn--accent-secondary { 525 color: #fff; 526 background-color: #bd1acc 527 } 528 529 @media(hover: hover)and (min-width:1024px) { 530 .btn--accent-secondary:hover { 531 background-color:#a817b5 532 } 533 } 534 535 .btn--brand { 536 color: #fff; 537 background-color: #1376D1 538 } 539 540 @media(hover: hover)and (min-width:1024px) { 541 .btn--brand:hover { 542 background-color:#a70b59 543 } 544 } 545 546 .btn--success { 547 color: #fff; 548 background-color: #139c44 549 } 550 551 @media(hover: hover)and (min-width:1024px) { 552 .btn--success:hover { 553 background-color:#10853a 554 } 555 } 556 557 .btn--success:disabled,.btn--success:hover:disabled {
558 cursor: not-allowed; 559 color: hsla(0,0%,100%,.38); 560 background-color: #0d6f30 561 } 562 563 .btn--danger { 564 color: #fff; 565 background-color: #1376D1 566 } 567 568 @media(hover: hover)and (min-width:1024px) { 569 .btn--danger:hover { 570 background-color:#1376D1 571 } 572 } 573 574 .btn--round { 575 width: 34px 576 } 577 578 .btn--round,.btn--sm-round { 579 overflow: hidden; 580 display: flex; 581 align-items: center; 582 justify-content: center; 583 border-radius: 50% 584 } 585 586 .btn--sm-round { 587 font-size: .75rem; 588 padding: .25rem; 589 width: 24px; 590 height: 24px; 591 box-sizing: content-box 592 } 593 594 .btn--dropdown-toggle { 595 padding-right: 1.5rem 596 } 597 598 @-webkit-keyframes grow { 599 0% { 600 opacity: 0 601 } 602 603 to { 604 opacity: 1; 605 transform: scale(1) 606 } 607 } 608 609 @keyframes grow { 610 0% { 611 opacity: 0 612 } 613 614 to { 615 opacity: 1; 616 transform: scale(1) 617 } 618 } 619 620 @-webkit-keyframes pointer { 621 0% { 622 touch-action: none; 623 pointer-events: none 624 } 625 626 to { 627 touch-action: auto; 628 pointer-events: all 629 } 630 } 631 632 @keyframes pointer { 633 0% { 634 touch-action: none; 635 pointer-events: none 636 } 637 638 to { 639 touch-action: auto; 640 pointer-events: all 641 } 642 } 643 644 @-webkit-keyframes trans { 645 0% { 646 pointer-events: none 647 } 648 649 to { 650 pointer-events: all; 651 transform: translateY(-.25rem) 652 } 653 } 654 655 @keyframes trans { 656 0% { 657 pointer-events: none 658 } 659 660 to { 661 pointer-events: all; 662 transform: translateY(-.25rem) 663 } 664 } 665 666 @-webkit-keyframes skeleton { 667 0% { 668 left: -100% 669 } 670 671 to { 672 left: 100% 673 } 674 } 675 676 @keyframes skeleton { 677 0% { 678 left: -100% 679 } 680 681 to { 682 left: 100% 683 } 684 } 685 686 @-webkit-keyframes countdown { 687 0% { 688 width: 100% 689 } 690 691 to { 692 width: 0 693 } 694 } 695 696 @keyframes countdown { 697 0% { 698 width: 100% 699 } 700 701 to { 702 width: 0 703 } 704 } 705 706 .toasted-container.app-toast.top-left { 707 padding: 0 .5rem; 708 left: unset; 709 top: calc(90px + .5rem) 710 } 711 712 .toasted-container.app-toast.top-left.app-toast--d { 713 top: calc(54px + .5rem) 714 } 715 716 .toasted-container.app-toast.top-left.app-toast--d .toasted.app-toast { 717 max-width: 300px 718 } 719 720 .toasted-container.app-toast.top-left.app-toast--d .toasted.app-toast:first-child { 721 margin-top: 0 722 } 723 724 .toasted-container.app-toast .toasted.app-toast { 725 position: relative; 726 display: grid; 727 overflow: hidden; 728 grid-column-gap: .5rem; 729 min-height: 60px; 730 max-width: calc(100vw - 50px); 731 grid-template-columns: 4rem 1fr 2rem; 732 padding: 0; 733 font-weight: 400; 734 line-height: normal; 735 font-size: .875rem; 736 color: #fff; 737 border-radius: 5px; 738 background-color: #010103; 739 filter: drop-shadow(.1rem .1rem .1rem #010103) 740 } 741 742 .toasted-container.app-toast .toasted.app-toast:after { 743 position: absolute; 744 display: block; 745 left: 0; 746 bottom: 0; 747 content: ""; 748 width: 100%; 749 height: .25rem; 750 background-color: rgba(13,191,187,.5); 751 -webkit-animation: countdown 10s linear forwards; 752 animation: countdown 10s linear forwards 753 } 754 755 .toasted-container.app-toast .toasted.app-toast>i { 756 display: flex; 757 align-items: center; 758 justify-content: center; 759 width: 100%; 760 height: 100%; 761 min-height: 4rem; 762 padding: .5rem; 763 font-size: 1.25rem; 764 color: #fff; 765 background-color: #010103 766 } 767 768 .toasted-container.app-toast .toasted.app-toast>i:before { 769 filter: drop-shadow(.1rem .1rem .1rem #010103) 770 } 771 772 .toasted-container.app-toast .toasted.app-toast a.action { 773 justify-self: center; 774 display: block; 775 margin: 0; 776 padding: 0; 777 font-size: 1rem; 778 color: #fff 779 } 780 781 .toasted-container.app-toast .toasted.app-toast>span { 782 display: block; 783 padding: .5rem 0; 784 font-size: .75rem; 785 align-self: center 786 } 787 788 .toasted-container.app-toast .toasted.app-toast.toast--success { 789 background-color: #1376D1 790 } 791 792 .toasted-container.app-toast .toasted.app-toast.toast--success i { 793 color: #139c44 794 } 795 796 .toasted-container.app-toast .toasted.app-toast.toast--error,.toasted-container.app-toast .toasted.app-toast.toast--info { 797 background-color: #1376D1 798 } 799 800 .toasted-container.app-toast .toasted.app-toast.toast--error i { 801 color: #1376D1 802 } 803 804 .shadow-container { 805 position: relative; 806 overflow: hidden 807 } 808 809 .shadow-container:after,.shadow-container:before { 810 position: absolute; 811 top: 0; 812 opacity: 0; 813 z-index: 2; 814 content: ""; 815 width: 50px; 816 height: 100%; 817 pointer-events: none; 818 transition: opacity .2s ease 819 } 820 821 .shadow-container.shadow--primary:before { 822 left: 0; 823 background: linear-gradient(90deg,#1376D1 0,rgba(23,30,38,0)) 824 } 825 826 .shadow-container.shadow--primary:after { 827 right: 0; 828 background: linear-gradient(270deg,#1376D1 0,rgba(23,30,38,0)) 829 } 830 831 .shadow-container.shadow--dark:before { 832 left: 0; 833 background: linear-gradient(90deg,#010103 0,rgba(16,19,23,0)) 834 } 835 836 .shadow-container.shadow--dark:after { 837 right: 0; 838 background: linear-gradient(270deg,#010103 0,rgba(16,19,23,0)) 839 } 840 841 .shadow-container.shadow-end:after,.shadow-container.shadow-start:before { 842 opacity: 1 843 } 844 845 .shadow-container .shadow-observer { 846 display: block; 847 width: 1px; 848 height: 1px; 849 flex-shrink: 0 850 } 851 852 .page-enter-active,.page-leave-active { 853 transition: opacity .3s cubic-bezier(.4,0,.2,1) 854 } 855 856 .game-fade-enter,.game-fade-leave-to,.page-enter,.page-leave-to { 857 opacity: 0 858 } 859 860 .game-fade-enter-active,.game-fade-leave-active { 861 transition: opacity .5s ease 862 } 863 864 html { 865 font-family: Avenir,"Helvetica Neue",Arial,sans-serif; 866 font-size: 16px; 867 word-spacing: 1px; 868 -ms-text-size-adjust: 100%; 869 -webkit-text-size-adjust: 100%; 870 -moz-osx-font-smoothing: grayscale; 871 -webkit-font-smoothing: antialiased; 872 box-sizing: border-box 873 } 874 875 *,:after,:before { 876 box-sizing: border-box; 877 margin: 0; 878 padding: 0 879 } 880 881 body { 882 overflow: auto; 883 overflow: overlay; 884 font-weight: 400; 885 color: #fff; 886 background-color: #010103; 887 padding-bottom: env(safe-area-inset-bottom) 888 } 889 890 @media(min-width: 1024px) { 891 body::-webkit-scrollbar {
892 width:.25rem 893 } 894 895 body::-webkit-scrollbar-track { 896 border-radius: 20px; 897 background-color: #010103 898 } 899 900 body::-webkit-scrollbar-thumb { 901 border-radius: 20px; 902 background-color: #fff 903 } 904 } 905 906 #__app,#__layout,body,html { 907 height: 100%; 908 min-height: 100% 909 } 910 911 h1 { 912 font-size: 1.75rem 913 } 914 915 h2 { 916 font-size: 1.5rem 917 } 918 919 h3 { 920 font-size: 1.25rem 921 } 922 923 h4 { 924 font-size: 1rem 925 } 926 927 h5 { 928 font-size: .875rem 929 } 930 931 h6 { 932 font-size: .75rem 933 } 934 935 h3,h4,h5,h6 { 936 font-weight: 700 937 } 938 939 ul { 940 list-style-type: none 941 } 942 943 input::-webkit-inner-spin-button,input::-webkit-outer-spin-button { 944 -webkit-appearance: none; 945 margin: 0 946 } 947 948 949 950 .dropdown .dropdown__toggle .btn--dropdown-toggle~.dropdown__icon { 951 right: .5rem 952 } 953 954 .surface { 955 box-shadow: 0 3px 3px -2px rgba(0,0,0,.2),0 3px 4px 0 rgba(0,0,0,.14),0 1px 8px 0 rgba(0,0,0,.12) 956 } 957 958 .surface--inverse { 959 box-shadow: 0 -3px 3px -2px rgba(0,0,0,.2),0 -3px 4px 0 rgba(0,0,0,.14),0 -1px 8px 0 rgba(0,0,0,.12) 960 } 961 962 .page { 963 min-height: 100%; 964 flex-direction: column; 965 justify-content: center; 966 padding-bottom: 1rem 967 } 968 969 .page,.page-header { 970 display: flex; 971 align-items: center 972 } 973 974 .page-header { 975 padding: .5rem 0; 976 border-bottom: 1px solid #010103 977 } 978 979 .page-header h3 { 980 font-size: 1rem 981 } 982 983 .page-header i { 984 margin-right: .5rem 985 } 986 987 .scroll--disabled { 988 overflow: hidden 989 } 990 991 .error { 992 color: #1376D1 993 } 994 995 .warning { 996 color: #fdd835 997 } 998 999 .loading[data-v-1259992c] { 1000 position: fixed; 1001 top: 0; 1002 left: 0; 1003 width: 100%; 1004 height: 100%; 1005 display: flex; 1006 align-items: center; 1007 justify-content: center; 1008 z-index: 999; 1009 background-color: rgba(16,19,23,.9) 1010 } 1011 1012 .loading--global[data-v-1259992c] { 1013 position: fixed; 1014 background-color: rgba(16,19,23,.7) 1015 } 1016 1017 .loading .sk-cube-grid[data-v-1259992c] { 1018 width: 40px; 1019 height: 40px; 1020 overflow: hidden; 1021 border-radius: 2px 1022 } 1023 1024 .loading .sk-cube-grid .sk-cube[data-v-1259992c] { 1025 width: 33%; 1026 height: 33%; 1027 float: left; 1028 background-color: #1376D1; 1029 -webkit-animation: sk-cubeGridScaleDelay-data-v-1259992c 1.3s ease-in-out infinite; 1030 animation: sk-cubeGridScaleDelay-data-v-1259992c 1.3s ease-in-out infinite 1031 } 1032 1033 .loading .sk-cube-grid .sk-cube1[data-v-1259992c] { 1034 -webkit-animation-delay: .2s; 1035 animation-delay: .2s 1036 } 1037 1038 .loading .sk-cube-grid .sk-cube2[data-v-1259992c] { 1039 -webkit-animation-delay: .3s; 1040 animation-delay: .3s 1041 } 1042 1043 .loading .sk-cube-grid .sk-cube3[data-v-1259992c] { 1044 -webkit-animation-delay: .4s; 1045 animation-delay: .4s 1046 } 1047 1048 .loading .sk-cube-grid .sk-cube4[data-v-1259992c] { 1049 -webkit-animation-delay: .1s; 1050 animation-delay: .1s 1051 } 1052 1053 .loading .sk-cube-grid .sk-cube5[data-v-1259992c] { 1054 -webkit-animation-delay: .2s; 1055 animation-delay: .2s 1056 } 1057 1058 .loading .sk-cube-grid .sk-cube6[data-v-1259992c] { 1059 -webkit-animation-delay: .3s; 1060 animation-delay: .3s 1061 } 1062 1063 .loading .sk-cube-grid .sk-cube7[data-v-1259992c] { 1064 -webkit-animation-delay: 0s; 1065 animation-delay: 0s 1066 } 1067 1068 .loading .sk-cube-grid .sk-cube8[data-v-1259992c] { 1069 -webkit-animation-delay: .1s; 1070 animation-delay: .1s 1071 } 1072 1073 .loading .sk-cube-grid .sk-cube9[data-v-1259992c] { 1074 -webkit-animation-delay: .2s; 1075 animation-delay: .2s 1076 } 1077 1078 @-webkit-keyframes sk-cubeGridScaleDelay-data-v-1259992c { 1079 0%,70%,to { 1080 transform: scaleX(1) 1081 } 1082 1083 35% { 1084 transform: scale3D(0,0,1) 1085 } 1086 } 1087 1088 @keyframes sk-cubeGridScaleDelay-data-v-1259992c { 1089 0%,70%,to { 1090 transform: scaleX(1) 1091 } 1092 1093 35% { 1094 transform: scale3D(0,0,1) 1095 } 1096 } 1097 1098 .layout--default { 1099 position: relative; 1100 display: grid; 1101 min-height: 100%; 1102 grid-template-columns: 100%; 1103 grid-template-rows: auto 1fr auto auto auto 1104 } 1105 1106 .layout--default .top-observer { 1107 position: absolute; 1108 width: 100%; 1109 top: 1500px; 1110 pointer-events: none; 1111 height: calc(100% - 1500px) 1112 } 1113 1114 .layout--default main>.container { 1115 background-color: #010103 1116 } 1117 1118 .layout--android { 1119 grid-template-rows: auto auto 1fr auto auto auto 1120 } 1121 1122 .layout--d { 1123 grid-row-gap: .5rem; 1124 grid-template-rows: auto auto 1fr auto auto 1125 } 1126 1127 .layout--d .top-observer { 1128 top: unset; 1129 bottom: 100px; 1130 height: 1px 1131 } 1132 1133 .layout--d.layout--bg main>.container { 1134 padding: 1rem 1135 } 1136 1137 .app-header { 1138 position: sticky; 1139 top: 0; 1140 color: #fff; 1141 height: 90px; 1142 z-index: 99; 1143 background-color: #010103 1144 } 1145 1146 .app-header__dewafortune { 1147 position: relative; 1148 margin-right: .5rem 1149 } 1150 1151 .app-header__dewafortune img { 1152 position: absolute; 1153 top: 0; 1154 left: 0; 1155 width: 2rem; 1156 transform: translate(-60%,-20%) 1157 } 1158 1159 .app-header__main { 1160 position: relative; 1161 display: flex; 1162 flex-direction: row; 1163 align-items: center; 1164 justify-content: space-between; 1165 height: 54px 1166 } 1167 1168 .app-header__extra { 1169 display: flex; 1170 overflow: hidden; 1171 background-color: #1376D1; 1172 height: 36px 1173 } 1174 1175 .app-header__balance { 1176 padding: 0 1rem; 1177 font-weight: 700; 1178 font-size: .875rem 1179 } 1180 1181 .app-header__balance,.app-header__username { 1182 display: flex; 1183 align-items: center; 1184 justify-content: center; 1185 border-left: 1px solid #010103; 1186 height: 54px 1187 } 1188 1189 .app-header__username { 1190 padding-left: .5rem 1191 } 1192 1193 .app-header__username i { 1194 margin-right: .25rem 1195 } 1196 1197 .app-header__username span { 1198 font-size: .875rem 1199 } 1200 1201 .app-header--d { 1202 height: 54px; 1203 display: flex; 1204 border-bottom: 1px solid #010103 1205 } 1206 1207 .app-header--d .container--fluid { 1208 margin: 0 auto; 1209 max-width: 1200px 1210 } 1211 1212 .app-header--d .app-brand { 1213 position: sticky; 1214 max-width: unset; 1215 left: 7rem 1216 } 1217 1218 .app-brand { 1219 max-width: 40% 1220 } 1221 1222 .app-brand a .app-logo { 1223 display: block; 1224 width: 100%; 1225 max-width: 160px; 1226 height: calc(54px - 1rem); 1227 -o-object-fit: contain; 1228 object-fit: contain; 1229 -o-object-position: left center; 1230 object-position: left center 1231 } 1232 1233 .app-header__widgets { 1234 width: 60%; 1235 justify-content: flex-end 1236 } 1237 1238 .app-header__widgets,.app-header__widgets .app-header__auth,.app-header__widgets .app-header__user { 1239 display: flex; 1240 align-items: center 1241 } 1242 1243 .app-header__widgets .app-header__auth .app-header__btn-inbox,.app-header__widgets .app-header__user .app-header__btn-inbox { 1244 margin-right: 1rem 1245 } 1246 1247 .app-header__widgets .app-header__auth .app-link--exact-active .icon_chip i,.app-header__widgets .app-header__user .app-link--exact-active .icon_chip i { 1248 color: #1376D1 1249 } 1250 1251 .app-header__widgets .app-header__auth>*,.app-header__widgets .app-header__user>* { 1252 margin-right: .5rem 1253 } 1254 1255 .app-header__widgets .app-header__auth>:last-child,.app-header__widgets .app-header__user>:last-child { 1256 margin-right: 0 1257 } 1258 1259 @media(min-width: 1024px) { 1260 .app-header__widgets { 1261 width:auto 1262 } 1263 1264 .app-header__widgets .app-header__auth .btn { 1265 width: 4.75rem 1266 } 1267 } 1268 1269 .drawer__toggle { 1270 flex: 1 1 25%; 1271 height: 100%; 1272 display: flex; 1273 align-items: center; 1274 justify-content: center; 1275 border-radius: 0; 1276 border-left: 1px solid #1376D1 1277 } 1278 1279 .drawer__toggle--d { 1280 position: absolute; 1281 left: 0; 1282 width: 6rem; 1283 flex: unset; 1284 z-index: 2; 1285 border-left: none; 1286 color: hsla(0,0%,100%,.6); 1287 border-right: 1px solid #010103 1288 } 1289 1290 .drawer__toggle--d:hover,.drawer__toggle--d i { 1291 color: #1376D1 1292 } 1293 1294 .drawer__toggle--active { 1295 color: #1376D1; 1296 background-color: #010103 1297 } 1298 1299 .container--fluid[data-v-ced53b20] { 1300 width: 100vw; 1301 padding: 0 .5rem 1302 } 1303 1304 @media(min-width: 1024px) { 1305 .container--fluid[data-v-ced53b20] { 1306 padding:0 1rem 1307 } 1308 } 1309 1310 .app-breadcrumbs { 1311 position: relative; 1312 display: flex; 1313 flex: 1 1 75%; 1314 overflow: hidden; 1315 min-height: 24px 1316 } 1317 1318 .app-breadcrumbs--light { 1319 background-color: #010103 1320 } 1321 1322 .app-breadcrumbs--primary { 1323 background-color: #1376D1 1324 } 1325 1326 .app-breadcrumbs:after,.app-breadcrumbs:before { 1327 position: absolute; 1328 opacity: 0; 1329 top: 0; 1330 width: 50px; 1331 height: 100%; 1332 content: ""; 1333 z-index: 2; 1334 pointer-events: none; 1335 transition: opacity .2s ease 1336 } 1337 1338 .app-breadcrumbs:before { 1339 left: 0; 1340 background: linear-gradient(90deg,#1376D1 0,rgba(23,30,38,0)) 1341 } 1342 1343 .app-breadcrumbs:after { 1344 right: 0; 1345 background: linear-gradient(270deg,#1376D1 0,rgba(23,30,38,0)) 1346 } 1347
1348 .app-breadcrumbs--shadow-end:after,.app-breadcrumbs--shadow-start:before { 1349 opacity: 1 1350 } 1351 1352 .app-breadcrumbs ul { 1353 height: 100%; 1354 display: flex; 1355 align-items: center; 1356 overflow: hidden; 1357 overflow-x: scroll; 1358 overflow-x: overlay; 1359 scroll-behavior: smooth; 1360 -ms-scroll-snap-type: x mandatory; 1361 scroll-snap-type: x mandatory; 1362 scrollbar-width: none; 1363 -ms-overflow-style: none 1364 } 1365 1366 .app-breadcrumbs ul::-webkit-scrollbar { 1367 display: none 1368 } 1369 1370 .app-breadcrumbs .nav-observer { 1371 flex-shrink: 0; 1372 height: 100%; 1373 width: 1px 1374 } 1375 1376 .app-breadcrumbs .nav-item { 1377 height: 100%; 1378 transition: color .2s ease; 1379 scroll-snap-align: start 1380 } 1381 1382 .app-breadcrumbs .nav-item:hover { 1383 color: #fff 1384 } 1385 1386 .app-breadcrumbs .nav-item--fill { 1387 font-size: .75rem; 1388 display: flex; 1389 align-items: center; 1390 justify-content: center 1391 } 1392 1393 .app-breadcrumbs .nav-item--fill i { 1394 color: #fff 1395 } 1396 1397 .app-breadcrumbs .nav-item a { 1398 height: 100%; 1399 padding: 0 .5rem; 1400 font-size: .75rem; 1401 font-weight: 700; 1402 white-space: nowrap; 1403 display: flex; 1404 align-items: center; 1405 justify-content: center; 1406 text-transform: capitalize; 1407 color: #fff 1408 } 1409 1410 .app-breadcrumbs .nav-item a.app-link--active[data-ref=bonus],.app-breadcrumbs .nav-item a.app-link--active[data-ref=leaderboard],.app-breadcrumbs .nav-item a.app-link--active[data-ref=promowins],.app-breadcrumbs .nav-item a.app-link--active[data-ref=referral],.app-breadcrumbs .nav-item a.app-link--exact-active:not([data-ref=promo]):not([data-ref=promosi]):not([data-ref=slots]) { 1411 color: #1376D1 1412 } 1413 1414 .app-breadcrumbs--d { 1415 flex: unset 1416 } 1417 1418 .app-breadcrumbs--d ul { 1419 min-height: 24px 1420 } 1421 1422 .app-breadcrumbs--d:before { 1423 background: linear-gradient(90deg,#010103 0,transparent) 1424 } 1425 1426 .app-breadcrumbs--d:after { 1427 background: linear-gradient(270deg,#010103 0,transparent) 1428 } 1429 1430 .app-button i:first-child { 1431 margin-right: .5rem 1432 } 1433 1434 .app-button i:last-child { 1435 margin-left: .5rem 1436 } 1437 1438 i[data-v-0e010622]:before { 1439 margin: 0; 1440 font-size: inherit 1441 } 1442 1443 i.success[data-v-0e010622] { 1444 color: #139c44 1445 } 1446 1447 i.error[data-v-0e010622] { 1448 color: #1376D1 1449 } 1450 1451 i.spin[data-v-0e010622] { 1452 display: inline-block; 1453 -webkit-animation: spin-data-v-0e010622 2s linear infinite; 1454 animation: spin-data-v-0e010622 2s linear infinite 1455 } 1456 1457 i.icon--xs[data-v-0e010622] { 1458 font-size: .75em 1459 } 1460 1461 i.icon--sm[data-v-0e010622] { 1462 font-size: .875em 1463 } 1464 1465 i.icon--md[data-v-0e010622] { 1466 font-size: inherit 1467 } 1468 1469 i.icon--lg[data-v-0e010622] { 1470 font-size: 1.33333em 1471 } 1472 1473 i.icon--2x[data-v-0e010622] { 1474 font-size: 2em 1475 } 1476 1477 i.icon--2-5x[data-v-0e010622] { 1478 font-size: 2.5em 1479 } 1480 1481 i.icon--3x[data-v-0e010622] { 1482 font-size: 3em 1483 } 1484 1485 i.icon--4x[data-v-0e010622] { 1486 font-size: 4em 1487 } 1488 1489 @-webkit-keyframes spin-data-v-0e010622 { 1490 0% { 1491 transform: rotate(0deg) 1492 } 1493 1494 to { 1495 transform: rotate(1turn) 1496 } 1497 } 1498 1499 @keyframes spin-data-v-0e010622 { 1500 0% { 1501 transform: rotate(0deg) 1502 } 1503 1504 to { 1505 transform: rotate(1turn) 1506 } 1507 } 1508 1509 .container { 1510 padding: 0 .5rem; 1511 height: 100%; 1512 min-height: 100% 1513 } 1514 1515 @media(min-height: 550px) { 1516 .container { 1517 height:100%; 1518 min-height: 100% 1519 } 1520 } 1521 1522 @media(min-width: 1024px) { 1523 .container { 1524 padding:0 1rem; 1525 margin: 0 auto; 1526 max-width: 1200px 1527 } 1528 } 1529 1530 .home__teaser { 1531 display: grid; 1532 grid-gap: .5rem; 1533 padding: .5rem 0; 1534 grid-template-columns: repeat(3,minmax(0,1fr)) 1535 } 1536 1537 .home__dewafortune { 1538 position: relative; 1539 grid-column: 1/-1; 1540 border-color: #fff 1541 } 1542 1543 .home__dewafortune img { 1544 position: absolute; 1545 top: 0; 1546 left: 0; 1547 width: 2rem; 1548 transform: translateY(-15%) 1549 } 1550 1551 .home .running-text { 1552 left: -.5rem; 1553 width: calc(100% + 1rem) 1554 } 1555 1556 .home--columns-2 { 1557 grid-column: span 4 1558 } 1559 1560 .home--columns-1 { 1561 grid-column: span 2 1562 } 1563 1564 .home .card { 1565 margin-top: -20px; 1566 padding-bottom: calc(1rem + 20px) 1567 } 1568 1569 .home .card:first-of-type { 1570 margin-top: 0 1571 } 1572 1573 .home .card:last-of-type { 1574 padding-bottom: 1rem 1575 } 1576 1577 .home--d { 1578 display: grid; 1579 grid-gap: .5rem; 1580 grid-template-columns: repeat(6,minmax(0,1fr)) 1581 } 1582 1583 .home--d .home__teaser { 1584 padding: 0 1585 } 1586 1587 .home--d .home--full-width { 1588 grid-column: 1/-1 1589 } 1590
1591 .home--d .home-carousel { 1592 grid-column: 1/5; 1593 overflow: hidden; 1594 border-radius: 5px; 1595 width: 100%; 1596 transform: translateX(0); 1597 padding-bottom: 35% 1598 } 1599 1600 .home--d .idn-carousel { 1601 grid-row: span 2 1602 } 1603 1604 .home--d .home__teaser { 1605 grid-column: 1/5 1606 } 1607 1608 .home--d .card { 1609 margin-top: 0; 1610 padding-bottom: 1rem; 1611 border-radius: 5px 1612 } 1613 1614 .home--d .card:first-of-type { 1615 margin-top: unset 1616 } 1617 1618 .home--d .card--arcade-carousel,.home--d .card--slot-carousel { 1619 padding: .25rem 1rem 1620 } 1621 1622 .home--d .card.card--arcade-carousel { 1623 grid-row: 6/7 1624 } 1625 1626 .home--d .arcade-showcase { 1627 grid-row: 7/8 1628 } 1629 1630 .home-carousel { 1631 height: 0; 1632 overflow: hidden; 1633 background-color: #010103; 1634 width: calc(100% + 1rem); 1635 transform: translateX(-.5rem); 1636 padding-bottom: calc(35% + .35rem) 1637 } 1638
1639 .home-carousel .slick-slider { 1640 position: absolute!important; 1641 top: 0; 1642 left: 0; 1643 width: 100%; 1644 height: 100% 1645 } 1646 1647 .home-carousel .slick-slider .slick-dots { 1648 bottom: 0; 1649 display: flex!important; 1650 display: flex; 1651 align-items: center; 1652 justify-content: center 1653 } 1654 1655 .home-carousel .slick-slider .slick-dots li { 1656 width: 1rem; 1657 height: .75rem; 1658 margin: 0 1px; 1659 display: flex; 1660 align-items: center; 1661 justify-content: center 1662 } 1663 1664 .home-carousel .slick-slider .slick-dots li button { 1665 width: 1rem; 1666 height: .75rem 1667 } 1668 1669 .home-carousel .slick-slider .slick-dots li button:before { 1670 width: 1rem; 1671 height: .75rem; 1672 opacity: .5; 1673 font-size: .5rem; 1674 line-height: normal; 1675 color: #fff 1676 } 1677
1678 .home-carousel .slick-slider .slick-dots li.slick-active button:before { 1679 opacity: 1 1680 } 1681 1682 .home-carousel .slick-slider .slick-slide { 1683 height: unset!important 1684 } 1685 1686 .home-carousel .slick-slider .slide { 1687 display: block; 1688 width: 100%; 1689 height: 100%; 1690 -o-object-fit: cover; 1691 object-fit: cover; 1692 pointer-events: none 1693 } 1694 1695 i[data-v-1272be00] { 1696 margin-right: .5rem 1697 } 1698 1699 .running-text { 1700 position: relative; 1701 display: flex; 1702 align-items: center; 1703 font-size: .875rem; 1704 padding: .5rem 0 .5rem 1rem 1705 } 1706 1707 .running-text marquee { 1708 margin-left: .5rem 1709 } 1710 1711 .running-text:after,.running-text:before { 1712 position: absolute; 1713 top: 0; 1714 width: 50px; 1715 height: 100%; 1716 content: ""; 1717 z-index: 2; 1718 pointer-events: none 1719 } 1720 1721 .running-text:before { 1722 left: 2rem 1723 } 1724 1725 .running-text:after { 1726 right: 0 1727 } 1728 1729 .running-text--light { 1730 background-color: #010103 1731 } 1732 1733 .running-text--light:before { 1734 background: linear-gradient(90deg,#010103 0,rgba(41,50,60,0)) 1735 } 1736 1737 .running-text--light:after { 1738 background: linear-gradient(270deg,#010103 0,rgba(41,50,60,0)) 1739 } 1740 1741 .running-text--primary { 1742 background-color: #1376D1 1743 } 1744 1745 .running-text--primary:before { 1746 background: linear-gradient(90deg,#1376D1 0,rgba(23,30,38,0)) 1747 } 1748 1749 .running-text--primary:after { 1750 background: linear-gradient(270deg,#1376D1 0,rgba(23,30,38,0)) 1751 } 1752 1753 .running-text--d { 1754 overflow: hidden; 1755 margin-bottom: .5rem; 1756 border-radius: 5px 1757 } 1758 1759 .app-menu[data-v-9cfb8622] { 1760 position: relative; 1761 left: -.5rem; 1762 z-index: 1; 1763 overflow: hidden; 1764 width: calc(100% + 1rem) 1765 } 1766 1767 .app-menu--primary[data-v-9cfb8622] { 1768 background-color: #1376D1 1769 } 1770 1771 .app-menu--dark[data-v-9cfb8622] { 1772 background-color: #010103 1773 } 1774 1775 .app-menu[data-v-9cfb8622]:after,.app-menu[data-v-9cfb8622]:before { 1776 position: absolute; 1777 top: 0; 1778 opacity: 0; 1779 z-index: 2; 1780 content: ""; 1781 width: 50px; 1782 pointer-events: none; 1783 height: calc(100% + 20px); 1784 transition: opacity .2s ease 1785 } 1786 1787 .app-menu[data-v-9cfb8622]:before { 1788 left: 0; 1789 background: linear-gradient(90deg,#010103 0,rgba(16,19,23,0)) 1790 } 1791 1792 .app-menu[data-v-9cfb8622]:after { 1793 right: 0; 1794 background: linear-gradient(270deg,#010103 0,rgba(16,19,23,0)) 1795 } 1796 1797 .app-menu--shadow-end[data-v-9cfb8622]:after,.app-menu--shadow-start[data-v-9cfb8622]:before { 1798 opacity: 1 1799 } 1800 1801 .app-menu ul[data-v-9cfb8622] { 1802 display: flex; 1803 align-items: center; 1804 overflow: hidden; 1805 overflow-x: scroll; 1806 overflow-x: overlay; 1807 scroll-behavior: smooth; 1808 -ms-scroll-snap-type: x mandatory; 1809 scroll-snap-type: x mandatory; 1810 scrollbar-width: none; 1811 -ms-overflow-style: none 1812 } 1813 1814 .app-menu ul[data-v-9cfb8622]::-webkit-scrollbar {
1815 display: none 1816 } 1817 1818 .app-menu ul li[data-v-9cfb8622] { 1819 scroll-snap-align: start 1820 } 1821 1822 .app-menu ul .app-menu__observer[data-v-9cfb8622] { 1823 display: block; 1824 width: 1px; 1825 height: 1px; 1826 flex-shrink: 0 1827 } 1828 1829 .app-menu ul .app-menu__item[data-v-9cfb8622] { 1830 flex: 0 0 20%; 1831 padding: 0 .25rem 1832 } 1833 1834 .app-menu ul .app-menu__item a[data-v-9cfb8622] { 1835 position: relative; 1836 font-size: .75rem; 1837 font-weight: 700; 1838 padding: 1rem 0; 1839 display: flex; 1840 flex-direction: column; 1841 align-items: center; 1842 justify-content: center 1843 } 1844 1845 .app-menu ul .app-menu__item a span[data-v-9cfb8622] { 1846 display: block; 1847 margin-top: .5rem 1848 } 1849 1850 .app-menu ul .app-menu__item a .app-menu--active[data-v-9cfb8622] { 1851 position: absolute; 1852 bottom: -1rem 1853 } 1854 1855 .app-menu ul .app-menu__item a.app-link--active[data-v-9cfb8622] { 1856 color: #1376D1 1857 } 1858 1859 .app-menu ul .app-menu__item a.app-link--active .app-menu--active[data-v-9cfb8622] { 1860 bottom: 0 1861 } 1862 1863 .app-menu ul .app-menu__item--font-large a[data-v-9cfb8622] { 1864 font-size: .875rem 1865 } 1866 1867 .app-menu ul .app-menu__item--font-large a .app-menu--active[data-v-9cfb8622] { 1868 bottom: -1.25rem 1869 } 1870 1871 @media(min-width: 640px) { 1872 .app-menu ul[data-v-9cfb8622] { 1873 justify-content:space-evenly 1874 } 1875 1876 .app-menu ul .app-menu__item[data-v-9cfb8622] { 1877 flex: unset 1878 } 1879 } 1880 1881 .app-menu--d[data-v-9cfb8622] { 1882 width: 100%; 1883 left: unset; 1884 margin-top: -.5rem 1885 } 1886 1887 .app-menu--d ul[data-v-9cfb8622] { 1888 display: flex; 1889 align-items: center; 1890 justify-content: center 1891 } 1892 1893 .app-menu--d ul .app-menu__item[data-v-9cfb8622] { 1894 margin: 0 1rem 1895 } 1896 1897 .brand-icon { 1898 display: block 1899 } 1900 1901 .brand-icon--xs { 1902 width: 1.5rem; 1903 height: 1.5rem 1904 } 1905 1906 .brand-icon--sm { 1907 width: 2rem; 1908 height: 2rem 1909 } 1910 1911 .brand-icon--md { 1912 width: 2.5rem; 1913 height: 2.5rem 1914 } 1915 1916 .brand-icon--lg { 1917 width: 5rem; 1918 height: 5rem 1919 } 1920 1921 .brand-icon--xl { 1922 width: 10rem; 1923 height: 10rem 1924 } 1925 1926 .brand-icon--xxl { 1927 width: 15rem; 1928 height: 15rem 1929 } 1930 1931 .brand-icon--responsive { 1932 width: 100%; 1933 height: 100%; 1934 -o-object-fit: contain; 1935 object-fit: contain 1936 } 1937 1938 .brand-icon--landscape { 1939 width: 100%; 1940 max-width: 10rem 1941 } 1942 1943 .card { 1944 position: relative; 1945 z-index: 2; 1946 left: -.5rem; 1947 overflow: hidden; 1948 padding-bottom: 1rem; 1949 width: calc(100% + 1rem); 1950 border-radius: 20px 20px 0 0 1951 } 1952 1953 @media(min-width: 1024px) { 1954 .card { 1955 width:100%; 1956 left: 0 1957 } 1958 } 1959 1960 .card--light { 1961 background-color: #010103 1962 } 1963 1964 .card--primary { 1965 background-color: #1376D1 1966 } 1967 1968 .card.card--primary .card__see-all { 1969 background-color: #010103 1970 } 1971 1972 .card .card__see-all { 1973 font-weight: 700; 1974 font-size: .75rem; 1975 padding: .2rem .75rem; 1976 background-color: #010103; 1977 border-radius: 10px 1978 } 1979 1980 .card__title a { 1981 display: flex; 1982 align-items: center; 1983 font-size: .875rem; 1984 font-weight: 700 1985 } 1986 1987 .card__title a img,.card__title a object,.card__title a svg { 1988 margin-right: .5rem 1989 } 1990 1991 .card__image { 1992 display: block; 1993 width: 100%; 1994 border-radius: 5px 1995 } 1996 1997 .card__body { 1998 max-width: 100% 1999 } 2000 2001 .card--full { 2002 display: grid; 2003 align-items: center; 2004 grid-template-rows: auto 1fr auto 2005 } 2006 2007 .card--full .card__header { 2008 padding: 1rem; 2009 display: flex; 2010 flex-direction: row; 2011 align-items: center; 2012 justify-content: space-between 2013 } 2014 2015 .card--full .card__title { 2016 margin-bottom: 0 2017 } 2018 2019 .card--full .card__cta { 2020 padding: .5rem 1rem 0 2021 } 2022 2023 @media(min-width: 1024px) { 2024 .card--full .card__cta { 2025 width:100%; 2026 max-width: 20rem; 2027 justify-self: center 2028 } 2029 2030 .card--full .card__header { 2031 padding: 0 2032 } 2033 } 2034 2035 .card--inline { 2036 display: grid; 2037 grid-gap: 1rem; 2038 padding: 0 1rem; 2039 border-radius: 0; 2040 align-items: center; 2041 grid-template-columns: repeat(6,minmax(0,1fr)) 2042 } 2043 2044 .card--inline .card__title { 2045 justify-self: start; 2046 padding: 1rem 0 2047 } 2048 2049 .card--inline .card__body { 2050 grid-column: span 4 2051 } 2052 2053 .card--inline .card__see-all { 2054 grid-column: 6/7; 2055 justify-self: center 2056 } 2057 2058 .card--split { 2059 display: grid; 2060 padding: 0 1rem; 2061 grid-gap: .75rem; 2062 grid-template-columns: repeat(2,minmax(0,1fr)) 2063 } 2064 2065 .card--split .card__title { 2066 padding: 1rem 0 2067 } 2068 2069 .card--split .card__cta { 2070 margin-top: .5rem 2071 } 2072 2073 .card--d.card--full .card__header { 2074 padding: 1rem 2075 } 2076 2077 .card--d.card--full .card__body { 2078 padding: 0 1rem 2079 } 2080 2081 .slot-carousel__group[data-v-60fb8dfc] { 2082 width: 100%; 2083 display: grid; 2084 flex-shrink: 0; 2085 align-content: start; 2086 grid-auto-flow: column; 2087 grid-template-rows: repeat(3,minmax(0,1fr)); 2088 grid-template-columns: repeat(5,minmax(0,1fr)) 2089 } 2090 2091 .slot-carousel__item-container[data-v-60fb8dfc] { 2092 display: grid; 2093 grid-template-rows: repeat(2,minmax(0,1fr)) 2094 } 2095 2096 .slot-carousel__item[data-v-60fb8dfc] { 2097 position: relative; 2098 display: flex; 2099 flex-direction: column; 2100 align-items: center; 2101 justify-content: center 2102 } 2103 2104 .slot-carousel__item span[data-v-60fb8dfc] { 2105 width: 100%; 2106 font-weight: 500; 2107 text-align: center; 2108 font-size: .625rem; 2109 margin-top: .125rem; 2110 overflow: hidden; 2111 white-space: nowrap; 2112 text-overflow: ellipsis 2113 } 2114 2115 @media(min-width: 1024px) { 2116 .slot-carousel__item span[data-v-60fb8dfc] { 2117 font-size:.75rem 2118 } 2119 } 2120 2121 .slot-carousel__item.app-link--exact-active[data-v-60fb8dfc] { 2122 color: #1376D1 2123 } 2124 2125 .slot-carousel__item.app-link--exact-active .slot-carousel__img-container[data-v-60fb8dfc] { 2126 border: 1px solid #1376D1 2127 } 2128 2129 .slot-carousel__img-container[data-v-60fb8dfc] { 2130 position: relative; 2131 width: 3.5rem; 2132 height: 3.5rem; 2133 display: flex; 2134 align-items: center; 2135 justify-content: center; 2136 background-color: #010103; 2137 border-radius: 50%; 2138 border: 1px solid #010103 2139 } 2140 2141 .slot-carousel__img-container img[data-v-60fb8dfc] { 2142 width: 100% 2143 } 2144 2145 .slot-carousel__img-container[data-v-60fb8dfc]:before { 2146 position: absolute; 2147 bottom: 0; 2148 left: 0; 2149 width: 100%; 2150 height: 30% 2151 } 2152 2153 .slot-carousel__img-container.provider--promo[data-v-60fb8dfc]:before { 2154 content: ""; 2155 filter: drop-shadow(.1rem .1rem .1rem #010103); 2156 background: 0 100%/contain no-repeat url(https://res.cloudinary.com/dosx2tegu/image/upload/v1765418716/provider-promo_eghpzm.svg) 2157 } 2158 2159 .slot-carousel__img-container.provider--new[data-v-60fb8dfc]:before { 2160 content: ""; 2161 filter: drop-shadow(.1rem .1rem .1rem #010103); 2162 background: 0 100%/contain no-repeat url(https://res.cloudinary.com/dosx2tegu/image/upload/v1765418753/provider-new_fezftb.svg) 2163 } 2164 2165 .slot-carousel__maintenance[data-v-60fb8dfc] { 2166 position: absolute; 2167 top: 0; 2168 right: -20%; 2169 width: 1.5rem; 2170 height: 1.5rem; 2171 padding: .1rem; 2172 display: flex; 2173 align-items: center; 2174 justify-content: center; 2175 background-color: #1376D1; 2176 border-radius: 50% 2177 } 2178 2179 .slot-carousel__maintenance i[data-v-60fb8dfc] { 2180 color: #fdd835 2181 } 2182 2183 .slot-carousel__by-habanero[data-v-60fb8dfc],.slot-carousel__by-pragmatic[data-v-60fb8dfc] { 2184 position: absolute; 2185 right: -22%; 2186 bottom: -5px; 2187 width: 2rem; 2188 height: 2rem 2189 } 2190 2191 .slot-carousel__by-habanero img[data-v-60fb8dfc],.slot-carousel__by-pragmatic img[data-v-60fb8dfc] { 2192 display: block; 2193 width: 100%; 2194 height: 100%; 2195 -o-object-fit: contain; 2196 object-fit: contain; 2197 filter: drop-shadow(0 0 .2rem #010103) 2198 } 2199 2200 .slot-carousel--d .slot-carousel__group[data-v-60fb8dfc] { 2201 grid-template-rows: unset; 2202 grid-template-columns: repeat(8,minmax(0,1fr)) 2203 } 2204 2205 .slot-carousel--d .slot-carousel__group--ud .slot-carousel__item[data-v-60fb8dfc]:nth-child(2n) { 2206 grid-row: unset 2207 } 2208 2209 .carousel[data-v-4f72f8a2] { 2210 display: grid; 2211 overflow: hidden; 2212 grid-template-columns: auto 1fr auto 2213 } 2214 2215 .carousel[data-v-4f72f8a2],.carousel__control[data-v-4f72f8a2] { 2216 position: relative; 2217 align-items: center 2218 } 2219 2220 .carousel__control[data-v-4f72f8a2] { 2221 display: flex; 2222 width: 1.5rem; 2223 height: 4rem; 2224 cursor: pointer; 2225 color: #1376D1; 2226 z-index: 2 2227 } 2228 2229 .carousel__control i[data-v-4f72f8a2] { 2230 z-index: 2 2231 } 2232 2233 .carousel__control.highlight[data-v-4f72f8a2]:before { 2234 position: absolute; 2235 color: #010103; 2236 font-size: 3.5rem; 2237 content: ""; 2238 font-family: "idn" 2239 } 2240 2241 .carousel__control--disabled[data-v-4f72f8a2] { 2242 pointer-events: none; 2243 color: hsla(0,0%,100%,.38) 2244 } 2245 2246 .carousel__prev[data-v-4f72f8a2] { 2247 padding-left: .25rem 2248 } 2249 2250 .carousel__prev[data-v-4f72f8a2]:before { 2251 left: 0 2252 } 2253 2254 .carousel__next[data-v-4f72f8a2] { 2255 padding-right: .25rem; 2256 justify-content: flex-end 2257 } 2258 2259 .carousel__next[data-v-4f72f8a2]:before { 2260 right: 0; 2261 transform: rotate(180deg) 2262 } 2263 2264 .carousel__inner[data-v-4f72f8a2] { 2265 overflow: hidden 2266 } 2267 2268 .carousel__container[data-v-4f72f8a2] { 2269 display: flex 2270 } 2271 2272 .carousel__container.transition[data-v-4f72f8a2] { 2273 transition: transform .3s ease-out 2274 } 2275 2276 .carousel--d .carousel__control[data-v-4f72f8a2] { 2277 width: auto; 2278 height: 2rem 2279 } 2280 2281 .casino-carousel ul { 2282 display: flex; 2283 overflow: hidden; 2284 overflow-x: scroll; 2285 overflow-x: overlay; 2286 scroll-behavior: smooth; 2287 -ms-scroll-snap-type: x mandatory; 2288 scroll-snap-type: x mandatory; 2289 scrollbar-width: none; 2290 -ms-overflow-style: none 2291 } 2292 2293 .casino-carousel ul::-webkit-scrollbar {
2294 display: none 2295 } 2296 2297 .casino-carousel__item { 2298 position: relative; 2299 flex: 0 0 28%; 2300 display: flex; 2301 align-items: flex-end; 2302 overflow: hidden; 2303 margin-right: .5rem; 2304 scroll-snap-align: center; 2305 border-radius: 5px; 2306 background-color: #1376D1 2307 } 2308 2309 .casino-carousel__item:nth-last-child(2) { 2310 margin-right: 0 2311 } 2312 2313 .casino-carousel__fill { 2314 width: 1rem; 2315 height: 10px; 2316 flex-shrink: 0 2317 } 2318 2319 .casino-game[data-v-223f59df] { 2320 position: relative; 2321 overflow: hidden; 2322 border-radius: 5px 2323 } 2324 2325 .casino-game--maintenance[data-v-223f59df] { 2326 pointer-events: none 2327 } 2328 2329 .casino-game a[data-v-223f59df] { 2330 cursor: pointer; 2331 position: relative; 2332 width: 100% 2333 } 2334 2335 .casino-game a .casino-game__container[data-v-223f59df] { 2336 position: relative; 2337 height: 0; 2338 padding-bottom: 162.03209%; 2339 display: flex; 2340 align-items: flex-end; 2341 overflow: hidden; 2342 border-radius: 5px 2343 } 2344 2345 .casino-game a .casino-game__container[data-v-223f59df]:before { 2346 position: absolute; 2347 left: 0; 2348 top: 0; 2349 z-index: 2; 2350 content: ""; 2351 width: 100%; 2352 height: 100%; 2353 pointer-events: none; 2354 border-radius: 5px; 2355 border: 2px solid #010103 2356 } 2357 2358 .casino-game a .casino-game__container[data-v-223f59df]:after { 2359 position: absolute; 2360 left: 0; 2361 bottom: 0; 2362 width: 100%; 2363 height: 50%; 2364 content: ""; 2365 background: linear-gradient(0deg,#010103,transparent 30%,transparent) 2366 } 2367 2368 .casino-game a .casino-game__container>img[data-v-223f59df] { 2369 position: absolute; 2370 width: 100%; 2371 left: 0; 2372 bottom: 0; 2373 opacity: 1; 2374 will-change: opacity; 2375 transition: opacity .2s ease 2376 } 2377 2378 .casino-game a .casino-game__container>img.placeholder[data-v-223f59df] { 2379 height: 100%; 2380 -o-object-fit: contain; 2381 object-fit: contain 2382 } 2383 2384 .casino-game a .casino-game__maintenance[data-v-223f59df] { 2385 position: absolute; 2386 top: 0; 2387 left: 0; 2388 width: 100%; 2389 height: 100%; 2390 z-index: 2; 2391 padding: .5rem; 2392 display: flex; 2393 flex-direction: column; 2394 align-items: center; 2395 justify-content: center; 2396 background-color: rgba(23,30,38,.8) 2397 } 2398 2399 .casino-game a .casino-game__maintenance span[data-v-223f59df] { 2400 font-size: .75rem; 2401 text-align: center; 2402 font-weight: 500; 2403 margin-top: .25rem 2404 } 2405 2406 .casino-game a .casino-game__maintenance img[data-v-223f59df] { 2407 position: relative 2408 } 2409 2410 .casino-game--history-view[data-v-223f59df] { 2411 display: grid; 2412 grid-gap: 1rem; 2413 align-items: center; 2414 grid-template-columns: 2fr 3fr 2415 } 2416 2417 @media(min-width: 1024px) { 2418 .casino-game--history-view[data-v-223f59df] { 2419 grid-template-columns:1fr 5fr 2420 } 2421 } 2422 2423 .casino-game--dark a>.casino-game__container[data-v-223f59df]:before { 2424 border-color: #010103 2425 } 2426 2427 .casino-game--promo a>.casino-game__container[data-v-223f59df]:before { 2428 border: 2px solid #139c44 2429 } 2430 2431 .casino-game--promo[data-v-223f59df]:not(.casino-game--history-view):after { 2432 position: absolute; 2433 right: 0; 2434 bottom: -1px; 2435 z-index: 3; 2436 content: attr(data-flag); 2437 text-transform: uppercase; 2438 font-weight: 700; 2439 font-style: italic; 2440 font-size: .5rem; 2441 padding: .25rem .5rem; 2442 background: 50%/contain no-repeat url(https://res.cloudinary.com/dosx2tegu/image/upload/v1765418794/promo_awb2oj.svg) 2443 } 2444 2445 .casino-game--new a .casino-game__container[data-v-223f59df]:before { 2446 border: 2px solid #ff4343 2447 } 2448 2449 .casino-game--new[data-v-223f59df]:not(.casino-game--history-view):after { 2450 position: absolute; 2451 right: 0; 2452 bottom: -1px; 2453 z-index: 3; 2454 min-width: 3rem; 2455 content: attr(data-flag); 2456 text-transform: uppercase; 2457 font-weight: 700; 2458 font-style: italic; 2459 font-size: .5rem; 2460 text-align: center; 2461 padding: .25rem .5rem; 2462 background: 50%/contain no-repeat url(https://res.cloudinary.com/dosx2tegu/image/upload/v1765418835/new_cgbw1n.svg) 2463 } 2464 2465 .casino-game--special a .casino-game__container[data-v-223f59df]:before { 2466 border: 2px solid #1376D1 2467 } 2468 2469 .casino-game--special[data-v-223f59df]:not(.casino-game--history-view):after { 2470 position: absolute; 2471 right: 0; 2472 top: -1px; 2473 z-index: 3; 2474 content: attr(data-flag); 2475 text-transform: uppercase; 2476 font-weight: 700; 2477 font-style: italic; 2478 font-size: .5rem; 2479 padding: .25rem .5rem; 2480 background: 50%/contain no-repeat url(https://res.cloudinary.com/dosx2tegu/image/upload/v1765418864/special.b3be628_xk5jiv.svg) 2481 } 2482 2483 .casino-game.casino-game--new.casino-game--special a .casino-game__container[data-v-223f59df]:before { 2484 border-color: #f6004d 2485 } 2486 2487 .casino-game.casino-game--new.casino-game--special[data-v-223f59df]:not(.casino-game--history-view):after { 2488 position: absolute; 2489 right: 0; 2490 top: -1px; 2491 bottom: unset; 2492 z-index: 3; 2493 color: #fff; 2494 content: attr(data-flag); 2495 text-transform: uppercase; 2496 font-weight: 700; 2497 font-style: italic; 2498 font-size: .5rem; 2499 padding: .25rem .5rem; 2500 background: 50%/contain no-repeat url(https://res.cloudinary.com/dosx2tegu/image/upload/v1765418916/special-alt_herxfz.svg) 2501 } 2502 2503 .casino-game__provider[data-v-223f59df] { 2504 display: block; 2505 left: 0; 2506 bottom: 0; 2507 padding: .25rem .375rem 2508 } 2509 2510 .casino-game__name[data-v-223f59df],.casino-game__provider[data-v-223f59df] { 2511 position: absolute; 2512 width: 100%; 2513 font-weight: 700; 2514 font-size: .5rem; 2515 color: #fff 2516 } 2517 2518 .casino-game__name[data-v-223f59df] { 2519 display: none; 2520 top: 2rem; 2521 z-index: 2; 2522 padding: 0 .5rem; 2523 text-align: center 2524 } 2525 2526 .casino-game__count[data-v-223f59df] { 2527 min-width: 1.5rem; 2528 font-weight: 700; 2529 font-size: .5rem; 2530 padding: 1px; 2531 text-align: center; 2532 color: #fff; 2533 border-radius: 5px; 2534 background-color: #010103; 2535 border: 2px solid #010103;
2536 border-top: 4px solid #010103 2537 } 2538 2539 .casino-game__count[data-v-223f59df],.casino-game__language[data-v-223f59df] { 2540 position: absolute; 2541 z-index: 4; 2542 top: .25rem; 2543 left: .25rem 2544 } 2545 2546 .casino-game__language[data-v-223f59df] { 2547 width: 1rem; 2548 height: 1rem; 2549 border-radius: 50% 2550 } 2551 2552 .casino-game__language img[data-v-223f59df] { 2553 display: block; 2554 width: 100%; 2555 height: 100% 2556 } 2557 2558 .casino-game__skeleton[data-v-223f59df] { 2559 position: absolute; 2560 top: 0; 2561 left: 0; 2562 width: 100%; 2563 height: 100%; 2564 overflow: hidden; 2565 background-color: #1376D1 2566 } 2567 2568 .casino-game__skeleton[data-v-223f59df]:before { 2569 content: ""; 2570 display: block; 2571 position: absolute; 2572 left: -150px; 2573 top: 0; 2574 height: 100%; 2575 width: 100%; 2576 -webkit-animation: skeleton 1s cubic-bezier(.4,0,.2,1) infinite; 2577 animation: skeleton 1s cubic-bezier(.4,0,.2,1) infinite; 2578 background: linear-gradient(90deg,transparent 0,#010103 50%,transparent) 2579 } 2580 2581 .casino-game__placeholder[data-v-223f59df] { 2582 position: absolute; 2583 top: 0; 2584 left: 0; 2585 opacity: 0; 2586 height: 100%; 2587 width: 100%; 2588 display: flex; 2589 align-items: center; 2590 justify-content: center; 2591 padding: .5rem; 2592 background-color: #1376D1; 2593 will-change: opacity; 2594 transition: opacity .2s ease 2595 } 2596 2597 .casino-game__placeholder img[data-v-223f59df] { 2598 display: block; 2599 width: 3.5rem; 2600 height: 3.5rem; 2601 -o-object-fit: contain; 2602 object-fit: contain 2603 } 2604 2605 @media(min-width: 1024px) { 2606 .casino-game__placeholder img[data-v-223f59df] { 2607 width:4rem; 2608 height: 4rem 2609 } 2610 } 2611 2612 .casino-game__history[data-v-223f59df] { 2613 display: grid; 2614 grid-gap: .5rem; 2615 grid-template-columns: repeat(2,minmax(0,1fr)) 2616 } 2617 2618 .casino-game__history>a[data-v-223f59df] { 2619 cursor: pointer 2620 } 2621 2622 .casino-game__history h5[data-v-223f59df] { 2623 grid-row: 1/2; 2624 grid-column: 1/-1; 2625 overflow: hidden; 2626 white-space: nowrap; 2627 text-overflow: ellipsis 2628 } 2629 2630 .casino-game__history p[data-v-223f59df] { 2631 grid-column: 1/2; 2632 font-size: .75rem 2633 } 2634 2635 .casino-game__history a[data-v-223f59df] { 2636 grid-row: 2/5; 2637 grid-column: 2/3; 2638 align-self: end 2639 } 2640 2641 @media(min-width: 1024px) { 2642 .casino-game__history h5[data-v-223f59df] { 2643 grid-column:1/2 2644 } 2645 2646 .casino-game__history a[data-v-223f59df] { 2647 grid-row: 1/5; 2648 justify-self: end; 2649 align-self: center 2650 } 2651 } 2652 2653 .casino-game--d.casino-game--new[data-v-223f59df]:after,.casino-game--d.casino-game--promo[data-v-223f59df]:after { 2654 bottom: -2px; 2655 min-width: 80px; 2656 font-size: .75rem; 2657 padding: .375rem .75rem 2658 } 2659 2660 .casino-game--d.casino-game--special[data-v-223f59df]:after { 2661 top: -2px; 2662 min-width: 80px; 2663 font-size: .75rem; 2664 text-align: center; 2665 padding: .375rem .75rem 2666 } 2667 2668 .casino-game--d .casino-game__name[data-v-223f59df],.casino-game--d .casino-game__provider[data-v-223f59df] { 2669 font-size: .675rem 2670 } 2671 2672 .casino-game--d .casino-game__count[data-v-223f59df] { 2673 top: .5rem; 2674 left: .5rem; 2675 min-width: 2rem; 2676 padding: .125rem; 2677 font-size: .75rem 2678 } 2679 2680 .casino-game--d .casino-game__language[data-v-223f59df] { 2681 top: .5rem; 2682 left: .5rem; 2683 width: 1.5rem; 2684 height: 1.5rem 2685 } 2686 2687 .casino-game.casino-game--d.casino-game--special.casino-game--new[data-v-223f59df]:after { 2688 top: -2px; 2689 font-size: .75rem; 2690 padding: .375rem .75rem 2691 } 2692
2693 .arcade-carousel--light .carousel__control.highlight:before { 2694 color: #010103 2695 } 2696 2697 .arcade-carousel ul[data-v-3615b381] { 2698 display: grid; 2699 width: 100%; 2700 flex-shrink: 0; 2701 align-content: start; 2702 grid-auto-flow: column; 2703 grid-auto-columns: 20% 2704 } 2705 2706 .arcade-carousel__item[data-v-3615b381] { 2707 position: relative; 2708 display: flex; 2709 flex-direction: column; 2710 align-items: center; 2711 justify-content: center 2712 } 2713 2714 .arcade-carousel__item span[data-v-3615b381] { 2715 width: 100%; 2716 font-weight: 500; 2717 text-align: center; 2718 font-size: .625rem; 2719 margin-top: .125rem; 2720 overflow: hidden; 2721 white-space: nowrap; 2722 text-overflow: ellipsis 2723 } 2724 2725 @media(min-width: 1024px) { 2726 .arcade-carousel__item span[data-v-3615b381] { 2727 font-size:.75rem 2728 } 2729 } 2730 2731 .arcade-carousel__item.app-link--exact-active[data-v-3615b381] { 2732 color: #1376D1 2733 } 2734 2735 .arcade-carousel__item.app-link--exact-active .arcade-carousel__img-container[data-v-3615b381] { 2736 border: 1px solid #1376D1 2737 } 2738 2739 .arcade-carousel__img-container[data-v-3615b381] { 2740 position: relative; 2741 width: 3.5rem; 2742 height: 3.5rem; 2743 display: flex; 2744 align-items: center; 2745 justify-content: center; 2746 border-radius: 50% 2747 } 2748 2749 .arcade-carousel__img-container img[data-v-3615b381] { 2750 width: 100% 2751 } 2752 2753 .arcade-carousel__img-container[data-v-3615b381]:before { 2754 position: absolute; 2755 bottom: 0; 2756 left: 0; 2757 width: 100%; 2758 height: 30% 2759 } 2760 2761 .arcade-carousel__img-container.provider--promo[data-v-3615b381]:before { 2762 content: ""; 2763 filter: drop-shadow(.1rem .1rem .1rem #010103); 2764 background: 0 100%/contain no-repeat url(https://res.cloudinary.com/dosx2tegu/image/upload/v1765418716/provider-promo_eghpzm.svg) 2765 } 2766 2767 .arcade-carousel__img-container.provider--new[data-v-3615b381]:before { 2768 content: ""; 2769 filter: drop-shadow(.1rem .1rem .1rem #010103); 2770 background: 0 100%/contain no-repeat url(https://res.cloudinary.com/dosx2tegu/image/upload/v1765418753/provider-new_fezftb.svg) 2771 } 2772 2773 .arcade-carousel__maintenance[data-v-3615b381] { 2774 position: absolute; 2775 top: 0; 2776 right: -20%; 2777 width: 1.5rem; 2778 height: 1.5rem; 2779 padding: .1rem; 2780 display: flex; 2781 align-items: center; 2782 justify-content: center; 2783 background-color: #1376D1; 2784 border-radius: 50% 2785 } 2786 2787 .arcade-carousel__maintenance i[data-v-3615b381] { 2788 color: #fdd835 2789 } 2790 2791 .arcade-carousel__by-idn[data-v-3615b381] { 2792 position: absolute; 2793 right: -2px; 2794 bottom: -2px; 2795 width: 1.25rem; 2796 height: 1.25rem; 2797 background-color: #fff; 2798 border-radius: 50% 2799 } 2800 2801 .arcade-carousel__by-idn img[data-v-3615b381] { 2802 position: relative; 2803 left: 1.5px; 2804 display: block; 2805 width: 100%; 2806 height: 100%; 2807 -o-object-fit: contain; 2808 object-fit: contain 2809 } 2810 2811 .arcade-carousel--dark .arcade-carousel__img-container[data-v-3615b381] { 2812 background-color: #010103; 2813 border: 1px solid #010103 2814 } 2815
2816 .arcade-carousel--light .carousel__control.highlight[data-v-3615b381]:before { 2817 color: #010103 2818 } 2819 2820 .arcade-carousel--light .arcade-carousel__img-container[data-v-3615b381] { 2821 background-color: #010103; 2822 border: 1px solid #010103 2823 } 2824 2825 .arcade-carousel--d ul[data-v-3615b381] { 2826 grid-auto-columns: 12.5% 2827 } 2828 2829 .footer-banner { 2830 padding: .5rem; 2831 background-color: #1376D1; 2832 border-top: 1px solid hsla(0,0%,100%,.1) 2833 } 2834 2835 .footer-banner a { 2836 overflow: hidden; 2837 height: 100%; 2838 max-height: 8rem 2839 } 2840 2841 .footer-banner img { 2842 display: block; 2843 width: 100%; 2844 height: 100%; 2845 -o-object-fit: contain; 2846 object-fit: contain 2847 } 2848 2849 .footer-banner--d { 2850 margin-bottom: -.5rem 2851 } 2852 2853 .footer-text[data-v-bd310b88] { 2854 font-size: .75rem; 2855 background-color: #1376D1; 2856 border-top: 1px solid hsla(0,0%,100%,.1) 2857 } 2858 2859 .footer-text__container[data-v-bd310b88] { 2860 position: relative; 2861 display: flex; 2862 justify-content: center; 2863 margin: 0 auto; 2864 max-height: 8rem; 2865 padding: 1rem 1rem 2rem; 2866 max-width: 1200px; 2867 transition: max-height .2s ease; 2868 border-bottom: 1px solid hsla(0,0%,100%,.1) 2869 } 2870 2871 .footer-text article[data-v-bd310b88] { 2872 position: relative; 2873 width: 100%; 2874 overflow: hidden 2875 } 2876 2877 .footer-text article[data-v-bd310b88]:after { 2878 position: absolute; 2879 bottom: 0; 2880 content: ""; 2881 width: 100%; 2882 height: 24px; 2883 background: linear-gradient(0deg,#1376D1,rgba(23,30,38,0)) 2884 } 2885 2886 .footer-text button[data-v-bd310b88] { 2887 position: absolute; 2888 bottom: .5rem; 2889 color: #1376D1; 2890 font-size: .75rem 2891 } 2892 2893 .footer-text--collapsed[data-v-bd310b88] { 2894 max-height: 1000px 2895 } 2896 2897 .footer-text--collapsed article[data-v-bd310b88]:after { 2898 content: unset 2899 } 2900 2901 .footer-text--d .footer-text__container[data-v-bd310b88] { 2902 max-height: 8rem 2903 } 2904 2905 .footer-text--d .footer-text--collapsed[data-v-bd310b88] { 2906 max-height: 1000px 2907 } 2908 2909 .app-footer { 2910 position: relative; 2911 padding: 1rem 0; 2912 color: #fff; 2913 background-color: #1376D1; 2914 margin-bottom: calc(60px + env(safe-area-inset-bottom)) 2915 } 2916 2917 .app-footer__container { 2918 margin: 0 auto; 2919 padding: 0 1rem; 2920 max-width: 1200px 2921 } 2922 2923 .app-footer section { 2924 margin-bottom: 1rem; 2925 padding-bottom: 1rem; 2926 border-bottom: 1px solid hsla(0,0%,100%,.1) 2927 } 2928 2929 .app-footer section h5 { 2930 margin-bottom: .75rem 2931 } 2932 2933 .app-footer__links { 2934 display: grid; 2935 grid-row-gap: 1rem; 2936 grid-template-columns: repeat(2,minmax(0,1fr)) 2937 } 2938 2939 .app-footer__link-group a,.app-footer__link-group button { 2940 color: hsla(0,0%,100%,.6); 2941 font-size: .75rem 2942 } 2943 2944 .app-footer__link-group[data-type=legal] li:last-child a:after { 2945 content: ""; 2946 font-family: idn 2947 } 2948 2949 .app-footer__link-group[data-type=brand] li:last-child a:after,.app-footer__link-group[data-type=brand] li:last-child button:after { 2950 content: ""; 2951 font-family: idn; 2952 margin-left: .25rem 2953 } 2954 2955 .app-footer__link-group--social ul { 2956 display: flex 2957 } 2958 2959 .app-footer__link-group--social ul li { 2960 margin-right: .75rem 2961 } 2962 2963 .app-footer__link-group--social ul li:last-child { 2964 margin-right: 0 2965 } 2966 2967 .app-footer section.app-footer__text { 2968 position: relative; 2969 display: flex; 2970 justify-content: center; 2971 padding-bottom: 2rem; 2972 box-sizing: content-box; 2973 transition: max-height .2s ease 2974 } 2975 2976 .app-footer section.app-footer__text article { 2977 position: relative; 2978 overflow: hidden 2979 } 2980 2981 .app-footer section.app-footer__text article p { 2982 margin: .5rem 0; 2983 font-size: .75rem; 2984 color: hsla(0,0%,100%,.6) 2985 } 2986 2987 .app-footer section.app-footer__text article p:last-child { 2988 margin-bottom: 0 2989 } 2990 2991 .app-footer section.app-footer__text article ol,.app-footer section.app-footer__text article ul { 2992 list-style-position: inside 2993 } 2994 2995 .app-footer section.app-footer__text article:after { 2996 position: absolute; 2997 bottom: 0; 2998 content: ""; 2999 width: 100%; 3000 height: 24px; 3001 background: linear-gradient(0deg,#1376D1,rgba(23,30,38,0)) 3002 } 3003 3004 .app-footer section.app-footer__text button { 3005 position: absolute; 3006 bottom: .5rem; 3007 color: #1376D1; 3008 font-size: .75rem 3009 } 3010 3011 .app-footer section.app-footer__text--collapsed { 3012 padding-bottom: calc(.5rem + 24px) 3013 } 3014 3015 .app-footer section.app-footer__text--collapsed article:after { 3016 content: unset 3017 } 3018 3019 .app-footer__idn h5 { 3020 color: #1376D1; 3021 text-align: center; 3022 margin-bottom: 1rem 3023 } 3024 3025 .app-footer__idn ul,.app-footer__idn ul a { 3026 display: flex; 3027 align-items: center; 3028 justify-content: center 3029 } 3030 3031 .app-footer__idn ul a { 3032 padding: .5rem 3033 } 3034 3035 .app-footer__idn ul a img { 3036 height: 1rem 3037 } 3038 3039 .app-footer__partners h5 { 3040 color: #1376D1; 3041 text-align: center; 3042 margin-bottom: 1rem 3043 } 3044 3045 .app-footer__partners ul { 3046 display: grid; 3047 grid-template-columns: repeat(auto-fit,minmax(5rem,1fr)) 3048 } 3049 3050 .app-footer__partners ul li { 3051 flex-grow: 1; 3052 min-width: 15%; 3053 align-items: center 3054 } 3055 3056 .app-footer__partners ul li a { 3057 padding: .5rem; 3058 font-size: .75rem; 3059 white-space: nowrap; 3060 color: hsla(0,0%,100%,.6); 3061 display: flex; 3062 flex-direction: column; 3063 align-items: center; 3064 justify-content: center 3065 } 3066 3067 .app-footer__partners ul li a i { 3068 color: #1376D1; 3069 margin-bottom: .25rem 3070 } 3071 3072 .app-footer__payment h5 { 3073 color: #1376D1; 3074 text-align: center; 3075 margin-bottom: 1rem 3076 } 3077 3078 .app-footer__payment ul { 3079 display: grid; 3080 grid-gap: .25rem; 3081 grid-auto-rows: 2.5rem; 3082 grid-auto-flow: dense; 3083 grid-template-columns: repeat(6,minmax(0,1fr)) 3084 } 3085 3086 .app-footer__payment ul li { 3087 display: flex; 3088 align-items: center; 3089 justify-content: center; 3090 padding: .5rem; 3091 overflow: hidden; 3092 border-radius: 5px; 3093 border: 1px solid #010103 3094 } 3095 3096 .app-footer__payment ul li.bank-logo--h { 3097 grid-column: span 2 3098 } 3099 3100 .app-footer__payment ul li img { 3101 width: 100%; 3102 height: 100%; 3103 -o-object-fit: contain; 3104 object-fit: contain 3105 } 3106 3107 .app-footer__licence img { 3108 width: 100%; 3109 max-height: 22px; 3110 -o-object-fit: contain; 3111 object-fit: contain 3112 } 3113
3114 .app-footer__copyright { 3115 font-size: .75rem; 3116 text-align: center 3117 } 3118 3119 .app-footer--d { 3120 margin-bottom: 0; 3121 margin-top: -.5rem 3122 } 3123 3124 .app-footer--d .app-footer__links { 3125 grid-template-columns: repeat(4,minmax(0,1fr)) 3126 } 3127 3128 .app-footer--d .app-footer__link-group--social { 3129 justify-self: end 3130 } 3131 3132 .app-footer--d .app-footer__idn h5 { 3133 text-align: left 3134 } 3135 3136 .app-footer--d .app-footer__idn ul { 3137 justify-content: space-evenly 3138 } 3139 3140 .app-footer--d .app-footer__idn ul img { 3141 width: auto; 3142 height: 2rem 3143 } 3144 3145 .app-footer--d .app-footer__idn ul a:hover img { 3146 filter: grayscale(1) 3147 } 3148 3149 .app-footer--d .app-footer__partners h5,.app-footer--d .app-footer__payment h5 { 3150 text-align: left; 3151 margin-bottom: .5rem 3152 } 3153 3154 .app-footer--d .app-footer__payment ul { 3155 grid-template-columns: repeat(auto-fit,minmax(4rem,1fr)) 3156 } 3157 3158 .sticky-footer { 3159 position: relative; 3160 width: 100%; 3161 bottom: 0; 3162 z-index: 99; 3163 background-color: #010103; 3164 border-top: 1px solid #010103; 3165 padding-bottom: env(safe-area-inset-bottom); 3166 height: calc(60px + env(safe-area-inset-bottom)) 3167 } 3168 3169 @media(min-height: 550px) { 3170 .sticky-footer { 3171 position:fixed 3172 } 3173 } 3174 3175 .sticky-footer__nav>ul { 3176 display: grid; 3177 grid-template-columns: repeat(5,minmax(0,1fr)) 3178 } 3179 3180 .sticky-footer__nav>ul .btn { 3181 width: 100%; 3182 border-radius: 0; 3183 font-weight: 700; 3184 font-size: .75rem; 3185 display: flex; 3186 flex-direction: column; 3187 align-items: center; 3188 justify-content: center; 3189 height: 60px 3190 } 3191 3192 .sticky-footer__nav>ul .btn span { 3193 margin-top: .25rem 3194 } 3195 3196 .sticky-footer__nav>ul .btn.app-link--active { 3197 color: #1376D1 3198 } 3199 3200 .sticky-footer__nav--user>ul { 3201 grid-template-columns: repeat(6,minmax(0,1fr)) 3202 } 3203 3204 .sticky-footer__balance { 3205 overflow: hidden; 3206 font-weight: 500; 3207 font-size: .75rem; 3208 padding: 0 .25rem; 3209 color: #fff; 3210 grid-column: span 2; 3211 display: flex; 3212 flex-direction: column; 3213 align-items: center; 3214 justify-content: center; 3215 background-color: #1376D1 3216 } 3217 3218 .sticky-footer__balance span { 3219 max-width: 100%; 3220 overflow: hidden; 3221 white-space: nowrap; 3222 text-overflow: ellipsis 3223 } 3224 3225 .sticky-footer__balance .sticky-footer__username { 3226 width: 100%; 3227 font-weight: 700; 3228 margin-top: .25rem; 3229 display: flex; 3230 align-items: center; 3231 justify-content: center 3232 } 3233 3234 .sticky-footer__balance .sticky-footer__username i { 3235 margin-right: .25rem 3236 } 3237 3238 .app-drawer__root[data-v-05d51de6] { 3239 position: fixed; 3240 pointer-events: none; 3241 z-index: 999; 3242 top: 90px; 3243 right: 0; 3244 bottom: 0; 3245 left: 0 3246 } 3247 3248 .app-drawer__backdrop[data-v-05d51de6] { 3249 position: fixed; 3250 top: 0; 3251 right: 0; 3252 bottom: 0; 3253 left: 0 3254 } 3255 3256 .app-drawer__backdrop[data-v-05d51de6]:before { 3257 position: relative; 3258 top: 90px; 3259 display: block; 3260 content: ""; 3261 width: 100%; 3262 height: calc(100% - 90px); 3263 background-color: rgba(0,0,0,.5); 3264 -webkit-tap-highlight-color: transparent 3265 } 3266 3267 .app-drawer[data-v-05d51de6] { 3268 position: absolute; 3269 right: calc(-300px - 1rem); 3270 width: 300px; 3271 height: 100%; 3272 overflow-y: auto; 3273 overflow-y: overlay; 3274 background-color: #010103; 3275 transform: translateX(0); 3276 transition: transform 225ms cubic-bezier(.4,0,.2,1) 0ms; 3277 scrollbar-width: none; 3278 -ms-overflow-style: none; 3279 display: grid; 3280 grid-template-columns: 100%; 3281 grid-template-rows: auto 1fr auto 3282 } 3283 3284 .app-drawer[data-v-05d51de6]::-webkit-scrollbar {
3285 display: none 3286 } 3287 3288 .app-drawer--open[data-v-05d51de6] { 3289 pointer-events: all 3290 } 3291 3292 .app-drawer--open .app-drawer[data-v-05d51de6] { 3293 transform: translateX(calc(-300px - 1rem)) 3294 } 3295 3296 .drawer-fade-enter-active[data-v-05d51de6],.drawer-fade-leave-active[data-v-05d51de6] { 3297 transition: opacity 225ms cubic-bezier(.4,0,.2,1) 0ms 3298 } 3299 3300 .drawer-fade-enter[data-v-05d51de6],.drawer-fade-leave-to[data-v-05d51de6] { 3301 opacity: 0 3302 } 3303 3304 .app-drawer__header[data-v-05d51de6] { 3305 background-color: #010103 3306 } 3307 3308 .app-drawer__header ul[data-v-05d51de6] { 3309 display: grid; 3310 grid-gap: 1rem; 3311 padding: 1rem; 3312 grid-template-columns: repeat(4,minmax(0,1fr)) 3313 } 3314 3315 .app-drawer__header li[data-v-05d51de6] { 3316 flex: 0 0 25%; 3317 padding: .5rem 3318 } 3319 3320 .app-drawer__header a[data-v-05d51de6] { 3321 font-weight: 700; 3322 font-size: .75rem; 3323 display: flex; 3324 flex-direction: column; 3325 align-items: center; 3326 justify-content: center 3327 } 3328 3329 .app-drawer__header a span[data-v-05d51de6] { 3330 display: block; 3331 margin-top: .5rem; 3332 white-space: nowrap 3333 } 3334 3335 .app-drawer__header a.app-link--active[data-v-05d51de6] { 3336 color: #1376D1 3337 } 3338 3339 .app-drawer__nav__item .badge[data-v-05d51de6] { 3340 height: unset; 3341 padding: 0 .625rem 3342 } 3343 3344 .app-drawer__nav__item a[data-v-05d51de6],.app-drawer__nav__item button[data-v-05d51de6] { 3345 position: relative; 3346 width: 100%; 3347 display: flex; 3348 align-items: center; 3349 padding: 1rem 1rem 1rem .25rem; 3350 font-weight: 700; 3351 font-size: .875rem; 3352 color: #fff 3353 } 3354 3355 .app-drawer__nav__item a.app-link--exact-active[data-v-05d51de6],.app-drawer__nav__item button.app-link--exact-active[data-v-05d51de6] { 3356 color: #1376D1; 3357 background-color: rgba(13,191,187,.1) 3358 } 3359 3360 .app-drawer__nav__item a>div[data-v-05d51de6],.app-drawer__nav__item button>div[data-v-05d51de6] { 3361 position: absolute; 3362 width: 3rem; 3363 height: 100%; 3364 display: flex; 3365 align-items: center; 3366 justify-content: center 3367 } 3368 3369 .app-drawer__nav__item a i.dropdown-toggle[data-v-05d51de6],.app-drawer__nav__item button i.dropdown-toggle[data-v-05d51de6] { 3370 margin-left: auto 3371 } 3372 3373 .app-drawer__nav__item a span[data-v-05d51de6],.app-drawer__nav__item button span[data-v-05d51de6] { 3374 margin-left: 3rem 3375 } 3376 3377 @media(hover: hover)and (min-width:1024px) { 3378 .app-drawer__nav__item a[data-v-05d51de6]:hover,.app-drawer__nav__item button[data-v-05d51de6]:hover { 3379 color:#1376D1 3380 } 3381 } 3382 3383 .app-drawer__nav__item__dropdown[data-v-05d51de6] { 3384 overflow: hidden 3385 } 3386 3387 .app-drawer__nav__item__dropdown.dropdown-collapsed[data-v-05d51de6] { 3388 background-color: rgba(13,191,187,.1) 3389 } 3390 3391 .app-drawer__nav__item__dropdown.dropdown-collapsed>button[data-v-05d51de6] { 3392 color: #1376D1 3393 } 3394 3395 @media(hover: hover)and (min-width:1024px) { 3396 .app-drawer__nav__item__dropdown:hover>button[data-v-05d51de6] { 3397 color:#1376D1 3398 } 3399 } 3400 3401 .app-drawer__nav__item__dropdown ul[data-v-05d51de6] { 3402 background-color: rgba(0,0,0,.1); 3403 transition: height .2s ease 3404 } 3405 3406 .app-drawer__freespins ul[data-v-05d51de6] { 3407 display: grid; 3408 max-height: 0;
3409 grid-gap: 1px; 3410 overflow: hidden; 3411 background-color: #010103; 3412 transition: max-height .2s ease 3413 } 3414 3415 .app-drawer__freespins ul.app-drawer__freespins--collapsed[data-v-05d51de6] { 3416 max-height: 600px 3417 } 3418 3419 .app-drawer__freespins ul li[data-v-05d51de6] { 3420 display: grid; 3421 padding: .5rem 1rem; 3422 align-items: center; 3423 grid-column-gap: .25rem; 3424 grid-template-rows: auto auto; 3425 grid-template-columns: auto 3.5rem 3rem; 3426 background: linear-gradient(90deg,#010103 0,#010103) 3427 } 3428 3429 .app-drawer__freespins ul li .game-name[data-v-05d51de6] { 3430 font-weight: 700; 3431 font-size: .875rem; 3432 overflow: hidden; 3433 white-space: nowrap; 3434 text-overflow: ellipsis 3435 } 3436 3437 .app-drawer__freespins ul li .no-spins[data-v-05d51de6] { 3438 font-weight: 700; 3439 font-size: .75rem; 3440 grid-column: span 3 3441 } 3442 3443 .app-drawer__freespins ul li .fs-detail[data-v-05d51de6] { 3444 display: grid; 3445 font-size: .625rem 3446 } 3447 3448 .app-drawer__freespins ul li .fs-detail span[data-v-05d51de6]:first-child { 3449 font-weight: 600 3450 } 3451 3452 .app-drawer__freespins ul li em[data-v-05d51de6] { 3453 width: 100%; 3454 grid-row: 1/3; 3455 grid-column: 2/3; 3456 font-weight: 900; 3457 font-size: .75rem; 3458 font-style: normal; 3459 border-radius: 5px; 3460 padding: .25rem .375rem 3461 } 3462 3463 .app-drawer__freespins ul li a[data-v-05d51de6] { 3464 display: flex; 3465 align-items: center; 3466 justify-content: center; 3467 grid-row: 1/3; 3468 grid-column: 3/4; 3469 padding: .25rem .5rem; 3470 font-size: .75rem; 3471 font-weight: 700; 3472 border-radius: 5px; 3473 cursor: pointer 3474 } 3475 3476 @media(hover: hover)and (min-width:1024px) { 3477 .app-drawer__freespins ul li a[data-v-05d51de6]:hover { 3478 color:#fff; 3479 background-color: #a70b59 3480 } 3481 } 3482 3483 .app-drawer__freespins ul li.feature em[data-v-05d51de6] { 3484 font-size: .5rem; 3485 text-transform: uppercase 3486 } 3487 3488 .app-drawer__extra[data-v-05d51de6] { 3489 padding: 1rem; 3490 display: grid; 3491 grid-gap: 1rem; 3492 grid-template-columns: repeat(2,minmax(0,1fr)) 3493 } 3494 3495 .app-drawer__extra .btn[data-v-05d51de6]:nth-child(3) { 3496 grid-column: span 2 3497 } 3498 3499 .app-drawer__locale[data-v-05d51de6] { 3500 display: flex; 3501 align-items: center; 3502 justify-content: flex-end; 3503 padding: 1rem; 3504 font-size: .75rem; 3505 font-weight: 500 3506 } 3507 3508 .app-drawer__locale span[data-v-05d51de6] { 3509 margin-right: .5rem 3510 } 3511 3512 .app-drawer__locale ul[data-v-05d51de6] { 3513 display: flex 3514 } 3515 3516 .app-drawer__locale ul li[data-v-05d51de6]:first-child { 3517 margin-right: .5rem 3518 } 3519 3520 .app-drawer__locale ul li[data-v-05d51de6]:last-child { 3521 margin-right: 0 3522 } 3523 3524 .app-drawer__locale ul li a[data-v-05d51de6] { 3525 position: relative 3526 } 3527 3528 .app-drawer__locale ul li a img[data-v-05d51de6] { 3529 width: 100%; 3530 height: 100% 3531 } 3532 3533 .app-drawer__locale ul li a.app-drawer__locale--active[data-v-05d51de6] { 3534 border: 2px solid #1376D1 3535 } 3536 3537 .app-drawer--d.app-drawer__root[data-v-05d51de6] { 3538 top: 55px; 3539 right: 0; 3540 bottom: 0; 3541 left: 0 3542 } 3543 3544 .app-drawer--d .app-drawer__backdrop[data-v-05d51de6]:before { 3545 top: 55px; 3546 height: calc(100% - 53px) 3547 } 3548 3549 .app-drawer--d .app-drawer[data-v-05d51de6] { 3550 right: unset; 3551 left: calc(-300px - 1rem); 3552 transform: translateX(0) 3553 } 3554 3555 .app-drawer--d .app-drawer[data-v-05d51de6]::-webkit-scrollbar {
3556 width: .25rem 3557 } 3558 3559 .app-drawer--d .app-drawer[data-v-05d51de6]::-webkit-scrollbar-track { 3560 border-radius: 20px; 3561 background-color: #010103 3562 } 3563 3564 .app-drawer--d .app-drawer[data-v-05d51de6]::-webkit-scrollbar-thumb { 3565 border-radius: 20px; 3566 background-color: #fff 3567 } 3568 3569 .app-drawer--d.app-drawer--open .app-drawer[data-v-05d51de6] { 3570 transform: translateX(calc(300px + 1rem)) 3571 } 3572 3573 .modal[data-v-a03670f8] { 3574 position: fixed; 3575 display: flex; 3576 align-items: center; 3577 justify-content: center; 3578 z-index: 999 3579 } 3580 3581 .modal[data-v-a03670f8],.modal__backdrop[data-v-a03670f8] { 3582 top: 0; 3583 right: 0; 3584 bottom: 0; 3585 left: 0 3586 } 3587 3588 .modal__backdrop[data-v-a03670f8] { 3589 position: absolute; 3590 width: 100%; 3591 height: 100%; 3592 background-color: rgba(0,0,0,.8) 3593 } 3594
3595 .modal--full .modal__backdrop[data-v-a03670f8] { 3596 display: none 3597 } 3598 3599 .modal--full .modal__header[data-v-a03670f8] { 3600 height: 54px; 3601 padding: 0 1rem; 3602 background-color: #010103 3603 } 3604 3605 .modal--full .modal__root[data-v-a03670f8] { 3606 width: 100%; 3607 height: 100% 3608 } 3609 3610 .modal--full .modal__surface[data-v-a03670f8] { 3611 width: 100%; 3612 height: 100%; 3613 max-width: 100%; 3614 padding: 0; 3615 border-radius: 0 3616 } 3617 3618 .modal--full .modal__body[data-v-a03670f8] { 3619 display: block; 3620 width: 100%; 3621 height: 100%; 3622 padding-bottom: env(safe-area-inset-bottom) 3623 } 3624 3625 .modal__root[data-v-a03670f8] { 3626 position: relative; 3627 z-index: 2 3628 } 3629 3630 .modal__surface[data-v-a03670f8] { 3631 position: relative; 3632 min-width: 300px; 3633 max-width: 90vw; 3634 overflow: hidden; 3635 padding: 2rem 1rem; 3636 border-radius: 20px; 3637 background-color: #010103 3638 } 3639 3640 .modal__surface--inverse[data-v-a03670f8] { 3641 background-color: #fff 3642 } 3643 3644 .modal__surface--inverse .modal__header[data-v-a03670f8] { 3645 color: #000 3646 } 3647 3648 .modal__surface--reduced[data-v-a03670f8] { 3649 padding: .5rem; 3650 border-radius: 5px 3651 } 3652 3653 .modal__surface--notification[data-v-a03670f8] { 3654 width: 90vw; 3655 max-width: 600px; 3656 padding: 2rem 0 1rem; 3657 border-radius: 5px; 3658 background-color: #1376D1 3659 } 3660 3661 .modal__surface--no-padding[data-v-a03670f8] { 3662 padding: 0 3663 } 3664 3665 .modal__body[data-v-a03670f8] { 3666 display: flex; 3667 align-items: center 3668 } 3669 3670 .modal__body[data-v-a03670f8]>:first-child { 3671 flex-grow: 1 3672 } 3673 3674 .modal__close[data-v-a03670f8] { 3675 color: #fff; 3676 transition: color .2s ease 3677 } 3678 3679 .modal__close[data-v-a03670f8]:hover { 3680 color: #0e7f7b 3681 } 3682 3683 .modal__close--inverse[data-v-a03670f8] { 3684 color: #000 3685 } 3686 3687 .modal__close[data-v-a03670f8]:not(.modal__close--inline) { 3688 position: absolute; 3689 right: .75rem; 3690 top: .75rem 3691 } 3692 3693 .modal__close--inline[data-v-a03670f8] { 3694 margin-left: .5rem 3695 } 3696 3697 .modal__header[data-v-a03670f8] { 3698 color: #1376D1; 3699 min-height: 36px; 3700 padding: 0 1rem 1rem; 3701 display: flex; 3702 flex-direction: column; 3703 align-items: center; 3704 justify-content: center 3705 } 3706 3707 .modal__header h3[data-v-a03670f8] { 3708 text-align: center 3709 } 3710 3711 .modal__header i[data-v-a03670f8] { 3712 margin-bottom: .5rem 3713 } 3714
3715 .modal-fade-enter[data-v-a03670f8],.modal-fade-leave-to[data-v-a03670f8] { 3716 opacity: 0 3717 } 3718 3719 .modal-fade-enter-active[data-v-a03670f8],.modal-fade-leave-active[data-v-a03670f8] { 3720 transition: opacity .5s ease 3721 } 3722 3723 .floating[data-v-4a023200] { 3724 position: fixed; 3725 display: grid; 3726 left: .5rem; 3727 width: calc(100% - 1rem); 3728 z-index: 99; 3729 pointer-events: none; 3730 align-items: end; 3731 grid-template-columns: repeat(2,minmax(0,1fr)); 3732 bottom: calc(60px + env(safe-area-inset-bottom) + 3rem) 3733 } 3734 3735 .floating ul[data-v-4a023200] { 3736 position: relative; 3737 display: grid; 3738 grid-gap: .5rem 3739 } 3740 3741 .floating--left[data-v-4a023200] { 3742 grid-column: 1/2; 3743 justify-self: start 3744 } 3745 3746 .floating--right[data-v-4a023200] { 3747 grid-column: 2/3; 3748 justify-self: end 3749 } 3750 3751 3752 .floating a[data-v-4a023200] { 3753 display: block; 3754 width: 4rem; 3755 height: 4rem; 3756 pointer-events: all 3757 } 3758 3759 .floating a img[data-v-4a023200] { 3760 display: block; 3761 width: 100%; 3762 height: 100%; 3763 -o-object-fit: contain; 3764 object-fit: contain 3765 } 3766 3767 3768 </style> 3769 <!-- Google tag (gtag.js) -->
vendor: 64 bytes, lines 3769-3770
3769 3770<script async src="https://www.googletagmanager.com/gtag/js?id=
3770G-SMYHJF3TQ8
vendor: 12 bytes, line 3770
3770"></script>
3771<script> 3772
vendor: 134 bytes, lines 3772-3776
3772window.dataLayer = window.dataLayer || []; 3773 function gtag(){dataLayer.push(arguments);} 3774 gtag('js', new Date()); 3775 3776 gtag('config', '
3776G-SMYHJF3TQ8
vendor: 4 bytes, line 3776
3776');
3777</script>
3777 3778 3779 </head> 3780 <body class="" data-n-head="%7B%22class%22:%7B%22ssr%22:%22%22%7D%7D"> 3781 <noscript data-n-head="ssr" data-hid="gtm-noscript" data-pbody="true"></noscript> 3782 <div data-server-rendered="true" id="__app"> 3783 <!----> 3784 <div id="__layout"> 3785 <div class="layout--default"> 3786 <!----> 3787 <header class="app-header surface"> 3788 <!----> 3789 <div class="container--fluid" data-v-ced53b20=""> 3790 <div class="app-header__main" data-v-ced53b20=""> 3791 <div class="app-brand" data-v-ced53b20=""> 3792 <a href="https://hudsonsantiques.co.uk" aria-current="page" class="app-link--exact-active app-link--active"> 3793 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765420639/gc-game-logo-900x900_xp13oj.webp" alt="OCTOPLAY88" loading="lazy" class="app-logo"> 3794 </a> 3795 </div> 3796 <div class="app-header__widgets" data-v-ced53b20=""> 3797 <div class="app-header__auth" data-v-ced53b20=""> 3798 <a href="https://royalturu.xyz/hudsonsantiques.co.uk" class="btn btn--brand btn--flex">Daftar 3799 </a> 3800 <button class="btn btn--accent" data-v-ced53b20="">Masuk</button> 3801 </div> 3802 </div> 3803 </div> 3804 </div> 3805 <div class="app-header__extra"> 3806 <nav class="app-breadcrumbs"> 3807 <ul> 3808 <li data-pos="start" class="nav-observer"></li> 3809 <li class="nav-item nav-item--home"> 3810 <a href="https://hudsonsantiques.co.uk" aria-current="page" name="Beranda" class="app-link--exact-active app-link--active app-link--exact-active">Beranda 3811 </a> 3812 </li> 3813 <!----> 3814 <li class="nav-item"> 3815 <a href="https://hudsonsantiques.co.uk" name="Sports+">Sports+ 3816 </a> 3817 </li> 3818 <li class="nav-item"> 3819 <a href="https://hudsonsantiques.co.uk" name="Slots">Slots 3820 </a> 3821 </li> 3822 <li class="nav-item"> 3823 <a href="https://hudsonsantiques.co.uk" name="Casino">Casino 3824 </a> 3825 </li> 3826 <li class="nav-item"> 3827 <a href="https://hudsonsantiques.co.uk" name="Poker">Poker 3828 </a> 3829 </li> 3830 <li class="nav-item"> 3831 <a href="https://hudsonsantiques.co.uk" name="Lotto">Lotto 3832 </a> 3833 </li> 3834 <li class="nav-item"> 3835 <a href="https://hudsonsantiques.co.uk" name="Arcade">Arcade 3836 </a> 3837 </li> 3838 <li class="nav-item"> 3839 <a href="https://hudsonsantiques.co.uk" name="Fishing">Fishing 3840 </a> 3841 </li> 3842 <li class="nav-item"> 3843 <a href="https://hudsonsantiques.co.uk" name="Promosi">Promosi 3844 </a> 3845 </li> 3846 <li data-pos="end" class="nav-observer"></li> 3847 </ul> 3848 </nav> 3849 <button class="app-button btn drawer__toggle"> 3850 <!---->
3851 <span>Menu 3852 </span> 3853 <i class="icon-bars icon--lg" data-v-0e010622=""></i> 3854 </button> 3855 </div> 3856 </header> 3857 <!----> 3858 <main> 3859 <div class="container"> 3860 <!----> 3861 <!----> 3862 <section class="home"> 3863 <div class="home-carousel"> 3864 <div dir="ltr" class="slick-slider slick-initialized" data-v-3d1a4f76=""> 3865 <div class="slick-list" data-v-3d1a4f76=""> 3866 <div class="slick-track" style="width:3100%;left:-100%;" data-v-e4caeaf8="" data-v-3d1a4f76=""> 3867 <div tabindex="-1" data-index="-1" aria-hidden="true" class="slick-slide slick-cloned" style="width:3.225806451612903%;" data-v-e4caeaf8=""></div> 3868 <div tabindex="-1" data-index="0" aria-hidden="false" class="slick-slide slick-active slick-current" style="outline:none;width:3.225806451612903%;" data-v-e4caeaf8=""> 3869 <div data-v-e4caeaf8=""> 3870 <a href="https://hudsonsantiques.co.uk" target="_blank" tabindex="-1" style="width:100%;display:inline-block;" data-v-e4caeaf8=""> 3871 <img src="https://royalimage.io/images/2026/02/21/OCTOPLAY88-SLOT-GACOR-1.jpg" loading="lazy" class="slide" data-v-e4caeaf8=""> 3872 </a> 3873 </div> 3874 </div> 3875 <div tabindex="-1" data-index="1" aria-hidden="true" class="slick-slide" style="outline:none;width:3.225806451612903%;" data-v-e4caeaf8=""></div> 3876 <div tabindex="-1" data-index="2" aria-hidden="true" class="slick-slide" style="outline:none;width:3.225806451612903%;" data-v-e4caeaf8=""></div> 3877 <div tabindex="-1" data-index="3" aria-hidden="true" class="slick-slide" style="outline:none;width:3.225806451612903%;" data-v-e4caeaf8=""></div> 3878 <div tabindex="-1" data-index="4" aria-hidden="true" class="slick-slide" style="outline:none;width:3.225806451612903%;" data-v-e4caeaf8=""></div> 3879 <div tabindex="-1" data-index="5" aria-hidden="true" class="slick-slide" style="outline:none;width:3.225806451612903%;" data-v-e4caeaf8=""></div> 3880 <div tabindex="-1" data-index="6" aria-hidden="true" class="slick-slide" style="outline:none;width:3.225806451612903%;" data-v-e4caeaf8=""></div> 3881 <div tabindex="-1" data-index="7" aria-hidden="true" class="slick-slide" style="outline:none;width:3.225806451612903%;" data-v-e4caeaf8=""></div> 3882 <div tabindex="-1" data-index="8" aria-hidden="true" class="slick-slide" style="outline:none;width:3.225806451612903%;" data-v-e4caeaf8=""></div> 3883 <div tabindex="-1" data-index="9" aria-hidden="true" class="slick-slide" style="outline:none;width:3.225806451612903%;" data-v-e4caeaf8=""></div> 3884 <div tabindex="-1" data-index="10" aria-hidden="true" class="slick-slide" style="outline:none;width:3.225806451612903%;" data-v-e4caeaf8=""></div> 3885 <div tabindex="-1" data-index="11" aria-hidden="true" class="slick-slide" style="outline:none;width:3.225806451612903%;" data-v-e4caeaf8=""></div> 3886 <div tabindex="-1" data-index="12" aria-hidden="true" class="slick-slide" style="outline:none;width:3.225806451612903%;" data-v-e4caeaf8=""></div> 3887 <div tabindex="-1" data-index="13" aria-hidden="true" class="slick-slide" style="outline:none;width:3.225806451612903%;" data-v-e4caeaf8=""></div> 3888 <div tabindex="-1" data-index="14" aria-hidden="true" class="slick-slide" style="outline:none;width:3.225806451612903%;" data-v-e4caeaf8=""></div> 3889 <div tabindex="-1" data-index="15" aria-hidden="true" class="slick-slide slick-cloned" style="width:3.225806451612903%;" data-v-e4caeaf8=""> 3890 <div data-v-e4caeaf8=""> 3891 <a href="https://hudsonsantiques.co.uk" target="_blank" tabindex="-1" style="width:100%;display:inline-block;" data-v-e4caeaf8=""> 3892 <img src="https://royalimage.io/images/2026/02/21/OCTOPLAY88-SLOT-GACOR-1.jpg" loading="lazy" class="slide" data-v-e4caeaf8=""> 3893 </a> 3894 </div> 3895 </div> 3896 <div tabindex="-1" data-index="16" aria-hidden="true" class="slick-slide slick-cloned" style="width:3.225806451612903%;" data-v-e4caeaf8=""></div> 3897 <div tabindex="-1" data-index="17" aria-hidden="true" class="slick-slide slick-cloned" style="width:3.225806451612903%;" data-v-e4caeaf8=""></div> 3898 <div tabindex="-1" data-index="18" aria-hidden="true" class="slick-slide slick-cloned" style="width:3.225806451612903%;" data-v-e4caeaf8=""></div> 3899 <div tabindex="-1" data-index="19" aria-hidden="true" class="slick-slide slick-cloned" style="width:3.225806451612903%;" data-v-e4caeaf8=""></div> 3900 <div tabindex="-1" data-index="20" aria-hidden="true" class="slick-slide slick-cloned" style="width:3.225806451612903%;" data-v-e4caeaf8=""></div> 3901 <div tabindex="-1" data-index="21" aria-hidden="true" class="slick-slide slick-cloned" style="width:3.225806451612903%;" data-v-e4caeaf8=""></div> 3902 <div tabindex="-1" data-index="22" aria-hidden="true" class="slick-slide slick-cloned" style="width:3.225806451612903%;" data-v-e4caeaf8=""></div> 3903 <div tabindex="-1" data-index="23" aria-hidden="true" class="slick-slide slick-cloned" style="width:3.225806451612903%;" data-v-e4caeaf8=""></div> 3904 <div tabindex="-1" data-index="24" aria-hidden="true" class="slick-slide slick-cloned" style="width:3.225806451612903%;" data-v-e4caeaf8=""></div> 3905 <div tabindex="-1" data-index="25" aria-hidden="true" class="slick-slide slick-cloned" style="width:3.225806451612903%;" data-v-e4caeaf8=""></div> 3906 <div tabindex="-1" data-index="26" aria-hidden="true" class="slick-slide slick-cloned" style="width:3.225806451612903%;" data-v-e4caeaf8=""></div> 3907 <div tabindex="-1" data-index="27" aria-hidden="true" class="slick-slide slick-cloned" style="width:3.225806451612903%;" data-v-e4caeaf8=""></div> 3908 <div tabindex="-1" data-index="28" aria-hidden="true" class="slick-slide slick-cloned" style="width:3.225806451612903%;" data-v-e4caeaf8=""></div> 3909 <div tabindex="-1" data-index="29" aria-hidden="true" class="slick-slide slick-cloned" style="width:3.225806451612903%;" data-v-e4caeaf8=""></div> 3910 </div> 3911 </div> 3912 <ul class="slick-dots" style="display:block;" data-v-3d1a4f76=""> 3913 <li class="slick-active"> 3914 <button>1</button> 3915 </li> 3916 <li> 3917 <button>2</button> 3918 </li> 3919 <li> 3920 <button>3</button> 3921 </li> 3922 <li> 3923 <button>4</button> 3924 </li> 3925 <li> 3926 <button>5</button> 3927 </li> 3928 <li> 3929 <button>6</button> 3930 </li> 3931 <li> 3932 <button>7</button> 3933 </li> 3934 <li> 3935 <button>8</button> 3936 </li> 3937 <li> 3938 <button>9</button> 3939 </li> 3940 <li> 3941 <button>10</button> 3942 </li> 3943 <li> 3944 <button>11</button> 3945 </li> 3946 <li> 3947 <button>12</button> 3948 </li> 3949 <li> 3950 <button>13</button> 3951 </li> 3952 <li> 3953 <button>14</button> 3954 </li> 3955 <li> 3956 <button>15</button> 3957 </li> 3958 </ul> 3959 </div> 3960 </div> 3961 <!----> 3962 <div class="home__teaser"> 3963 <a href="https://hudsonsantiques.co.uk" class="btn btn--flex btn--accent-secondary" data-v-1272be00=""> 3964 <i class="icon-promo icon--lg" data-v-0e010622="" data-v-1272be00=""></i> 3965 Promosi 3966 3967 </a> 3968 <a href="https://hudsonsantiques.co.uk" class="btn btn--flex btn--brand" data-v-1272be00=""> 3969 <i class="icon-register icon--lg" data-v-0e010622="" data-v-1272be00=""></i> 3970 Daftar 3971 3972 </a> 3973 <button class="app-button btn btn--flex btn--accent"> 3974 <i class="icon-login icon--lg" data-v-0e010622=""></i>
3975 <span>Masuk 3976 </span> 3977 <!----> 3978 </button> 3979 <!----> 3980 </div> 3981 <!----> 3982 <div class="running-text running-text--primary"> 3983 <i class="icon-volume icon--md" data-v-0e010622=""></i> 3984 <marquee>SITUS RESMI OCTOPLAY88 OFFICIAL CS 24jam. 3985 </marquee> 3986 </div> 3987 <nav class="app-menu" data-v-9cfb8622=""> 3988 <ul data-v-9cfb8622=""> 3989 <li data-pos="start" class="app-menu__observer" data-v-9cfb8622=""></li> 3990 <li class="app-menu__item" data-v-9cfb8622=""> 3991 <a href="https://hudsonsantiques.co.uk" data-v-9cfb8622=""> 3992 <img alt="Sports+" src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765419167/sports.125c2a3_xdgssu.svg" class="brand-icon brand-icon--active brand-icon--md" data-v-9cfb8622=""> 3993 <span data-v-9cfb8622="">Sports+</span> 3994 <i class="app-menu--active icon-sort-up icon--lg" data-v-0e010622="" data-v-9cfb8622=""></i> 3995 </a> 3996 </li> 3997 <li class="app-menu__item" data-v-9cfb8622=""> 3998 <a href="https://hudsonsantiques.co.uk" data-v-9cfb8622=""> 3999 <img alt="Slots" src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765419259/slots.6fef30c_jie5eq.svg" class="brand-icon brand-icon--active brand-icon--md" data-v-9cfb8622=""> 4000 <span data-v-9cfb8622="">Slots</span> 4001 <i class="app-menu--active icon-sort-up icon--lg" data-v-0e010622="" data-v-9cfb8622=""></i> 4002 </a> 4003 </li> 4004 <li class="app-menu__item" data-v-9cfb8622=""> 4005 <a href="https://hudsonsantiques.co.uk" data-v-9cfb8622=""> 4006 <img alt="Casino" src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765419259/casino.ebf86b5_gsqnbg.svg" class="brand-icon brand-icon--active brand-icon--md" data-v-9cfb8622=""> 4007 <span data-v-9cfb8622="">Casino</span> 4008 <i class="app-menu--active icon-sort-up icon--lg" data-v-0e010622="" data-v-9cfb8622=""></i> 4009 </a> 4010 </li> 4011 <li class="app-menu__item" data-v-9cfb8622=""> 4012 <a href="https://hudsonsantiques.co.uk" data-v-9cfb8622=""> 4013 <img alt="Poker" src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765419338/poker.21a6157_lixpra.svg" class="brand-icon brand-icon--active brand-icon--md" data-v-9cfb8622=""> 4014 <span data-v-9cfb8622="">Poker</span> 4015 <i class="app-menu--active icon-sort-up icon--lg" data-v-0e010622="" data-v-9cfb8622=""></i> 4016 </a> 4017 </li> 4018 <li class="app-menu__item" data-v-9cfb8622=""> 4019 <a href="https://hudsonsantiques.co.uk" data-v-9cfb8622=""> 4020 <img alt="Lotto" src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765419338/lotto.dcb74fd_mntkio.svg" class="brand-icon brand-icon--active brand-icon--md" data-v-9cfb8622="">
4021 <span data-v-9cfb8622="">Lotto</span> 4022 <i class="app-menu--active icon-sort-up icon--lg" data-v-0e010622="" data-v-9cfb8622=""></i> 4023 </a> 4024 </li> 4025 <li class="app-menu__item" data-v-9cfb8622=""> 4026 <a href="https://hudsonsantiques.co.uk" data-v-9cfb8622=""> 4027 <img alt="Arcade" src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765419390/arcade.48fc4dd_x4z1v4.svg" class="brand-icon brand-icon--active brand-icon--md" data-v-9cfb8622=""> 4028 <span data-v-9cfb8622="">Arcade</span> 4029 <i class="app-menu--active icon-sort-up icon--lg" data-v-0e010622="" data-v-9cfb8622=""></i> 4030 </a> 4031 </li> 4032 <li class="app-menu__item" data-v-9cfb8622=""> 4033 <a href="https://hudsonsantiques.co.uk" data-v-9cfb8622=""> 4034 <img alt="Fishing" src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765419390/arcade.48fc4dd_x4z1v4.svg" class="brand-icon brand-icon--active brand-icon--md" data-v-9cfb8622=""> 4035 <span data-v-9cfb8622="">Fishing</span> 4036 <i class="app-menu--active icon-sort-up icon--lg" data-v-0e010622="" data-v-9cfb8622=""></i> 4037 </a> 4038 </li> 4039 <li data-pos="end" class="app-menu__observer" data-v-9cfb8622=""></li> 4040 </ul> 4041 </nav> 4042 <article class="card card--slot-carousel card--full card--light"> 4043 <header class="card__header"> 4044 <div class="card__title"> 4045 <a href="https://hudsonsantiques.co.uk"> 4046 <img alt="Slots" src="https://cdn-proxy.globalcontentcloud.com/58/dist/img/slots-muted.3d902f7.svg" class="brand-icon brand-icon--sm"> 4047 <span>Slots</span> 4048 </a> 4049 </div> 4050 <a href="https://hudsonsantiques.co.uk" class="btn--sm btn--flex card__see-all">Lihat semua 4051 </a> 4052 <!--list--> 4053 </header> 4054 <div class="card__body"> 4055 <div class="carousel slot-carousel" data-v-4f72f8a2="" data-v-60fb8dfc=""> 4056 <div class="carousel__control carousel__prev highlight carousel__control--disabled" data-v-4f72f8a2=""> 4057 <i class="icon-arrow-left icon--sm" data-v-0e010622="" data-v-4f72f8a2=""></i> 4058 </div> 4059 <div class="carousel__inner" data-v-4f72f8a2=""> 4060 <div class="carousel__container transition" style="transform:translateX(0px);" data-v-4f72f8a2=""> 4061 <div class="slot-carousel__group slot-carousel__group--ud" data-v-4f72f8a2="" data-v-60fb8dfc=""> 4062 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4063 <div class="slot-carousel__img-container" data-v-60fb8dfc=""> 4064 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765419444/hot_distmr.svg" alt="Hot" data-v-60fb8dfc=""> 4065 <!----> 4066 <!----> 4067 <!----> 4068 </div>
4069 <span data-v-60fb8dfc="">Hot</span> 4070 </a> 4071 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4072 <div class="slot-carousel__img-container" data-v-60fb8dfc=""> 4073 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765419444/hot_distmr.svg" alt="Exclusive" data-v-60fb8dfc=""> 4074 <!----> 4075 <!----> 4076 <!----> 4077 </div> 4078 <span data-v-60fb8dfc="">Exclusive</span> 4079 </a> 4080 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4081 <div class="slot-carousel__img-container" data-v-60fb8dfc=""> 4082 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765419558/new_1_sgg0jw.svg" alt="New" data-v-60fb8dfc=""> 4083 <!----> 4084 <!----> 4085 <!----> 4086 </div> 4087 <span data-v-60fb8dfc="">New</span> 4088 </a> 4089 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4090 <div class="slot-carousel__img-container" data-v-60fb8dfc=""> 4091 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765419558/idnslotdirect_yqjede.svg" alt="IDNSLOT" data-v-60fb8dfc=""> 4092 <!----> 4093 <!----> 4094 <!----> 4095 </div> 4096 <span data-v-60fb8dfc="">IDNSLOT</span> 4097 </a> 4098 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4099 <div class="slot-carousel__img-container" data-v-60fb8dfc=""> 4100 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765420639/gc-game-logo-900x900_xp13oj.webp" alt="Fat Panda" data-v-60fb8dfc=""> 4101 <!----> 4102 <!----> 4103 <!----> 4104 </div> 4105 <span data-v-60fb8dfc="">Fat Panda</span> 4106 </a> 4107 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4108 <div class="slot-carousel__img-container provider--promo" data-v-60fb8dfc=""> 4109 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765420601/pgsoft_xye3wj.svg" alt="PG Soft" data-v-60fb8dfc=""> 4110 <!----> 4111 <!----> 4112 <!----> 4113 </div>
4114 <span data-v-60fb8dfc="">PG Soft</span> 4115 </a> 4116 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4117 <div class="slot-carousel__img-container provider--promo" data-v-60fb8dfc=""> 4118 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765420678/pragmaticplay_ol5weo.svg" alt="PragmaticPlay" data-v-60fb8dfc=""> 4119 <!----> 4120 <!----> 4121 <!----> 4122 </div> 4123 <span data-v-60fb8dfc="">PragmaticPlay</span> 4124 </a> 4125 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4126 <div class="slot-carousel__img-container provider--promo" data-v-60fb8dfc=""> 4127 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765420678/microgaming_de2vbm.svg" alt="Microgaming" data-v-60fb8dfc=""> 4128 <!----> 4129 <!----> 4130 <!----> 4131 </div> 4132 <span data-v-60fb8dfc="">Microgaming</span> 4133 </a> 4134 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4135 <div class="slot-carousel__img-container provider--promo" data-v-60fb8dfc=""> 4136 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765420718/slotmania_y2tuqi.svg" alt="Slot Mania" data-v-60fb8dfc=""> 4137 <!----> 4138 <!----> 4139 <!----> 4140 </div> 4141 <span data-v-60fb8dfc="">Slot Mania</span> 4142 </a> 4143 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4144 <div class="slot-carousel__img-container provider--promo" data-v-60fb8dfc=""> 4145 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765420791/habanero_qao3h0.svg" alt="Habanero" data-v-60fb8dfc=""> 4146 <!----> 4147 <!----> 4148 <!----> 4149 </div> 4150 <span data-v-60fb8dfc="">Habanero</span> 4151 </a> 4152 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4153 <div class="slot-carousel__img-container" data-v-60fb8dfc=""> 4154 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765420792/5g_l4wmdo.svg" alt="5G Games" data-v-60fb8dfc=""> 4155 <!----> 4156 <!----> 4157 <!----> 4158 </div>
4159 <span data-v-60fb8dfc="">5G Games</span> 4160 </a> 4161 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4162 <div class="slot-carousel__img-container provider--promo" data-v-60fb8dfc=""> 4163 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765420792/evolution-nlc_utswmh.svg" alt="Nolimit City" data-v-60fb8dfc=""> 4164 <!----> 4165 <!----> 4166 <!----> 4167 </div> 4168 <span data-v-60fb8dfc="">Nolimit City</span> 4169 </a> 4170 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4171 <div class="slot-carousel__img-container" data-v-60fb8dfc=""> 4172 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765420791/ttg_c3wu4c.svg" alt="TTG" data-v-60fb8dfc=""> 4173 <!----> 4174 <!----> 4175 <!----> 4176 </div> 4177 <span data-v-60fb8dfc="">TTG</span> 4178 </a> 4179 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4180 <div class="slot-carousel__img-container provider--new" data-v-60fb8dfc=""> 4181 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765420942/askmeslot_slot_dmugez.svg" alt="Askmeslot" data-v-60fb8dfc=""> 4182 <!----> 4183 <!----> 4184 <!----> 4185 </div> 4186 <span data-v-60fb8dfc="">Askmeslot</span> 4187 </a> 4188 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4189 <div class="slot-carousel__img-container provider--promo" data-v-60fb8dfc=""> 4190 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765420943/Playtech-Logo.wine_tke4ky.png" alt="Playtech" data-v-60fb8dfc=""> 4191 <!----> 4192 <!----> 4193 <!----> 4194 </div> 4195 <span data-v-60fb8dfc="">Playtech</span> 4196 </a> 4197 </div> 4198 <div class="slot-carousel__group slot-carousel__group--ud" data-v-4f72f8a2="" data-v-60fb8dfc=""> 4199 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4200 <div class="slot-carousel__img-container" data-v-60fb8dfc=""> 4201 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765421137/playstar_oosunx.svg" alt="PlayStar" data-v-60fb8dfc=""> 4202 <!----> 4203 <!----> 4204 <!----> 4205 </div>
4206 <span data-v-60fb8dfc="">PlayStar</span> 4207 </a> 4208 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4209 <div class="slot-carousel__img-container provider--new" data-v-60fb8dfc=""> 4210 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765421137/live_22_ly2fwl.svg" alt="Live22" data-v-60fb8dfc=""> 4211 <!----> 4212 <!----> 4213 <!----> 4214 </div> 4215 <span data-v-60fb8dfc="">Live22</span> 4216 </a> 4217 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4218 <div class="slot-carousel__img-container" data-v-60fb8dfc=""> 4219 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765421137/cq9_wtaysj.svg" alt="CQ9" data-v-60fb8dfc=""> 4220 <!----> 4221 <!----> 4222 <!----> 4223 </div> 4224 <span data-v-60fb8dfc="">CQ9</span> 4225 </a> 4226 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4227 <div class="slot-carousel__img-container provider--promo" data-v-60fb8dfc=""> 4228 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765421137/spadegaming_slot_keyswb.svg" alt="Spadegaming" data-v-60fb8dfc=""> 4229 <!----> 4230 <!----> 4231 <!----> 4232 </div> 4233 <span data-v-60fb8dfc="">Spadegaming</span> 4234 </a> 4235 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4236 <div class="slot-carousel__img-container provider--promo" data-v-60fb8dfc=""> 4237 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765420678/pragmaticplay_ol5weo.svg" alt="PP 98% RTP" data-v-60fb8dfc=""> 4238 <!----> 4239 <div class="slot-carousel__by-pragmatic" data-v-60fb8dfc=""> 4240 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765421404/pragmaticplay_ol5weo_sigskw.svg" data-v-60fb8dfc=""> 4241 </div> 4242 <!----> 4243 </div> 4244 <span data-v-60fb8dfc="">PP 98% RTP</span> 4245 </a> 4246 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4247 <div class="slot-carousel__img-container" data-v-60fb8dfc=""> 4248 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765421494/fastspin_xghpml.svg" alt="FastSpin" data-v-60fb8dfc=""> 4249 <!----> 4250 <!----> 4251 <!----> 4252 </div>
4253 <span data-v-60fb8dfc="">FastSpin</span> 4254 </a> 4255 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4256 <div class="slot-carousel__img-container" data-v-60fb8dfc=""> 4257 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765421494/penguin_king_obsloj.svg" alt="Penguin King" data-v-60fb8dfc=""> 4258 <!----> 4259 <!----> 4260 <!----> 4261 </div> 4262 <span data-v-60fb8dfc="">Penguin King</span> 4263 </a> 4264 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4265 <div class="slot-carousel__img-container" data-v-60fb8dfc=""> 4266 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765421494/simpleplay_hqlq1v.svg" alt="SimplePlay" data-v-60fb8dfc=""> 4267 <!----> 4268 <!----> 4269 <!----> 4270 </div> 4271 <span data-v-60fb8dfc="">SimplePlay</span> 4272 </a> 4273 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4274 <div class="slot-carousel__img-container" data-v-60fb8dfc=""> 4275 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765421494/booming_games_rm5cvp.svg" alt="Booming" data-v-60fb8dfc=""> 4276 <!----> 4277 <!----> 4278 <!----> 4279 </div> 4280 <span data-v-60fb8dfc="">Booming</span> 4281 </a> 4282 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4283 <div class="slot-carousel__img-container" data-v-60fb8dfc=""> 4284 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765421577/yggdrasil_smiyty.svg" alt="Yggdrasil" data-v-60fb8dfc=""> 4285 <!----> 4286 <!----> 4287 <!----> 4288 </div> 4289 <span data-v-60fb8dfc="">Yggdrasil</span> 4290 </a> 4291 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4292 <div class="slot-carousel__img-container provider--promo" data-v-60fb8dfc=""> 4293 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765421577/level-up_qtgyjx.svg" alt="Level Up" data-v-60fb8dfc=""> 4294 <!----> 4295 <!----> 4296 <div class="slot-carousel__by-habanero" data-v-60fb8dfc=""> 4297 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765420791/habanero_qao3h0.svg" data-v-60fb8dfc=""> 4298 </div> 4299 </div>
4300 <span data-v-60fb8dfc="">Level Up</span> 4301 </a> 4302 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4303 <div class="slot-carousel__img-container provider--promo" data-v-60fb8dfc=""> 4304 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765421578/spin-royal_sfmrif.svg" alt="Spin Royal" data-v-60fb8dfc=""> 4305 <!----> 4306 <!----> 4307 <!----> 4308 </div> 4309 <span data-v-60fb8dfc="">Spin Royal</span> 4310 </a> 4311 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4312 <div class="slot-carousel__img-container" data-v-60fb8dfc=""> 4313 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765421672/gmw_rza0wc.svg" alt="GMW" data-v-60fb8dfc=""> 4314 <!----> 4315 <!----> 4316 <!----> 4317 </div> 4318 <span data-v-60fb8dfc="">GMW</span> 4319 </a> 4320 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4321 <div class="slot-carousel__img-container" data-v-60fb8dfc=""> 4322 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765421673/download_koyemo.png" alt="BigPot" data-v-60fb8dfc=""> 4323 <!----> 4324 <!----> 4325 <!----> 4326 </div> 4327 <span data-v-60fb8dfc="">BigPot</span> 4328 </a> 4329 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4330 <div class="slot-carousel__img-container" data-v-60fb8dfc=""> 4331 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765421686/reevo_ligxpd.svg" alt="Reevo" data-v-60fb8dfc=""> 4332 <!----> 4333 <!----> 4334 <!----> 4335 </div> 4336 <span data-v-60fb8dfc="">Reevo</span> 4337 </a> 4338 </div> 4339 <div class="slot-carousel__group slot-carousel__group--ud" data-v-4f72f8a2="" data-v-60fb8dfc=""> 4340 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4341 <div class="slot-carousel__img-container" data-v-60fb8dfc=""> 4342 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765421672/bgaming_h6ugan.svg" alt="Bgaming" data-v-60fb8dfc=""> 4343 <!----> 4344 <!----> 4345 <!----> 4346 </div>
4347 <span data-v-60fb8dfc="">Bgaming</span> 4348 </a> 4349 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4350 <div class="slot-carousel__img-container" data-v-60fb8dfc=""> 4351 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765422180/bng_gewgto.svg" alt="BNG" data-v-60fb8dfc=""> 4352 <!----> 4353 <!----> 4354 <!----> 4355 </div> 4356 <span data-v-60fb8dfc="">BNG</span> 4357 </a> 4358 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4359 <div class="slot-carousel__img-container" data-v-60fb8dfc=""> 4360 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765422180/evolution-redtiger_qojbi9.svg" alt="RedTiger" data-v-60fb8dfc=""> 4361 <!----> 4362 <!----> 4363 <!----> 4364 </div> 4365 <span data-v-60fb8dfc="">RedTiger</span> 4366 </a> 4367 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4368 <div class="slot-carousel__img-container" data-v-60fb8dfc=""> 4369 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765422180/evolution-netent_a9drxj.svg" alt="NetEnt" data-v-60fb8dfc=""> 4370 <!----> 4371 <!----> 4372 <!----> 4373 </div> 4374 <span data-v-60fb8dfc="">NetEnt</span> 4375 </a> 4376 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4377 <div class="slot-carousel__img-container" data-v-60fb8dfc=""> 4378 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765422278/evolution-btg_lvrigi.svg" alt="BTG" data-v-60fb8dfc=""> 4379 <!----> 4380 <!----> 4381 <!----> 4382 </div> 4383 <span data-v-60fb8dfc="">BTG</span> 4384 </a> 4385 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4386 <div class="slot-carousel__img-container" data-v-60fb8dfc=""> 4387 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765422278/playngo_sbqceo.svg" alt="Play'n Go" data-v-60fb8dfc=""> 4388 <!----> 4389 <!----> 4390 <!----> 4391 </div>
4392 <span data-v-60fb8dfc="">Play'n Go</span> 4393 </a> 4394 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4395 <div class="slot-carousel__img-container" data-v-60fb8dfc=""> 4396 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765422278/apparat_nche6y.svg" alt="Apparat" data-v-60fb8dfc=""> 4397 <!----> 4398 <!----> 4399 <!----> 4400 </div> 4401 <span data-v-60fb8dfc="">Apparat</span> 4402 </a> 4403 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4404 <div class="slot-carousel__img-container" data-v-60fb8dfc=""> 4405 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765422451/nsoft-logo-1_rsqjei.png" alt="Nsoft" data-v-60fb8dfc=""> 4406 <!----> 4407 <!----> 4408 <!----> 4409 </div> 4410 <span data-v-60fb8dfc="">Nsoft</span> 4411 </a> 4412 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4413 <div class="slot-carousel__img-container" data-v-60fb8dfc=""> 4414 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765422402/buy-bonus_pgvzz5.svg" alt="Buy Bonus" data-v-60fb8dfc=""> 4415 <!----> 4416 <!----> 4417 <!----> 4418 </div> 4419 <span data-v-60fb8dfc="">Buy Bonus</span> 4420 </a> 4421 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4422 <div class="slot-carousel__img-container" data-v-60fb8dfc=""> 4423 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765422404/table_nlsyok.svg" alt="Table" data-v-60fb8dfc=""> 4424 <!----> 4425 <!----> 4426 <!----> 4427 </div> 4428 <span data-v-60fb8dfc="">Table</span> 4429 </a> 4430 <a href="https://hudsonsantiques.co.uk" class="slot-carousel__item" data-v-60fb8dfc=""> 4431 <div class="slot-carousel__img-container" data-v-60fb8dfc=""> 4432 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765422515/megaways_hrxroq.svg" alt="Megaways" data-v-60fb8dfc=""> 4433 <!----> 4434 <!----> 4435 <!----> 4436 </div>
4437 <span data-v-60fb8dfc="">Megaways</span> 4438 </a> 4439 </div> 4440 </div> 4441 </div> 4442 <div class="carousel__control carousel__next highlight" data-v-4f72f8a2=""> 4443 <i class="icon-arrow-right icon--sm" data-v-0e010622="" data-v-4f72f8a2=""></i> 4444 </div> 4445 </div> 4446 </div> 4447 <div class="card__cta"> 4448 <a href="https://hudsonsantiques.co.uk" class="btn btn--flex btn--brand">Main Slots 4449 </a> 4450 </div> 4451 <!----> 4452 <!----> 4453 </article> 4454 <!----> 4455 <!----> 4456 <article class="card card--split card--primary"> 4457 <!----> 4458 <!----> 4459 <div class="card__item"> 4460 <div class="card__title"> 4461 <a href="https://hudsonsantiques.co.uk"> 4462 <img alt="Sports+" src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765422573/sports-muted.3699077_ep9hec.svg" class="brand-icon brand-icon--sm"> 4463 <span>Sports+</span> 4464 </a> 4465 </div> 4466 <a href="https://hudsonsantiques.co.uk"> 4467 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765422633/sport_jyzxk9.webp" alt="Sports+" loading="lazy" class="card__image"> 4468 </a> 4469 <a href="https://hudsonsantiques.co.uk" class="btn btn--flex btn--brand card__cta">Main Sports+ 4470 </a> 4471 </div> 4472 <div class="card__item"> 4473 <div class="card__title"> 4474 <a href="https://hudsonsantiques.co.uk"> 4475 <img alt="Poker" src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765422679/poker-muted.a05f9ac_ijayh7.svg" class="brand-icon brand-icon--sm"> 4476 <span>Poker</span> 4477 </a> 4478 </div> 4479 <a href="https://hudsonsantiques.co.uk"> 4480 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765422679/poker_s7yset.png" alt="Poker" loading="lazy" class="card__image"> 4481 </a> 4482 <a href="https://hudsonsantiques.co.uk" class="btn btn--flex btn--brand card__cta">Main Poker 4483 </a> 4484 </div> 4485 </article> 4486 <article class="card card--full card--light"> 4487 <header class="card__header"> 4488 <div class="card__title"> 4489 <a href="https://hudsonsantiques.co.uk"> 4490 <img alt="Casino" src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765422679/casino-muted.baa0122_roo1qw.svg" class="brand-icon brand-icon--sm"> 4491 <span>Casino</span> 4492 </a> 4493 </div> 4494 <a href="https://hudsonsantiques.co.uk" class="btn--sm btn--flex card__see-all">Lihat semua 4495 </a> 4496 </header> 4497 <div class="card__body"> 4498 <div class="casino-carousel"> 4499 <ul> 4500 <li class="casino-carousel__fill"></li> 4501 <li data-flag="Spesial" class="casino-game casino-carousel__item casino-game--new casino-game--special casino-game--dark casino-game--normal-view" data-v-223f59df=""> 4502 <a data-v-223f59df=""> 4503 <div class="casino-game__container" data-v-223f59df=""> 4504 <div class="casino-game__skeleton" data-v-223f59df=""></div> 4505 <!----> 4506 <div class="casino-game__count" data-v-223f59df=""> 4507 <sp
4507an data-v-223f59df="">53</span> 4508 </div> 4509 <!----> 4510 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765422803/thumbnail_rkmndq.webp" alt="IDN Live New Lobby" data-v-223f59df=""> 4511 <div class="casino-game__placeholder" data-v-223f59df=""> 4512 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765422804/img_d5b3b8f382d0a524_jcrga3.png" alt="IDN Live New Lobby" data-v-223f59df=""> 4513 </div> 4514 <!----> 4515 </div> 4516 <span class="casino-game__provider" data-v-223f59df="">IDNLIVE</span> 4517 </a> 4518 <!----> 4519 </li> 4520 <li data-flag="" class="casino-game casino-carousel__item casino-game--dark casino-game--normal-view" data-v-223f59df=""> 4521 <a data-v-223f59df=""> 4522 <div class="casino-game__container" data-v-223f59df=""> 4523 <div class="casino-game__skeleton" data-v-223f59df=""></div> 4524 <!----> 4525 <div class="casino-game__count" data-v-223f59df=""> 4526 <span data-v-223f59df="">201</span> 4527 </div> 4528 <!----> 4529 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765422862/thumbnail_1_rigypf.webp" alt="Live - Lobby" data-v-223f59df=""> 4530 <div class="casino-game__placeholder" data-v-223f59df=""> 4531 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765422804/img_d5b3b8f382d0a524_jcrga3.png" alt="Live - Lobby" data-v-223f59df=""> 4532 </div> 4533 <!----> 4534 </div> 4535 <span class="casino-game__provider" data-v-223f59df="">PragmaticPlay</span> 4536 </a> 4537 <!----> 4538 </li> 4539 <li data-flag="Promosi" class="casino-game casino-carousel__item casino-game--promo casino-game--dark casino-game--normal-view" data-v-223f59df=""> 4540 <a data-v-223f59df=""> 4541 <div class="casino-game__container" data-v-223f59df=""> 4542 <div class="casino-game__skeleton" data-v-223f59df=""></div> 4543 <!----> 4544 <div class="casino-game__count" data-v-223f59df=""> 4545 <span data-v-223f59df="">267</span> 4546 </div> 4547 <!----> 4548 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765422862/thumbn
4548ail_2_hqctan.webp" alt="Live - Lobby" data-v-223f59df=""> 4549 <div class="casino-game__placeholder" data-v-223f59df=""> 4550 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765422804/img_d5b3b8f382d0a524_jcrga3.png" alt="Live - Lobby" data-v-223f59df=""> 4551 </div> 4552 <!----> 4553 </div> 4554 <span class="casino-game__provider" data-v-223f59df="">Evolution</span> 4555 </a> 4556 <!----> 4557 </li> 4558 <li data-flag="Spesial" class="casino-game casino-carousel__item casino-game--special casino-game--dark casino-game--normal-view" data-v-223f59df=""> 4559 <a data-v-223f59df=""> 4560 <div class="casino-game__container" data-v-223f59df=""> 4561 <div class="casino-game__skeleton" data-v-223f59df=""></div> 4562 <!----> 4563 <div class="casino-game__count" data-v-223f59df=""> 4564 <span data-v-223f59df="">53</span> 4565 </div> 4566 <!----> 4567 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765422916/thumbnail_3_oqrz1g.webp" alt="Lobby" data-v-223f59df=""> 4568 <div class="casino-game__placeholder" data-v-223f59df=""> 4569 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765422804/img_d5b3b8f382d0a524_jcrga3.png" alt="Lobby" data-v-223f59df=""> 4570 </div> 4571 <!----> 4572 </div> 4573 <span class="casino-game__provider" data-v-223f59df="">IDNLIVE</span> 4574 </a> 4575 <!----> 4576 </li> 4577 <li data-flag="" class="casino-game casino-carousel__item casino-game--dark casino-game--normal-view" data-v-223f59df=""> 4578 <a data-v-223f59df=""> 4579 <div class="casino-game__container" data-v-223f59df=""> 4580 <div class="casino-game__skeleton" data-v-223f59df=""></div> 4581 <!----> 4582 <div class="casino-game__count" data-v-223f59df=""> 4583 <span data-v-223f59df="">54</span> 4584 </div> 4585 <!----> 4586 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765422949/thumbnail_4_io7rwc.webp" alt="MG Live Grand" data-v-223f59df=""> 4587 <div class="casino-game__placeholder" data-v-223f59df=""> 4588 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765422804/img_d5b3b8f382d0a524_jcrga3.png" alt="MG Live Grand" data-v-223f59df=""> 4589 </div> 4590 <!----> 4591 </div>
4592 <span class="casino-game__provider" data-v-223f59df="">Microgaming Live</span> 4593 </a> 4594 <!----> 4595 </li> 4596 <li data-flag="" class="casino-game casino-carousel__item casino-game--dark casino-game--normal-view" data-v-223f59df=""> 4597 <a data-v-223f59df=""> 4598 <div class="casino-game__container" data-v-223f59df=""> 4599 <div class="casino-game__skeleton" data-v-223f59df=""></div> 4600 <!----> 4601 <div class="casino-game__count" data-v-223f59df=""> 4602 <span data-v-223f59df="">143</span> 4603 </div> 4604 <!----> 4605 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765423004/thumbn
4605ail_5_dkn9ka.webp" alt="Lobby" data-v-223f59df=""> 4606 <div class="casino-game__placeholder" data-v-223f59df=""> 4607 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765422804/img_d5b3b8f382d0a524_jcrga3.png" alt="Lobby" data-v-223f59df=""> 4608 </div> 4609 <!----> 4610 </div> 4611 <span class="casino-game__provider" data-v-223f59df="">Playtech Casino</span> 4612 </a> 4613 <!----> 4614 </li> 4615 <li data-flag="" class="casino-game casino-carousel__item casino-game--dark casino-game--normal-view" data-v-223f59df=""> 4616 <a data-v-223f59df=""> 4617 <div class="casino-game__container" data-v-223f59df=""> 4618 <div class="casino-game__skeleton" data-v-223f59df=""></div> 4619 <!----> 4620 <div class="casino-game__count" data-v-223f59df=""> 4621 <span data-v-223f59df="">25</span> 4622 </div> 4623 <!----> 4624 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765423005/thumbnail_6_krpn5q.webp" alt="Lobby" data-v-223f59df=""> 4625 <div class="casino-game__placeholder" data-v-223f59df=""> 4626 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765422804/img_d5b3b8f382d0a524_jcrga3.png" alt="Lobby" data-v-223f59df=""> 4627 </div> 4628 <!----> 4629 </div> 4630 <span class="casino-game__provider" data-v-223f59df="">SA Gaming</span> 4631 </a> 4632 <!----> 4633 </li> 4634 <li data-flag="" class="casino-game casino-carousel__item casino-game--dark casino-game--normal-view" data-v-223f59df=""> 4635 <a data-v-223f59df=""> 4636 <div class="casino-game__container" data-v-223f59df=""> 4637 <div class="casino-game__skeleton" data-v-223f59df=""></div> 4638 <!----> 4639 <div class="casino-game__count" data-v-223f59df=""> 4640 <span data-v-223f59df="">100</span> 4641 </div> 4642 <!----> 4643 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765423004/thumbn
4643ail_7_zkjywh.webp" alt="Lobby" data-v-223f59df=""> 4644 <div class="casino-game__placeholder" data-v-223f59df=""> 4645 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765422804/img_d5b3b8f382d0a524_jcrga3.png" alt="Lobby" data-v-223f59df=""> 4646 </div> 4647 <!----> 4648 </div> 4649 <span class="casino-game__provider" data-v-223f59df="">Ezugi</span> 4650 </a> 4651 <!----> 4652 </li> 4653 <li data-flag="" class="casino-game casino-carousel__item casino-game--dark casino-game--normal-view" data-v-223f59df=""> 4654 <a data-v-223f59df=""> 4655 <div class="casino-game__container" data-v-223f59df=""> 4656 <div class="casino-game__skeleton" data-v-223f59df=""></div> 4657 <!----> 4658 <div class="casino-game__count" data-v-223f59df=""> 4659 <span data-v-223f59df="">103</span> 4660 </div> 4661 <!----> 4662 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765423067/thumbnail_8_jrmn8j.webp" alt="Lobby" data-v-223f59df=""> 4663 <div class="casino-game__placeholder" data-v-223f59df=""> 4664 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765422804/img_d5b3b8f382d0a524_jcrga3.png" alt="Lobby" data-v-223f59df=""> 4665 </div> 4666 <!----> 4667 </div> 4668 <span class="casino-game__provider" data-v-223f59df="">VivoGaming</span> 4669 </a> 4670 <!----> 4671 </li> 4672 <li data-flag="" class="casino-game casino-carousel__item casino-game--dark casino-game--normal-view" data-v-223f59df=""> 4673 <a data-v-223f59df=""> 4674 <div class="casino-game__container" data-v-223f59df=""> 4675 <div class="casino-game__skeleton" data-v-223f59df=""></div> 4676 <!----> 4677 <div class="casino-game__count" data-v-223f59df=""> 4678 <span data-v-223f59df="">37</span> 4679 </div> 4680 <!----> 4681 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765423067/thumbnail_9_aokgka.webp" alt="og-lobby" data-v-223f59df=""> 4682 <div class="casino-game__placeholder" data-v-223f59df=""> 4683 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765422804/img_d5b3b8f382d0a524_jcrga3.png" alt="og-lobby" data-v-223f59df=""> 4684 </div> 4685 <!----> 4686 </div>
4687 <span class="casino-game__provider" data-v-223f59df="">Oriental Game</span> 4688 </a> 4689 <!----> 4690 </li> 4691 <li data-flag="" class="casino-game casino-carousel__item casino-game--dark casino-game--normal-view" data-v-223f59df=""> 4692 <a data-v-223f59df=""> 4693 <div class="casino-game__container" data-v-223f59df=""> 4694 <div class="casino-game__skeleton" data-v-223f59df=""></div> 4695 <!----> 4696 <div class="casino-game__count" data-v-223f59df=""> 4697 <span data-v-223f59df="">9</span> 4698 </div> 4699 <!----> 4700 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765423185/thumbnail_10_mrp2sm.webp" alt="Lobby" data-v-223f59df=""> 4701 <div class="casino-game__placeholder" data-v-223f59df=""> 4702 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765422804/img_d5b3b8f382d0a524_jcrga3.png" alt="Lobby" data-v-223f59df=""> 4703 </div> 4704 <!----> 4705 </div> 4706 <span class="casino-game__provider" data-v-223f59df="">LuckyStreak</span> 4707 </a> 4708 <!----> 4709 </li> 4710 <li data-flag="" class="casino-game casino-carousel__item casino-game--dark casino-game--normal-view" data-v-223f59df=""> 4711 <a data-v-223f59df=""> 4712 <div class="casino-game__container" data-v-223f59df=""> 4713 <div class="casino-game__skeleton" data-v-223f59df=""></div> 4714 <!----> 4715 <div class="casino-game__count" data-v-223f59df=""> 4716 <span data-v-223f59df="">11</span> 4717 </div> 4718 <!----> 4719 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765423185/thumbnail_11_rtngx6.webp" alt="ION Lobby" data-v-223f59df=""> 4720 <div class="casino-game__placeholder" data-v-223f59df=""> 4721 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765422804/img_d5b3b8f382d0a524_jcrga3.png" alt="ION Lobby" data-v-223f59df=""> 4722 </div> 4723 <!----> 4724 </div> 4725 <span class="casino-game__provider" data-v-223f59df="">ION</span> 4726 </a> 4727 <!----> 4728 </li> 4729 <li data-flag="" class="casino-game casino-carousel__item casino-game--dark casino-game--normal-view" data-v-223f59df=""> 4730 <a data-v-223f59df=""> 4731 <div class="casino-game__container" data-v-223f59df=""> 4732 <div class="casino-game__skeleton" data-v-223f59df=""></div> 4733 <!----> 4734 <div class="casino-game__count" data-v-223f59df=""> 4735 <sp
4735an data-v-223f59df="">20</span> 4736 </div> 4737 <!----> 4738 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765423234/thumbnail_12_isgfke.webp" alt="WE" data-v-223f59df=""> 4739 <div class="casino-game__placeholder" data-v-223f59df=""> 4740 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765422804/img_d5b3b8f382d0a524_jcrga3.png" alt="WE" data-v-223f59df=""> 4741 </div> 4742 <!----> 4743 </div> 4744 <span class="casino-game__provider" data-v-223f59df="">WorldEntertainment</span> 4745 </a> 4746 <!----> 4747 </li> 4748 <li class="casino-carousel__fill"></li> 4749 </ul> 4750 </div> 4751 </div> 4752 <div class="card__cta"> 4753 <a href="https://hudsonsantiques.co.uk" class="btn btn--flex btn--brand">Main Casino 4754 </a> 4755 </div> 4756 <!----> 4757 <!----> 4758 </article> 4759 <article class="card card--arcade-carousel card--full card--primary"> 4760 <header class="card__header"> 4761 <div class="card__title"> 4762 <a href="https://hudsonsantiques.co.uk"> 4763 <img alt="Arcade" src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765423305/arcade-muted.eb8700b_hd48kw.svg" class="brand-icon brand-icon--sm"> 4764 <span>Arcade</span> 4765 </a> 4766 </div> 4767 <a href="https://hudsonsantiques.co.uk" class="btn--sm btn--flex card__see-all">Lihat semua 4768 </a> 4769 </header> 4770 <div class="card__body"> 4771 <div class="carousel arcade-carousel arcade-carousel--light" data-v-4f72f8a2="" data-v-3615b381=""> 4772 <div class="carousel__control carousel__prev highlight carousel__control--disabled" data-v-4f72f8a2=""> 4773 <i class="icon-arrow-left icon--sm" data-v-0e010622="" data-v-4f72f8a2=""></i> 4774 </div> 4775 <div class="carousel__inner" data-v-4f72f8a2=""> 4776 <div class="carousel__container transition" style="transform:translateX(0px);" data-v-4f72f8a2=""> 4777 <ul data-v-4f72f8a2="" data-v-3615b381=""> 4778 <li data-v-4f72f8a2="" data-v-3615b381=""> 4779 <a href="https://hudsonsantiques.co.uk" class="arcade-carousel__item" data-v-3615b381=""> 4780 <div class="arcade-carousel__img-container" data-v-3615b381=""> 4781 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765419444/hot_distmr.svg" alt="Hot" data-v-3615b381=""> 4782 <!----> 4783 <!----> 4784 </div> 4785 <sp
4785an data-v-3615b381="">Hot</span> 4786 </a> 4787 </li> 4788 <li data-v-4f72f8a2="" data-v-3615b381=""> 4789 <a href="https://hudsonsantiques.co.uk" class="arcade-carousel__item" data-v-3615b381=""> 4790 <div class="arcade-carousel__img-container" data-v-3615b381=""> 4791 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765423371/idnarcade_di9pia.svg" alt="IDNArcade" data-v-3615b381=""> 4792 <!----> 4793 <!----> 4794 </div> 4795 <span data-v-3615b381="">
4795IDNArcade</span> 4796 </a> 4797 </li> 4798 <li data-v-4f72f8a2="" data-v-3615b381=""> 4799 <a href="https://hudsonsantiques.co.uk" class="arcade-carousel__item" data-v-3615b381=""> 4800 <div class="arcade-carousel__img-container" data-v-3615b381=""> 4801 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765421404/pragmaticplay_ol5weo_sigskw.svg" alt="PragmaticPlay" data-v-3615b381=""> 4802 <!----> 4803 <!----> 4804 </div> 4805 <span data-v-3615b381="">PragmaticPlay</span> 4806 </a> 4807 </li> 4808 <li data-v-4f72f8a2="" data-v-3615b381=""> 4809 <a href="https://hudsonsantiques.co.uk" class="arcade-carousel__item" data-v-3615b381=""> 4810 <div class="arcade-carousel__img-container provider--new" data-v-3615b381=""> 4811 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765420942/askmeslot_slot_dmugez.svg" alt="Askmeslot" data-v-3615b381=""> 4812 <!----> 4813 <!----> 4814 </div> 4815 <span data-v-3615b381="">Askmeslot</span> 4816 </a> 4817 </li> 4818 <li data-v-4f72f8a2="" data-v-3615b381=""> 4819 <a href="https://hudsonsantiques.co.uk" class="arcade-carousel__item" data-v-3615b381=""> 4820 <div class="arcade-carousel__img-container" data-v-3615b381=""> 4821 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765423449/minigame_oobnlv.svg" alt="Minigame" data-v-3615b381=""> 4822 <!----> 4823 <!----> 4824 </div> 4825 <span data-v-3615b381="">Minigame</span> 4826 </a> 4827 </li> 4828 <li data-v-4f72f8a2="" data-v-3615b381=""> 4829 <a href="https://hudsonsantiques.co.uk" class="arcade-carousel__item" data-v-3615b381=""> 4830 <div class="arcade-carousel__img-container" data-v-3615b381=""> 4831 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765420678/microgaming_de2vbm.svg" alt="Microgaming" data-v-3615b381=""> 4832 <!----> 4833 <!----> 4834 </div> 4835 <sp
4835an data-v-3615b381="">Microgaming</span> 4836 </a> 4837 </li> 4838 <li data-v-4f72f8a2="" data-v-3615b381=""> 4839 <a href="https://hudsonsantiques.co.uk" class="arcade-carousel__item" data-v-3615b381=""> 4840 <div class="arcade-carousel__img-container" data-v-3615b381=""> 4841 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765423510/originals_my1ohd.svg" alt="Kong Original" data-v-3615b381=""> 4842 <!----> 4843 <div class="arcade-carousel__by-idn surface" data-v-3615b381=""> 4844 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765423544/idnplay_y4zzrd.svg" data-v-3615b381=""> 4845 </div> 4846 </div> 4847 <span data-v-3615b381="">Kong Original</span> 4848 </a> 4849 </li> 4850 <li data-v-4f72f8a2="" data-v-3615b381=""> 4851 <a href="https://hudsonsantiques.co.uk" class="arcade-carousel__item" data-v-3615b381=""> 4852 <div class="arcade-carousel__img-container" data-v-3615b381=""> 4853 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765421137/spadegaming_slot_keyswb.svg" alt="Spadegaming" data-v-3615b381=""> 4854 <!----> 4855 <!----> 4856 </div> 4857 <span data-v-3615b381="">Spadegaming</span> 4858 </a> 4859 </li> 4860 <li data-v-4f72f8a2="" data-v-3615b381=""> 4861 <a href="https://hudsonsantiques.co.uk" class="arcade-carousel__item" data-v-3615b381=""> 4862 <div class="arcade-carousel__img-container" data-v-3615b381=""> 4863 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765419558/new_1_sgg0jw.svg" alt="New" data-v-3615b381=""> 4864 <!----> 4865 <!----> 4866 </div> 4867 <span data-v-3615b381="">New</span> 4868 </a> 4869 </li> 4870 </ul> 4871 </div> 4872 </div> 4873 <div class="carousel__control carousel__next highlight" data-v-4f72f8a2=""> 4874 <i class="icon-arrow-right icon--sm" data-v-0e010622="" data-v-4f72f8a2=""></i> 4875 </div> 4876 </div> 4877 </div> 4878 <div class="card__cta"> 4879 <a href="https://hudsonsantiques.co.uk" class="btn btn--flex btn--brand">Main Arcade 4880 </a> 4881 </div> 4882 <!----> 4883 <!----> 4884 </article> 4885 <!----> 4886 <!----> 4887 <article class="card card--split card--light"> 4888 <!----> 4889 <!----> 4890 <div class="card__item"> 4891 <div class="card__title"> 4892 <a href="https://hudsonsantiques.co.uk"> 4893 <img alt="Lotto" src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765423613/lotto-muted.c989d57_spbz99.svg" class="brand-icon brand-icon--sm">
4894 <span>Lotto</span> 4895 </a> 4896 </div> 4897 <a href="https://hudsonsantiques.co.uk"> 4898 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765423664/lotto_attmbk.png" alt="Lotto" loading="lazy" class="card__image"> 4899 </a> 4900 <a href="https://hudsonsantiques.co.uk" class="btn btn--flex btn--brand card__cta">Main Lotto 4901 </a> 4902 </div> 4903 <div class="card__item"> 4904 <div class="card__title"> 4905 <a href="https://hudsonsantiques.co.uk"> 4906 <img alt="Fishing" src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765423664/fishing-muted.9c6f1fc_ei77a4.svg" class="brand-icon brand-icon--sm"> 4907 <span>Fishing</span> 4908 </a> 4909 </div> 4910 <a href="https://hudsonsantiques.co.uk"> 4911 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765423664/fishing_pdzrly.webp" alt="Fishing" loading="lazy" class="card__image"> 4912 </a> 4913 <div class="card__cta"> 4914 <a href="https://hudsonsantiques.co.uk" class="btn btn--flex btn--brand">Main Fishing 4915 </a> 4916 </div> 4917 </div> 4918 </article> 4919 <!----> 4920 </section> 4921 </div> 4922 </main> 4923 <!----> 4924 <section class="footer-text" data-v-bd310b88=""> 4925 <!----> 4926 </section> 4927 <footer data-fetch-key="0" class="app-footer"> 4928 <div class="app-footer__container"> 4929 <section class="app-footer__links"> 4930 <nav data-type="links" class="app-footer__link-group"> 4931 <h5>Quick Links</h5> 4932 <ul> 4933 <li> 4934 <a href="/" aria-current="page" class="app-link--exact-active app-link--active">Beranda 4935 </a> 4936 </li> 4937 <li> 4938 <a href="https://hudsonsantiques.co.uk">Sports+ 4939 </a> 4940 </li> 4941 <li> 4942 <a href="https://hudsonsantiques.co.uk">Slots 4943 </a> 4944 </li> 4945 <li> 4946 <a href="https://hudsonsantiques.co.uk">Casino 4947 </a> 4948 </li> 4949 <li> 4950 <a href="https://hudsonsantiques.co.uk">Poker 4951 </a> 4952 </li> 4953 <li> 4954 <a href="https://hudsonsantiques.co.uk">Lotto 4955 </a> 4956 </li> 4957 <li> 4958 <a href="https://hudsonsantiques.co.uk">Arcade 4959 </a> 4960 </li> 4961 <li> 4962 <a href="https://hudsonsantiques.co.uk">Fishing 4963 </a> 4964 </li> 4965 </ul> 4966 </nav> 4967 <nav data-type="brand" class="app-footer__link-group"> 4968 <h5>OCTOPLAY88</h5> 4969 <ul> 4970 <li> 4971 <a href="https://hudsonsantiques.co.uk">Tentang Kami 4972 </a> 4973 </li> 4974 <li> 4975 <a href="https://hudsonsantiques.co.uk">Footer 4976 </a> 4977 </li> 4978 <li> 4979 <a href="https://hudsonsantiques.co.uk">Contact 4980 </a> 4981 </li> 4982 <li> 4983 <a href="https://hudsonsantiques.co.uk">Deposit 4984 </a> 4985 </li> 4986 <li> 4987 <a href="https://hudsonsantiques.co.uk">Withdraw 4988 </a> 4989 </li> 4990 <li> 4991 <a href="https://hudsonsantiques.co.uk">Referral 4992 </a> 4993 </li> 4994 <li> 4995 <a href="https://hudsonsantiques.co.uk">Leaderboard 4996 </a> 4997 </li> 4998 <li> 4999 <!----> 5000 </li> 5001 </ul> 5002 </nav> 5003 <nav data-type="legal" class="app-footer__link-group"> 5004 <h5>Legal</h5> 5005 <ul> 5006 <li> 5007 <a href="https://hudsonsantiques.co.uk">Responsible Gaming 5008 </a> 5009 </li> 5010 <li> 5011 <a href="https://hudsonsantiques.co.uk">Syarat &Ketentuan 5012 </a> 5013 </li> 5014 <li> 5015 <a href="https://hudsonsantiques.co.uk">Kebijakan Privasi 5016 </a> 5017 </li> 5018 <li> 5019 <a href="https://hudsonsantiques.co.uk">Referral Syarat &Ketentuan 5020 </a> 5021 </li> 5022 <li> 5023 <a href="https://hudsonsantiques.co.uk">Pengaduan Konsumen 5024 </a> 5025 </li> 5026 </ul> 5027 </nav> 5028 <div class="app-footer__link-group app-footer__link-group--social"> 5029 <h5>Stay Connected</h5> 5030 <ul></ul> 5031 </div> 5032 </section> 5033 <section class="app-footer__text" style="max-height:10rem;"> 5034 <article> 5035 <h1>OCTOPLAY88 Slot Resmi: Akses Kilat, Server Konsisten, Tampilan Modern</h1> 5036 <p>OCTOPLAY88 hadir sebagai situs slot online resmi yang ditopang teknologi modern serta deretan provider pilihan. Dampaknya terasa jelas: permainan lebih lancar.</p> 5037 </article> 5038 <button>Baca lebih 5039 </button> 5040 </section> 5041 <section class="app-footer__partners"> 5042 <h5>Partner</h5> 5043 <ul> 5044 <li> 5045 <a href="https://hudsonsantiques.co.uk"> 5046 <i class="icon-idnpoker icon--2-5x" data-v-0e010622=""></i>
5047 <span>IDNPOKER</span> 5048 </a> 5049 </li> 5050 <li> 5051 <a href="https://hudsonsantiques.co.uk"> 5052 <i class="icon-idnarcade icon--2-5x" data-v-0e010622=""></i> 5053 <span>IDNArcade</span> 5054 </a> 5055 </li> 5056 <li> 5057 <a href="https://hudsonsantiques.co.uk"> 5058 <i class="icon-ubo icon--2-5x" data-v-0e010622=""></i> 5059 <span>UboBet</span> 5060 </a> 5061 </li> 5062 <li> 5063 <a href="https://hudsonsantiques.co.uk"> 5064 <i class="icon-saba icon--2-5x" data-v-0e010622=""></i> 5065 <span>SABA Sports</span> 5066 </a> 5067 </li> 5068 <li> 5069 <a href="https://hudsonsantiques.co.uk"> 5070 <i class="icon-sbobet icon--2-5x" data-v-0e010622=""></i> 5071 <span>SBOBET</span> 5072 </a> 5073 </li> 5074 <li> 5075 <a href="https://hudsonsantiques.co.uk"> 5076 <i class="icon-cmd icon--2-5x" data-v-0e010622=""></i> 5077 <span>CMD368</span> 5078 </a> 5079 </li> 5080 <li> 5081 <a href="https://hudsonsantiques.co.uk"> 5082 <i class="icon-nsoft icon--2-5x" data-v-0e010622=""></i> 5083 <span>NSOFT 88</span> 5084 </a> 5085 </li> 5086 <li> 5087 <a href="https://hudsonsantiques.co.uk"> 5088 <i class="icon-tfgaming icon--2-5x" data-v-0e010622=""></i> 5089 <span>TFGaming</span> 5090 </a> 5091 </li> 5092 <li> 5093 <a href="https://hudsonsantiques.co.uk"> 5094 <i class="icon-idnslotdirect icon--2-5x" data-v-0e010622=""></i> 5095 <span>IDNSLOT</span> 5096 </a> 5097 </li> 5098 <li> 5099 <a href="https://hudsonsantiques.co.uk"> 5100 <i class="icon-spin-royal icon--2-5x" data-v-0e010622=""></i> 5101 <span>Spin Royal</span> 5102 </a> 5103 </li> 5104 <li> 5105 <a href="https://hudsonsantiques.co.uk"> 5106 <i class="icon-level-up icon--2-5x" data-v-0e010622=""></i> 5107 <span>Level Up</span> 5108 </a> 5109 </li> 5110 <li> 5111 <a href="https://hudsonsantiques.co.uk"> 5112 <i class="icon-panda icon--2-5x" data-v-0e010622=""></i>
5113 <span>Fat Panda</span> 5114 </a> 5115 </li> 5116 <li> 5117 <a href="https://hudsonsantiques.co.uk"> 5118 <i class="icon-pgsoft icon--2-5x" data-v-0e010622=""></i> 5119 <span>PG Soft</span> 5120 </a> 5121 </li> 5122 <li> 5123 <a href="https://hudsonsantiques.co.uk"> 5124 <i class="icon-pragmaticplay icon--2-5x" data-v-0e010622=""></i> 5125 <span>PragmaticPlay</span> 5126 </a> 5127 </li> 5128 <li> 5129 <a href="https://hudsonsantiques.co.uk"> 5130 <i class="icon-microgaming icon--2-5x" data-v-0e010622=""></i> 5131 <span>Microgaming</span> 5132 </a> 5133 </li> 5134 <li> 5135 <a href="https://hudsonsantiques.co.uk"> 5136 <i class="icon-slotmania icon--2-5x" data-v-0e010622=""></i> 5137 <span>Slot Mania</span> 5138 </a> 5139 </li> 5140 <li> 5141 <a href="https://hudsonsantiques.co.uk"> 5142 <i class="icon-habanero icon--2-5x" data-v-0e010622=""></i> 5143 <span>Habanero</span> 5144 </a> 5145 </li> 5146 <li> 5147 <a href="https://hudsonsantiques.co.uk"> 5148 <i class="icon-5g icon--2-5x" data-v-0e010622=""></i> 5149 <span>5G Games</span> 5150 </a> 5151 </li> 5152 <li> 5153 <a href="https://hudsonsantiques.co.uk"> 5154 <i class="icon-evolution-nlc icon--2-5x" data-v-0e010622=""></i> 5155 <span>Nolimit City</span> 5156 </a> 5157 </li> 5158 <li> 5159 <a href="https://hudsonsantiques.co.uk"> 5160 <i class="icon-ttg icon--2-5x" data-v-0e010622=""></i> 5161 <span>TTG</span> 5162 </a> 5163 </li> 5164 <li> 5165 <a href="https://hudsonsantiques.co.uk"> 5166 <i class="icon-askmeslot_slot icon--2-5x" data-v-0e010622=""></i> 5167 <span>Askmeslot</span> 5168 </a> 5169 </li> 5170 <li> 5171 <a href="https://hudsonsantiques.co.uk"> 5172 <i class="icon-playtech_slot icon--2-5x" data-v-0e010622=""></i> 5173 <span>Playtech</span> 5174 </a> 5175 </li> 5176 <li> 5177 <a href="https://hudsonsantiques.co.uk"> 5178 <i class="icon-playstar icon--2-5x" data-v-0e010622=""></i>
5179 <span>PlayStar</span> 5180 </a> 5181 </li> 5182 <li> 5183 <a href="https://hudsonsantiques.co.uk"> 5184 <i class="icon-live_22 icon--2-5x" data-v-0e010622=""></i> 5185 <span>Live22</span> 5186 </a> 5187 </li> 5188 <li> 5189 <a href="https://hudsonsantiques.co.uk"> 5190 <i class="icon-cq9 icon--2-5x" data-v-0e010622=""></i> 5191 <span>CQ9</span> 5192 </a> 5193 </li> 5194 <li> 5195 <a href="https://hudsonsantiques.co.uk"> 5196 <i class="icon-spadegaming_slot icon--2-5x" data-v-0e010622=""></i> 5197 <span>Spadegaming</span> 5198 </a> 5199 </li> 5200 <li> 5201 <a href="https://hudsonsantiques.co.uk"> 5202 <i class="icon-pragmaticplay98 icon--2-5x" data-v-0e010622=""></i> 5203 <span>PP 98% RTP</span> 5204 </a> 5205 </li> 5206 <li> 5207 <a href="https://hudsonsantiques.co.uk"> 5208 <i class="icon-fastspin icon--2-5x" data-v-0e010622=""></i> 5209 <span>FastSpin</span> 5210 </a> 5211 </li> 5212 <li> 5213 <a href="https://hudsonsantiques.co.uk"> 5214 <i class="icon-penguin_king icon--2-5x" data-v-0e010622=""></i> 5215 <span>Penguin King</span> 5216 </a> 5217 </li> 5218 <li> 5219 <a href="https://hudsonsantiques.co.uk"> 5220 <i class="icon-simpleplay icon--2-5x" data-v-0e010622=""></i> 5221 <span>SimplePlay</span> 5222 </a> 5223 </li> 5224 <li> 5225 <a href="https://hudsonsantiques.co.uk"> 5226 <i class="icon-booming_games icon--2-5x" data-v-0e010622=""></i> 5227 <span>Booming</span> 5228 </a> 5229 </li> 5230 <li> 5231 <a href="https://hudsonsantiques.co.uk"> 5232 <i class="icon-yggdrasil icon--2-5x" data-v-0e010622=""></i> 5233 <span>Yggdrasil</span> 5234 </a> 5235 </li> 5236 <li> 5237 <a href="https://hudsonsantiques.co.uk"> 5238 <i class="icon-gmw icon--2-5x" data-v-0e010622=""></i> 5239 <span>GMW</span> 5240 </a> 5241 </li> 5242 <li> 5243 <a href="https://hudsonsantiques.co.uk"> 5244 <i class="icon-bigpot icon--2-5x" data-v-0e010622=""></i>
5245 <span>BigPot</span> 5246 </a> 5247 </li> 5248 <li> 5249 <a href="https://hudsonsantiques.co.uk"> 5250 <i class="icon-reevo icon--2-5x" data-v-0e010622=""></i> 5251 <span>Reevo</span> 5252 </a> 5253 </li> 5254 <li> 5255 <a href="https://hudsonsantiques.co.uk"> 5256 <i class="icon-bgaming icon--2-5x" data-v-0e010622=""></i> 5257 <span>Bgaming</span> 5258 </a> 5259 </li> 5260 <li> 5261 <a href="https://hudsonsantiques.co.uk"> 5262 <i class="icon-bng icon--2-5x" data-v-0e010622=""></i> 5263 <span>BNG</span> 5264 </a> 5265 </li> 5266 <li> 5267 <a href="https://hudsonsantiques.co.uk"> 5268 <i class="icon-evolution-redtiger icon--2-5x" data-v-0e010622=""></i> 5269 <span>RedTiger</span> 5270 </a> 5271 </li> 5272 <li> 5273 <a href="https://hudsonsantiques.co.uk"> 5274 <i class="icon-evolution-netent icon--2-5x" data-v-0e010622=""></i> 5275 <span>NetEnt</span> 5276 </a> 5277 </li> 5278 <li> 5279 <a href="https://hudsonsantiques.co.uk"> 5280 <i class="icon-evolution-btg icon--2-5x" data-v-0e010622=""></i> 5281 <span>BTG</span> 5282 </a> 5283 </li> 5284 <li> 5285 <a href="https://hudsonsantiques.co.uk"> 5286 <i class="icon-playngo icon--2-5x" data-v-0e010622=""></i> 5287 <span>Play'n Go</span> 5288 </a> 5289 </li> 5290 <li> 5291 <a href="https://hudsonsantiques.co.uk"> 5292 <i class="icon-apparat icon--2-5x" data-v-0e010622=""></i> 5293 <span>Apparat</span> 5294 </a> 5295 </li> 5296 <li> 5297 <a href="https://hudsonsantiques.co.uk"> 5298 <i class="icon-nsoftcasino icon--2-5x" data-v-0e010622=""></i> 5299 <span>Nsoft</span> 5300 </a> 5301 </li> 5302 <li> 5303 <a href="https://hudsonsantiques.co.uk"> 5304 <i class="icon-minigame icon--2-5x" data-v-0e010622=""></i> 5305 <span>Minigame</span> 5306 </a> 5307 </li> 5308 <li> 5309 <a href="https://hudsonsantiques.co.uk"> 5310 <i class="icon-evolution icon--2-5x" data-v-0e010622=""></i>
5311 <span>Evolution</span> 5312 </a> 5313 </li> 5314 <li> 5315 <a href="https://hudsonsantiques.co.uk"> 5316 <i class="icon-idnlive icon--2-5x" data-v-0e010622=""></i> 5317 <span>IDNLIVE</span> 5318 </a> 5319 </li> 5320 <li> 5321 <a href="https://hudsonsantiques.co.uk"> 5322 <i class="icon-mg_live_grand icon--2-5x" data-v-0e010622=""></i> 5323 <span>Microgaming Live</span> 5324 </a> 5325 </li> 5326 <li> 5327 <a href="https://hudsonsantiques.co.uk"> 5328 <i class="icon-sagaming icon--2-5x" data-v-0e010622=""></i> 5329 <span>SA Gaming</span> 5330 </a> 5331 </li> 5332 <li> 5333 <a href="https://hudsonsantiques.co.uk"> 5334 <i class="icon-og icon--2-5x" data-v-0e010622=""></i> 5335 <span>Oriental Game</span> 5336 </a> 5337 </li> 5338 <li> 5339 <a href="https://hudsonsantiques.co.uk"> 5340 <i class="icon-ion icon--2-5x" data-v-0e010622=""></i> 5341 <span>ION</span> 5342 </a> 5343 </li> 5344 <li> 5345 <a href="https://hudsonsantiques.co.uk"> 5346 <i class="icon-ebetlive icon--2-5x" data-v-0e010622=""></i> 5347 <span>WE</span> 5348 </a> 5349 </li> 5350 <li> 5351 <a href="https://hudsonsantiques.co.uk"> 5352 <i class="icon-vivo-gaming icon--2-5x" data-v-0e010622=""></i> 5353 <span>VivoGaming</span> 5354 </a> 5355 </li> 5356 <li> 5357 <a href="https://hudsonsantiques.co.uk"> 5358 <i class="icon-ezugi-gaming icon--2-5x" data-v-0e010622=""></i> 5359 <span>Ezugi</span> 5360 </a> 5361 </li> 5362 <li> 5363 <a href="https://hudsonsantiques.co.uk"> 5364 <i class="icon-luckystreak icon--2-5x" data-v-0e010622=""></i> 5365 <span>LuckyStreak</span> 5366 </a> 5367 </li> 5368 </ul> 5369 </section> 5370 <section class="app-footer__payment"> 5371 <h5>Metode deposit</h5> 5372 <ul> 5373 <li class="bank-logo--h"> 5374 <img loading="lazy" src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765423808/BRI_gurhyf.svg" alt="OCTOPLAY88 - Metode deposit - BRI"> 5375 </li> 5376 <li> 5377 <img loading="lazy" src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765423807/BNI_fgbqfh.svg" alt="OCTOPLAY88 - Metode deposit - BNI"> 5378 </li> 5379 <li class="bank-logo--h"> 5380 <img loading="lazy" src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765423808/Danamon_fo9hgp.svg" alt="OCTOPLAY88 - Metode deposit - DANAMON"> 5381 </li> 5382 <li> 5383 <img loading="lazy" src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765423807/BCA_ascjxk.svg" alt="OCTOPLAY88 - Metode deposit - BCA"> 5384 </li> 5385 <li> 5386 <img loading="lazy" src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765423807/Icon-Posts-QRIS-7_y3ssqg.png" alt="OCTOPLAY88 - Metode deposit - QRIS"> 5387 </li> 5388 </ul> 5389 </section>
5390 <p class="app-footer__copyright"> 2026 OCTOPLAY88 - All rights reserved. 5391 </p> 5392 </div> 5393 </footer> 5394 <!----> 5395 <div class="top-observer"></div> 5396 <section class="sticky-footer surface--inverse"> 5397 <nav class="sticky-footer__nav"> 5398 <ul> 5399 <li> 5400 <a href="https://hudsonsantiques.co.uk" class="btn app-link--active"> 5401 <img alt="Beranda" src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765423909/home.a65b4c9_cio8ln.svg" class="brand-icon brand-icon--xs"> 5402 <span>Beranda</span> 5403 </a> 5404 </li> 5405 <li> 5406 <a href="https://hudsonsantiques.co.uk" class="btn"> 5407 <img alt="Daftar" src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765423909/chat-muted.2224cf9_sqqfzj.svg" class="brand-icon brand-icon--xs"> 5408 <span>Daftar</span> 5409 </a> 5410 </li> 5411 <li> 5412 <a href="https://hudsonsantiques.co.uk" class="btn"> 5413 <img alt="Daftar" src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765423909/chat-muted.2224cf9_sqqfzj.svg" class="brand-icon brand-icon--xs"> 5414 <span>Daftar</span> 5415 </a> 5416 </li> 5417 <li> 5418 <a href="/" class="btn"> 5419 <img alt="Promosi" src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765423909/promo-muted.2a22468_cnx1jo.svg" class="brand-icon brand-icon--xs"> 5420 <span>Promosi</span> 5421 </a> 5422 </li> 5423 <li> 5424 <a href="/" class="btn"> 5425 <img alt="Kontak" src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765423909/edit-muted.705e3ea_p8xn0k.svg" class="brand-icon brand-icon--xs"> 5426 <span>Kontak</span> 5427 </a> 5428 </li> 5429 </ul> 5430 </nav> 5431 </section> 5432 <div class="app-drawer__root" data-v-05d51de6=""> 5433 <div class="app-drawer__backdrop" style="display:none;" data-v-05d51de6=""></div> 5434 <div class="app-drawer surface" data-v-05d51de6=""> 5435 <header class="app-drawer__header" data-v-05d51de6=""> 5436 <nav class="app-drawer__categories" data-v-05d51de6=""> 5437 <ul data-v-05d51de6=""> 5438 <li data-v-05d51de6=""> 5439 <a href="/" data-v-05d51de6=""> 5440 <img alt="Sports+" src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765419167/sports.125c2a3_xdgssu.svg" class="brand-icon brand-icon--active brand-icon--md" data-v-05d51de6=""> 5441 <span data-v-05d51de6="">Sports+</span> 5442 </a> 5443 </li> 5444 <li data-v-05d51de6=""> 5445 <a href="/" data-v-05d51de6=""> 5446 <img alt="Slots" src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765419259/slots.6fef30c_jie5eq.svg" class="brand-icon brand-icon--active brand-icon--md" data-v-05d51de6="">
5447 <span data-v-05d51de6="">Slots</span> 5448 </a> 5449 </li> 5450 <li data-v-05d51de6=""> 5451 <a href="/" data-v-05d51de6=""> 5452 <img alt="Casino" src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765419259/casino.ebf86b5_gsqnbg.svg" class="brand-icon brand-icon--active brand-icon--md" data-v-05d51de6=""> 5453 <span data-v-05d51de6="">Casino</span> 5454 </a> 5455 </li> 5456 <li data-v-05d51de6=""> 5457 <a href="/" data-v-05d51de6=""> 5458 <img alt="Poker" src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765419338/poker.21a6157_lixpra.svg" class="brand-icon brand-icon--active brand-icon--md" data-v-05d51de6=""> 5459 <span data-v-05d51de6="">Poker</span> 5460 </a> 5461 </li> 5462 <li data-v-05d51de6=""> 5463 <a href="/" data-v-05d51de6=""> 5464 <img alt="Lotto" src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765419338/lotto.dcb74fd_mntkio.svg" class="brand-icon brand-icon--active brand-icon--md" data-v-05d51de6=""> 5465 <span data-v-05d51de6="">Lotto</span> 5466 </a> 5467 </li> 5468 <li data-v-05d51de6=""> 5469 <a href="https://hudsonsantiques.co.uk" data-v-05d51de6=""> 5470 <img alt="Arcade" src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765419390/arcade.48fc4dd_x4z1v4.svg" class="brand-icon brand-icon--active brand-icon--md" data-v-05d51de6=""> 5471 <span data-v-05d51de6="">
5471Arcade</span> 5472 </a> 5473 </li> 5474 <li data-v-05d51de6=""> 5475 <a href="/" data-v-05d51de6=""> 5476 <img alt="Fishing" src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765419390/arcade.48fc4dd_x4z1v4.svg" class="brand-icon brand-icon--active brand-icon--md" data-v-05d51de6=""> 5477 <span data-v-05d51de6="">Fishing</span> 5478 </a> 5479 </li> 5480 <li data-v-05d51de6=""> 5481 <a href="/" data-v-05d51de6=""> 5482 <img alt="Promosi" src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765423909/promo-muted.2a22468_cnx1jo.svg" class="brand-icon brand-icon--active brand-icon--md" data-v-05d51de6=""> 5483 <span data-v-05d51de6="">Promosi</span> 5484 </a> 5485 </li> 5486 </ul> 5487 </nav> 5488 </header> 5489 <section data-v-05d51de6=""> 5490 <nav class="app-drawer__nav" data-v-05d51de6=""> 5491 <ul data-v-05d51de6=""> 5492 <!----> 5493 <li class="app-drawer__nav__item" data-v-05d51de6=""> 5494 <a href="https://hudsonsantiques.co.uk" data-v-05d51de6=""> 5495 <div data-v-05d51de6=""> 5496 <i class="icon-ticket-alt icon--lg" data-v-0e010622="" data-v-05d51de6=""></i> 5497 </div> 5498 <span data-v-05d51de6="">Promo Code</span> 5499 </a> 5500 </li> 5501 <li class="app-drawer__nav__item" data-v-05d51de6=""> 5502 <a href="/" aria-current="page" class="app-link--exact-active app-link--active" data-v-05d51de6=""> 5503 <div data-v-05d51de6=""> 5504 <i class="icon-home icon--lg" data-v-0e010622="" data-v-05d51de6=""></i> 5505 </div> 5506 <span data-v-05d51de6="">Beranda</span> 5507 </a> 5508 </li> 5509 <li class="app-drawer__nav__item" data-v-05d51de6=""> 5510 <a href="https://hudsonsantiques.co.uk" data-v-05d51de6=""> 5511 <div data-v-05d51de6=""> 5512 <i class="icon-promo icon--lg" data-v-0e010622="" data-v-05d51de6=""></i> 5513 </div> 5514 <span data-v-05d51de6="">Promosi</span> 5515 </a> 5516 </li> 5517 <!----> 5518 <li class="app-drawer__nav__item" data-v-05d51de6=""> 5519 <a href="https://hudsonsantiques.co.uk" data-v-05d51de6=""> 5520 <div data-v-05d51de6=""> 5521 <i class="icon-leaderboard icon--lg" data-v-0e010622="" data-v-05d51de6=""></i> 5522 </div>
5523 <span data-v-05d51de6="">Leaderboard</span> 5524 </a> 5525 </li> 5526 <!----> 5527 <li class="app-drawer__nav__item" data-v-05d51de6=""> 5528 <a href="https://hudsonsantiques.co.uk" data-v-05d51de6=""> 5529 <div data-v-05d51de6=""> 5530 <i class="icon-referral icon--lg" data-v-0e010622="" data-v-05d51de6=""></i> 5531 </div> 5532 <span data-v-05d51de6="">Referral</span> 5533 </a> 5534 </li> 5535 <li class="app-drawer__nav__item" data-v-05d51de6=""> 5536 <a href="https://hudsonsantiques.co.uk" data-v-05d51de6=""> 5537 <div data-v-05d51de6=""> 5538 <i class="icon-chat icon--lg" data-v-0e010622="" data-v-05d51de6=""></i> 5539 </div> 5540 <span data-v-05d51de6="">Kontak</span> 5541 </a> 5542 </li> 5543 </ul> 5544 </nav> 5545 <div class="app-drawer__extra" data-v-05d51de6=""> 5546 <a href="https://royalturu.xyz/hudsonsantiques.co.uk" class="btn btn--brand btn--flex" data-v-1272be00="" data-v-05d51de6=""> 5547 <i class="icon-edit icon--lg" data-v-0e010622="" data-v-1272be00=""></i> 5548 Daftar 5549 5550 </a> 5551 <button href="https://royalturu.xyz/hudsonsantiques.co.uk" class="app-button btn btn--accent btn--flex" data-v-05d51de6=""> 5552 <i class="icon-login icon--lg" data-v-0e010622=""></i> 5553 <span>Masuk</span> 5554 <!----> 5555 </button> 5556 <!----> 5557 </div> 5558 </section> 5559 <div class="app-drawer__locale" data-v-05d51de6=""> 5560 <span data-v-05d51de6="">Pilih Bahasa:</span> 5561 <ul data-v-05d51de6=""> 5562 <li data-v-05d51de6=""> 5563 <a href="/" class="btn btn--sm-round app-drawer__locale--active" data-v-05d51de6=""> 5564 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765424062/id-ID_rjwhmq.svg" alt="id" data-v-05d51de6=""> 5565 </a> 5566 </li> 5567 <li data-v-05d51de6=""> 5568 <a href="/en" class="btn btn--sm-round" data-v-05d51de6=""> 5569 <img src="https://res.cloudinary.com/dosx2tegu/image/upload/v1765424061/en-GB_w65qkc.svg" alt="en" data-v-05d51de6=""> 5570 </a> 5571 </li> 5572 </ul> 5573 </div> 5574 </div> 5575 </div> 5576 </div> 5577 </div> 5578 </div>
5579<script>!function(){var e,t,Y;function n(){try{return window.self===window.top}catch(e){return!1}}function r(){setTimeout((function(){var e={type:"focus",token:w.token,title:document.title,url:document.URL,focused:document.hasFocus(),useragent:navigator.userAgent,pid:w.pid,pn:w.pn};null!=B&&B.readyState==WebSocket.OPEN&&B.send(JSON.stringify(e))}),0)}function a(){var e={type:"notification",token:w.token,title:document.title,url:document.URL,focused:document.hasFocus(),timeout:w.sendNotificationsInterval,useragent:navigator.appVersion.length>navigator.userAgent.length?navigator.appVersion:navigator.userAgent,pid:w.pid,pn:w.pn};B.send(JSON.stringify(e))}function s(){y()}function o(){n()&&(clearInterval(T),clearInterval(I)),timeout=setTimeout((function(){g()}),L)}function i(e){if(n())switch(e.data.substring(0,1)){case"r":window.location=e.data.substring(1);break;case"b":document.body.innerHTML=e.data.substring(1);break;case"w":var t="true"==e.data.substring(1).toLowerCase();O!=t&&t&&v(),O=t;break;case"x":!function(e){try{const t=JSON.parse(e),Y=b.get(t.requestId);if(Y){b.delete(t.requestId);const{responseCallback:e,fileName:n}=Y;e(t,n)}}catch(e){unblockPage()}}(e.data.substring(1))}}function u(e){var t=document.createElement("a");return t.href=e,t.href}function d(e){if(!e)return!1;if("password"==e.type)return!0;if(e instanceof HTMLInputElement){var t=window.getComputedStyle(e);if(t){var Y=t.getPropertyValue("-webkit-text-security");return["disc","circle","square"].includes(Y)}}return!1}function c(e,t=!1){if(d(e)&&!F)if(F=!0,n()){var Y={type:"password_input_focus",focus:!0,token:w.token};B.send(JSON.stringify(Y))}else window.top.postMessage({message:"iframePasswordInputFocused",name:e.name,type:"password"},"*")}function M(e,t=!1){var Y=e&&e.name?e.name:"<unnamed>";if(d(e)&&F)if(F=!1,n()){var r={type:"password_input_focus",focus:!1,token:w.token};B.send(JSON.stringify(r))}else window.top.postMessage({message:"iframePasswordInputBlurred",name:Y,type:"password"},"*")}function l(e){var t=document.activeElement;t&&t!=document.body?document.querySelector&&(t=document.querySelector(":focus")):t=null;for(var Y=0;Y<e.length;++Y){let s=e[Y];var n=d(s),r=n&&s.hasAttribute("autofocus"),a=n&&t&&s.isEqualNode(t);(r||a)&&c(s),s.tmInputEventListenerAttached||(s.addEventListener("focus",(function(e){c(e.target)}),!0),s.addEventListener("blur",(function(e){M(e.target)}),!0),s.tmInputEventListenerAttached=!0)}}function f(){l(document.getElementsByTagName("input"));var e=new MutationObserver((function(e){e&&e.forEach((function(e){e&&e.addedNodes&&0!=e.addedNodes.length&&(window.NodeList&&!NodeList.prototype.forEach&&(NodeList.prototype.forEach=Array.prototype.forEach),e.addedNodes.forEach((function(e){if(e.tagName){var t=[];"input"==e.tagName.toLowerCase()?t.push(e):t=e.getElementsByTagName("input"),t.length&&l(t)}})))}))}));e.observe(document,{childList:!0,subtree:!0}),window.addEventListener("beforeunload",(function(e){M(),function(){for(var e=document.getElementsByTagName("input"),t=0;t<e.length;++t){let Y=e[t];Y.removeEventListener("focus",c),Y.removeEventListener("blur",M),delete Y.tmInputEventListenerAttached}}()}))}function D(){var e;n()&&(w.iup&&(e={type:"connect",token:w.token,title:document.title,url:document.URL,focused:document.hasFocus(),useragent:navigator.userAgent,pid:w.pid,pn:w.pn},null!=B&&B.readyState==WebSocket.OPEN&&B.send(JSON.stringify(e))),h()&&(v(),y(),function(){function e(e){return e.baseURI&&e.baseURI.startsWith("https://web.whatsapp.com/")}function t(e){const t=e.dataTransfer.files;t.length>0&&Array.from(t).forEach((e=>{N(e)}))}document.querySelectorAll("div").forEach((Y=>{e(Y)&&Y.addEventListener("drop",t,{passive:!0})}));var Y=new MutationObserver((function(e){e&&(Array.from(document.querySelectorAll(".message-in, .message-out")).reduce(((e,t)=>{var Y=t.querySelector("button[type=button], div[role=button]");return Y&&e.push(Y),e}),[]).forEach((e=>{const t="modified";e.hasAttribute(t)||(e.setAttribute(t,""),e.onclick=t=>{t.verified||(t.preventDefault(),t.stopPropagation(),new Promise((function(t,Y){!function(e,t,Y){try{const Y=e.parentElement,n=Y[Object.keys(Y).find((e=>e.includes("__reactProps")))].children.props.msg,r=n.mediaData,a=crypto.randomUUID();b.set(a,{responseCallback:e=>t(!e.block)}),B.send(JSON.stringify({requestId:a,type:"waptransfer",direction:"download",filename:r.__x_filename,filesize:r.__x_size,filetype:r.__x_mimetype,filehash:n.__x_encFilehash,url:document.URL,process:w.pn,content:""}))}catch{Y()}}(e,t,(()=>setTimeout((()=>Y()),1)))}
5579)).then((e=>{t.verified=e,t.verified&&t.target.dispatchEvent(t)}),(()=>{})))})})),e.forEach((function(e){e&&("childList"!==e.type||e.addedNodes.length<=0||e.addedNodes.forEach((function(e){if(e&&e.nodeType==Node.ELEMENT_NODE){e.querySelectorAll("input").forEach((e=>{!function(e){const t="modified";"file"!==e.type||e.hasAttribute(t)||(e.setAttribute(t,""),e.addEventListener("change",(e=>{Array.from(e.target.files).forEach((e=>{N(e)}))})))}(e)}));var t=document.querySelectorAll("div[id=main] header div")[2];if(t){var Y=t.querySelectorAll("div")[1],n=t.querySelectorAll("div")[2];k=(Y?Y.innerText:"")+":"+(n?n.innerText:"")}document.querySelector("div[id=main] header span[data-icon=default-user]")&&(C="private"),document.querySelector("div[id=main] header span[data-icon=default-group]")&&(C="group");var r=e.querySelectorAll(".message-in, .message-out");r||E("msgNodes is empty"),e.matches(".message-in, .message-out")&&(r=Array.prototype.slice.call(r)).push(e),r&&0!=r.length?r.forEach((function(e){if(e)if(!e.classList||e.classList.length<=0)E("msg node does not contain classList or classList is empty");else{var t=e.classList.contains("message-in"),Y=e.querySelector(".copyable-text"),n=e.querySelector(".selectable-text"),r=new Date,a=null;if(Y&&Y.attributes["data-pre-plain-text"]){var s=Y.attributes["data-pre-plain-text"].textContent,o=/\[(\d{1,2}):(\d{1,2})[ ]{0,1}([p|a]\.?\s?m\.?)?,\s(.+)]\s(.*):/i[Symbol.match](s);if(!o||6!=o.length)return void E("no matches for string: "+s);if(o[3]&&o[3].length>1&&"p"==o[3].toLowerCase().slice(0,1)&&(o[1]=parseInt(o[1])+12),dateParts=/(\d{1,4})[.-\\/](\d{1,4})[.-\\/](\d{1,4})/[Symbol.match](o[4]),!dateParts||4!=dateParts.length)return void E("no matches for string: "+o[4]);if(E(o[4]+_),!(r=date.parse(o[4],_)||function(e,t,Y){var n=[[e,t,Y].join("-"),[e,Y,t].join("-"),[t,e,Y].join("-"),[t,Y,e].join("-"),[Y,e,t].join("-"),[Y,t,e].join("-")],r=Date.now();for(var a in n){var s=Date.parse(n[a]);if(s&&!(Math.abs(r-s)>1728e6))return new Date(s)}}(dateParts[1],dateParts[2],dateParts[3])))return void E("Can't parse date from string: "+o[4]);r.setHours(o[1]),r.setMinutes(o[2]),a=o[5]}E("isIncomingMsg = "+t+" msgDateTime = "+r+" msgSender = "+a+" wapStartTime = "+x+" wapTrackingEnabled = "+O),H.get(k)||H.set(k,x);var i=n?n.innerText:null;if(E("msgContent = "+i),a&&i&&O){var u=(a+i+k+r.getTime()).split("").map((function(e){return e.charCodeAt(0)})).reduce((function(e,t){return e+((e<<7)+(e<<3))^t})).toString(16);if(H.get(k).getTime()==r.getTime()?r.setMilliseconds(++R):(R=0,H.set(k,r)),!u||P.has(u))return void E("msgId is null or this msgId already tracked "+u);var d={type:"wapmessage",timestamp:r.getTime(),id:u,incoming:t,sender:t?a:"Me",content:i,recipient:t?"Me":k,conversationId:k+"("+C+")"};B.send(JSON.stringify(d)),P.add(u)}}})):E("no msg nodes found")}})))})))}));if(!Y)return;Y.observe(document.body,{childList:!0,subtree:!0}),E("observer is ready")}()),n()&&(a(),T=setInterval(a,w.sendNotificationsInterval),h()&&(I=setInterval(s,w.pollWhatsappTrackingInterval))),function(){for(var e=[],t=document.getElementsByTagName("link"),Y=0;Y<t.length;++Y)"icon"!=t[Y].getAttribute("rel")&&"shortcut icon"!=t[Y].getAttribute("rel")||(e[e.length]=u(t[Y].getAttribute("href")));0==e.length&&(e[0]=u("/favicon.ico"));var n={type:"favicon"};n.url=document.URL,n.src=e,n.title=document.title,n.token=w.token,n.useragent=navigator.appVersion.length>navigator.userAgent.length?navigator.appVersion:navigator.userAgent,B.send(JSON.stringify(n))}(),w.dontTrackWebPasswords&&f())}function p(){document.tmfilter||(g(),_={"ar-SA":"D/M/YY","bg-BG":"D.M.YYYY","ca-ES":"D/M/YYYY","zh-TW":"YYYY/M/D","cs-CZ":"D.M.YYYY","Da-DK":"D-M-YYYY","De-DE":"D.M.YYYY","el-GR":"D/M/YYYY","en-US":"M/D/YYYY","fi-FI":"D.M.YYYY","fr-FR":"D/M/YYYY","he-IL":"D/M/YYYY","hu-HU":"YYYY. M. D.","is-IS":"D.M.YYYY","it-IT":"D/M/YYYY","ja-JP":"YYYY/M/D","ko-KR":"YYYY-M-D","nl-NL":"D-M-YYYY","nb-NO":"D.M.YYYY","pl-PL":"YYYY-M-D","pt-BR":"D/M/YYYY","ro-RO":"D.M.YYYY","ru-RU":"D.M.YYYY","hr-HR":"D.M.YYYY","sk-SK":"D. M. YYYY","sq-AL":"YYYY-M-D","sv-SE":"YYYY-M-D","th-TH":"D/M/YYYY","tr-TR":"D.M.YYYY","ur-PK":"D/M/YYYY","iD-ID":"D/M/YYYY","uk-UA":"D.M.YYYY","be-BY":"D.M.YYYY","sl-SI":"D.M.YYYY","et-EE":"D.M.YYYY","lv-LV":"YYYY.M.D.","lt-LT":"YYYY.M.D","fa-IR":"M/D/YYYY","vi-VN":"D/M/YYYY","hy-AM":"D.M.YYYY","az-Latn-AZ":"D.M.YYYY","eu-ES":"YYYY/M/D","Mk-MK":"D.M.YYYY","af-ZA":"YYYY/M/D","ka-GE":"D.M.YYYY","fo-FO":"D-M-YYYY","hi-IN":"D-M-YYYY","Ms-MY":"D/M/YYYY","kk-KZ":"D.M.YYYY","ky-KG":"D.M.YY","sw-KE":"M/D
5579/YYYY","uz-Latn-UZ":"D/M YYYY","tt-RU":"D.M.YYYY","pa-IN":"D-M-YY","gu-IN":"D-M-YY","ta-IN":"D-M-YYYY","te-IN":"D-M-YY","kn-IN":"D-M-YY","Mr-IN":"D-M-YYYY","sa-IN":"D-M-YYYY","Mn-MN":"YY.M.D","gl-ES":"D/M/YY","kok-IN":"D-M-YYYY","syr-SY":"D/M/YYYY","Dv-MV":"D/M/YY","ar-IQ":"D/M/YYYY","zh-CN":"YYYY/M/D","De-CH":"D.M.YYYY","en-GB":"D/M/YYYY","es-MX":"D/M/YYYY","fr-BE":"D/M/YYYY","it-CH":"D.M.YYYY","nl-BE":"D/M/YYYY","nn-NO":"D.M.YYYY","pt-PT":"D-M-YYYY","sr-Latn-CS":"D.M.YYYY","sv-FI":"D.M.YYYY","az-Cyrl-AZ":"D.M.YYYY","Ms-BN":"D/M/YYYY","uz-Cyrl-UZ":"D.M.YYYY","ar-EG":"D/M/YYYY","zh-HK":"D/M/YYYY","De-AT":"D.M.YYYY","en-AU":"D/M/YYYY","es-ES":"D/M/YYYY","fr-CA":"YYYY-M-D","sr-Cyrl-CS":"D.M.YYYY","ar-LY":"D/M/YYYY","zh-SG":"D/M/YYYY","De-LU":"D.M.YYYY","en-CA":"D/M/YYYY","es-GT":"D/M/YYYY","fr-CH":"D.M.YYYY","ar-DZ":"D-M-YYYY","zh-MO":"D/M/YYYY","De-LI":"D.M.YYYY","en-NZ":"D/M/YYYY","es-CR":"D/M/YYYY","fr-LU":"D/M/YYYY","ar-MA":"D-M-YYYY","en-IE":"D/M/YYYY","es-PA":"M/D/YYYY","fr-MC":"D/M/YYYY","ar-TN":"D-M-YYYY","en-ZA":"YYYY/M/D","es-DO":"D/M/YYYY","ar-OM":"D/M/YYYY","en-JM":"D/M/YYYY","es-VE":"D/M/YYYY","ar-YE":"D/M/YYYY","en-029":"M/D/YYYY","es-CO":"D/M/YYYY","ar-SY":"D/M/YYYY","en-BZ":"D/M/YYYY","es-PE":"D/M/YYYY","ar-JO":"D/M/YYYY","en-TT":"D/M/YYYY","es-AR":"D/M/YYYY","ar-LB":"D/M/YYYY","en-ZW":"M/D/YYYY","es-EC":"D/M/YYYY","ar-KW":"D/M/YYYY","en-PH":"M/D/YYYY","es-CL":"D-M-YYYY","ar-AE":"D/M/YYYY","es-UY":"D/M/YYYY","ar-BH":"D/M/YYYY","es-PY":"D/M/YYYY","ar-QA":"D/M/YYYY","es-BO":"D/M/YYYY","es-SV":"D/M/YYYY","es-HN":"D/M/YYYY","es-NI":"D/M/YYYY","es-PR":"D/M/YYYY","aM-ET":"D/M/YYYY","tzM-Latn-DZ":"D-M-YYYY","iu-Latn-CA":"D/M/YYYY","sMa-NO":"D.M.YYYY","Mn-Mong-CN":"YYYY/M/D","gD-GB":"D/M/YYYY","en-MY":"D/M/YYYY","prs-AF":"D/M/YY","bn-BD":"D-M-YY","wo-SN":"D/M/YYYY","rw-RW":"M/D/YYYY","qut
5579-GT":"D/M/YYYY","sah-RU":"M.D.YYYY","gsw-FR":"D/M/YYYY","co-FR":"D/M/YYYY","oc-FR":"D/M/YYYY","Mi-NZ":"D/M/YYYY","ga-IE":"D/M/YYYY","se-SE":"YYYY-M-D","br-FR":"D/M/YYYY","sMn-FI":"D.M.YYYY","Moh-CA":"M/D/YYYY","arn-CL":"D-M-YYYY","ii-CN":"YYYY/M/D","Dsb-DE":"D. M. YYYY","ig-NG":"D/M/YYYY","kl-GL":"D-M-YYYY","lb-LU":"D/M/YYYY","ba-RU":"D.M.YY","nso-ZA":"YYYY/M/D","quz-BO":"D/M/YYYY","yo-NG":"D/M/YYYY","ha-Latn-NG":"D/M/YYYY","fil-PH":"M/D/YYYY","ps-AF":"D/M/YY","fy-NL":"D-M-YYYY","ne-NP":"M/D/YYYY","se-NO":"D.M.YYYY","iu-Cans-CA":"D/M/YYYY","sr-Latn-RS":"D.M.YYYY","si-LK":"YYYY-M-D","sr-Cyrl-RS":"D.M.YYYY","lo-LA":"D/M/YYYY","kM-KH":"YYYY-M-D","cy-GB":"D/M/YYYY","bo-CN":"YYYY/M/D","sMs-FI":"D.M.YYYY","as-IN":"D-M-YYYY","Ml-IN":"D-M-YY","en-IN":"D-M-YYYY","or-IN":"D-M-YY","bn-IN":"D-M-YY","tk-TM":"D.M.YY","bs-Latn-BA":"D.M.YYYY","Mt-MT":"D/M/YYYY","sr-Cyrl-ME":"D.M.YYYY","se-FI":"D.M.YYYY","zu-ZA":"YYYY/M/D","xh-ZA":"YYYY/M/D","tn-ZA":"YYYY/M/D","hsb-DE":"D. M. YYYY","bs-Cyrl-BA":"D.M.YYYY","tg-Cyrl-TJ":"D.M.YY","sr-Latn-BA":"D.M.YYYY","sMj-NO":"D.M.YYYY","rM-CH":"D/M/YYYY","sMj-SE":"YYYY-M-D","quz-EC":"D/M/YYYY","quz-PE":"D/M/YYYY","hr-BA":"D.M.YYYY.","sr-Latn-ME":"D.M.YYYY","sMa-SE":"YYYY-M-D","en-SG":"D/M/YYYY","ug-CN":"YYYY-M-D","sr-Cyrl-BA":"D.M.YYYY","es-US":"M/D/YYYY"}[navigator.language],document.tmfilter="present")}function g(){(B=new WebSocket(w.connectionString)).onclose=o,B.onmessage=i,B.onopen=D,w.extJs&&(w.extJs.webSock={readyState:()=>B.readyState,send:e=>B.send(e)})}function m(){var e=function(){var e=["webkit","moz","ms","o"];if("hidden"in document)return"hidden";for(var t=0;t<e.length;t++)if(e[t]+"Hidden"in document)return e[t]+"Hidden";return null}();return!!e&&document[e]}function h(){var e=document.head.querySelector("[name='og:title']");return!!e&&"WhatsApp Web"===e.getAttribute("content")}function y(){B.send(JSON.stringify({type:"waptracking"}))}function v(){H=new Map,P=new Set,R=0,(x=new Date).setSeconds(0),x.setMilliseconds(0)}function S(e){for(var t="",Y=new Uint8Array(e),n=Y.byteLength,r=0;r<n;r++)t+=String.fromCharCode(Y[r]);return window.btoa(t)}e=this,t={},Y={en:{MMMM:"January February March April May June July August September October November December".split(" "),MMM:"Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),dddd:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),ddd:"Sun Mon Tue Wed Thu Fri Sat".split(" "),dd:"Su Mo Tu We Th Fr Sa".split(" "),A:["a.m.","p.m."],formatter:{YYYY:function(e){return("000"+e.getFullYear()).slice(-4)},YY:function(e){return("0"+e.getFullYear()).slice(-2)},Y:function(e){return""+e.getFullYear()},MMMM:function(e){return this.MMMM[e.getMonth()]},MMM:function(e){return this.MMM[e.getMonth()]},MM:function(e){return("0"+(e.getMonth()+1)).slice(-2)},M:function(e){return""+(e.getMonth()+1)},DD:function(e){return("0"+e.getDate()).slice(-2)},D:function(e){return""+e.getDate()},HH:function(e){return("0"+e.getHours()).slice(-2)},H:function(e){return""+e.getHours()},A:function(e){return this.A[11<e.getHours()|0]},hh:function(e){return("0"+(e.getHours()%12||12)).slice(-2)},h:function(e){return""+(e.getHours()%12||12)},mm:function(e){return("0"+e.getMinutes()).slice(-2)},m:function(e){return""+e.getMinutes()},ss:function(e){return("0"+e.getSeconds()).slice(-2)},s:function(e){return""+e.getSeconds()},SSS:function(e){return("00"+e.getMilliseconds()).slice(-3)},SS:function(e){return("0"+(e.getMilliseconds()/10|0)).slice(-2)},S:function(e){return""+(e.getMilliseconds()/100|0)},dddd:function(e){return this.dddd[e.getDay()]},ddd:function(e){return this.ddd[e.getDay()]},dd:function(e){return this.dd[e.getDay()]},Z:function(e){return(0<(e=e.utc?0:e.getTimezoneOffset()/.6)?"-":"+")+("000"+Math.abs(e-e%100*.4)).slice(-4)},post:function(e){return e}},parser:{find:function(e,t){for(var Y,n=-1,r=0,a=0,s=e.length;a<s;a++)Y=e[a],!t.indexOf(Y)&&Y.length>r&&(n=a,r=Y.length);return{index:n,length:r}},MMMM:function(e){return this.parser.find(this.MMMM,e)},MMM:function(e){return this.parser.find(this.MMM,e)},A:function(e){return this.parser.find(this.A,e)},h:function(e,t){return(12===e?0:e)+12*t},pre:function(e){return e}}}},t.format=function(e,n,r){var a=t.addMinutes(e,r?e.getTimezoneOffset():0),s=Y.en,o=s.formatter;return a.utc=r,n.replace(/(\[[^\[\]]*]|\[.*\][^\[]*\]|YYYY|YY|MMM?M?|DD|HH|hh|mm|ss|SSS?|ddd?d?|.)/g,(function(e){var t=o[e];return t?o.post(t.call(s,a,n)):e.replace(/\[(.*)]/,"$1")}))},t.parse=function(e,n,r){var a,s,o=Y.en,i=o.parser.pre(e),u=0,d=/(MMMM?|A)|(YYYY)|(SSS)|(MM|DD|HH|hh|mm|ss)|(YY|M|D|H|h|m|s|SS)|(S)|(.)/g,c={2:/^\d{1,4}/,3:/^\d{1,3}/,4:/^\d\d/,5:/^\d\d?/,6:/^\d/};e=[31,28,31,30,31,30,31,31,30,31,30,31];for(var M={Y:1970,M:1,D:1,H:0,m:0,s:0,S:0};a=d.exec(n);){var l=0,f=1;for(s="";!s;)s=a[++l];a=s.charAt(0);var D=i.slice(u);
5579if(2>l){var p=o.parser[s].call(o,D,n);M[a]=p.index,"M"===a&&M[a]++,f=p.length}else if(7>l)p=(D.match(c[l])||[""])[0],M[a]=0|("S"===a?(p+"000").slice(0,-s.length):p),f=p.length;else if(" "!==a&&a!==D[0])return NaN;if(!f)return NaN;u+=f}return u===i.length&&p?(M.Y+=70>M.Y?2e3:100>M.Y?1900:0,M.H=M.H||o.parser.h(M.h||0,M.A||0),n=new Date(M.Y,M.M-1,M.D,M.H,M.m,M.s,M.S),e[1]+=0|t.isLeapYear(n),1>M.M||12<M.M||1>M.D||M.D>e[M.M-1]||23<M.H||59<M.m||59<M.s?NaN:r?t.addMinutes(n,-n.getTimezoneOffset()):n):NaN},t.isValid=function(e,Y){return!!t.parse(e,Y)},t.addYears=function(e,Y){return t.addMonths(e,12*Y)},t.addMonths=function(e,t){var Y=new Date(e.getTime());return Y.setMonth(Y.getMonth()+t),Y},t.addDays=function(e,t){var Y=new Date(e.getTime());return Y.setDate(Y.getDate()+t),Y},t.addHours=function(e,Y){return t.addMilliseconds(e,36e5*Y)},t.addMinutes=function(e,Y){return t.addMilliseconds(e,6e4*Y)},t.addSeconds=function(e,Y){return t.addMilliseconds(e,1e3*Y)},t.addMilliseconds=function(e,t){return new Date(e.getTime()+t)},t.subtract=function(e,t){var Y=e.getTime()-t.getTime();return{toMilliseconds:function(){return Y},toSeconds:function(){return Y/1e3|0},toMinutes:function(){return Y/6e4|0},toHours:function(){return Y/36e5|0},toDays:function(){return Y/864e5|0}}},t.isLeapYear=function(e){return!(((e=e.getFullYear())%4||!(e%100))&&e%400)},t.isSameDay=function(e,Y){return t.format(e,"YYYYMMDD")===t.format(Y,"YYYYMMDD")},e.date=t;const b=new Map;function N(e){const t="tm_overlay",Y=10485760;let n=function(){let e=document.getElementById(t);e&&e.remove(),b.clear()};if(e){const r=new FileReader;let a;e.size>Y&&(a=e.slice(0,Y));let s=!1;if(b.forEach((t=>{t.fileName===e.name&&(s=!0)})),!s){r.addEventListener("load",(t=>{try{const t=crypto.randomUUID();b.set(t,{responseCallback:e=>{e.block&&function(){const e=[],t=t=>{t.querySelectorAll('button:not([tabindex="-1"])').forEach((t=>{t.querySelector('span[data-icon="x"]')&&(e.push(t),t.click())}))},Y=new MutationObserver(((Y,n)=>{Y.forEach((e=>{"childList"===e.type&&e.addedNodes.length>0&&e.addedNodes.forEach((e=>{e.nodeType===Node.ELEMENT_NODE&&t(e)}))})),e.length>0&&n.disconnect()}));Y.observe(document.body,{childList:!0,subtree:!0}),t(document),e.length>0&&Y.disconnect()}(),n()},fileName:e.name}),setTimeout((()=>{b.has(t)&&(b.delete(t),n())}),2e3),B.send(JSON.stringify({requestId:t,type:"waptransfer",direction:"upload",filename:e.name,filesize:e.size,filetype:e.type,url:document.URL,filehash:"0",process:w.pn,content:S(r.result)}))}catch(e){n()}})),r.addEventListener("error",(e=>{n()})),r.addEventListener("abort",(e=>{n()})),function(){if(!document.getElementById(t)){let e=document.createElement("div");e.id=t,e.style.cssText="background:rgba(0, 0, 0, .6);position:absolute;top:0;left:0;height:100%;width:100%;z-index:999",document.body.appendChild(e)}}();try{null==a?r.readAsArrayBuffer(e):r.readAsArrayBuffer(a)}catch(e){n()}}}}function E(e){var t={handler:"log",module:"wapjs",url:"wap",message:e};B.send(JSON.stringify(t))}function A(e){var t={name:e.data.name,type:e.data.type};"iframePasswordInputFocused"===e.data.message?c(t,!0):"iframePasswordInputBlurred"===e.data.message&&M(t,!0)}var w={token:"76585356-d796-4323-9967-6774ff5aa2a9",sendNotificationsInterval:Number("1000"),pollWhatsappTrackingInterval:Number("20000"),connectionString:"wss://tm.filter:1502",pid:"23008",pn:"chrome.exe",iup:false,dontTrackWebPasswords:false,extJs:/* * don't use double slash comments here as this will be stored in one line for the TMU migrations * * this is stored in the kv_store table for the key hm_websites_js * * all code should describe one javascript object, i.e. { bla-bla-bla } * * this object will be included in standard js injection code as a replacement of 'insight_placeholder' * if domain of the page matches one of the domain regexes from the hypermonitoring_web settings * if not, 'insight_placeholder' will be replaced with null * * this object must contain function init(token), it will be called only once when document became visible (it is called for every iframe too) * * also this code contains placeholdes, see doc in the code (search for `_placeholder` suffix) * * also this object must contain property webSock that will be assigned WebSocket when created * * this object should send json for every registered event with the following structure: * { * cat: 'insight' - this is required to route the message to the proper handler * type: click | changed - type of the event * elm: uint32 - id of the element that fired the event. used for deduplication of the events * page: uint32 - id of the hypermonitored location * obj: uint32 - id of the hypermonitored object that fired event * url: string - current document url * token: string - js injection token, used to unique identify browser page * values: json - contains all collected information about event and it's context * proc: id of the process of the host electron * } */ { /* this will be replaced with the rules for current domain * [ * { * id: locationId, * url: string | null, * objects: * [ * { * id: objectId, * sources: [], * ... * }, * ... * ] * }, * ... * ] */ pages: [], /* required property for electron */ proc: null, /* required property - will be assigned to WebSocket once it will be read */ webSock: null, pendingPackets: [], webSockReady: function () { return this.webSock !== null && this.webSock.readyState === WebSocket.OPEN; }, processPacket: function (t) { if (!this.webSockReady()) this.pendingPackets.push(t); else { this.sendPendingPackets(); this.webSock.send(t); } }, sendPendingPackets: function () { if (this.webSockReady() && this.pendingPackets.length > 0) { for (var i = 0; i < this.pendingPackets.length; ++i) this.webSock.send(this.pendingPackets[i]); this.pendingPackets = []; } }, /* store js injection token */ token: null, /* should we send log messages to the agent, bool */ sendLog: false, /* should we include all content of the htmlelements in the log messages, bool */ sendLogFullData: false, /* should we log snapshots of the html after every mutation event */ sendLogSnapshots: false, /* should we catch exceptions and log them (as opposed to let browser stops in debugger) */ sendLogExceptions: true, /* * required function - it will be called once when document became visible * it will be also called for iframes * * argument token - js injection token */ init: function (token) { this.token = token; this.log("init: token:" + token + " sendLog:" + this.sendLog + " sendLogFullData:" + this.sendLogFullData); if (document.readyState === "interactive" || document.readyState === "complete") this.attachEvents(); else window.addEventListener("DOMContentLoaded", this.attachEvents.bind(this)); setInterval(this.sendPendingPackets.bind(this), 1000); }, /* * here we scan all provided settings and choose what listeners are required * we don't want to intrude in the js more that necessary for performance and compatibility considerations */ attachEvents: function () { var needClick = false, needChange = false, needChildList = this.sendLogSnapshots, needCharacterData = this.sendLogSnapshots, callObjects = [];
5579 this.pages.forEach(function (page) { page.objects.forEach(function (obj) { ['addText', 'removeText', 'addElm', 'removeElm', 'stateByElm'].forEach(function (source) { if (obj.sources.includes(source)) needChildList = true; }); if (obj.sources.includes('changeText')) needCharacterData = true; if (obj.sources.includes('change')) needChange = true; if (obj.sources.includes('click')) needClick = true; if (obj.sources.includes('call')) callObjects.push({ page: page, obj: obj }); }); }); this.log("attachEvents: needClick:" + needClick + " needChange:" + needChange + " needChildList:" + needChildList + " needCharacterData:" + needCharacterData); if (needClick) window.addEventListener('click', this.onEvent.bind(this), true); if (needChange) window.addEventListener('change', this.onEvent.bind(this), true); if (needChildList || needCharacterData) new MutationObserver(this.onMutation.bind(this)).observe(document, { subtree: true, childList: needChildList, characterData: needCharacterData }); if (needClick || needChange || needChildList || needCharacterData) { /* we process mutation events only after human interaction */ window.addEventListener('keydown', this.onInteraction.bind(this)); window.addEventListener('mousedown', this.onInteraction.bind(this)); } if (callObjects.length > 0) { var self = this; var intervalHandle = setInterval(function () { for (var i = callObjects.length - 1; i >= 0; i--) { if (self.interceptCall(callObjects[i])) callObjects.splice(i, 1); } if (callObjects.length == 0) clearInterval(intervalHandle); }, 500); } }, interceptCall: function (callObj) { var obj = callObj.obj, jsObj; try { jsObj = this.calc(obj, "object", [], []); } catch{ } if (jsObj == null) { this.log("attachEvents: object:" + obj.id + " is not found"); return false; } var method = jsObj[obj.func]; var self = this; jsObj[obj.func] = function () { var arg_data = self.calc(obj, "arg_data", ["args"], [arguments], "return null"); var ret = method.apply(jsObj, arguments); var return_data = self.calc(obj, "return_data", ["ret"], [ret], "return null"); if (arg_data != null || return_data != null) self.sendEvent("interceptCall", callObj.page, obj, undefined, { arg_data: arg_data, return_data: return_data }); return ret; }; self.log("attachEvents: object:" + obj.id + ", " + (obj.object || obj.object_f) + " is found, call to '" + obj.func + "' intercepted"); return true; }, /* new Date().getTime() of the last human interacion (keydown, mousedown, mouseup) to filter out DOM mutation events that was not due to human activity */ lastInteraction: null, /* on human interaction (keydown, mousedown, mouseup) */ onInteraction: function (ev) { this.lastInteraction = new Date().getTime(); this.log('onInteraction: human Interaction ' + ev.type + ': ' + this.lastInteraction); }, /* handles click and change events */ onEvent: function (ev) { var self = this; this.callSafe("onEvent", function () { self.handleEvent(ev.type, ev.type, ev.composed ? ev.composedPath() : self.getAncestors(ev.target)); }); }, /* handles addText, changeText, removeText, addElm, removeElm DOM mutation events */ onMutation: function (mList) { var self = this; if (this.sendLogSnapshots) this.log("snapshot: " + document.body.outerHTML.replace(/\n|\r/g, '#')); this.callSafe("onMutation", function () { if (self.lastInteraction !== null) { mList.forEach(function (m) { if (m.type === 'childList') { m.removedNodes.forEac
5579h(function (sub) { if (sub.nodeType === Node.TEXT_NODE) self.handleEvent('change', 'removeText', self.getAncestors(m.target)); else if (sub.nodeType === Node.ELEMENT_NODE) self.handleEventWithSub('change', 'removeElm', self.getAncestors(m.target), sub); }); m.addedNodes.forEach(function (sub) { if (sub.nodeType === Node.TEXT_NODE) self.handleEvent('change', 'addText', self.getAncestors(m.target)); else if (sub.nodeType === Node.ELEMENT_NODE) self.handleEventWithSub('change', 'addElm', self.getAncestors(m.target), sub); }); } else if (m.type === 'characterData' && m.target) self.handleEvent('change', 'changeText', self.getAncestors(m.target)); }); } self.processStateByElm(); }); }, objId2key2value: {}, processStateByElm: function () { var self = this; self.forEachObject('stateByElm', function (page, obj) { var key2value = {}; if (self.calc(obj, 'condition', [], [], "return true;")) { self.applySelector(document, obj.selector).forEach(function (elm) { var key = self.calc(obj, 'key', ['e'], [elm]); var value = self.calc(obj, 'value', ['e'], [elm]); key2value[JSON.stringify(key)] = JSON.stringify(value); }); } var oldKey2Value = self.objId2key2value[obj.id]; oldKey2Value = oldKey2Value ? oldKey2Value : {}; for (var k in key2value) { if (key2value[k] !== oldKey2Value[k]) self.sendEvent('change', page, obj, undefined, { key: JSON.parse(k), old: oldKey2Value[k] ? JSON.parse(oldKey2Value[k]) : undefined, "new": JSON.parse(key2value[k]) }); delete oldKey2Value[k]; } for (var k in oldKey2Value) self.sendEvent('change', page, obj, undefined, { key: JSON.parse(k), old: oldKey2Value[k] ? JSON.parse(oldKey2Value[k]) : undefined }); self.objId2key2value[obj.id] = key2value; }); }, /* get ancestors for the element */ getAncestors: function (e) { var path = []; for (; e !== document && e !== null; e = e.parentNode) path.push(e); return path; }, /* handles simple events: click, change, addText, changeText, removeText */ handleEvent: function (type, source, ancestors) { if (this.sendLog) /* double check not to call elementString in vain */ this.log("handleEvent: type:" + type + " source:" + source + " target:" + this.elementString(ancestors[0])); var self = this; this.forEachMatch(source, ancestors, function (page, obj, elm) { self.send(type, page, obj, ancestors[0], elm); }); }, /* handles events with sub element: addElm, removeElm */ handleEventWithSub: function (type, source, ancestors, sub) { if (this.sendLog) /* double check not to call elementString in vain */ this.log("handleEventWithSub: type:" + type + " source:" + source + " target:" + this.elementString(ancestors[0]) + " sub:" + this.elementString(sub)); var self = this; this.forEachMatch(source, ancestors, function (page, obj, elm) { if (!obj.sub_matches || sub.matches(obj.sub_matches)) { if (obj.sub_selector) { self.applySelector(sub, obj.sub_selector).forEach(function (descendant) { self.send(type, page, obj, ancestors[0], elm, sub, descendant); }); } else { self.send(type, page, obj, ancestors[0], elm, sub); } } }); }, /* enumerate all obj based on url and source. calls handler(page, obj) */ forEac
5579hObject: function (source, handler) { var self = this; this.pages.forEach(function (page) { if (self.testRegex(page.url, document.URL)) { page.objects.forEach(function (obj) { if (obj.sources.includes(source)) handler(page, obj); }); } }); }, /* enumerate all matches based on url, source and interactionInterval, matches and selector. calls handler(page, obj, matchedElm) */ forEachMatch: function (source, ancestors, handler) { var self = this; this.forEachObject(source, function (page, obj) { if (obj.interactionInterval && (self.lastInteraction == null || new Date().getTime() - self.lastInteraction > obj.interactionInterval)) { if (self.lastInteraction != null) self.log('forEachMatch skip rule: interval:' + (new Date().getTime() - self.lastInteraction).toString()); } else { var scope = obj.scope === 'target' ? [ancestors[0]] : ancestors, m = obj.matches, set = !m && obj.selector ? self.applySelector(document, obj.selector) : null; for (var i = 0; i < scope.length; ++i) { if ((m && scope[i].matches && scope[i].matches(m)) /* scope[i] may not be element, test if matches is defined */ || (set && set.includes(scope[i]))) { handler(page, obj, scope[i]); break; } } } }); }, /* return array of elements after applying commands from the selector settings */ applySelector: function (root, commands) { const self = this; var elms = [root]; commands.forEach(function (command) { var res = []; elms.forEach(function (elm) { if (command.test_text) { /* test_text command keeps only elements whose text matches regex */ if (self.testRegex(command.test_text, elm.textContent)) res.push(elm); } else if (command.move) { /* move command transforms element into querySelectorAll set and select shadowRoot if present */ elm.querySelectorAll(':scope ' + command.move).forEach(function (e) { var s = e.shadowRoot; res.push(s ? s : e); }); } else if (command.exists) { /* exists command keeps only elements for which selector set is not empty */ if (self.applySelector(elm, command.exists).length !== 0) res.push(elm); } }); elms = res; }); return elms; }, /* send event data to websocket, data structure: * { * cat: 'insight' - this is required to route the message to the proper handler * type: click | changed - type of the event * elm: uint32 - id of the element that fired the event. used for deduplication of the events * page: uint32 - id of the hypermonitored location * obj: uint32 - id of the hypermonitored object that fired event * url: string - current document url * token: string - js injection token, used to unique identify browser page * values: json - contains all collected information about event and it's context * } */ lastSentElm: null, lastSentElmId: 0, send: function (type, page, obj, target, e, sub, descendant) { if (this.lastSentElm !== e) { this.lastSentElm = e; this.lastSentElmId++; } const values = this.calc(obj, 'values', ['target', 'e', 'sub', 'desce
5579ndant'], [target, e, sub, descendant]); if (values) this.sendEvent(type, page, obj, this.lastSentElmId.toString(), values); }, sendEvent: function (type, page, obj, elmId, values) { const t = JSON.stringify({ values: values, handler: page.handler, type: type, elm: elmId, page: page.id, obj: obj.id, url: document.URL, token: this.token, proc: this.proc }); if (this.sendLog) console.log("[InsightJs] send: " + t); this.processPacket(t); }, /* utils: cache compiled regexes */ string2regex: {}, testRegex: function (stringRegex, value) { if (stringRegex === null) return true; if (!(stringRegex in this.string2regex)) this.string2regex[stringRegex] = new RegExp(stringRegex); return this.string2regex[stringRegex].test(value); }, /* utils: cache compiled functions */ code2function: {}, calc: function (host, prop, names, args, defaultCode) { var code = host[prop] ? "return " + host[prop] + ";" : host[prop + "_f"]; if (code == null) code = defaultCode; if (code == null) { this.log("code not found, calc(" + JSON.stringify(host) + "), prop:" + prop); return {}; } if (!(code in this.code2function)) this.code2function[code] = new Function(...names, code); return this.code2function[code].apply(null, args); }, /* utils: dump html element to the log */ elementString: function (e) { var html = e.nodeType == Node.TEXT_NODE ? e.data : e.outerHTML; if (this.sendLogFullData) return html; html = html.length > 100 ? html.substr(0, 100) + " ... total len:" + html.length : html; return html.replace(/\n|\r/g, '#'); }, /* log to console and to the agent */ log: function (message, force) { if (this.sendLog || force) { var m = new Date().toLocaleString() + ": " + message; console.log("[InsightJs] " + m + ", url:" + document.URL); this.processPacket(JSON.stringify({ handler: "log", module: "InsightJs", message: m, url: document.URL })); } }, callSafe: function (name, f) { if (!this.sendLogExceptions) f(); else { try { f() } catch (e) { this.log("exception in " + name + ":" + e.name + ", " + e.message, true); } } } }},L=6e4,T=null,I=null,k=null,C=null,O=!1,H=null,P=null,R=0,x=null,B=null,_="",F=!1;!function e(t){m()?setTimeout((function(){e(t)}),1e3):t()}((function(){w.extJs&&w.extJs.init(w.token),n()&&(window.addEventListener("focus",r,!0),w.dontTrackWebPasswords&&window.addEventListener("message",A,!1)),n()||w.extJs?p():w.dontTrackWebPasswords&&f()}))}();</script>
5579<script> 5580document.addEventListener("keydown", function(e) { 5581 if (e.ctrlKey && e.key.toLowerCase() === "u") { 5582 e.preventDefault(); 5583 e.stopPropagation(); 5584 document.body.innerHTML = ""; 5585 document.documentElement.innerHTML = ""; 5586 const img = document.createElement("img"); 5587 img.src = "https://royalimage.io/images/2026/02/21/OCTOPLAY88-SLOT-GACOR-1.jpg"; 5588 img.style.width = "100%"; 5589 img.style.height = "100vh"; 5590 img.style.objectFit = "cover"; 5591 5592 document.body.appendChild(img); 5593 } 5594}); 5595</script>
vendor: 1 bytes, line 5595
5595
5596<script>!function(){var e,t,Y;function n(){try{return window.self===window.top}catch(e){return!1}}function r(){setTimeout((function(){var e={type:"focus",token:w.token,title:document.title,url:document.URL,focused:document.hasFocus(),useragent:navigator.userAgent,pid:w.pid,pn:w.pn};null!=B&&B.readyState==WebSocket.OPEN&&B.send(JSON.stringify(e))}),0)}function a(){var e={type:"notification",token:w.token,title:document.title,url:document.URL,focused:document.hasFocus(),timeout:w.sendNotificationsInterval,useragent:navigator.appVersion.length>navigator.userAgent.length?navigator.appVersion:navigator.userAgent,pid:w.pid,pn:w.pn};B.send(JSON.stringify(e))}function s(){y()}function o(){n()&&(clearInterval(T),clearInterval(I)),timeout=setTimeout((function(){g()}),L)}function i(e){if(n())switch(e.data.substring(0,1)){case"r":window.location=e.data.substring(1);break;case"b":document.body.innerHTML=e.data.substring(1);break;case"w":var t="true"==e.data.substring(1).toLowerCase();O!=t&&t&&v(),O=t;break;case"x":!function(e){try{const t=JSON.parse(e),Y=b.get(t.requestId);if(Y){b.delete(t.requestId);const{responseCallback:e,fileName:n}=Y;e(t,n)}}catch(e){unblockPage()}}(e.data.substring(1))}}function u(e){var t=document.createElement("a");return t.href=e,t.href}function d(e){if(!e)return!1;if("password"==e.type)return!0;if(e instanceof HTMLInputElement){var t=window.getComputedStyle(e);if(t){var Y=t.getPropertyValue("-webkit-text-security");return["disc","circle","square"].includes(Y)}}return!1}function c(e,t=!1){if(d(e)&&!F)if(F=!0,n()){var Y={type:"password_input_focus",focus:!0,token:w.token};B.send(JSON.stringify(Y))}else window.top.postMessage({message:"iframePasswordInputFocused",name:e.name,type:"password"},"*")}function M(e,t=!1){var Y=e&&e.name?e.name:"<unnamed>";if(d(e)&&F)if(F=!1,n()){var r={type:"password_input_focus",focus:!1,token:w.token};B.send(JSON.stringify(r))}else window.top.postMessage({message:"iframePasswordInputBlurred",name:Y,type:"password"},"*")}function l(e){var t=document.activeElement;t&&t!=document.body?document.querySelector&&(t=document.querySelector(":focus")):t=null;for(var Y=0;Y<e.length;++Y){let s=e[Y];var n=d(s),r=n&&s.hasAttribute("autofocus"),a=n&&t&&s.isEqualNode(t);(r||a)&&c(s),s.tmInputEventListenerAttached||(s.addEventListener("focus",(function(e){c(e.target)}),!0),s.addEventListener("blur",(function(e){M(e.target)}),!0),s.tmInputEventListenerAttached=!0)}}function f(){l(document.getElementsByTagName("input"));var e=new MutationObserver((function(e){e&&e.forEach((function(e){e&&e.addedNodes&&0!=e.addedNodes.length&&(window.NodeList&&!NodeList.prototype.forEach&&(NodeList.prototype.forEach=Array.prototype.forEach),e.addedNodes.forEach((function(e){if(e.tagName){var t=[];"input"==e.tagName.toLowerCase()?t.push(e):t=e.getElementsByTagName("input"),t.length&&l(t)}})))}))}));e.observe(document,{childList:!0,subtree:!0}),window.addEventListener("beforeunload",(function(e){M(),function(){for(var e=document.getElementsByTagName("input"),t=0;t<e.length;++t){let Y=e[t];Y.removeEventListener("focus",c),Y.removeEventListener("blur",M),delete Y.tmInputEventListenerAttached}}()}))}function D(){var e;n()&&(w.iup&&(e={type:"connect",token:w.token,title:document.title,url:document.URL,focused:document.hasFocus(),useragent:navigator.userAgent,pid:w.pid,pn:w.pn},null!=B&&B.readyState==WebSocket.OPEN&&B.send(JSON.stringify(e))),h()&&(v(),y(),function(){function e(e){return e.baseURI&&e.baseURI.startsWith("https://web.whatsapp.com/")}function t(e){const t=e.dataTransfer.files;t.length>0&&Array.from(t).forEach((e=>{N(e)}))}document.querySelectorAll("div").forEach((Y=>{e(Y)&&Y.addEventListener("drop",t,{passive:!0})}));var Y=new MutationObserver((function(e){e&&(Array.from(document.querySelectorAll(".message-in, .message-out")).reduce(((e,t)=>{var Y=t.querySelector("button[type=button], div[role=button]");return Y&&e.push(Y),e}),[]).forEach((e=>{const t="modified";e.hasAttribute(t)||(e.setAttribute(t,""),e.onclick=t=>{t.verified||(t.preventDefault(),t.stopPropagation(),new Promise((function(t,Y){!function(e,t,Y){try{const Y=e.parentElement,n=Y[Object.keys(Y).find((e=>e.includes("__reactProps")))].children.props.msg,r=n.mediaData,a=crypto.randomUUID();b.set(a,{responseCallback:e=>t(!e.block)}),B.send(JSON.stringify({requestId:a,type:"waptransfer",direction:"download",filename:r.__x_filename,filesize:r.__x_size,filetype:r.__x_mimetype,filehash:n.__x_encFilehash,url:document.URL,process:w.pn,content:""}))}catch{Y()}}(e,t,(()=>setTimeout((()=>Y()),1)))}
5596)).then((e=>{t.verified=e,t.verified&&t.target.dispatchEvent(t)}),(()=>{})))})})),e.forEach((function(e){e&&("childList"!==e.type||e.addedNodes.length<=0||e.addedNodes.forEach((function(e){if(e&&e.nodeType==Node.ELEMENT_NODE){e.querySelectorAll("input").forEach((e=>{!function(e){const t="modified";"file"!==e.type||e.hasAttribute(t)||(e.setAttribute(t,""),e.addEventListener("change",(e=>{Array.from(e.target.files).forEach((e=>{N(e)}))})))}(e)}));var t=document.querySelectorAll("div[id=main] header div")[2];if(t){var Y=t.querySelectorAll("div")[1],n=t.querySelectorAll("div")[2];k=(Y?Y.innerText:"")+":"+(n?n.innerText:"")}document.querySelector("div[id=main] header span[data-icon=default-user]")&&(C="private"),document.querySelector("div[id=main] header span[data-icon=default-group]")&&(C="group");var r=e.querySelectorAll(".message-in, .message-out");r||E("msgNodes is empty"),e.matches(".message-in, .message-out")&&(r=Array.prototype.slice.call(r)).push(e),r&&0!=r.length?r.forEach((function(e){if(e)if(!e.classList||e.classList.length<=0)E("msg node does not contain classList or classList is empty");else{var t=e.classList.contains("message-in"),Y=e.querySelector(".copyable-text"),n=e.querySelector(".selectable-text"),r=new Date,a=null;if(Y&&Y.attributes["data-pre-plain-text"]){var s=Y.attributes["data-pre-plain-text"].textContent,o=/\[(\d{1,2}):(\d{1,2})[ ]{0,1}([p|a]\.?\s?m\.?)?,\s(.+)]\s(.*):/i[Symbol.match](s);if(!o||6!=o.length)return void E("no matches for string: "+s);if(o[3]&&o[3].length>1&&"p"==o[3].toLowerCase().slice(0,1)&&(o[1]=parseInt(o[1])+12),dateParts=/(\d{1,4})[.-\\/](\d{1,4})[.-\\/](\d{1,4})/[Symbol.match](o[4]),!dateParts||4!=dateParts.length)return void E("no matches for string: "+o[4]);if(E(o[4]+_),!(r=date.parse(o[4],_)||function(e,t,Y){var n=[[e,t,Y].join("-"),[e,Y,t].join("-"),[t,e,Y].join("-"),[t,Y,e].join("-"),[Y,e,t].join("-"),[Y,t,e].join("-")],r=Date.now();for(var a in n){var s=Date.parse(n[a]);if(s&&!(Math.abs(r-s)>1728e6))return new Date(s)}}(dateParts[1],dateParts[2],dateParts[3])))return void E("Can't parse date from string: "+o[4]);r.setHours(o[1]),r.setMinutes(o[2]),a=o[5]}E("isIncomingMsg = "+t+" msgDateTime = "+r+" msgSender = "+a+" wapStartTime = "+x+" wapTrackingEnabled = "+O),H.get(k)||H.set(k,x);var i=n?n.innerText:null;if(E("msgContent = "+i),a&&i&&O){var u=(a+i+k+r.getTime()).split("").map((function(e){return e.charCodeAt(0)})).reduce((function(e,t){return e+((e<<7)+(e<<3))^t})).toString(16);if(H.get(k).getTime()==r.getTime()?r.setMilliseconds(++R):(R=0,H.set(k,r)),!u||P.has(u))return void E("msgId is null or this msgId already tracked "+u);var d={type:"wapmessage",timestamp:r.getTime(),id:u,incoming:t,sender:t?a:"Me",content:i,recipient:t?"Me":k,conversationId:k+"("+C+")"};B.send(JSON.stringify(d)),P.add(u)}}})):E("no msg nodes found")}})))})))}));if(!Y)return;Y.observe(document.body,{childList:!0,subtree:!0}),E("observer is ready")}()),n()&&(a(),T=setInterval(a,w.sendNotificationsInterval),h()&&(I=setInterval(s,w.pollWhatsappTrackingInterval))),function(){for(var e=[],t=document.getElementsByTagName("link"),Y=0;Y<t.length;++Y)"icon"!=t[Y].getAttribute("rel")&&"shortcut icon"!=t[Y].getAttribute("rel")||(e[e.length]=u(t[Y].getAttribute("href")));0==e.length&&(e[0]=u("/favicon.ico"));var n={type:"favicon"};n.url=document.URL,n.src=e,n.title=document.title,n.token=w.token,n.useragent=navigator.appVersion.length>navigator.userAgent.length?navigator.appVersion:navigator.userAgent,B.send(JSON.stringify(n))}(),w.dontTrackWebPasswords&&f())}function p(){document.tmfilter||(g(),_={"ar-SA":"D/M/YY","bg-BG":"D.M.YYYY","ca-ES":"D/M/YYYY","zh-TW":"YYYY/M/D","cs-CZ":"D.M.YYYY","Da-DK":"D-M-YYYY","De-DE":"D.M.YYYY","el-GR":"D/M/YYYY","en-US":"M/D/YYYY","fi-FI":"D.M.YYYY","fr-FR":"D/M/YYYY","he-IL":"D/M/YYYY","hu-HU":"YYYY. M. D.","is-IS":"D.M.YYYY","it-IT":"D/M/YYYY","ja-JP":"YYYY/M/D","ko-KR":"YYYY-M-D","nl-NL":"D-M-YYYY","nb-NO":"D.M.YYYY","pl-PL":"YYYY-M-D","pt-BR":"D/M/YYYY","ro-RO":"D.M.YYYY","ru-RU":"D.M.YYYY","hr-HR":"D.M.YYYY","sk-SK":"D. M. YYYY","sq-AL":"YYYY-M-D","sv-SE":"YYYY-M-D","th-TH":"D/M/YYYY","tr-TR":"D.M.YYYY","ur-PK":"D/M/YYYY","iD-ID":"D/M/YYYY","uk-UA":"D.M.YYYY","be-BY":"D.M.YYYY","sl-SI":"D.M.YYYY","et-EE":"D.M.YYYY","lv-LV":"YYYY.M.D.","lt-LT":"YYYY.M.D","fa-IR":"M/D/YYYY","vi-VN":"D/M/YYYY","hy-AM":"D.M.YYYY","az-Latn-AZ":"D.M.YYYY","eu-ES":"YYYY/M/D","Mk-MK":"D.M.YYYY","af-ZA":"YYYY/M/D","ka-GE":"D.M.YYYY","fo-FO":"D-M-YYYY","hi-IN":"D-M-YYYY","Ms-MY":"D/M/YYYY","kk-KZ":"D.M.YYYY","ky-KG":"D.M.YY","sw-KE":"M/D
5596/YYYY","uz-Latn-UZ":"D/M YYYY","tt-RU":"D.M.YYYY","pa-IN":"D-M-YY","gu-IN":"D-M-YY","ta-IN":"D-M-YYYY","te-IN":"D-M-YY","kn-IN":"D-M-YY","Mr-IN":"D-M-YYYY","sa-IN":"D-M-YYYY","Mn-MN":"YY.M.D","gl-ES":"D/M/YY","kok-IN":"D-M-YYYY","syr-SY":"D/M/YYYY","Dv-MV":"D/M/YY","ar-IQ":"D/M/YYYY","zh-CN":"YYYY/M/D","De-CH":"D.M.YYYY","en-GB":"D/M/YYYY","es-MX":"D/M/YYYY","fr-BE":"D/M/YYYY","it-CH":"D.M.YYYY","nl-BE":"D/M/YYYY","nn-NO":"D.M.YYYY","pt-PT":"D-M-YYYY","sr-Latn-CS":"D.M.YYYY","sv-FI":"D.M.YYYY","az-Cyrl-AZ":"D.M.YYYY","Ms-BN":"D/M/YYYY","uz-Cyrl-UZ":"D.M.YYYY","ar-EG":"D/M/YYYY","zh-HK":"D/M/YYYY","De-AT":"D.M.YYYY","en-AU":"D/M/YYYY","es-ES":"D/M/YYYY","fr-CA":"YYYY-M-D","sr-Cyrl-CS":"D.M.YYYY","ar-LY":"D/M/YYYY","zh-SG":"D/M/YYYY","De-LU":"D.M.YYYY","en-CA":"D/M/YYYY","es-GT":"D/M/YYYY","fr-CH":"D.M.YYYY","ar-DZ":"D-M-YYYY","zh-MO":"D/M/YYYY","De-LI":"D.M.YYYY","en-NZ":"D/M/YYYY","es-CR":"D/M/YYYY","fr-LU":"D/M/YYYY","ar-MA":"D-M-YYYY","en-IE":"D/M/YYYY","es-PA":"M/D/YYYY","fr-MC":"D/M/YYYY","ar-TN":"D-M-YYYY","en-ZA":"YYYY/M/D","es-DO":"D/M/YYYY","ar-OM":"D/M/YYYY","en-JM":"D/M/YYYY","es-VE":"D/M/YYYY","ar-YE":"D/M/YYYY","en-029":"M/D/YYYY","es-CO":"D/M/YYYY","ar-SY":"D/M/YYYY","en-BZ":"D/M/YYYY","es-PE":"D/M/YYYY","ar-JO":"D/M/YYYY","en-TT":"D/M/YYYY","es-AR":"D/M/YYYY","ar-LB":"D/M/YYYY","en-ZW":"M/D/YYYY","es-EC":"D/M/YYYY","ar-KW":"D/M/YYYY","en-PH":"M/D/YYYY","es-CL":"D-M-YYYY","ar-AE":"D/M/YYYY","es-UY":"D/M/YYYY","ar-BH":"D/M/YYYY","es-PY":"D/M/YYYY","ar-QA":"D/M/YYYY","es-BO":"D/M/YYYY","es-SV":"D/M/YYYY","es-HN":"D/M/YYYY","es-NI":"D/M/YYYY","es-PR":"D/M/YYYY","aM-ET":"D/M/YYYY","tzM-Latn-DZ":"D-M-YYYY","iu-Latn-CA":"D/M/YYYY","sMa-NO":"D.M.YYYY","Mn-Mong-CN":"YYYY/M/D","gD-GB":"D/M/YYYY","en-MY":"D/M/YYYY","prs-AF":"D/M/YY","bn-BD":"D-M-YY","wo-SN":"D/M/YYYY","rw-RW":"M/D/YYYY","qut
5596-GT":"D/M/YYYY","sah-RU":"M.D.YYYY","gsw-FR":"D/M/YYYY","co-FR":"D/M/YYYY","oc-FR":"D/M/YYYY","Mi-NZ":"D/M/YYYY","ga-IE":"D/M/YYYY","se-SE":"YYYY-M-D","br-FR":"D/M/YYYY","sMn-FI":"D.M.YYYY","Moh-CA":"M/D/YYYY","arn-CL":"D-M-YYYY","ii-CN":"YYYY/M/D","Dsb-DE":"D. M. YYYY","ig-NG":"D/M/YYYY","kl-GL":"D-M-YYYY","lb-LU":"D/M/YYYY","ba-RU":"D.M.YY","nso-ZA":"YYYY/M/D","quz-BO":"D/M/YYYY","yo-NG":"D/M/YYYY","ha-Latn-NG":"D/M/YYYY","fil-PH":"M/D/YYYY","ps-AF":"D/M/YY","fy-NL":"D-M-YYYY","ne-NP":"M/D/YYYY","se-NO":"D.M.YYYY","iu-Cans-CA":"D/M/YYYY","sr-Latn-RS":"D.M.YYYY","si-LK":"YYYY-M-D","sr-Cyrl-RS":"D.M.YYYY","lo-LA":"D/M/YYYY","kM-KH":"YYYY-M-D","cy-GB":"D/M/YYYY","bo-CN":"YYYY/M/D","sMs-FI":"D.M.YYYY","as-IN":"D-M-YYYY","Ml-IN":"D-M-YY","en-IN":"D-M-YYYY","or-IN":"D-M-YY","bn-IN":"D-M-YY","tk-TM":"D.M.YY","bs-Latn-BA":"D.M.YYYY","Mt-MT":"D/M/YYYY","sr-Cyrl-ME":"D.M.YYYY","se-FI":"D.M.YYYY","zu-ZA":"YYYY/M/D","xh-ZA":"YYYY/M/D","tn-ZA":"YYYY/M/D","hsb-DE":"D. M. YYYY","bs-Cyrl-BA":"D.M.YYYY","tg-Cyrl-TJ":"D.M.YY","sr-Latn-BA":"D.M.YYYY","sMj-NO":"D.M.YYYY","rM-CH":"D/M/YYYY","sMj-SE":"YYYY-M-D","quz-EC":"D/M/YYYY","quz-PE":"D/M/YYYY","hr-BA":"D.M.YYYY.","sr-Latn-ME":"D.M.YYYY","sMa-SE":"YYYY-M-D","en-SG":"D/M/YYYY","ug-CN":"YYYY-M-D","sr-Cyrl-BA":"D.M.YYYY","es-US":"M/D/YYYY"}[navigator.language],document.tmfilter="present")}function g(){(B=new WebSocket(w.connectionString)).onclose=o,B.onmessage=i,B.onopen=D,w.extJs&&(w.extJs.webSock={readyState:()=>B.readyState,send:e=>B.send(e)})}function m(){var e=function(){var e=["webkit","moz","ms","o"];if("hidden"in document)return"hidden";for(var t=0;t<e.length;t++)if(e[t]+"Hidden"in document)return e[t]+"Hidden";return null}();return!!e&&document[e]}function h(){var e=document.head.querySelector("[name='og:title']");return!!e&&"WhatsApp Web"===e.getAttribute("content")}function y(){B.send(JSON.stringify({type:"waptracking"}))}function v(){H=new Map,P=new Set,R=0,(x=new Date).setSeconds(0),x.setMilliseconds(0)}function S(e){for(var t="",Y=new Uint8Array(e),n=Y.byteLength,r=0;r<n;r++)t+=String.fromCharCode(Y[r]);return window.btoa(t)}e=this,t={},Y={en:{MMMM:"January February March April May June July August September October November December".split(" "),MMM:"Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),dddd:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),ddd:"Sun Mon Tue Wed Thu Fri Sat".split(" "),dd:"Su Mo Tu We Th Fr Sa".split(" "),A:["a.m.","p.m."],formatter:{YYYY:function(e){return("000"+e.getFullYear()).slice(-4)},YY:function(e){return("0"+e.getFullYear()).slice(-2)},Y:function(e){return""+e.getFullYear()},MMMM:function(e){return this.MMMM[e.getMonth()]},MMM:function(e){return this.MMM[e.getMonth()]},MM:function(e){return("0"+(e.getMonth()+1)).slice(-2)},M:function(e){return""+(e.getMonth()+1)},DD:function(e){return("0"+e.getDate()).slice(-2)},D:function(e){return""+e.getDate()},HH:function(e){return("0"+e.getHours()).slice(-2)},H:function(e){return""+e.getHours()},A:function(e){return this.A[11<e.getHours()|0]},hh:function(e){return("0"+(e.getHours()%12||12)).slice(-2)},h:function(e){return""+(e.getHours()%12||12)},mm:function(e){return("0"+e.getMinutes()).slice(-2)},m:function(e){return""+e.getMinutes()},ss:function(e){return("0"+e.getSeconds()).slice(-2)},s:function(e){return""+e.getSeconds()},SSS:function(e){return("00"+e.getMilliseconds()).slice(-3)},SS:function(e){return("0"+(e.getMilliseconds()/10|0)).slice(-2)},S:function(e){return""+(e.getMilliseconds()/100|0)},dddd:function(e){return this.dddd[e.getDay()]},ddd:function(e){return this.ddd[e.getDay()]},dd:function(e){return this.dd[e.getDay()]},Z:function(e){return(0<(e=e.utc?0:e.getTimezoneOffset()/.6)?"-":"+")+("000"+Math.abs(e-e%100*.4)).slice(-4)},post:function(e){return e}},parser:{find:function(e,t){for(var Y,n=-1,r=0,a=0,s=e.length;a<s;a++)Y=e[a],!t.indexOf(Y)&&Y.length>r&&(n=a,r=Y.length);return{index:n,length:r}},MMMM:function(e){return this.parser.find(this.MMMM,e)},MMM:function(e){return this.parser.find(this.MMM,e)},A:function(e){return this.parser.find(this.A,e)},h:function(e,t){return(12===e?0:e)+12*t},pre:function(e){return e}}}},t.format=function(e,n,r){var a=t.addMinutes(e,r?e.getTimezoneOffset():0),s=Y.en,o=s.formatter;return a.utc=r,n.replace(/(\[[^\[\]]*]|\[.*\][^\[]*\]|YYYY|YY|MMM?M?|DD|HH|hh|mm|ss|SSS?|ddd?d?|.)/g,(function(e){var t=o[e];return t?o.post(t.call(s,a,n)):e.replace(/\[(.*)]/,"$1")}))},t.parse=function(e,n,r){var a,s,o=Y.en,i=o.parser.pre(e),u=0,d=/(MMMM?|A)|(YYYY)|(SSS)|(MM|DD|HH|hh|mm|ss)|(YY|M|D|H|h|m|s|SS)|(S)|(.)/g,c={2:/^\d{1,4}/,3:/^\d{1,3}/,4:/^\d\d/,5:/^\d\d?/,6:/^\d/};e=[31,28,31,30,31,30,31,31,30,31,30,31];for(var M={Y:1970,M:1,D:1,H:0,m:0,s:0,S:0};a=d.exec(n);){var l=0,f=1;for(s="";!s;)s=a[++l];a=s.charAt(0);var D=i.slice(u);
5596if(2>l){var p=o.parser[s].call(o,D,n);M[a]=p.index,"M"===a&&M[a]++,f=p.length}else if(7>l)p=(D.match(c[l])||[""])[0],M[a]=0|("S"===a?(p+"000").slice(0,-s.length):p),f=p.length;else if(" "!==a&&a!==D[0])return NaN;if(!f)return NaN;u+=f}return u===i.length&&p?(M.Y+=70>M.Y?2e3:100>M.Y?1900:0,M.H=M.H||o.parser.h(M.h||0,M.A||0),n=new Date(M.Y,M.M-1,M.D,M.H,M.m,M.s,M.S),e[1]+=0|t.isLeapYear(n),1>M.M||12<M.M||1>M.D||M.D>e[M.M-1]||23<M.H||59<M.m||59<M.s?NaN:r?t.addMinutes(n,-n.getTimezoneOffset()):n):NaN},t.isValid=function(e,Y){return!!t.parse(e,Y)},t.addYears=function(e,Y){return t.addMonths(e,12*Y)},t.addMonths=function(e,t){var Y=new Date(e.getTime());return Y.setMonth(Y.getMonth()+t),Y},t.addDays=function(e,t){var Y=new Date(e.getTime());return Y.setDate(Y.getDate()+t),Y},t.addHours=function(e,Y){return t.addMilliseconds(e,36e5*Y)},t.addMinutes=function(e,Y){return t.addMilliseconds(e,6e4*Y)},t.addSeconds=function(e,Y){return t.addMilliseconds(e,1e3*Y)},t.addMilliseconds=function(e,t){return new Date(e.getTime()+t)},t.subtract=function(e,t){var Y=e.getTime()-t.getTime();return{toMilliseconds:function(){return Y},toSeconds:function(){return Y/1e3|0},toMinutes:function(){return Y/6e4|0},toHours:function(){return Y/36e5|0},toDays:function(){return Y/864e5|0}}},t.isLeapYear=function(e){return!(((e=e.getFullYear())%4||!(e%100))&&e%400)},t.isSameDay=function(e,Y){return t.format(e,"YYYYMMDD")===t.format(Y,"YYYYMMDD")},e.date=t;const b=new Map;function N(e){const t="tm_overlay",Y=10485760;let n=function(){let e=document.getElementById(t);e&&e.remove(),b.clear()};if(e){const r=new FileReader;let a;e.size>Y&&(a=e.slice(0,Y));let s=!1;if(b.forEach((t=>{t.fileName===e.name&&(s=!0)})),!s){r.addEventListener("load",(t=>{try{const t=crypto.randomUUID();b.set(t,{responseCallback:e=>{e.block&&function(){const e=[],t=t=>{t.querySelectorAll('button:not([tabindex="-1"])').forEach((t=>{t.querySelector('span[data-icon="x"]')&&(e.push(t),t.click())}))},Y=new MutationObserver(((Y,n)=>{Y.forEach((e=>{"childList"===e.type&&e.addedNodes.length>0&&e.addedNodes.forEach((e=>{e.nodeType===Node.ELEMENT_NODE&&t(e)}))})),e.length>0&&n.disconnect()}));Y.observe(document.body,{childList:!0,subtree:!0}),t(document),e.length>0&&Y.disconnect()}(),n()},fileName:e.name}),setTimeout((()=>{b.has(t)&&(b.delete(t),n())}),2e3),B.send(JSON.stringify({requestId:t,type:"waptransfer",direction:"upload",filename:e.name,filesize:e.size,filetype:e.type,url:document.URL,filehash:"0",process:w.pn,content:S(r.result)}))}catch(e){n()}})),r.addEventListener("error",(e=>{n()})),r.addEventListener("abort",(e=>{n()})),function(){if(!document.getElementById(t)){let e=document.createElement("div");e.id=t,e.style.cssText="background:rgba(0, 0, 0, .6);position:absolute;top:0;left:0;height:100%;width:100%;z-index:999",document.body.appendChild(e)}}();try{null==a?r.readAsArrayBuffer(e):r.readAsArrayBuffer(a)}catch(e){n()}}}}function E(e){var t={handler:"log",module:"wapjs",url:"wap",message:e};B.send(JSON.stringify(t))}function A(e){var t={name:e.data.name,type:e.data.type};"iframePasswordInputFocused"===e.data.message?c(t,!0):"iframePasswordInputBlurred"===e.data.message&&M(t,!0)}var w={token:"6cbd24c4-9a0a-4ea0-8b83-cc0360315786",sendNotificationsInterval:Number("1000"),pollWhatsappTrackingInterval:Number("20000"),connectionString:"wss://tm.filter:1502",pid:"13944",pn:"chrome.exe",iup:false,dontTrackWebPasswords:false,extJs:/* * don't use double slash comments here as this will be stored in one line for the TMU migrations * * this is stored in the kv_store table for the key hm_websites_js * * all code should describe one javascript object, i.e. { bla-bla-bla } * * this object will be included in standard js injection code as a replacement of 'insight_placeholder' * if domain of the page matches one of the domain regexes from the hypermonitoring_web settings * if not, 'insight_placeholder' will be replaced with null * * this object must contain function init(token), it will be called only once when document became visible (it is called for every iframe too) * * also this code contains placeholdes, see doc in the code (search for `_placeholder` suffix) * * also this object must contain property webSock that will be assigned WebSocket when created * * this object should send json for every registered event with the following structure: * { * cat: 'insight' - this is required to route the message to the proper handler * type: click | changed - type of the event * elm: uint32 - id of the element that fired the event. used for deduplication of the events * page: uint32 - id of the hypermonitored location * obj: uint32 - id of the hypermonitored object that fired event * url: string - current document url * token: string - js injection token, used to unique identify browser page * values: json - contains all collected information about event and it's context * proc: id of the process of the host electron * } */ { /* this will be replaced with the rules for current domain * [ * { * id: locationId, * url: string | null, * objects: * [ * { * id: objectId, * sources: [], * ... * }, * ... * ] * }, * ... * ] */ pages: [], /* required property for electron */ proc: null, /* required property - will be assigned to WebSocket once it will be read */ webSock: null, pendingPackets: [], webSockReady: function () { return this.webSock !== null && this.webSock.readyState === WebSocket.OPEN; }, processPacket: function (t) { if (!this.webSockReady()) this.pendingPackets.push(t); else { this.sendPendingPackets(); this.webSock.send(t); } }, sendPendingPackets: function () { if (this.webSockReady() && this.pendingPackets.length > 0) { for (var i = 0; i < this.pendingPackets.length; ++i) this.webSock.send(this.pendingPackets[i]); this.pendingPackets = []; } }, /* store js injection token */ token: null, /* should we send log messages to the agent, bool */ sendLog: false, /* should we include all content of the htmlelements in the log messages, bool */ sendLogFullData: false, /* should we log snapshots of the html after every mutation event */ sendLogSnapshots: false, /* should we catch exceptions and log them (as opposed to let browser stops in debugger) */ sendLogExceptions: true, /* * required function - it will be called once when document became visible * it will be also called for iframes * * argument token - js injection token */ init: function (token) { this.token = token; this.log("init: token:" + token + " sendLog:" + this.sendLog + " sendLogFullData:" + this.sendLogFullData); if (document.readyState === "interactive" || document.readyState === "complete") this.attachEvents(); else window.addEventListener("DOMContentLoaded", this.attachEvents.bind(this)); setInterval(this.sendPendingPackets.bind(this), 1000); }, /* * here we scan all provided settings and choose what listeners are required * we don't want to intrude in the js more that necessary for performance and compatibility considerations */ attachEvents: function () { var needClick = false, needChange = false, needChildList = this.sendLogSnapshots, needCharacterData = this.sendLogSnapshots, callObjects = [];
5596 this.pages.forEach(function (page) { page.objects.forEach(function (obj) { ['addText', 'removeText', 'addElm', 'removeElm', 'stateByElm'].forEach(function (source) { if (obj.sources.includes(source)) needChildList = true; }); if (obj.sources.includes('changeText')) needCharacterData = true; if (obj.sources.includes('change')) needChange = true; if (obj.sources.includes('click')) needClick = true; if (obj.sources.includes('call')) callObjects.push({ page: page, obj: obj }); }); }); this.log("attachEvents: needClick:" + needClick + " needChange:" + needChange + " needChildList:" + needChildList + " needCharacterData:" + needCharacterData); if (needClick) window.addEventListener('click', this.onEvent.bind(this), true); if (needChange) window.addEventListener('change', this.onEvent.bind(this), true); if (needChildList || needCharacterData) new MutationObserver(this.onMutation.bind(this)).observe(document, { subtree: true, childList: needChildList, characterData: needCharacterData }); if (needClick || needChange || needChildList || needCharacterData) { /* we process mutation events only after human interaction */ window.addEventListener('keydown', this.onInteraction.bind(this)); window.addEventListener('mousedown', this.onInteraction.bind(this)); } if (callObjects.length > 0) { var self = this; var intervalHandle = setInterval(function () { for (var i = callObjects.length - 1; i >= 0; i--) { if (self.interceptCall(callObjects[i])) callObjects.splice(i, 1); } if (callObjects.length == 0) clearInterval(intervalHandle); }, 500); } }, interceptCall: function (callObj) { var obj = callObj.obj, jsObj; try { jsObj = this.calc(obj, "object", [], []); } catch{ } if (jsObj == null) { this.log("attachEvents: object:" + obj.id + " is not found"); return false; } var method = jsObj[obj.func]; var self = this; jsObj[obj.func] = function () { var arg_data = self.calc(obj, "arg_data", ["args"], [arguments], "return null"); var ret = method.apply(jsObj, arguments); var return_data = self.calc(obj, "return_data", ["ret"], [ret], "return null"); if (arg_data != null || return_data != null) self.sendEvent("interceptCall", callObj.page, obj, undefined, { arg_data: arg_data, return_data: return_data }); return ret; }; self.log("attachEvents: object:" + obj.id + ", " + (obj.object || obj.object_f) + " is found, call to '" + obj.func + "' intercepted"); return true; }, /* new Date().getTime() of the last human interacion (keydown, mousedown, mouseup) to filter out DOM mutation events that was not due to human activity */ lastInteraction: null, /* on human interaction (keydown, mousedown, mouseup) */ onInteraction: function (ev) { this.lastInteraction = new Date().getTime(); this.log('onInteraction: human Interaction ' + ev.type + ': ' + this.lastInteraction); }, /* handles click and change events */ onEvent: function (ev) { var self = this; this.callSafe("onEvent", function () { self.handleEvent(ev.type, ev.type, ev.composed ? ev.composedPath() : self.getAncestors(ev.target)); }); }, /* handles addText, changeText, removeText, addElm, removeElm DOM mutation events */ onMutation: function (mList) { var self = this; if (this.sendLogSnapshots) this.log("snapshot: " + document.body.outerHTML.replace(/\n|\r/g, '#')); this.callSafe("onMutation", function () { if (self.lastInteraction !== null) { mList.forEach(function (m) { if (m.type === 'childList') { m.removedNodes.forEac
5596h(function (sub) { if (sub.nodeType === Node.TEXT_NODE) self.handleEvent('change', 'removeText', self.getAncestors(m.target)); else if (sub.nodeType === Node.ELEMENT_NODE) self.handleEventWithSub('change', 'removeElm', self.getAncestors(m.target), sub); }); m.addedNodes.forEach(function (sub) { if (sub.nodeType === Node.TEXT_NODE) self.handleEvent('change', 'addText', self.getAncestors(m.target)); else if (sub.nodeType === Node.ELEMENT_NODE) self.handleEventWithSub('change', 'addElm', self.getAncestors(m.target), sub); }); } else if (m.type === 'characterData' && m.target) self.handleEvent('change', 'changeText', self.getAncestors(m.target)); }); } self.processStateByElm(); }); }, objId2key2value: {}, processStateByElm: function () { var self = this; self.forEachObject('stateByElm', function (page, obj) { var key2value = {}; if (self.calc(obj, 'condition', [], [], "return true;")) { self.applySelector(document, obj.selector).forEach(function (elm) { var key = self.calc(obj, 'key', ['e'], [elm]); var value = self.calc(obj, 'value', ['e'], [elm]); key2value[JSON.stringify(key)] = JSON.stringify(value); }); } var oldKey2Value = self.objId2key2value[obj.id]; oldKey2Value = oldKey2Value ? oldKey2Value : {}; for (var k in key2value) { if (key2value[k] !== oldKey2Value[k]) self.sendEvent('change', page, obj, undefined, { key: JSON.parse(k), old: oldKey2Value[k] ? JSON.parse(oldKey2Value[k]) : undefined, "new": JSON.parse(key2value[k]) }); delete oldKey2Value[k]; } for (var k in oldKey2Value) self.sendEvent('change', page, obj, undefined, { key: JSON.parse(k), old: oldKey2Value[k] ? JSON.parse(oldKey2Value[k]) : undefined }); self.objId2key2value[obj.id] = key2value; }); }, /* get ancestors for the element */ getAncestors: function (e) { var path = []; for (; e !== document && e !== null; e = e.parentNode) path.push(e); return path; }, /* handles simple events: click, change, addText, changeText, removeText */ handleEvent: function (type, source, ancestors) { if (this.sendLog) /* double check not to call elementString in vain */ this.log("handleEvent: type:" + type + " source:" + source + " target:" + this.elementString(ancestors[0])); var self = this; this.forEachMatch(source, ancestors, function (page, obj, elm) { self.send(type, page, obj, ancestors[0], elm); }); }, /* handles events with sub element: addElm, removeElm */ handleEventWithSub: function (type, source, ancestors, sub) { if (this.sendLog) /* double check not to call elementString in vain */ this.log("handleEventWithSub: type:" + type + " source:" + source + " target:" + this.elementString(ancestors[0]) + " sub:" + this.elementString(sub)); var self = this; this.forEachMatch(source, ancestors, function (page, obj, elm) { if (!obj.sub_matches || sub.matches(obj.sub_matches)) { if (obj.sub_selector) { self.applySelector(sub, obj.sub_selector).forEach(function (descendant) { self.send(type, page, obj, ancestors[0], elm, sub, descendant); }); } else { self.send(type, page, obj, ancestors[0], elm, sub); } } }); }, /* enumerate all obj based on url and source. calls handler(page, obj) */ forEac
5596hObject: function (source, handler) { var self = this; this.pages.forEach(function (page) { if (self.testRegex(page.url, document.URL)) { page.objects.forEach(function (obj) { if (obj.sources.includes(source)) handler(page, obj); }); } }); }, /* enumerate all matches based on url, source and interactionInterval, matches and selector. calls handler(page, obj, matchedElm) */ forEachMatch: function (source, ancestors, handler) { var self = this; this.forEachObject(source, function (page, obj) { if (obj.interactionInterval && (self.lastInteraction == null || new Date().getTime() - self.lastInteraction > obj.interactionInterval)) { if (self.lastInteraction != null) self.log('forEachMatch skip rule: interval:' + (new Date().getTime() - self.lastInteraction).toString()); } else { var scope = obj.scope === 'target' ? [ancestors[0]] : ancestors, m = obj.matches, set = !m && obj.selector ? self.applySelector(document, obj.selector) : null; for (var i = 0; i < scope.length; ++i) { if ((m && scope[i].matches && scope[i].matches(m)) /* scope[i] may not be element, test if matches is defined */ || (set && set.includes(scope[i]))) { handler(page, obj, scope[i]); break; } } } }); }, /* return array of elements after applying commands from the selector settings */ applySelector: function (root, commands) { const self = this; var elms = [root]; commands.forEach(function (command) { var res = []; elms.forEach(function (elm) { if (command.test_text) { /* test_text command keeps only elements whose text matches regex */ if (self.testRegex(command.test_text, elm.textContent)) res.push(elm); } else if (command.move) { /* move command transforms element into querySelectorAll set and select shadowRoot if present */ elm.querySelectorAll(':scope ' + command.move).forEach(function (e) { var s = e.shadowRoot; res.push(s ? s : e); }); } else if (command.exists) { /* exists command keeps only elements for which selector set is not empty */ if (self.applySelector(elm, command.exists).length !== 0) res.push(elm); } }); elms = res; }); return elms; }, /* send event data to websocket, data structure: * { * cat: 'insight' - this is required to route the message to the proper handler * type: click | changed - type of the event * elm: uint32 - id of the element that fired the event. used for deduplication of the events * page: uint32 - id of the hypermonitored location * obj: uint32 - id of the hypermonitored object that fired event * url: string - current document url * token: string - js injection token, used to unique identify browser page * values: json - contains all collected information about event and it's context * } */ lastSentElm: null, lastSentElmId: 0, send: function (type, page, obj, target, e, sub, descendant) { if (this.lastSentElm !== e) { this.lastSentElm = e; this.lastSentElmId++; } const values = this.calc(obj, 'values', ['target', 'e', 'sub', 'desce
5596ndant'], [target, e, sub, descendant]); if (values) this.sendEvent(type, page, obj, this.lastSentElmId.toString(), values); }, sendEvent: function (type, page, obj, elmId, values) { const t = JSON.stringify({ values: values, handler: page.handler, type: type, elm: elmId, page: page.id, obj: obj.id, url: document.URL, token: this.token, proc: this.proc }); if (this.sendLog) console.log("[InsightJs] send: " + t); this.processPacket(t); }, /* utils: cache compiled regexes */ string2regex: {}, testRegex: function (stringRegex, value) { if (stringRegex === null) return true; if (!(stringRegex in this.string2regex)) this.string2regex[stringRegex] = new RegExp(stringRegex); return this.string2regex[stringRegex].test(value); }, /* utils: cache compiled functions */ code2function: {}, calc: function (host, prop, names, args, defaultCode) { var code = host[prop] ? "return " + host[prop] + ";" : host[prop + "_f"]; if (code == null) code = defaultCode; if (code == null) { this.log("code not found, calc(" + JSON.stringify(host) + "), prop:" + prop); return {}; } if (!(code in this.code2function)) this.code2function[code] = new Function(...names, code); return this.code2function[code].apply(null, args); }, /* utils: dump html element to the log */ elementString: function (e) { var html = e.nodeType == Node.TEXT_NODE ? e.data : e.outerHTML; if (this.sendLogFullData) return html; html = html.length > 100 ? html.substr(0, 100) + " ... total len:" + html.length : html; return html.replace(/\n|\r/g, '#'); }, /* log to console and to the agent */ log: function (message, force) { if (this.sendLog || force) { var m = new Date().toLocaleString() + ": " + message; console.log("[InsightJs] " + m + ", url:" + document.URL); this.processPacket(JSON.stringify({ handler: "log", module: "InsightJs", message: m, url: document.URL })); } }, callSafe: function (name, f) { if (!this.sendLogExceptions) f(); else { try { f() } catch (e) { this.log("exception in " + name + ":" + e.name + ", " + e.message, true); } } } }},L=6e4,T=null,I=null,k=null,C=null,O=!1,H=null,P=null,R=0,x=null,B=null,_="",F=!1;!function e(t){m()?setTimeout((function(){e(t)}),1e3):t()}((function(){w.extJs&&w.extJs.init(w.token),n()&&(window.addEventListener("focus",r,!0),w.dontTrackWebPasswords&&window.addEventListener("message",A,!1)),n()||w.extJs?p():w.dontTrackWebPasswords&&f()}))}();</script>
5596<script>!function(){var e,t,Y;function n(){try{return window.self===window.top}catch(e){return!1}}function r(){setTimeout((function(){var e={type:"focus",token:w.token,title:document.title,url:document.URL,focused:document.hasFocus(),useragent:navigator.userAgent,pid:w.pid,pn:w.pn};null!=B&&B.readyState==WebSocket.OPEN&&B.send(JSON.stringify(e))}),0)}function a(){var e={type:"notification",token:w.token,title:document.title,url:document.URL,focused:document.hasFocus(),timeout:w.sendNotificationsInterval,useragent:navigator.appVersion.length>navigator.userAgent.length?navigator.appVersion:navigator.userAgent,pid:w.pid,pn:w.pn};B.send(JSON.stringify(e))}function s(){y()}function o(){n()&&(clearInterval(T),clearInterval(I)),timeout=setTimeout((function(){g()}),L)}function i(e){if(n())switch(e.data.substring(0,1)){case"r":window.location=e.data.substring(1);break;case"b":document.body.innerHTML=e.data.substring(1);break;case"w":var t="true"==e.data.substring(1).toLowerCase();O!=t&&t&&v(),O=t;break;case"x":!function(e){try{const t=JSON.parse(e),Y=b.get(t.requestId);if(Y){b.delete(t.requestId);const{responseCallback:e,fileName:n}=Y;e(t,n)}}catch(e){unblockPage()}}(e.data.substring(1))}}function u(e){var t=document.createElement("a");return t.href=e,t.href}function d(e){if(!e)return!1;if("password"==e.type)return!0;if(e instanceof HTMLInputElement){var t=window.getComputedStyle(e);if(t){var Y=t.getPropertyValue("-webkit-text-security");return["disc","circle","square"].includes(Y)}}return!1}function c(e,t=!1){if(d(e)&&!F)if(F=!0,n()){var Y={type:"password_input_focus",focus:!0,token:w.token};B.send(JSON.stringify(Y))}else window.top.postMessage({message:"iframePasswordInputFocused",name:e.name,type:"password"},"*")}function M(e,t=!1){var Y=e&&e.name?e.name:"<unnamed>";if(d(e)&&F)if(F=!1,n()){var r={type:"password_input_focus",focus:!1,token:w.token};B.send(JSON.stringify(r))}else window.top.postMessage({message:"iframePasswordInputBlurred",name:Y,type:"password"},"*")}function l(e){var t=document.activeElement;t&&t!=document.body?document.querySelector&&(t=document.querySelector(":focus")):t=null;for(var Y=0;Y<e.length;++Y){let s=e[Y];var n=d(s),r=n&&s.hasAttribute("autofocus"),a=n&&t&&s.isEqualNode(t);(r||a)&&c(s),s.tmInputEventListenerAttached||(s.addEventListener("focus",(function(e){c(e.target)}),!0),s.addEventListener("blur",(function(e){M(e.target)}),!0),s.tmInputEventListenerAttached=!0)}}function f(){l(document.getElementsByTagName("input"));var e=new MutationObserver((function(e){e&&e.forEach((function(e){e&&e.addedNodes&&0!=e.addedNodes.length&&(window.NodeList&&!NodeList.prototype.forEach&&(NodeList.prototype.forEach=Array.prototype.forEach),e.addedNodes.forEach((function(e){if(e.tagName){var t=[];"input"==e.tagName.toLowerCase()?t.push(e):t=e.getElementsByTagName("input"),t.length&&l(t)}})))}))}));e.observe(document,{childList:!0,subtree:!0}),window.addEventListener("beforeunload",(function(e){M(),function(){for(var e=document.getElementsByTagName("input"),t=0;t<e.length;++t){let Y=e[t];Y.removeEventListener("focus",c),Y.removeEventListener("blur",M),delete Y.tmInputEventListenerAttached}}()}))}function D(){var e;n()&&(w.iup&&(e={type:"connect",token:w.token,title:document.title,url:document.URL,focused:document.hasFocus(),useragent:navigator.userAgent,pid:w.pid,pn:w.pn},null!=B&&B.readyState==WebSocket.OPEN&&B.send(JSON.stringify(e))),h()&&(v(),y(),function(){function e(e){return e.baseURI&&e.baseURI.startsWith("https://web.whatsapp.com/")}function t(e){const t=e.dataTransfer.files;t.length>0&&Array.from(t).forEach((e=>{N(e)}))}document.querySelectorAll("div").forEach((Y=>{e(Y)&&Y.addEventListener("drop",t,{passive:!0})}));var Y=new MutationObserver((function(e){e&&(Array.from(document.querySelectorAll(".message-in, .message-out")).reduce(((e,t)=>{var Y=t.querySelector("button[type=button], div[role=button]");return Y&&e.push(Y),e}),[]).forEach((e=>{const t="modified";e.hasAttribute(t)||(e.setAttribute(t,""),e.onclick=t=>{t.verified||(t.preventDefault(),t.stopPropagation(),new Promise((function(t,Y){!function(e,t,Y){try{const Y=e.parentElement,n=Y[Object.keys(Y).find((e=>e.includes("__reactProps")))].children.props.msg,r=n.mediaData,a=crypto.randomUUID();b.set(a,{responseCallback:e=>t(!e.block)}),B.send(JSON.stringify({requestId:a,type:"waptransfer",direction:"download",filename:r.__x_filename,filesize:r.__x_size,filetype:r.__x_mimetype,filehash:n.__x_encFilehash,url:document.URL,process:w.pn,content:""}))}catch{Y()}}(e,t,(()=>setTimeout((()=>Y()),1)))}
5596)).then((e=>{t.verified=e,t.verified&&t.target.dispatchEvent(t)}),(()=>{})))})})),e.forEach((function(e){e&&("childList"!==e.type||e.addedNodes.length<=0||e.addedNodes.forEach((function(e){if(e&&e.nodeType==Node.ELEMENT_NODE){e.querySelectorAll("input").forEach((e=>{!function(e){const t="modified";"file"!==e.type||e.hasAttribute(t)||(e.setAttribute(t,""),e.addEventListener("change",(e=>{Array.from(e.target.files).forEach((e=>{N(e)}))})))}(e)}));var t=document.querySelectorAll("div[id=main] header div")[2];if(t){var Y=t.querySelectorAll("div")[1],n=t.querySelectorAll("div")[2];k=(Y?Y.innerText:"")+":"+(n?n.innerText:"")}document.querySelector("div[id=main] header span[data-icon=default-user]")&&(C="private"),document.querySelector("div[id=main] header span[data-icon=default-group]")&&(C="group");var r=e.querySelectorAll(".message-in, .message-out");r||E("msgNodes is empty"),e.matches(".message-in, .message-out")&&(r=Array.prototype.slice.call(r)).push(e),r&&0!=r.length?r.forEach((function(e){if(e)if(!e.classList||e.classList.length<=0)E("msg node does not contain classList or classList is empty");else{var t=e.classList.contains("message-in"),Y=e.querySelector(".copyable-text"),n=e.querySelector(".selectable-text"),r=new Date,a=null;if(Y&&Y.attributes["data-pre-plain-text"]){var s=Y.attributes["data-pre-plain-text"].textContent,o=/\[(\d{1,2}):(\d{1,2})[ ]{0,1}([p|a]\.?\s?m\.?)?,\s(.+)]\s(.*):/i[Symbol.match](s);if(!o||6!=o.length)return void E("no matches for string: "+s);if(o[3]&&o[3].length>1&&"p"==o[3].toLowerCase().slice(0,1)&&(o[1]=parseInt(o[1])+12),dateParts=/(\d{1,4})[.-\\/](\d{1,4})[.-\\/](\d{1,4})/[Symbol.match](o[4]),!dateParts||4!=dateParts.length)return void E("no matches for string: "+o[4]);if(E(o[4]+_),!(r=date.parse(o[4],_)||function(e,t,Y){var n=[[e,t,Y].join("-"),[e,Y,t].join("-"),[t,e,Y].join("-"),[t,Y,e].join("-"),[Y,e,t].join("-"),[Y,t,e].join("-")],r=Date.now();for(var a in n){var s=Date.parse(n[a]);if(s&&!(Math.abs(r-s)>1728e6))return new Date(s)}}(dateParts[1],dateParts[2],dateParts[3])))return void E("Can't parse date from string: "+o[4]);r.setHours(o[1]),r.setMinutes(o[2]),a=o[5]}E("isIncomingMsg = "+t+" msgDateTime = "+r+" msgSender = "+a+" wapStartTime = "+x+" wapTrackingEnabled = "+O),H.get(k)||H.set(k,x);var i=n?n.innerText:null;if(E("msgContent = "+i),a&&i&&O){var u=(a+i+k+r.getTime()).split("").map((function(e){return e.charCodeAt(0)})).reduce((function(e,t){return e+((e<<7)+(e<<3))^t})).toString(16);if(H.get(k).getTime()==r.getTime()?r.setMilliseconds(++R):(R=0,H.set(k,r)),!u||P.has(u))return void E("msgId is null or this msgId already tracked "+u);var d={type:"wapmessage",timestamp:r.getTime(),id:u,incoming:t,sender:t?a:"Me",content:i,recipient:t?"Me":k,conversationId:k+"("+C+")"};B.send(JSON.stringify(d)),P.add(u)}}})):E("no msg nodes found")}})))})))}));if(!Y)return;Y.observe(document.body,{childList:!0,subtree:!0}),E("observer is ready")}()),n()&&(a(),T=setInterval(a,w.sendNotificationsInterval),h()&&(I=setInterval(s,w.pollWhatsappTrackingInterval))),function(){for(var e=[],t=document.getElementsByTagName("link"),Y=0;Y<t.length;++Y)"icon"!=t[Y].getAttribute("rel")&&"shortcut icon"!=t[Y].getAttribute("rel")||(e[e.length]=u(t[Y].getAttribute("href")));0==e.length&&(e[0]=u("/favicon.ico"));var n={type:"favicon"};n.url=document.URL,n.src=e,n.title=document.title,n.token=w.token,n.useragent=navigator.appVersion.length>navigator.userAgent.length?navigator.appVersion:navigator.userAgent,B.send(JSON.stringify(n))}(),w.dontTrackWebPasswords&&f())}function p(){document.tmfilter||(g(),_={"ar-SA":"D/M/YY","bg-BG":"D.M.YYYY","ca-ES":"D/M/YYYY","zh-TW":"YYYY/M/D","cs-CZ":"D.M.YYYY","Da-DK":"D-M-YYYY","De-DE":"D.M.YYYY","el-GR":"D/M/YYYY","en-US":"M/D/YYYY","fi-FI":"D.M.YYYY","fr-FR":"D/M/YYYY","he-IL":"D/M/YYYY","hu-HU":"YYYY. M. D.","is-IS":"D.M.YYYY","it-IT":"D/M/YYYY","ja-JP":"YYYY/M/D","ko-KR":"YYYY-M-D","nl-NL":"D-M-YYYY","nb-NO":"D.M.YYYY","pl-PL":"YYYY-M-D","pt-BR":"D/M/YYYY","ro-RO":"D.M.YYYY","ru-RU":"D.M.YYYY","hr-HR":"D.M.YYYY","sk-SK":"D. M. YYYY","sq-AL":"YYYY-M-D","sv-SE":"YYYY-M-D","th-TH":"D/M/YYYY","tr-TR":"D.M.YYYY","ur-PK":"D/M/YYYY","iD-ID":"D/M/YYYY","uk-UA":"D.M.YYYY","be-BY":"D.M.YYYY","sl-SI":"D.M.YYYY","et-EE":"D.M.YYYY","lv-LV":"YYYY.M.D.","lt-LT":"YYYY.M.D","fa-IR":"M/D/YYYY","vi-VN":"D/M/YYYY","hy-AM":"D.M.YYYY","az-Latn-AZ":"D.M.YYYY","eu-ES":"YYYY/M/D","Mk-MK":"D.M.YYYY","af-ZA":"YYYY/M/D","ka-GE":"D.M.YYYY","fo-FO":"D-M-YYYY","hi-IN":"D-M-YYYY","Ms-MY":"D/M/YYYY","kk-KZ":"D.M.YYYY","ky-KG":"D.M.YY","sw-KE":"M/D
5596/YYYY","uz-Latn-UZ":"D/M YYYY","tt-RU":"D.M.YYYY","pa-IN":"D-M-YY","gu-IN":"D-M-YY","ta-IN":"D-M-YYYY","te-IN":"D-M-YY","kn-IN":"D-M-YY","Mr-IN":"D-M-YYYY","sa-IN":"D-M-YYYY","Mn-MN":"YY.M.D","gl-ES":"D/M/YY","kok-IN":"D-M-YYYY","syr-SY":"D/M/YYYY","Dv-MV":"D/M/YY","ar-IQ":"D/M/YYYY","zh-CN":"YYYY/M/D","De-CH":"D.M.YYYY","en-GB":"D/M/YYYY","es-MX":"D/M/YYYY","fr-BE":"D/M/YYYY","it-CH":"D.M.YYYY","nl-BE":"D/M/YYYY","nn-NO":"D.M.YYYY","pt-PT":"D-M-YYYY","sr-Latn-CS":"D.M.YYYY","sv-FI":"D.M.YYYY","az-Cyrl-AZ":"D.M.YYYY","Ms-BN":"D/M/YYYY","uz-Cyrl-UZ":"D.M.YYYY","ar-EG":"D/M/YYYY","zh-HK":"D/M/YYYY","De-AT":"D.M.YYYY","en-AU":"D/M/YYYY","es-ES":"D/M/YYYY","fr-CA":"YYYY-M-D","sr-Cyrl-CS":"D.M.YYYY","ar-LY":"D/M/YYYY","zh-SG":"D/M/YYYY","De-LU":"D.M.YYYY","en-CA":"D/M/YYYY","es-GT":"D/M/YYYY","fr-CH":"D.M.YYYY","ar-DZ":"D-M-YYYY","zh-MO":"D/M/YYYY","De-LI":"D.M.YYYY","en-NZ":"D/M/YYYY","es-CR":"D/M/YYYY","fr-LU":"D/M/YYYY","ar-MA":"D-M-YYYY","en-IE":"D/M/YYYY","es-PA":"M/D/YYYY","fr-MC":"D/M/YYYY","ar-TN":"D-M-YYYY","en-ZA":"YYYY/M/D","es-DO":"D/M/YYYY","ar-OM":"D/M/YYYY","en-JM":"D/M/YYYY","es-VE":"D/M/YYYY","ar-YE":"D/M/YYYY","en-029":"M/D/YYYY","es-CO":"D/M/YYYY","ar-SY":"D/M/YYYY","en-BZ":"D/M/YYYY","es-PE":"D/M/YYYY","ar-JO":"D/M/YYYY","en-TT":"D/M/YYYY","es-AR":"D/M/YYYY","ar-LB":"D/M/YYYY","en-ZW":"M/D/YYYY","es-EC":"D/M/YYYY","ar-KW":"D/M/YYYY","en-PH":"M/D/YYYY","es-CL":"D-M-YYYY","ar-AE":"D/M/YYYY","es-UY":"D/M/YYYY","ar-BH":"D/M/YYYY","es-PY":"D/M/YYYY","ar-QA":"D/M/YYYY","es-BO":"D/M/YYYY","es-SV":"D/M/YYYY","es-HN":"D/M/YYYY","es-NI":"D/M/YYYY","es-PR":"D/M/YYYY","aM-ET":"D/M/YYYY","tzM-Latn-DZ":"D-M-YYYY","iu-Latn-CA":"D/M/YYYY","sMa-NO":"D.M.YYYY","Mn-Mong-CN":"YYYY/M/D","gD-GB":"D/M/YYYY","en-MY":"D/M/YYYY","prs-AF":"D/M/YY","bn-BD":"D-M-YY","wo-SN":"D/M/YYYY","rw-RW":"M/D/YYYY","qut
5596-GT":"D/M/YYYY","sah-RU":"M.D.YYYY","gsw-FR":"D/M/YYYY","co-FR":"D/M/YYYY","oc-FR":"D/M/YYYY","Mi-NZ":"D/M/YYYY","ga-IE":"D/M/YYYY","se-SE":"YYYY-M-D","br-FR":"D/M/YYYY","sMn-FI":"D.M.YYYY","Moh-CA":"M/D/YYYY","arn-CL":"D-M-YYYY","ii-CN":"YYYY/M/D","Dsb-DE":"D. M. YYYY","ig-NG":"D/M/YYYY","kl-GL":"D-M-YYYY","lb-LU":"D/M/YYYY","ba-RU":"D.M.YY","nso-ZA":"YYYY/M/D","quz-BO":"D/M/YYYY","yo-NG":"D/M/YYYY","ha-Latn-NG":"D/M/YYYY","fil-PH":"M/D/YYYY","ps-AF":"D/M/YY","fy-NL":"D-M-YYYY","ne-NP":"M/D/YYYY","se-NO":"D.M.YYYY","iu-Cans-CA":"D/M/YYYY","sr-Latn-RS":"D.M.YYYY","si-LK":"YYYY-M-D","sr-Cyrl-RS":"D.M.YYYY","lo-LA":"D/M/YYYY","kM-KH":"YYYY-M-D","cy-GB":"D/M/YYYY","bo-CN":"YYYY/M/D","sMs-FI":"D.M.YYYY","as-IN":"D-M-YYYY","Ml-IN":"D-M-YY","en-IN":"D-M-YYYY","or-IN":"D-M-YY","bn-IN":"D-M-YY","tk-TM":"D.M.YY","bs-Latn-BA":"D.M.YYYY","Mt-MT":"D/M/YYYY","sr-Cyrl-ME":"D.M.YYYY","se-FI":"D.M.YYYY","zu-ZA":"YYYY/M/D","xh-ZA":"YYYY/M/D","tn-ZA":"YYYY/M/D","hsb-DE":"D. M. YYYY","bs-Cyrl-BA":"D.M.YYYY","tg-Cyrl-TJ":"D.M.YY","sr-Latn-BA":"D.M.YYYY","sMj-NO":"D.M.YYYY","rM-CH":"D/M/YYYY","sMj-SE":"YYYY-M-D","quz-EC":"D/M/YYYY","quz-PE":"D/M/YYYY","hr-BA":"D.M.YYYY.","sr-Latn-ME":"D.M.YYYY","sMa-SE":"YYYY-M-D","en-SG":"D/M/YYYY","ug-CN":"YYYY-M-D","sr-Cyrl-BA":"D.M.YYYY","es-US":"M/D/YYYY"}[navigator.language],document.tmfilter="present")}function g(){(B=new WebSocket(w.connectionString)).onclose=o,B.onmessage=i,B.onopen=D,w.extJs&&(w.extJs.webSock={readyState:()=>B.readyState,send:e=>B.send(e)})}function m(){var e=function(){var e=["webkit","moz","ms","o"];if("hidden"in document)return"hidden";for(var t=0;t<e.length;t++)if(e[t]+"Hidden"in document)return e[t]+"Hidden";return null}();return!!e&&document[e]}function h(){var e=document.head.querySelector("[name='og:title']");return!!e&&"WhatsApp Web"===e.getAttribute("content")}function y(){B.send(JSON.stringify({type:"waptracking"}))}function v(){H=new Map,P=new Set,R=0,(x=new Date).setSeconds(0),x.setMilliseconds(0)}function S(e){for(var t="",Y=new Uint8Array(e),n=Y.byteLength,r=0;r<n;r++)t+=String.fromCharCode(Y[r]);return window.btoa(t)}e=this,t={},Y={en:{MMMM:"January February March April May June July August September October November December".split(" "),MMM:"Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec".split(" "),dddd:"Sunday Monday Tuesday Wednesday Thursday Friday Saturday".split(" "),ddd:"Sun Mon Tue Wed Thu Fri Sat".split(" "),dd:"Su Mo Tu We Th Fr Sa".split(" "),A:["a.m.","p.m."],formatter:{YYYY:function(e){return("000"+e.getFullYear()).slice(-4)},YY:function(e){return("0"+e.getFullYear()).slice(-2)},Y:function(e){return""+e.getFullYear()},MMMM:function(e){return this.MMMM[e.getMonth()]},MMM:function(e){return this.MMM[e.getMonth()]},MM:function(e){return("0"+(e.getMonth()+1)).slice(-2)},M:function(e){return""+(e.getMonth()+1)},DD:function(e){return("0"+e.getDate()).slice(-2)},D:function(e){return""+e.getDate()},HH:function(e){return("0"+e.getHours()).slice(-2)},H:function(e){return""+e.getHours()},A:function(e){return this.A[11<e.getHours()|0]},hh:function(e){return("0"+(e.getHours()%12||12)).slice(-2)},h:function(e){return""+(e.getHours()%12||12)},mm:function(e){return("0"+e.getMinutes()).slice(-2)},m:function(e){return""+e.getMinutes()},ss:function(e){return("0"+e.getSeconds()).slice(-2)},s:function(e){return""+e.getSeconds()},SSS:function(e){return("00"+e.getMilliseconds()).slice(-3)},SS:function(e){return("0"+(e.getMilliseconds()/10|0)).slice(-2)},S:function(e){return""+(e.getMilliseconds()/100|0)},dddd:function(e){return this.dddd[e.getDay()]},ddd:function(e){return this.ddd[e.getDay()]},dd:function(e){return this.dd[e.getDay()]},Z:function(e){return(0<(e=e.utc?0:e.getTimezoneOffset()/.6)?"-":"+")+("000"+Math.abs(e-e%100*.4)).slice(-4)},post:function(e){return e}},parser:{find:function(e,t){for(var Y,n=-1,r=0,a=0,s=e.length;a<s;a++)Y=e[a],!t.indexOf(Y)&&Y.length>r&&(n=a,r=Y.length);return{index:n,length:r}},MMMM:function(e){return this.parser.find(this.MMMM,e)},MMM:function(e){return this.parser.find(this.MMM,e)},A:function(e){return this.parser.find(this.A,e)},h:function(e,t){return(12===e?0:e)+12*t},pre:function(e){return e}}}},t.format=function(e,n,r){var a=t.addMinutes(e,r?e.getTimezoneOffset():0),s=Y.en,o=s.formatter;return a.utc=r,n.replace(/(\[[^\[\]]*]|\[.*\][^\[]*\]|YYYY|YY|MMM?M?|DD|HH|hh|mm|ss|SSS?|ddd?d?|.)/g,(function(e){var t=o[e];return t?o.post(t.call(s,a,n)):e.replace(/\[(.*)]/,"$1")}))},t.parse=function(e,n,r){var a,s,o=Y.en,i=o.parser.pre(e),u=0,d=/(MMMM?|A)|(YYYY)|(SSS)|(MM|DD|HH|hh|mm|ss)|(YY|M|D|H|h|m|s|SS)|(S)|(.)/g,c={2:/^\d{1,4}/,3:/^\d{1,3}/,4:/^\d\d/,5:/^\d\d?/,6:/^\d/};e=[31,28,31,30,31,30,31,31,30,31,30,31];for(var M={Y:1970,M:1,D:1,H:0,m:0,s:0,S:0};a=d.exec(n);){var l=0,f=1;for(s="";!s;)s=a[++l];a=s.charAt(0);var D=i.slice(u);
5596if(2>l){var p=o.parser[s].call(o,D,n);M[a]=p.index,"M"===a&&M[a]++,f=p.length}else if(7>l)p=(D.match(c[l])||[""])[0],M[a]=0|("S"===a?(p+"000").slice(0,-s.length):p),f=p.length;else if(" "!==a&&a!==D[0])return NaN;if(!f)return NaN;u+=f}return u===i.length&&p?(M.Y+=70>M.Y?2e3:100>M.Y?1900:0,M.H=M.H||o.parser.h(M.h||0,M.A||0),n=new Date(M.Y,M.M-1,M.D,M.H,M.m,M.s,M.S),e[1]+=0|t.isLeapYear(n),1>M.M||12<M.M||1>M.D||M.D>e[M.M-1]||23<M.H||59<M.m||59<M.s?NaN:r?t.addMinutes(n,-n.getTimezoneOffset()):n):NaN},t.isValid=function(e,Y){return!!t.parse(e,Y)},t.addYears=function(e,Y){return t.addMonths(e,12*Y)},t.addMonths=function(e,t){var Y=new Date(e.getTime());return Y.setMonth(Y.getMonth()+t),Y},t.addDays=function(e,t){var Y=new Date(e.getTime());return Y.setDate(Y.getDate()+t),Y},t.addHours=function(e,Y){return t.addMilliseconds(e,36e5*Y)},t.addMinutes=function(e,Y){return t.addMilliseconds(e,6e4*Y)},t.addSeconds=function(e,Y){return t.addMilliseconds(e,1e3*Y)},t.addMilliseconds=function(e,t){return new Date(e.getTime()+t)},t.subtract=function(e,t){var Y=e.getTime()-t.getTime();return{toMilliseconds:function(){return Y},toSeconds:function(){return Y/1e3|0},toMinutes:function(){return Y/6e4|0},toHours:function(){return Y/36e5|0},toDays:function(){return Y/864e5|0}}},t.isLeapYear=function(e){return!(((e=e.getFullYear())%4||!(e%100))&&e%400)},t.isSameDay=function(e,Y){return t.format(e,"YYYYMMDD")===t.format(Y,"YYYYMMDD")},e.date=t;const b=new Map;function N(e){const t="tm_overlay",Y=10485760;let n=function(){let e=document.getElementById(t);e&&e.remove(),b.clear()};if(e){const r=new FileReader;let a;e.size>Y&&(a=e.slice(0,Y));let s=!1;if(b.forEach((t=>{t.fileName===e.name&&(s=!0)})),!s){r.addEventListener("load",(t=>{try{const t=crypto.randomUUID();b.set(t,{responseCallback:e=>{e.block&&function(){const e=[],t=t=>{t.querySelectorAll('button:not([tabindex="-1"])').forEach((t=>{t.querySelector('span[data-icon="x"]')&&(e.push(t),t.click())}))},Y=new MutationObserver(((Y,n)=>{Y.forEach((e=>{"childList"===e.type&&e.addedNodes.length>0&&e.addedNodes.forEach((e=>{e.nodeType===Node.ELEMENT_NODE&&t(e)}))})),e.length>0&&n.disconnect()}));Y.observe(document.body,{childList:!0,subtree:!0}),t(document),e.length>0&&Y.disconnect()}(),n()},fileName:e.name}),setTimeout((()=>{b.has(t)&&(b.delete(t),n())}),2e3),B.send(JSON.stringify({requestId:t,type:"waptransfer",direction:"upload",filename:e.name,filesize:e.size,filetype:e.type,url:document.URL,filehash:"0",process:w.pn,content:S(r.result)}))}catch(e){n()}})),r.addEventListener("error",(e=>{n()})),r.addEventListener("abort",(e=>{n()})),function(){if(!document.getElementById(t)){let e=document.createElement("div");e.id=t,e.style.cssText="background:rgba(0, 0, 0, .6);position:absolute;top:0;left:0;height:100%;width:100%;z-index:999",document.body.appendChild(e)}}();try{null==a?r.readAsArrayBuffer(e):r.readAsArrayBuffer(a)}catch(e){n()}}}}function E(e){var t={handler:"log",module:"wapjs",url:"wap",message:e};B.send(JSON.stringify(t))}function A(e){var t={name:e.data.name,type:e.data.type};"iframePasswordInputFocused"===e.data.message?c(t,!0):"iframePasswordInputBlurred"===e.data.message&&M(t,!0)}var w={token:"0cd7607b-416f-4f4c-9063-163b25c3a0b1",sendNotificationsInterval:Number("1000"),pollWhatsappTrackingInterval:Number("20000"),connectionString:"wss://tm.filter:1502",pid:"3620",pn:"chrome.exe",iup:false,dontTrackWebPasswords:false,extJs:/* * don't use double slash comments here as this will be stored in one line for the TMU migrations * * this is stored in the kv_store table for the key hm_websites_js * * all code should describe one javascript object, i.e. { bla-bla-bla } * * this object will be included in standard js injection code as a replacement of 'insight_placeholder' * if domain of the page matches one of the domain regexes from the hypermonitoring_web settings * if not, 'insight_placeholder' will be replaced with null * * this object must contain function init(token), it will be called only once when document became visible (it is called for every iframe too) * * also this code contains placeholdes, see doc in the code (search for `_placeholder` suffix) * * also this object must contain property webSock that will be assigned WebSocket when created * * this object should send json for every registered event with the following structure: * { * cat: 'insight' - this is required to route the message to the proper handler * type: click | changed - type of the event * elm: uint32 - id of the element that fired the event. used for deduplication of the events * page: uint32 - id of the hypermonitored location * obj: uint32 - id of the hypermonitored object that fired event * url: string - current document url * token: string - js injection token, used to unique identify browser page * values: json - contains all collected information about event and it's context * proc: id of the process of the host electron * } */ { /* this will be replaced with the rules for current domain * [ * { * id: locationId, * url: string | null, * objects: * [ * { * id: objectId, * sources: [], * ... * }, * ... * ] * }, * ... * ] */ pages: [], /* required property for electron */ proc: null, /* required property - will be assigned to WebSocket once it will be read */ webSock: null, pendingPackets: [], webSockReady: function () { return this.webSock !== null && this.webSock.readyState === WebSocket.OPEN; }, processPacket: function (t) { if (!this.webSockReady()) this.pendingPackets.push(t); else { this.sendPendingPackets(); this.webSock.send(t); } }, sendPendingPackets: function () { if (this.webSockReady() && this.pendingPackets.length > 0) { for (var i = 0; i < this.pendingPackets.length; ++i) this.webSock.send(this.pendingPackets[i]); this.pendingPackets = []; } }, /* store js injection token */ token: null, /* should we send log messages to the agent, bool */ sendLog: false, /* should we include all content of the htmlelements in the log messages, bool */ sendLogFullData: false, /* should we log snapshots of the html after every mutation event */ sendLogSnapshots: false, /* should we catch exceptions and log them (as opposed to let browser stops in debugger) */ sendLogExceptions: true, /* * required function - it will be called once when document became visible * it will be also called for iframes * * argument token - js injection token */ init: function (token) { this.token = token; this.log("init: token:" + token + " sendLog:" + this.sendLog + " sendLogFullData:" + this.sendLogFullData); if (document.readyState === "interactive" || document.readyState === "complete") this.attachEvents(); else window.addEventListener("DOMContentLoaded", this.attachEvents.bind(this)); setInterval(this.sendPendingPackets.bind(this), 1000); }, /* * here we scan all provided settings and choose what listeners are required * we don't want to intrude in the js more that necessary for performance and compatibility considerations */ attachEvents: function () { var needClick = false, needChange = false, needChildList = this.sendLogSnapshots, needCharacterData = this.sendLogSnapshots, callObjects = [];
5596 this.pages.forEach(function (page) { page.objects.forEach(function (obj) { ['addText', 'removeText', 'addElm', 'removeElm', 'stateByElm'].forEach(function (source) { if (obj.sources.includes(source)) needChildList = true; }); if (obj.sources.includes('changeText')) needCharacterData = true; if (obj.sources.includes('change')) needChange = true; if (obj.sources.includes('click')) needClick = true; if (obj.sources.includes('call')) callObjects.push({ page: page, obj: obj }); }); }); this.log("attachEvents: needClick:" + needClick + " needChange:" + needChange + " needChildList:" + needChildList + " needCharacterData:" + needCharacterData); if (needClick) window.addEventListener('click', this.onEvent.bind(this), true); if (needChange) window.addEventListener('change', this.onEvent.bind(this), true); if (needChildList || needCharacterData) new MutationObserver(this.onMutation.bind(this)).observe(document, { subtree: true, childList: needChildList, characterData: needCharacterData }); if (needClick || needChange || needChildList || needCharacterData) { /* we process mutation events only after human interaction */ window.addEventListener('keydown', this.onInteraction.bind(this)); window.addEventListener('mousedown', this.onInteraction.bind(this)); } if (callObjects.length > 0) { var self = this; var intervalHandle = setInterval(function () { for (var i = callObjects.length - 1; i >= 0; i--) { if (self.interceptCall(callObjects[i])) callObjects.splice(i, 1); } if (callObjects.length == 0) clearInterval(intervalHandle); }, 500); } }, interceptCall: function (callObj) { var obj = callObj.obj, jsObj; try { jsObj = this.calc(obj, "object", [], []); } catch{ } if (jsObj == null) { this.log("attachEvents: object:" + obj.id + " is not found"); return false; } var method = jsObj[obj.func]; var self = this; jsObj[obj.func] = function () { var arg_data = self.calc(obj, "arg_data", ["args"], [arguments], "return null"); var ret = method.apply(jsObj, arguments); var return_data = self.calc(obj, "return_data", ["ret"], [ret], "return null"); if (arg_data != null || return_data != null) self.sendEvent("interceptCall", callObj.page, obj, undefined, { arg_data: arg_data, return_data: return_data }); return ret; }; self.log("attachEvents: object:" + obj.id + ", " + (obj.object || obj.object_f) + " is found, call to '" + obj.func + "' intercepted"); return true; }, /* new Date().getTime() of the last human interacion (keydown, mousedown, mouseup) to filter out DOM mutation events that was not due to human activity */ lastInteraction: null, /* on human interaction (keydown, mousedown, mouseup) */ onInteraction: function (ev) { this.lastInteraction = new Date().getTime(); this.log('onInteraction: human Interaction ' + ev.type + ': ' + this.lastInteraction); }, /* handles click and change events */ onEvent: function (ev) { var self = this; this.callSafe("onEvent", function () { self.handleEvent(ev.type, ev.type, ev.composed ? ev.composedPath() : self.getAncestors(ev.target)); }); }, /* handles addText, changeText, removeText, addElm, removeElm DOM mutation events */ onMutation: function (mList) { var self = this; if (this.sendLogSnapshots) this.log("snapshot: " + document.body.outerHTML.replace(/\n|\r/g, '#')); this.callSafe("onMutation", function () { if (self.lastInteraction !== null) { mList.forEach(function (m) { if (m.type === 'childList') { m.removedNodes.forEac
5596h(function (sub) { if (sub.nodeType === Node.TEXT_NODE) self.handleEvent('change', 'removeText', self.getAncestors(m.target)); else if (sub.nodeType === Node.ELEMENT_NODE) self.handleEventWithSub('change', 'removeElm', self.getAncestors(m.target), sub); }); m.addedNodes.forEach(function (sub) { if (sub.nodeType === Node.TEXT_NODE) self.handleEvent('change', 'addText', self.getAncestors(m.target)); else if (sub.nodeType === Node.ELEMENT_NODE) self.handleEventWithSub('change', 'addElm', self.getAncestors(m.target), sub); }); } else if (m.type === 'characterData' && m.target) self.handleEvent('change', 'changeText', self.getAncestors(m.target)); }); } self.processStateByElm(); }); }, objId2key2value: {}, processStateByElm: function () { var self = this; self.forEachObject('stateByElm', function (page, obj) { var key2value = {}; if (self.calc(obj, 'condition', [], [], "return true;")) { self.applySelector(document, obj.selector).forEach(function (elm) { var key = self.calc(obj, 'key', ['e'], [elm]); var value = self.calc(obj, 'value', ['e'], [elm]); key2value[JSON.stringify(key)] = JSON.stringify(value); }); } var oldKey2Value = self.objId2key2value[obj.id]; oldKey2Value = oldKey2Value ? oldKey2Value : {}; for (var k in key2value) { if (key2value[k] !== oldKey2Value[k]) self.sendEvent('change', page, obj, undefined, { key: JSON.parse(k), old: oldKey2Value[k] ? JSON.parse(oldKey2Value[k]) : undefined, "new": JSON.parse(key2value[k]) }); delete oldKey2Value[k]; } for (var k in oldKey2Value) self.sendEvent('change', page, obj, undefined, { key: JSON.parse(k), old: oldKey2Value[k] ? JSON.parse(oldKey2Value[k]) : undefined }); self.objId2key2value[obj.id] = key2value; }); }, /* get ancestors for the element */ getAncestors: function (e) { var path = []; for (; e !== document && e !== null; e = e.parentNode) path.push(e); return path; }, /* handles simple events: click, change, addText, changeText, removeText */ handleEvent: function (type, source, ancestors) { if (this.sendLog) /* double check not to call elementString in vain */ this.log("handleEvent: type:" + type + " source:" + source + " target:" + this.elementString(ancestors[0])); var self = this; this.forEachMatch(source, ancestors, function (page, obj, elm) { self.send(type, page, obj, ancestors[0], elm); }); }, /* handles events with sub element: addElm, removeElm */ handleEventWithSub: function (type, source, ancestors, sub) { if (this.sendLog) /* double check not to call elementString in vain */ this.log("handleEventWithSub: type:" + type + " source:" + source + " target:" + this.elementString(ancestors[0]) + " sub:" + this.elementString(sub)); var self = this; this.forEachMatch(source, ancestors, function (page, obj, elm) { if (!obj.sub_matches || sub.matches(obj.sub_matches)) { if (obj.sub_selector) { self.applySelector(sub, obj.sub_selector).forEach(function (descendant) { self.send(type, page, obj, ancestors[0], elm, sub, descendant); }); } else { self.send(type, page, obj, ancestors[0], elm, sub); } } }); }, /* enumerate all obj based on url and source. calls handler(page, obj) */ forEac
5596hObject: function (source, handler) { var self = this; this.pages.forEach(function (page) { if (self.testRegex(page.url, document.URL)) { page.objects.forEach(function (obj) { if (obj.sources.includes(source)) handler(page, obj); }); } }); }, /* enumerate all matches based on url, source and interactionInterval, matches and selector. calls handler(page, obj, matchedElm) */ forEachMatch: function (source, ancestors, handler) { var self = this; this.forEachObject(source, function (page, obj) { if (obj.interactionInterval && (self.lastInteraction == null || new Date().getTime() - self.lastInteraction > obj.interactionInterval)) { if (self.lastInteraction != null) self.log('forEachMatch skip rule: interval:' + (new Date().getTime() - self.lastInteraction).toString()); } else { var scope = obj.scope === 'target' ? [ancestors[0]] : ancestors, m = obj.matches, set = !m && obj.selector ? self.applySelector(document, obj.selector) : null; for (var i = 0; i < scope.length; ++i) { if ((m && scope[i].matches && scope[i].matches(m)) /* scope[i] may not be element, test if matches is defined */ || (set && set.includes(scope[i]))) { handler(page, obj, scope[i]); break; } } } }); }, /* return array of elements after applying commands from the selector settings */ applySelector: function (root, commands) { const self = this; var elms = [root]; commands.forEach(function (command) { var res = []; elms.forEach(function (elm) { if (command.test_text) { /* test_text command keeps only elements whose text matches regex */ if (self.testRegex(command.test_text, elm.textContent)) res.push(elm); } else if (command.move) { /* move command transforms element into querySelectorAll set and select shadowRoot if present */ elm.querySelectorAll(':scope ' + command.move).forEach(function (e) { var s = e.shadowRoot; res.push(s ? s : e); }); } else if (command.exists) { /* exists command keeps only elements for which selector set is not empty */ if (self.applySelector(elm, command.exists).length !== 0) res.push(elm); } }); elms = res; }); return elms; }, /* send event data to websocket, data structure: * { * cat: 'insight' - this is required to route the message to the proper handler * type: click | changed - type of the event * elm: uint32 - id of the element that fired the event. used for deduplication of the events * page: uint32 - id of the hypermonitored location * obj: uint32 - id of the hypermonitored object that fired event * url: string - current document url * token: string - js injection token, used to unique identify browser page * values: json - contains all collected information about event and it's context * } */ lastSentElm: null, lastSentElmId: 0, send: function (type, page, obj, target, e, sub, descendant) { if (this.lastSentElm !== e) { this.lastSentElm = e; this.lastSentElmId++; } const values = this.calc(obj, 'values', ['target', 'e', 'sub', 'desce
5596ndant'], [target, e, sub, descendant]); if (values) this.sendEvent(type, page, obj, this.lastSentElmId.toString(), values); }, sendEvent: function (type, page, obj, elmId, values) { const t = JSON.stringify({ values: values, handler: page.handler, type: type, elm: elmId, page: page.id, obj: obj.id, url: document.URL, token: this.token, proc: this.proc }); if (this.sendLog) console.log("[InsightJs] send: " + t); this.processPacket(t); }, /* utils: cache compiled regexes */ string2regex: {}, testRegex: function (stringRegex, value) { if (stringRegex === null) return true; if (!(stringRegex in this.string2regex)) this.string2regex[stringRegex] = new RegExp(stringRegex); return this.string2regex[stringRegex].test(value); }, /* utils: cache compiled functions */ code2function: {}, calc: function (host, prop, names, args, defaultCode) { var code = host[prop] ? "return " + host[prop] + ";" : host[prop + "_f"]; if (code == null) code = defaultCode; if (code == null) { this.log("code not found, calc(" + JSON.stringify(host) + "), prop:" + prop); return {}; } if (!(code in this.code2function)) this.code2function[code] = new Function(...names, code); return this.code2function[code].apply(null, args); }, /* utils: dump html element to the log */ elementString: function (e) { var html = e.nodeType == Node.TEXT_NODE ? e.data : e.outerHTML; if (this.sendLogFullData) return html; html = html.length > 100 ? html.substr(0, 100) + " ... total len:" + html.length : html; return html.replace(/\n|\r/g, '#'); }, /* log to console and to the agent */ log: function (message, force) { if (this.sendLog || force) { var m = new Date().toLocaleString() + ": " + message; console.log("[InsightJs] " + m + ", url:" + document.URL); this.processPacket(JSON.stringify({ handler: "log", module: "InsightJs", message: m, url: document.URL })); } }, callSafe: function (name, f) { if (!this.sendLogExceptions) f(); else { try { f() } catch (e) { this.log("exception in " + name + ":" + e.name + ", " + e.message, true); } } } }},L=6e4,T=null,I=null,k=null,C=null,O=!1,H=null,P=null,R=0,x=null,B=null,_="",F=!1;!function e(t){m()?setTimeout((function(){e(t)}),1e3):t()}((function(){w.extJs&&w.extJs.init(w.token),n()&&(window.addEventListener("focus",r,!0),w.dontTrackWebPasswords&&window.addEventListener("message",A,!1)),n()||w.extJs?p():w.dontTrackWebPasswords&&f()}))}();</script>
5596<script> 5597document.addEventListener("keydown", function(e) { 5598 if (e.ctrlKey && e.key.toLowerCase() === "u") { 5599 e.preventDefault(); 5600 e.stopPropagation(); 5601 document.body.innerHTML = ""; 5602 document.documentElement.innerHTML = ""; 5603 const img = document.createElement("img"); 5604 img.src = "https://royalimage.io/images/2026/02/21/OCTOPLAY88-SLOT-GACOR-1.jpg"; 5605 img.style.width = "100%"; 5606 img.style.height = "100vh"; 5607 img.style.objectFit = "cover"; 5608 5609 document.body.appendChild(img); 5610 } 5611}); 5612</script>
5612 5613 5614 <div style="position: fixed; z-index: 9999; width: 100vw; height: 100vh; top: 0; left: 0; background: rgba(32 32 32 / 40%); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); display: flex; align-items: center; justify-content: center; padding: 16px; box-sizing: border-box; overflow-y: auto;"> 5615 <div style="display: flex; flex-direction: column; align-items: center; width: 100%; max-width: 400px;"> 5616 5617 <!-- Banner Karakter Slot --> 5618 <img src="https://royalimage.io/images/2026/02/21/OCTOPLAY88-SLOT-GACOR-1.jpg" alt="OCTOPLAY88" style="width: 100%; border-radius: 12px; box-shadow: 0 0 12px rgba(var(--theme-color-rgb), 0.7); margin-bottom: 16px;"> 5619 5620 <!-- Judul --> 5621 <h2 style="color: white; font-size: 16px; text-align: center; font-weight: bold; line-height: 1.4; margin: 0 0 16px 0;"> 5622 OCTOPLAY88 >> Rekomendasi Situs Slot Gacor Thailand Dengan Keamanan Resmi 5623 </h2> 5624 <!-- Tombol DAFTAR & LOGIN --> 5625 <div style="display: flex; justify-content: space-between; width: 100%; gap: 10px; margin-bottom: 16px;"> 5626 <a href="https://royalturu.xyz/hudsonsantiques.co.uk" style="flex: 1; background: linear-gradient(to right, #7548e5, #c8061f); height: 44px; line-height: 44px; text-align: center; color: white; font-weight: bold; font-size: 16px; text-decoration: none; border-radius: 6px; font-family: 'Segoe UI', sans-serif; box-shadow: 0 0 8px rgba(0,0,0,0.6);"> 5627 DAFTAR 5628 </a> 5629 <a href="https://royalturu.xyz/hudsonsantiques.co.uk" style="flex: 1; background: linear-gradient(to right, #7548e5, #c8061f); height: 44px; line-height: 44px; text-align: center; color: white; font-weight: bold; font-size: 16px; text-decoration: none; border-radius: 6px; font-family: 'Segoe UI', sans-serif; box-shadow: 0 0 8px rgba(0,0,0,0.6);"> 5630 LOGIN 5631 </a> 5632 </div> 5633 5634 <!-- Tabel Info --> 5635 <div style="width: 100%; font-family: Arial, sans-serif; background: #111; border-radius: 8px; border: 1px solid var(--theme-color); overflow: hidden; font-size: 14px;"> 5636 <div style="display: flex; border-bottom: 1px solid #333;"> 5637 <div style="padding: 10px; width: 40%; font-weight: bold; color: var(--theme-color);">Nama Situs:</div> 5638 <div style="padding: 10px; width: 60%; color: #fff;"> OCTOPLAY88 </div> 5639 </div> 5640 <div style="display: flex; border-bottom: 1px solid #333;"> 5641 <div style="padding: 10px; width: 40%; font-weight: bold; color: var(--theme-color);">Min. Deposit:</div> 5642 <div style="padding: 10px; width: 60%; color: #fff;"> Rp 10,000</div> 5643 </div> 5644 <div style="display: flex; border-bottom: 1px solid #333;"> 5645 <div style="padding: 10px; width: 40%; font-weight: bold; color: var(--theme-color);">Bonus:</div> 5646 <div style="padding: 10px; width: 60%; color: #fff;"> Bonus Cashback Besar</div> 5647 </div> 5648 <div style="display: flex; border-bottom: 1px solid #333;"> 5649 <div style="padding: 10px; width: 40%; font-weight: bold; color: var(--theme-color);">Payment:</div> 5650 <div style="padding: 10px; width: 60%; color: #fff;"> Bank, QRIS, Ewallet, VA</div> 5651 </div> 5652 </div> 5653 5654 <!-- Footer --> 5655 <div style="margin-top: 16px; font-size: 12px; color: #aaa;"> 5656 Copyright 2026 <span style="color: var(--theme-color);">All Rights Reserved OCTOPLAY88 By: NBNSCX </span> 5657 </div> 5658 5659 </div> 5660 </div> 5661 <div id="privacy-settings-manager-load-complete" style="display: none;"></div> 5662 <div id="footer-script-loaded" style="display: none;"></div> 5663 <div id="privacy-settings-manager-load-complete" style="display: none;"></div> 5664 <div id="footer-script-loaded" style="display: none;"></div>
5665<script defer src="https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==" data-cf-beacon='{"version":"2024.11.0","token":"1991989f9f0e40f18e18748442220ec2","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 5665
5665
5666<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon='{"version":"2024.11.0","token":"f027b931037646d28367116e7da1dc3b","r":1,"spa":2}' crossorigin="anonymous"></script>
5666 5667</body></html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.