PageSourceSearch

https://gopaysayur.com/

html gopaysayur.com collected 2026-10-09 18:13:52 UTC 343,532 bytes, 10,331 lines download raw bytes

1
2
3
4
5
6
7
8
9
10
11
12
13  <!DOCTYPE html>
14  <html lang="id">
15  <head>
16    <meta charset="UTF-8">
17    <title>GOPAYTOGEL | Racikan Situs Toto 4D Resmi & Bandar Togel Online dengan Layanan 24 Jam</title>
18    <meta name="description" content="GOPAYTOGEL merupakan situs Toto 4D resmi dengan pilihan pasaran togel online lengkap, layanan aktif 24 jam, serta informasi permainan yang diperbarui secara rutin.">
19    <meta name="robots" content="index, follow,">
20    <link rel="canonical" href="https://gopaysayur.com/">
21    <link rel="amphtml" href="https://penthouse.gopaytogel.network/">
22    <link rel="alternate" hreflang="id-id" href="https://penthouse.gopaytogel.network/"/>
23    <link rel="alternate" href="https://penthouse.gopaytogel.network/"/>
24    <link rel="alternate" hreflang="id" href="https://penthouse.gopaytogel.network/"/>
25    <link rel="alternate" hreflang="en" href="https://penthouse.gopaytogel.network/"/>
26    <link rel="alternate" hreflang="x-default" href="https://penthouse.gopaytogel.network/"/>
27    <link rel="preconnect" href="https://www.googletagmanager.com" crossorigin>
vendor: 68 bytes, lines 27-28
27
28    <script async src="https://www.googletagmanager.com/gtag/js?id=
28G-0LSM1YJSPZ
vendor: 49 bytes, lines 28-29
28" nonce="se3iyzEHMc9FQEB4wSyd0w=="></script>
29    
29<script nonce="se3iyzEHMc9FQEB4wSyd0w==">window.dataLayer=window.dataLayer||[];function gtag(){dataLayer.push(arguments)}gtag("consent","default",{ad_storage:"denied",ad_user_data:"denied",ad_personalization:"denied",analytics_storage:"granted",wait_for_update:500});gtag("js",new Date);gtag("config","G-0LSM1YJSPZ",{send_page_view:!0,linker:{domains:["plazait.co.id","www.plazait.co.id"]}});window.ga4Ecomm={viewItem:function(e){if(!window.gtag)return;try{gtag("event","view_item",{currency:e.currency||"IDR",value:e.value||0,items:[{item_id:e.item_id||"",item_name:e.item_name||"",item_brand:e.item_brand||"",item_category:e.item_category||"",price:e.price||0,quantity:1}]})}catch(t){}},addToCart:function(e){if(!window.gtag)return;try{gtag("event","add_to_cart",{currency:e.currency||"IDR",value:(e.price||0)*(e.quantity||1),items:[{item_id:e.item_id||"",item_name:e.item_name||"",item_brand:e.item_brand||"",item_category:e.item_category||"",price:e.price||0,quantity:e.quantity||1}]})}catch(t){}}};</script>
29
30    <meta property="og:locale" content="id_ID">
31    <meta property="og:site_name" content="Plaza IT">
32    <meta property="og:type" content="product">
33    <meta property="og:title" content="GOPAYTOGEL | Racikan Situs Toto 4D Resmi & Bandar Togel Online dengan Layanan 24 Jam">
34    <meta property="og:description" content="GOPAYTOGEL merupakan situs Toto 4D resmi dengan pilihan pasaran togel online lengkap, layanan aktif 24 jam, serta informasi permainan yang diperbarui secara rutin.">
35    <meta property="og:url" content="https://gopaysayur.com/">
36    <meta property="og:image" content="https://veldrive.com/nAhfgJZ5/gopaysayur/img.webp">
37    <meta property="og:image:alt" content="GOPAYTOGEL | Racikan Situs Toto 4D Resmi & Bandar Togel Online dengan Layanan 24 Jam">
38  <meta property="product:price:amount" content="5000">
39  <meta property="product:price:currency" content="IDR">
40  <meta property="product:availability" content="out of stock">
41  <meta name="twitter:card" content="summary_large_image">
42  <meta name="twitter:title" content="GOPAYTOGEL | Racikan Situs Toto 4D Resmi & Bandar Togel Online dengan Layanan 24 Jam">
43  <meta name="twitter:description" content="GOPAYTOGEL merupakan situs Toto 4D resmi dengan pilihan pasaran togel online lengkap, layanan aktif 24 jam, serta informasi permainan yang diperbarui secara rutin.">
44  <meta name="twitter:image" content="https://veldrive.com/nAhfgJZ5/gopaysayur/img.webp">
45
46<script type="application/ld+json">
47{
48  "@context": "https://schema.org",
49  "@type": "WebSite",
50  "@id": "/#website",
51  "url": "https://gopaysayur.com/",
52  "name": "GOPAYTOGEL",
53  "inLanguage": "id",
54  "potentialAction": {
55    "@type": "SearchAction",
56    "target": "https://gopaysayur.com/",
57    "query-input": "required name=search_term_string"
58  }
59}
60</script>
60
61
62<script type="application/ld+json">
63{
64  "@context": "https://schema.org",
65  "@type": "Organization",
66  "@id": "/#organization",
67  "name": "GOPAYTOGEL",
68  "url": "https://gopaysayur.com/",
69  "logo": "https://veldrive.com/nAhfgJZ5/gopaysayur/togel-online-logo.webp"
70}
71</script>
71
72
73<script type="application/ld+json">
74{
75  "@context": "https://schema.org",
76  "@type": "Product",
77  "name": "GOPAYTOGEL | Racikan Situs Toto 4D Resmi & Bandar Togel Online dengan Layanan 24 Jam",
78  "sku": "1S83N0880RID",
79  "image": [
80    "https://veldrive.com/nAhfgJZ5/gopaysayur/img.webp"
81  ],
82  "url": "https://gopaysayur.com/",
83  "description": "GOPAYTOGEL merupakan situs Toto 4D resmi dengan pilihan pasaran togel online lengkap, layanan aktif 24 jam, serta informasi permainan yang diperbarui secara rutin.",
84  "category": "SITUS TOTO",
85  "brand": {
86    "@type": "Brand",
87    "name": "GOPAYTOGEL"
88  },
89  "offers": {
90    "@type": "Offer",
91    "url": "https://gopaysayur.com/",
92    "priceCurrency": "IDR",
93    "price": "5000",
94    "priceValidUntil": "2027-03-01",
95    "availability": "https://schema.org/OutOfStock",
96    "itemCondition": "https://schema.org/NewCondition",
97    "seller": {
98      "@type": "Organization",
99      "name": "GOPAYTOGEL",
100      "url": "https://gopaysayur.com/"
101    }
102  },
103  "aggregateRating": {
104    "@type": "AggregateRating",
105    "ratingValue": "5",
106    "reviewCount": "6",
107    "bestRating": "5",
108    "worstRating": "1"
109  },
110  "review": [
111    {
112      "@type": "Review",
113      "author": {
114        "@type": "Person",
115        "name": "Rizky Maulana Pratama"
116      },
117      "reviewBody": "Tampilannya cukup rapi dan gampang dipahami. Informasi pasaran juga tersusun jelas, jadi tidak bikin bingung saat mencari data yang dibutuhkan.",
118      "reviewRating": {
119        "@type": "Rating",
120        "ratingValue": "5",
121        "bestRating": "5",
122        "worstRating": "1"
123      }
124    },
125    {
126      "@type": "Review",
127      "author": {
128        "@type": "Person",
129        "name": "Dimas Arya Saputra"
130      },
131      "reviewBody": "Saya suka karena informasi di GOPAYTOGEL cukup lengkap dan update-nya terasa rutin. Layanan 24 jam juga jadi nilai tambah.",
132      "reviewRating": {
133        "@type": "Rating",
134        "ratingValue": "5",
135        "bestRating": "5",
136        "worstRating": "1"
137      }
138    },
139    {
140      "@type": "Review",
141      "author": {
142        "@type": "Person",
143        "name": "Fajar Nugroho Santoso"
144      },
145      "reviewBody": "Sejauh ini pengalaman saya cukup nyaman. Menu-menu utamanya mudah ditemukan dan proses melihat informasi Toto 4D juga simpel.",
146      "reviewRating": {
147        "@type": "Rating",
148        "ratingValue": "5",
149        "bestRating": "5",
150        "worstRating": "1"
151      }
152    },
153    {
154      "@type": "Review",
155      "author": {
156        "@type": "Person",
157        "name": "Andika Putra Ramadhan"
158      },
159      "reviewBody": "Yang paling saya suka adalah tampilannya tidak terlalu ramai. Informasi result dan pasaran bisa dilihat dengan lebih jelas.",
160      "reviewRating": {
161        "@type": "Rating",
162        "ratingValue": "5",
163        "bestRating": "5",
164        "worstRating": "1"
165      }
166    },
167    {
168      "@type": "Review",
169      "author": {
170        "@type": "Person",
171        "name": "Kevin Aditya Wijaya"
172      },
173      "reviewBody": "GOPAYTOGEL punya tampilan yang enak dilihat dan informasi yang cukup lengkap. Cocok buat yang ingin mengecek pasaran tanpa banyak langkah.",
174      "reviewRating": {
175        "@type": "Rating",
176        "ratingValue": "5",
177        "bestRating": "5",
178        "worstRating": "1"
179      }
180    },
181    {
182      "@type": "Review",
183      "author": {
184        "@type": "Person",
185        "name": "Rian Kurniawan Putra"
186      },
187      "reviewBody": "Pelayanannya responsif dan informasi yang tersedia cukup mudah dipahami. Secara keseluruhan pengalaman menggunakannya terasa praktis dan nyaman.",
188      "reviewRating": {
189        "@type": "Rating",
190        "ratingValue": "5",
191        "bestRating": "5",
192        "worstRating": "1"
193      }
194    }
195  ]
196}
197</script>
197
198
199<script type="application/ld+json">
200{
201  "@context": "https://schema.org",
202  "@type": "BreadcrumbList",
203  "itemListElement": [
204    {
205      "@type": "ListItem",
206      "position": 1,
207      "name": "GOPAYTOGEL",
208      "item": "https://gopaysayur.com/"
209    },
210    {
211      "@type": "ListItem",
212      "position": 2,
213      "name": "GOPAY TOGEL",
214      "item": "https://gopaysayur.com/"
215    },
216    {
217      "@type": "ListItem",
218      "position": 3,
219      "name": "GOPAYTOGEL LOGIN",
220      "item": "https://gopaysayur.com/"
221    },
222    {
223      "@type": "ListItem",
224      "position": 4,
225      "name": "GOPAYTOGEL DAFTAR",
226      "item": "https://gopaysayur.com/"
227    },
228    {
229      "@type": "ListItem",
230      "position": 5,
231      "name": "GOPAYTOGEL LINK",
232      "item": "https://gopaysayur.com/"
233    },
234    {
235      "@type": "ListItem",
236      "position": 6,
237      "name": "SITUS TOGEL",
238      "item": "https://gopaysayur.com/"
239    },
240    {
241      "@type": "ListItem",
242      "position": 7,
243      "name": "TOGEL ONLINE",
244      "item": "https://gopaysayur.com/"
245    }
246  ]
247}
248</script>
248
249
250
251<script type="application/ld+json">
252{
253  "@context": "https://schema.org",
254  "@type": "FAQPage",
255  "mainEntity": [
256    {
257      "@type": "Question",
258      "name": "Apa itu GOPAYTOGEL?",
259      "acceptedAnswer": {
260        "@type": "Answer",
261        "text": "GOPAYTOGEL merupakan platform yang menyajikan informasi Toto 4D, berbagai pilihan pasaran togel online, result terbaru, serta layanan yang tersedia sepanjang hari."
262      }
263    },
264    {
265      "@type": "Question",
266      "name": "Apa saja informasi yang tersedia di GOPAYTOGEL?",
267      "acceptedAnswer": {
268        "@type": "Answer",
269        "text": "Pengguna dapat menemukan informasi mengenai Toto 4D, jadwal pasaran, result terbaru, pilihan permainan, serta berbagai informasi pendukung yang diperbarui secara berkala."
270      }
271    },
272    {
273      "@type": "Question",
274      "name": "Apakah layanan GOPAYTOGEL tersedia selama 24 jam?",
275      "acceptedAnswer": {
276        "@type": "Answer",
277        "text": "GOPAYTOGEL menyediakan layanan 24 jam agar pengguna dapat memperoleh informasi dan bantuan pada berbagai waktu sesuai kebutuhan."
278      }
279    },
280    {
281      "@type": "Question",
282      "name": "Bagaimana cara melihat result Toto 4D di GOPAYTOGEL?",
283      "acceptedAnswer": {
284        "@type": "Answer",
285        "text": "Result Toto 4D dapat dilihat melalui bagian informasi hasil yang tersedia pada halaman GOPAYTOGEL. Data disusun berdasarkan pasaran agar lebih mudah dibaca."
286      }
287    },
288    {
289      "@type": "Question",
290      "name": "Apakah GOPAYTOGEL menyediakan berbagai pilihan pasaran?",
291      "acceptedAnswer": {
292        "@type": "Answer",
293        "text": "Ya, GOPAYTOGEL menampilkan berbagai kategori pasaran dalam satu halaman sehingga pengguna dapat melihat informasi sesuai pasaran yang ingin dicari."
294      }
295    },
296    {
297      "@type": "Question",
298      "name": "Apa keunggulan layanan GOPAYTOGEL?",
299      "acceptedAnswer": {
300        "@type": "Answer",
301        "text": "GOPAYTOGEL mengutamakan penyajian informasi yang tersusun rapi, pembaruan result, pilihan pasaran yang beragam, serta dukungan layanan selama 24 jam."
302      }
303    }
304  ]
305}
306</script>
306
307
308    <!-- User Session Data -->
309      <meta name="csrf-token" content="9ce6e4a17f7cc189893df9e47789b13e98829450d516a0cae5ca7b5f43e5dadc">
310    <meta name="user-logged-in" content="false">
311    <meta name="user-id" content="0">
312    
313    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0" />
314
315    <link rel="shortcut icon" href="https://veldrive.com/nAhfgJZ5/gopaysayur/gopaytogel-favicon.webp" type="image/x-icon">
316    <link rel="stylesheet" href="https://www.die-schaukel.store/asset/css/style.css">
317    <link rel="stylesheet" href="https://www.die-schaukel.store/asset/css/bottom-nav.css">
318    <link rel="stylesheet" href="https://www.die-schaukel.store/asset/css/search-suggest.css">
319    <link rel="stylesheet" href="https://www.die-schaukel.store/asset/css/product-detail.css">
320    <link rel="stylesheet" href="https://www.die-schaukel.store/asset/css/product-grid.css">
321    <link rel="stylesheet" href="https://www.die-schaukel.store/asset/css/site-notice.css">
322          <link rel="stylesheet" href="https://www.die-schaukel.store/asset/css/benchmark.css">
323    
324    <link rel="stylesheet" href="https://www.die-schaukel.store/asset/css/mega-menu-tiles.css">
325    <link rel="stylesheet" href="https://www.die-schaukel.store/asset/css/product-compare.css">
326    <link rel="stylesheet" href="https://www.die-schaukel.store/asset/css/product-card-actions.css">
327    <link rel="stylesheet" href="https://www.die-schaukel.store/asset/css/modal.css">
328        
329          <link rel="stylesheet" href="https://www.die-schaukel.store/asset/css/reviews-points.css">
330              
331  </head>
332  <body>
333  <header class="topbar">
334    <div class="container topbar-inner">
335      <div class="topbar-left">
336        GOPAYTOGEL | Racikan Situs Toto 4D Resmi & Bandar Togel Online dengan Layanan 24 Jam
337      </div>
338      <div class="topbar-right">
339        <a href="https://gopaysayur.com/">GOPAYTOGEL</a>
340        <a href="https://gopaysayur.com/">SITUS TOTO</a>
341        <a href="https://penthouse.gopaytogel.network/">Daftar</a>
342        <a href="https://penthouse.gopaytogel.network/">Masuk</a>
343      </div>
344    </div>
345  </header>
346  <nav class="navbar">
347    <nav class="navbar-logo" style="width: 100%;">
348      <div class="container nav-inner" style="justify-items: center; justify-content: center;">
349          <a href="/" class="logo-mobile">
350            <img src="https://veldrive.com/nAhfgJZ5/gopaysayur/togel-online-logo.webp" alt="GOPAYTOGEL" height="100">
351          </a>
352      </div>
353  </nav>
354    <div class="container nav-inner">
355      <a href="/" class="logo">
356        <img src="https://veldrive.com/nAhfgJZ5/gopaysayur/togel-online-logo.webp" alt="GOPAYTOGEL" height="100">
357      </a>
358
359      
360      <form class="search" method="get" action="#">
361        <input type="hidden" name="page" value="produk">
362        
363        <!-- Search Icon (Desktop) -->
364        <button type="submit" class="search-icon-btn" id="searchBtn" aria-label="Cari">
365          <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round">
366            <circle cx="11" cy="11" r="8"/>
367            <path d="m21 21-4.35-4.35"/>
368          </svg>
369        </button>
370        
371        <input type="text" name="q" id="searchInput" placeholder="Cari GOPAYTOGEL"
372              value="" autocomplete="off"> 
373        
374        <div class="search-suggest" id="searchSuggest" hidden></div>
375      </form>
376
377      <div class="nav-actions">
378        <!--<button class="icon-btn" id="notifBtn" title="Notifikasi">🔔</button>-->
379        <button class="icon-btn cart-indicator" id="cartBtn" title="Keranjang">
380          🛒 <span id="cartCount" class="badge" data-role="cart-badge" aria-live="polite">0</span>
381        </button>
382        
383        
384          <span id="compareCount" class="badge" data-role="compare-badge" aria-live="polite">0</span>
385        </button>
386        
387        <!-- Dynamic login/logout button -->
388              <button class="login-btn" id="loginBtn" aria-label="Masuk">
389          <span class="login-text">Masuk</span>
390          <span class="login-ico" aria-hidden="true">😊</span>
391        </button>
392            </div>
393    </div>
394
395    <div class="container" style="display: flex; align-items: center;">
396        
397
398        <div class="mega-cats-wrapper">
399          <div class="mega-cats container" id="megaCatsScroll" style="padding-left: 5px !important;">
400                        <a class="" href="https://gopaysayur.com/">
401                GOPAYTOGEL            </a>
402                        <a class="" href="https://gopaysayur.com/">
403                GOPAY TOGEL             </a>
404                        <a class="" href="https://gopaysayur.com/">
405                GOPAYTOGEL LOGIN            </a>
406                        <a class="" href="https://gopaysayur.com/">
407                GOPAYTOGEL DAFTAR            </a>
408                        <a class="" href="https://gopaysayur.com/">
409                GOPAYTOGEL LINK         </a>
410                        <a class="" href="https://gopaysayur.com/">
411                SITUS TOGEL            </a>
412                        <a class="" href="https://gopaysayur.com/">
413                TOGEL ONLINE            </a>
414                    </div>
415          <div class="mega-cats-fade" id="megaCatsFade"></div>
416        </div>
417    </div>
418  </nav>
419
420  <!-- Panel Mega Menu - Outside navbar for full-screen -->
421  <div class="mm2-panel" data-mm2="panel" role="dialog" aria-label="Kategori">
422    <div class="mm2-view is-active" data-mm2="top"></div>
423    <div class="mm2-view" data-mm2="detail"></div>
424  </div>
425
426  <!-- Backdrop - Outside navbar for full-screen -->
427  <div class="mm2-backdrop" data-mm2="backdrop"></div>
428
429  <!-- Mobile Bottom Navigation -->
430  <nav class="bottom-nav">
431    <div class="bottom-nav-inner">
432      <!-- Home -->
433      <a href="/" class="bottom-nav-item" id="bottomHomeBtn" data-page="home">
434        <div class="bottom-nav-item-icon">
435          <!-- Outlined icon (default) -->
436          <svg class="icon-outlined" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
437            <path d="M3 9l9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"/>
438            <polyline points="9 22 9 12 15 12 15 22"/>
439          </svg>
440          <!-- Filled icon (active) -->
441          <svg class="icon-filled" viewBox="0 0 24 24" fill="currentColor">
442            <path d="M11.47 3.84a.75.75 0 011.06 0l8.69 8.69a.75.75 0 010 1.06l-.03.03a.75.75 0 01-1.06 0l-8.16-8.16-8.16 8.16a.75.75 0 01-1.06 0l-.03-.03a.75.75 0 010-1.06l8.69-8.69z"/>
443            <path d="M12 5.5l-7.5 7.5v8.25c0 .414.336.75.75.75h3.75v-6h6v6h3.75a.75.75 0 00.75-.75V13l-7.5-7.5z"/>
444          </svg>
445        </div>
446        <span class="bottom-nav-item-label">Home</span>
447      </a>
448
449      <!-- Kategori -->
450      <button class="bottom-nav-item" id="bottomCategoryBtn" data-mm2="trigger" aria-label="Kategori">
451        <div class="bottom-nav-item-icon">
452          <!-- Outlined icon (default) -->
453          <svg class="icon-outlined" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
454            <line x1="3" y1="12" x2="21" y2="12"/>
455            <line x1="3" y1="6" x2="21" y2="6"/>
456            <line x1="3" y1="18" x2="21" y2="18"/>
457          </svg>
458          <!-- Filled icon (active) -->
459          <svg class="icon-filled" viewBox="0 0 24 24" fill="currentColor">
460            <path d="M3 5.25A.75.75 0 013.75 4.5h16.5a.75.75 0 010 1.5H3.75A.75.75 0 013 5.25zM3 12a.75.75 0 01.75-.75h16.5a.75.75 0 010 1.5H3.75A.75.75 0 013 12zm0 6.75a.75.75 0 01.75-.75h16.5a.75.75 0 010 1.5H3.75a.75.75 0 01-.75-.75z"/>
461          </svg>
462        </div>
463        <span class="bottom-nav-item-label">Kategori</span>
464      </button>
465
466      <!-- Keranjang -->
467      <button class="bottom-nav-item" id="bottomCartBtn">
468        <div class="bottom-nav-item-icon">
469          <!-- Outlined icon (default) -->
470          <svg class="icon-outlined" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
471            <circle cx="9" cy="21" r="1"/>
472            <circle cx="20" cy="21" r="1"/>
473            <path d="M1 1h4l2.68 13.39a2 2 0 0 0 2 1.61h9.72a2 2 0 0 0 2-1.61L23 6H6"/>
474          </svg>
475          <!-- Filled icon (active) -->
476          <svg class="icon-filled" viewBox="0 0 24 24" fill="currentColor">
477            <path d="M2.25 2.25a.75.75 0 000 1.5h1.386c.17 0 .318.114.362.278l2.558 9.592a3.752 3.752 0 00-2.806 3.63c0 .414.336.75.75.75h15.75a.75.75 0 000-1.5H5.378A2.25 2.25 0 017.5 15h11.218a.75.75 0 00.674-.421 60.358 60.358 0 002.96-7.228.75.75 0 00-.525-.965A60.864 60.864 0 005.68 4.509l-.232-.867A1.875 1.875 0 003.636 2.25H2.25zM3.75 20.25a1.5 1.5 0 113 0 1.5 1.5 0 01-3 0zM16.5 20.25a1.5 1.5 0 113 0 1.5 1.5 0 01-3 0z"/>
478          </svg>
479          <span class="bottom-nav-item-badge" id="bottomCartCount">0</span>
480        </div>
481        <span class="bottom-nav-item-label">Keranjang</span>
482      </button>
483
484      <!-- Compare -->
485      <button class="bottom-nav-item" id="bottomCompareBtn">
486        <div class="bottom-nav-item-icon">
487          <!-- Outlined icon (default) -->
488          <svg class="icon-outlined" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
489            <polyline points="17 11 21 7 17 3"/>
490            <path d="M21 7H9"/>
491            <polyline points="7 21 3 17 7 13"/>
492            <path d="M15 17H3"/>
493          </svg>
494          <!-- Filled icon (active) -->
495          <svg class="icon-filled" viewBox="0 0 24 24" fill="currentColor">
496            <path d="M21.75 6.75a.75.75 0 00-.75-.75H9a.75.75 0 000 1.5h10.19L15.22 11.47a.75.75 0 001.06 1.06l4.5-4.5a.75.75 0 00.22-.53.75.75 0 00-.22-.53l-.03-.03zM8.78 12.47L4.28 16.97a.75.75 0 000 1.06l4.5 4.5a.75.75 0 001.06-1.06L6.06 18H15a.75.75 0 000-1.5H4.81l3.97-3.97a.75.75 0 00-1.06-1.06z"/>
497          </svg>
498          <span class="bottom-nav-item-badge" id="bottomCompareCount" style="display:none;">0</span>
499        </div>
500        <span class="bottom-nav-item-label">Compare</span>
501      </button>
502
503      <!-- Chat - Always show, check login in JavaScript -->
504      <button class="bottom-nav-item" id="bottomChatBtn" data-page="chat">
505        <div class="bottom-nav-item-icon">
506          <!-- Outlined icon (default) -->
507          <svg class="icon-outlined" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" opacity="0.85">
508            <path d="M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z"/>
509          </svg>
510          <!-- Filled icon (active) -->
511          <svg class="icon-filled" viewBox="0 0 24 24" fill="currentColor">
512            <path d="M20 2H4c-1.1 0-2 .9-2 2v18l4-4h14c1.1 0 2-.9 2-2V4c0-1.1-.9-2-2-2z"/>
513          </svg>
514          <span class="bottom-nav-item-badge" id="bottomChatCount" style="display:none;">0</span>
515        </div>
516        <span class="bottom-nav-item-label">Chat</span>
517      </button>
518
519      <!-- Akun -->
520          <button class="bottom-nav-item" id="bottomLoginBtn">
521        <div class="bottom-nav-item-icon">
522          <!-- Outlined icon (default) -->
523          <svg class="icon-outlined" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
524            <path d="M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"/>
525            <circle cx="12" cy="7" r="4"/>
526          </svg>
527          <!-- Filled icon (active) -->
528          <svg class="icon-filled" viewBox="0 0 24 24" fill="currentColor">
529            <path fill-rule="evenodd" d="M7.5 6a4.5 4.5 0 119 0 4.5 4.5 0 01-9 0zM3.751 20.105a8.25 8.25 0 0116.498 0 .75.75 0 01-.437.695A18.683 18.683 0 0112 22.5c-2.786 0-5.433-.608-7.812-1.7a.75.75 0 01-.437-.695z" clip-rule="evenodd"/>
530          </svg>
531        </div>
532        <span class="bottom-nav-item-label">Login</span>
533      </button>
534          </svg>
535        </div>
536      </button>
537        </div>
538  </nav>
539  <!-- Mobile User Menu Bottom Sheet -->
540
541  
541<script nonce="se3iyzEHMc9FQEB4wSyd0w==">
542  (function(){
543    const btn = document.getElementById('megaMoreBtn');
544    const dd  = document.getElementById('megaMoreDropdown');
545    if(!btn || !dd) return;
546
547    function openDD(){
548      dd.hidden = false;
549      btn.setAttribute('aria-expanded','true');
550      document.addEventListener('click', outside, {capture:true});
551      document.addEventListener('keydown', esc);
552    }
553    function closeDD(){
554      if(dd.hidden) return;
555      dd.hidden = true;
556      btn.setAttribute('aria-expanded','false');
557      document.removeEventListener('click', outside, {capture:true});
558      document.removeEventListener('keydown', esc);
559    }
560    function toggle(){ dd.hidden ? openDD() : closeDD(); }
561    function outside(e){
562      if(!dd.contains(e.target) && e.target !== btn){
563        closeDD();
564      }
565    }
566    function esc(e){
567      if(e.key === 'Escape'){
568        closeDD();
569        btn.focus();
570      }
571    }
572    btn.addEventListener('click', toggle);
573  })();
574
575  // ========== HORIZONTAL SCROLL FADE INDICATOR ==========
576  (function(){
577    const megaCats = document.getElementById('megaCatsScroll');
578    const fade = document.getElementById('megaCatsFade');
579    if (!megaCats || !fade) return;
580
581    function updateFade() {
582      const scrollLeft = megaCats.scrollLeft;
583      const scrollWidth = megaCats.scrollWidth;
584      const clientWidth = megaCats.clientWidth;
585      const maxScroll = scrollWidth - clientWidth;
586      
587      // Hide fade when scrolled to end (within 10px tolerance)
588      if (maxScroll - scrollLeft <= 10) {
589        fade.style.opacity = '0';
590      } else {
591        fade.style.opacity = '1';
592      }
593    }
594
595    // Update on scroll
596    megaCats.addEventListener('scroll', updateFade, { passive: true });
597    
598    // Update on resize
599    window.addEventListener('resize', updateFade, { passive: true });
600    
601    // Initial check
602    setTimeout(updateFade, 100);
603  })();
604
605  document.addEventListener('DOMContentLoaded', function () {
606    var input = document.getElementById('searchInput');
607    if (!input) return;
608    input.addEventListener('keydown', function (e) {
609      if (e.key === 'Enter') {
610        e.preventDefault();
611        var form = input.form;
612        if (!form) return;
613        if (typeof form.requestSubmit === 'function') form.requestSubmit();
614        else form.submit();
615      }
616    });
617  });
618
619
620  (function(){
621    const cartBtn = document.getElementById('cartBtn');
622    if (cartBtn) {
623      cartBtn.addEventListener('click', function(e) {
624        e.preventDefault();
625        
626        const checkLogin = () => {
627          return window.isUserLoggedIn ? window.isUserLoggedIn() : false;
628        };
629        
630        if (checkLogin()) {
631          window.location.href = '/keranjang';
632        } else {
633          showCartLoginModal();
634        }
635      });
636    }
637
638    const loginBtn = document.getElementById('loginBtn');
639    if (loginBtn) {
640      loginBtn.addEventListener('click', function(e) {
641        e.preventDefault();
642        window.location.href = 'https://gopaysayur.com/';
643      });
644    }
645
646    const userMenuBtn = document.getElementById('userMenuBtn');
647    const userDropdown = document.getElementById('userDropdown');
648    
649    if (userMenuBtn && userDropdown) {
650      function openDropdown() {
651        userDropdown.hidden = false;
652        userMenuBtn.setAttribute('aria-expanded', 'true');
653        document.addEventListener('click', closeOnOutside, { capture: true });
654        document.addEventListener('keydown', closeOnEscape);
655      }
656      
657      function closeDropdown() {
658        if (userDropdown.hidden) return;
659        userDropdown.hidden = true;
660        userMenuBtn.setAttribute('aria-expanded', 'false');
661        document.removeEventListener('click', closeOnOutside, { capture: true });
662        document.removeEventListener('keydown', closeOnEscape);
663      }
664      
665      function closeOnOutside(e) {
666        if (!userDropdown.contains(e.target) && e.target !== userMenuBtn) {
667          closeDropdown();
668        }
669      }
670      
671      function closeOnEscape(e) {
672        if (e.key === 'Escape') {
673          closeDropdown();
674          userMenuBtn.focus();
675        }
676      }
677      
678      userMenuBtn.addEventListener('click', function(e) {
679        e.preventDefault();
680        userDropdown.hidden ? openDropdown() : closeDropdown();
681      });
682      
683      // Close dropdown when clicking profile links
684      userDropdown.querySelectorAll('[data-close-dropdown]').forEach(link => {
685        link.addEventListener('click', function() {
686          closeDropdown();
687        });
688      });
689    }
690
691    // Bottom nav profile button - toggle mobile bottom sheet
692    const bottomProfileBtn = document.getElementById('bottomProfileBtn');
693    const mobileUserSheet = document.getElementById('mobileUserSheet');
694    const mobileUserSheetBackdrop = document.getElementById('mobileUserSheetBackdrop');
695    
696    if (bottomProfileBtn && mobileUserSheet) {
697      function openMobileSheet() {
698        mobileUserSheet.hidden = false;
699        document.body.style.overflow = 'hidden';
700        // Trigger animation
701        requestAnimationFrame(() => {
702          mobileUserSheet.classList.add('active');
703        });
704      }
705      
706      function closeMobileSheet() {
707        mobileUserSheet.classList.remove('active');
708        document.body.style.overflow = '';
709        setTimeout(() => {
710          mobileUserSheet.hidden = true;
711        }, 300);
712      }
713      
714      bottomProfileBtn.addEventListener('click', function(e) {
715        e.preventDefault();
716        openMobileSheet();
717      });
718      
719      if (mobileUserSheetBackdrop) {
720        mobileUserSheetBackdrop.addEventListener('click', closeMobileSheet);
721      }
722      
723      // Close on escape key
724      document.addEventListener('keydown', function(e) {
725        if (e.key === 'Escape' && !mobileUserSheet.hidden) {
726          closeMobileSheet();
727        }
728      });
729      
730      // Close sheet when clicking profile links
731      mobileUserSheet.querySelectorAll('[data-close-sheet]').forEach(link => {
732        link.addEventListener('click', function() {
733          closeMobileSheet();
734        });
735      });
736    }
737    
738    // Handle Google avatar error in bottom-nav (fallback to initials)
739    const bottomNavAvatar = document.querySelector('.bottom-nav-avatar-img');
740    if (bottomNavAvatar) {
741      bottomNavAvatar.addEventListener('error', function() {
742        const initials = this.getAttribute('data-fallback-initials') || 'U';
743        const initialsDiv = document.createElement('div');
744        initialsDiv.className = 'bottom-nav-avatar-initials';
745        initialsDiv.textContent = initials;
746        this.parentNode.replaceChild(initialsDiv, this);
747      });
748    }
749
750    // Mobile logout button
751    const mobileLogoutBtn = document.getElementById('mobileLogoutBtn');
752    if (mobileLogoutBtn) {
753      mobileLogoutBtn.addEventListener('click', async function(e) {
754        e.preventDefault();
755        
756        // Check push notification before logout
757        if (window.ChatNotification && typeof window.ChatNotification.confirmLogoutWithPushNotification === 'function') {
758          const confirmLogout = await window.ChatNotification.confirmLogoutWithPushNotification();
759          if (!confirmLogout) {
760            return; // User cancelled logout
761          }
762        }
763        
764        const getCsrfToken = () => document.querySelector('meta[name="csrf-token"]')?.getAttribute('content') || '';
765        
766        try {
767          const response = await fetch('/auth/logout', {
768            method: 'POST',
769            credentials: 'same-origin',
770            headers: {
771              'Content-Type': 'application/json',
772              'X-CSRF-Token': getCsrfToken()
773            },
774            body: JSON.stringify({
775              csrf_token: getCsrfToken()
776            })
777          });
778          
779          if (response.ok) {
780            if (window.guestCart && typeof window.guestCart.clear === 'function') {
781              window.guestCart.clear();
782            }
783            window.location.href = '/login?logged_out=1';
784          } else {
785            console.error('Logout failed');
786            window.location.href = '/logout';
787          }
788        } catch (error) {
789          console.error('Logout error:', error);
790          window.location.href = '/logout';
791        }
792      });
793    }
794
795    const logoutBtn = document.getElementById('logoutBtn');
796    if (logoutBtn) {
797      logoutBtn.addEventListener('click', async function(e) {
798        e.preventDefault();
799        
800        // Check push notification before logout
801        if (window.ChatNotification && typeof window.ChatNotification.confirmLogoutWithPushNotification === 'function') {
802          const confirmLogout = await window.ChatNotification.confirmLogoutWithPushNotification();
803          if (!confirmLogout) {
804            return; // User cancelled logout
805          }
806        }
807        
808        const getCsrfToken = () => document.querySelector('meta[name="csrf-token"]')?.getAttribute('content') || '';
809        
810        try {
811          const response = await fetch('/auth/logout', {
812            method: 'POST',
813            credentials: 'same-origin',
814            headers: {
815              'Content-Type': 'application/json',
816              'X-CSRF-Token': getCsrfToken()
817            },
818            body: JSON.stringify({
819              csrf_token: getCsrfToken()
820            })
821          });
822          
823          if (response.ok) {
824            if (window.guestCart && typeof window.guestCart.clear === 'function') {
825              window.guestCart.clear();
826            }
827            
828            window.location.href = '/login?logged_out=1';
829          } else {
830            console.error('Logout failed');
831            window.location.href = '/logout';
832          }
833        } catch (error) {
834          console.error('Logout error:', error);
835          window.location.href = '/logout';
836        }
837      });
838    }
839
840    const wishlistBtn = document.getElementById('wishlistBtn');
841    const notifBtn = document.getElementById('notifBtn');
842    
843    if (wishlistBtn) {
844      wishlistBtn.addEventListener('click', function(e) {
845        e.preventDefault();
846        alert('Fitur wishlist akan segera tersedia!');
847      });
848    }
849    
850    if (notifBtn) {
851      notifBtn.addEventListener('click', function(e) {
852        e.preventDefault();
853        alert('Fitur notifikasi akan segera tersedia!');
854      });
855    }
856  })();
857
858  // ========== MOBILE BOTTOM NAVIGATION ==========
859  (function initBottomNav() {
860    // Sync cart badge with bottom nav
861    function syncBottomCartBadge() {
862      const mainBadge = document.getElementById('cartCount');
863      const bottomBadge = document.getElementById('bottomCartCount');
864      if (mainBadge && bottomBadge) {
865        const count = mainBadge.textContent;
866        bottomBadge.textContent = count;
867        bottomBadge.style.display = parseInt(count) > 0 ? 'flex' : 'none';
868      }
869    }
870
871    // Sync compare badge with bottom nav
872    function syncBottomCompareBadge() {
873      const mainBadge = document.getElementById('compareCount');
874      const bottomBadge = document.getElementById('bottomCompareCount');
875      if (mainBadge && bottomBadge) {
876        const count = mainBadge.textContent;
877        bottomBadge.textContent = count;
878        bottomBadge.style.display = parseInt(count) > 0 ? 'flex' : 'none';
879      }
880    }
881
882    // Initial sync
883    syncBottomCartBadge();
884    syncBottomCompareBadge();
885
886    // Observe badge changes
887    const observer = new MutationObserver(function() {
888      syncBottomCartBadge();
889      syncBottomCompareBadge();
890    });
891
892    const cartBadge = document.getElementById('cartCount');
893    const compareBadge = document.getElementById('compareCount');
894    
895    if (cartBadge) observer.observe(cartBadge, { childList: true, characterData: true, subtree: true });
896    if (compareBadge) observer.observe(compareBadge, { childList: true, characterData: true, subtree: true });
897
898    // Bottom Cart Button
899    const bottomCartBtn = document.getElementById('bottomCartBtn');
900    if (bottomCartBtn) {
901      bottomCartBtn.addEventListener('click', function(e) {
902        e.preventDefault();
903        
904        const checkLogin = () => {
905          return window.isUserLoggedIn ? window.isUserLoggedIn() : false;
906        };
907        
908        if (checkLogin()) {
909          window.location.href = '/keranjang';
910        } else {
911          showCartLoginModal();
912        }
913      });
914    }
915
916    // Bottom Compare Button
917    const bottomCompareBtn = document.getElementById('bottomCompareBtn');
918    if (bottomCompareBtn) {
919      bottomCompareBtn.addEventListener('click', function(e) {
920        e.preventDefault();
921        
922        // Close chat widget if open
923        if (window.plazaChat && window.plazaChat.isWidgetOpen) {
924          window.plazaChat.closeWidget();
925        }
926        
927        const mainCompareBtn = document.getElementById('compareBtn');
928        if (mainCompareBtn) {
929          mainCompareBtn.click();
930        }
931      });
932    }
933
934    // Bottom Category Button - triggers mega menu
935    const bottomCategoryBtn = document.getElementById('bottomCategoryBtn');
936    if (bottomCategoryBtn) {
937      bottomCategoryBtn.addEventListener('click', function(e) {
938        e.preventDefault();
939        // Trigger desktop mega menu
940        const desktopTrigger = document.querySelector('.mm2-trigger:not(#bottomCategoryBtn)');
941        if (desktopTrigger) {
942          desktopTrigger.click();
943        }
944      });
945    }
946
947    // Bottom Login Button
948    const bottomLoginBtn = document.getElementById('bottomLoginBtn');
949    if (bottomLoginBtn) {
950      bottomLoginBtn.addEventListener('click', function(e) {
951        e.preventDefault();
952        window.location.href = '/login';
953      });
954    }
955
956    // Bottom Chat Button
957    const bottomChatBtn = document.getElementById('bottomChatBtn');
958    if (bottomChatBtn) {
959      bottomChatBtn.addEventListener('click', function(e) {
960        e.preventDefault();
961        
962        // Trigger chat widget (try multiple times if needed)
963        const triggerChat = () => {
964          const chatToggle = document.getElementById('chat-toggle-btn');
965          if (chatToggle) {
966            chatToggle.click();
967            return true;
968          }
969          return false;
970        };
971        
972        // Immediate attempt
973        if (!triggerChat()) {
974          // Retry after 100ms if not found
975          setTimeout(() => {
976            if (!triggerChat()) {
977              // Last resort: manually show popup
978              const popup = document.getElementById('chat-popup');
979              if (popup) {
980                popup.style.display = 'block';
981              }
982            }
983          }, 100);
984        }
985      });
986    }
987
988    // Sync chat unread badge
989    function syncBottomChatBadge() {
990      const chatBadge = document.getElementById('chat-unread-badge');
991      const bottomChatBadge = document.getElementById('bottomChatCount');
992      if (chatBadge && bottomChatBadge) {
993        const count = chatBadge.textContent;
994        bottomChatBadge.textContent = count;
995        bottomChatBadge.style.display = chatBadge.style.display;
996      }
997    }
998
999    // Observe chat badge changes
1000    const chatBadge = document.getElementById('chat-unread-badge');
1001    if (chatBadge) {
1002      observer.observe(chatBadge, { attributes: true, childList: true, characterData: true, subtree: true });
1003      syncBottomChatBadge();
1004    }
1005
1006    // Active state management based on current page
1007    function updateActiveState() {
1008      const currentPath = window.location.pathname;
1009      const bottomNavItems = document.querySelectorAll('.bottom-nav-item');
1010      
1011      bottomNavItems.forEach(item => {
1012        item.classList.remove('active');
1013        
1014        const itemId = item.id;
1015        const page = item.getAttribute('data-page');
1016        const href = item.getAttribute('href');
1017        
1018        // Check by ID for specific pages
1019        if (itemId === 'bottomHomeBtn' && currentPath === '/') {
1020          item.classList.add('active');
1021        } else if (itemId === 'bottomCartBtn' && (currentPath === '/keranjang' || currentPath === '/cart')) {
1022          item.classList.add('active');
1023        } else if (itemId === 'bottomProfileBtn' && currentPath.startsWith('/profile')) {
1024          item.classList.add('active');
1025        } else if (itemId === 'bottomCategoryBtn' && currentPath.startsWith('/kategori')) {
1026          item.classList.add('active');
1027        } else if (itemId === 'bottomCompareBtn' && currentPath === '/compare') {
1028          item.classList.add('active');
1029        } else if (itemId === 'bottomChatBtn' && currentPath === '/chat') {
1030          item.classList.add('active');
1031        }
1032        // Fallback: check by data-page attribute
1033        else if (page === 'home' && currentPath === '/') {
1034          item.classList.add('active');
1035        } else if (page === 'profile' && currentPath.startsWith('/profile')) {
1036          item.classList.add('active');
1037        }
1038        // Fallback: check by href
1039        else if (href && currentPath === href) {
1040          item.classList.add('active');
1041        }
1042      });
1043    }
1044
1045    // Update active state on load
1046    updateActiveState();
1047
1048    // Bottom nav always visible - auto-hide disabled for better UX
1049    // const bottomNav = document.querySelector('.bottom-nav');
1050    // if (bottomNav && window.innerWidth <= 640) {
1051    //   // Auto-hide feature disabled
1052    // }
1053  })();
1054  // Cart Login Modal Handler (Global scope)
1055  function showCartLoginModal() {
1056    const modal = document.getElementById('cartLoginModal');
1057    if (!modal) return;
1058    
1059    modal.classList.add('show');
1060    
1061    const confirmBtn = document.getElementById('cartLoginConfirm');
1062    const registerBtn = document.getElementById('cartRegisterBtn');
1063    const cancelBtn = document.getElementById('cartLoginCancel');
1064    
1065    const handleLogin = () => {
1066      window.location.href = '/login?return=' + encodeURIComponent('/keranjang');
1067    };
1068    
1069    const handleRegister = () => {
1070      window.location.href = '/register?return=' + encodeURIComponent('/keranjang');
1071    };
1072    
1073    const handleCancel = () => {
1074      modal.classList.remove('show');
1075      confirmBtn.removeEventListener('click', handleLogin);
1076      registerBtn.removeEventListener('click', handleRegister);
1077      cancelBtn.removeEventListener('click', handleCancel);
1078    };
1079    
1080    confirmBtn.removeEventListener('click', handleLogin);
1081    registerBtn.removeEventListener('click', handleRegister);
1082    cancelBtn.removeEventListener('click', handleCancel);
1083    
1084    confirmBtn.addEventListener('click', handleLogin);
1085    registerBtn.addEventListener('click', handleRegister);
1086    cancelBtn.addEventListener('click', handleCancel);
1087    
1088    modal.addEventListener('click', (e) => {
1089      if (e.target === modal) {
1090        handleCancel();
1091      }
1092    });
1093  }
1094  </script>
1094
1095  <!-- Product Compare Sidebar -->
1096  <div class="compare-sidebar" id="compareSidebar">
1097    <div class="compare-header">
1098      <h4 class="compare-title">
1099        <svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor">
1100          <path d="M9.5,3A6.5,6.5 0 0,1 16,9.5C16,11.11 15.41,12.59 14.44,13.73L14.71,14H15.5L20.5,19L19,20.5L14,15.5V14.71L13.73,14.44C12.59,15.41 11.11,16 9.5,16A6.5,6.5 0 0,1 3,9.5A6.5,6.5 0 0,1 9.5,3M9.5,5C7,5 5,7 5,9.5C5,12 7,14 9.5,14C12,14 14,12 14,9.5C14,7 12,5 9.5,5Z"/>
1101        </svg>
1102        Bandingkan Produk
1103        <span class="compare-count" id="compareCountSidebar">(0)</span>
1104      </h4>
1105      <button class="compare-close" id="compareClose" aria-label="Tutup">
1106        <svg width="18" height="18" viewBox="0 0 24 24" fill="currentColor">
1107          <path d="M18.3 5.7a1 1 0 0 0-1.4 0L12 10.6 7.1 5.7a1 1 0 1 0-1.4 1.4L10.6 12l-4.9 4.9a1 1 0 0 0 1.4 1.4L12 13.4l4.9 4.9a1 1 0 0 0 1.4-1.4L13.4 12l4.9-4.9a1 1 0 0 0 0-1.4z"/>
1108        </svg>
1109      </button>
1110    </div>
1111    
1112    <div class="compare-content">
1113      <div class="compare-empty" id="compareEmpty">
1114        <div class="empty-icon">
1115          <svg width="48" height="48" viewBox="0 0 24 24" fill="currentColor" opacity="0.3">
1116            <path d="M9.5,3A6.5,6.5 0 0,1 16,9.5C16,11.11 15.41,12.59 14.44,13.73L14.71,14H15.5L20.5,19L19,20.5L14,15.5V14.71L13.73,14.44C12.59,15.41 11.11,16 9.5,16A6.5,6.5 0 0,1 3,9.5A6.5,6.5 0 0,1 9.5,3M9.5,5C7,5 5,7 5,9.5C5,12 7,14 9.5,14C12,14 14,12 14,9.5C14,7 12,5 9.5,5Z"/>
1117          </svg>
1118        </div>
1119        <h5>Belum ada produk dipilih</h5>
1120        <p>Pilih produk yang ingin dibandingkan dengan klik tombol "Bandingkan Produk" di halaman produk.</p>
1121      </div>
1122      
1123      <div class="compare-list" id="compareList">
1124        <!-- Products will be populated here -->
1125      </div>
1126    </div>
1127    
1128    <div class="compare-actions" id="compareActions">
1129      <button class="btn btn-outline-danger btn-sm" id="compareClearAll">
1130        <svg width="16" height="16" viewBox="0 0 24 24" fill="currentColor">
1131          <path d="M19,6.41L17.59,5L12,10.59L6.41,5L5,6.41L10.59,12L5,17.59L6.41,19L12,13.41L17.59,19L19,17.59L13.41,12L19,6.41Z"/>
1132        </svg>
1133        Hapus Semua
1134      </button>
1135      <button class="btn btn-primary btn-sm" id="compareAnalyze" disabled>
1136        <svg width="16" height="16" viewBox="0 0 24 24" fill="currentColor">
1137          <path d="M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M12,4A8,8 0 0,1 20,12A8,8 0 0,1 12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4M11,16.5L18,9.5L16.59,8.09L11,13.67L7.91,10.59L6.5,12L11,16.5Z"/>
1138        </svg>
1139        Analisis AI
1140      </button>
1141    </div>
1142    
1143    <!-- AI Disclaimer in Sidebar -->
1144    <div class="compare-disclaimer">
1145      <div class="ai-disclaimer">
1146        <div class="disclaimer-text">
1147          <strong>💡 Catatan:</strong> Dengan berbagai pilihan yang tersedia, pengguna memiliki kebebasan untuk menentukan jenis permainan yang paling sesuai dengan preferensi masing-masing.
1148        </div>
1149      </div>
1150    </div>
1151  </div><link rel="stylesheet" href="https://www.die-schaukel.store/asset/css/pd-lightbox.css">
1152  <style>.paylater-promo{display:inline-flex;align-items:center;gap:8px;background:linear-gradient(135deg,#ffffff 0,#ffffff 100%);border:1px solid #000000;border-radius:8px;padding:8px 12px;font-size:13px;line-height:1.4;margin:8px 0}.paylater-promo-sm{padding:6px 10px;font-size:11px;gap:6px}.paylater-promo-md{padding:8px 12px;font-size:13px;gap:8px}.paylater-promo-lg{padding:10px 16px;font-size:14px;gap:10px}.paylater-icon{font-size:1.2em;flex-shrink:0}.paylater-text{display:flex;flex-direction:column;gap:2px}.paylater-text strong{color:#000000;font-weight:600}.paylater-text small{color:#000000;font-size:.85em;opacity:.9}.paylater-desktop-only{display:none}.paylater-mobile-only{display:flex}@media (min-width:641px){.paylater-desktop-only{display:flex}.paylater-mobile-only{display:none}}@media (max-width:640px){.paylater-promo{font-size:12px;padding:7px 10px}.paylater-promo-lg{font-size:13px;padding:8px 12px}}@media print{.paylater-promo{display:none!important}}.paylater-compact{display:inline-block;font-size:11px;font-weight:600;color:#0077ff;background:#d1fae5;padding:3px 8px;border-radius:4px;margin:6px 0 4px;line-height:1.3}@media (max-width:640px){.paylater-compact{font-size:10px;padding:2px 6px;margin:5px 0 3px}}@media print{.paylater-compact{display:none!important}}</style><style nonce="se3iyzEHMc9FQEB4wSyd0w==">.pd-voucher-minimal{margin:10px 0;display:flex;flex-direction:column;gap:6px}.pdv-min-item{display:flex;align-items:center;gap:8px;padding:0;height:32px;transition:all .2s ease}.pdv-min-hidden{display:none}.pdv-min-disabled{opacity:.5}.pdv-badge-btn{display:inline-flex;align-items:center;gap:8px;background:linear-gradient(135deg,#667eea 0,#764ba2 100%);border:none;border-radius:8px;padding:3px;
1152cursor:pointer;transition:all .2s ease;width:auto}.pdv-badge-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px rgba(102,126,234,.3)}.pdv-badge-btn:disabled{opacity:.6;cursor:not-allowed}.pdv-badge-icon{color:#fff;flex-shrink:0}.pdv-badge-text{font-size:14px;font-weight:700;color:#fff;white-space:nowrap}.pdv-badge-code{font-family:'Courier New',monospace;font-size:13px;font-weight:700;color:#fff;background:rgba(255,255,255,.2);padding:4px 8px;border-radius:4px;border:none;white-space:nowrap}.pdv-min-copy,.pdv-min-more{padding:4px 12px;font-size:12px;font-weight:600;border-radius:5px;border:1px solid #e2e8f0;background:#fff;color:#667eea;cursor:pointer;transition:all .2s ease;white-space:nowrap}.pdv-min-copy:hover:not(:disabled),.pdv-min-more:hover{background:#667eea;color:#fff;border-color:#667eea}.pdv-min-copy:disabled{opacity:.4;cursor:not-allowed}.pdv-min-copy.copied{background:#c52222;color:#fff;border-color:#c52222}.pdv-min-more{margin-left:auto}.modal-close{position:absolute;top:20px;right:20px;background:none;border:none;cursor:pointer;color:#64748b;padding:4px;transition:color .2s ease}.modal-close:hover{color:#1e293b}.modal-body{margin-bottom:8px}.voucher-modal-content{text-align:center}.voucher-modal-badge{display:inline-flex;flex-direction:row;align-items:center;gap:6px;background:linear-gradient(135deg,#667eea 0,#764ba2 100%);border-radius:10px;padding:8px 16px;margin-bottom:12px}.vmb-value{font-size:18px;font-weight:700;color:#fff;line-height:1}.vmb-label{font-size:18px;font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:.5px}.voucher-modal-code{font-family:'Courier New',monospace;font-size:14px;font-weight:700;color:#667eea;background:rgba(102,126,234,.1);padding:6px 12px;border-radius:6px;border:2px dashed rgba(102,126,234,.3);display:inline-block;margin-bottom:10px}.voucher-modal-name{font-size:14px;font-weight:600;color:#1e293b;margin-bottom:16px}.voucher-modal-details{text-align:left;background:#f8fafc;border-radius:8px;padding:12px;margin-bottom:16px}.vmd-item{display:flex;align-items:flex-start;gap:8px;padding:6px 0;font-size:13px;color:#64748b;border-bottom:1px solid #e2e8f0}.vmd-item:last-child{border-bottom:none}.vmd-item svg{color:#667eea;flex-shrink:0;margin-top:2px}.vmd-item strong{color:#1e293b}.modal-actions{padding:20px}.modal-btn-primary{background:linear-gradient(135deg,#667eea 0,#764ba2 100%);color:#fff}.modal-btn-primary:hover{opacity:.9;transform:translateY(-1px)}@media (max-width:640px){.pdv-min-item{gap:6px}.pdv-badge-btn{padding:3px;gap:6px}.pdv-badge-text{font-size:13px}.pdv-badge-code{font-size:12px;padding:3px 6px}.pdv-min-copy,.pdv-min-more{padding:3px 10px;font-size:11px}.modal-dialog{max-width:95%;margin:20px}.vmb-value{font-size:16px}.vmb-label{font-size:16px}.voucher-modal-code{font-size:13px;padding:5px 10px}}</style><style nonce="se3iyzEHMc9FQEB4wSyd0w==">.promo-endyear-mini-banner{display:flex;align-items:center;gap:12px;padding:12px 16px;background:rgba(255,255,255,.8);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:2px solid rgba(242,140,26,.2);border-radius:12px;margin:16px 0;box-shadow:0 4px 16px rgba(0,0,0,.08);transition:all .3s ease}.promo-endyear-mini-banner:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(0,0,0,.12);border-color:rgba(242,140,26,.4)}.pey-icon{font-size:32px;line-height:1;flex-shrink:0}.pey-content{flex:1;min-width:0}.pey-content strong{display:block;font-size:14px;font-weight:700;color:#F28C1A;margin-bottom:2px}.pey-content span{display:block;font-size:13px;color:#64748b;line-height:1.4}.pey-link{flex-shrink:0;padding:8px 16px;background:linear-gradient(135deg,#F28C1A,#FFB84D);color:#fff;text-decoration:none;font-size:13px;font-weight:700;border-radius:8px;white-space:nowrap;transition:all .2s ease;box-shadow:0 2px 8px rgba(242,140,26,.25)}.pey-link:hover{transform:translateX(2px);box-shadow:0 4px 12px rgba(242,140,26,.35)}@media(max-width:640px){.promo-endyear-mini-banner{flex-wrap:wrap;gap:8px;padding:10px 12px}.pey-icon{font-size:28px;align-self:flex-start}.pey-content{flex:1;min-width:0}.pey-content strong{font-size:12px}.pey-content span{font-size:11px;line-height:1.3}.pey-link{width:100%;flex-basis:100%;font-size:11px;padding:6px 12px;text-align:center}}@media print{.promo-endyear-mini-banner{display:none!important}}</style>
1153  <style nonce="se3iyzEHMc9FQEB4wSyd0w==">
1154  .pd-title-row{position:relative;margin-bottom:12px;padding-right:52px}.pd-title{margin:0!important}.pd-share-btn{position:absolute;top:0;right:0;width:40px;height:40px;
1154display:inline-flex;align-items:center;justify-content:center;border-radius:10px;border:1px solid #e2e8f0;background:#fff;color:#64748b;cursor:pointer;transition:all .2s ease;-webkit-tap-highlight-color:transparent}.pd-share-btn:hover{background:#f8fafc;border-color:#cbd5e1;color:#0f172a;transform:translateY(-1px)}.pd-share-btn:active{transform:translateY(0)}.pd-share-btn svg{display:block}
1155
1156  .pd-share-modal-overlay{position:fixed;inset:0;background:rgba(15,23,42,.75);backdrop-filter:blur(4px);z-index:99999;display:none;align-items:center;justify-content:center;padding:0;animation:fadeIn .2s ease}.pd-share-modal-overlay.show{display:flex}.pd-share-modal{background:#fff;border-radius:20px;box-shadow:0 25px 50px -12px rgba(0,0,0,.25);max-width:480px;width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;animation:slideUp .3s cubic-bezier(.16,1,.3,1)}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes slideUp{from{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}
1157
1158  .pd-share-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #f1f5f9}.pd-share-title{font-size:18px;font-weight:700;color:#0f172a;margin:0}.pd-share-close{width:32px;height:32px;border-radius:8px;border:0;background:transparent;color:#64748b;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease}.pd-share-close:hover{background:#f1f5f9;color:#0f172a}.pd-share-body{padding:24px;overflow-y:auto}
1159
1160  .pd-share-preview{display:flex;gap:12px;padding:16px;background:#f8fafc;border-radius:12px;margin-bottom:24px}.pd-share-preview-img{width:64px;height:64px;border-radius:8px;object-fit:cover;flex-shrink:0;border:1px solid #e2e8f0}.pd-share-preview-info{flex:1;min-width:0}.pd-share-preview-name{font-size:14px;font-weight:600;color:#0f172a;margin:0 0 4px 0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.pd-share-preview-price{font-size:16px;font-weight:700;color:#0077ff;margin:0}
1161
1162  .pd-share-label{font-size:13px;font-weight:600;color:#475569;margin:0 0 12px 0;text-transform:uppercase;letter-spacing:.5px}.pd-share-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:24px}.pd-share-option{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px 8px;border:1.5px solid #e2e8f0;border-radius:12px;background:#fff;cursor:pointer;transition:all .2s ease;text-decoration:none;color:inherit}.pd-share-option:hover{border-color:#94a3b8;background:#f8fafc;transform:translateY(-2px)}.pd-share-option:active{transform:translateY(0)}
1163
1164  .pd-share-icon{width:40px;height:40px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;position:relative}.pd-share-icon svg{width:24px;height:24px;display:block}.pd-share-icon-whatsapp{background:linear-gradient(135deg,#0077ff 0%,#3c3300 100%);color:#fff}.pd-share-icon-facebook{background:linear-gradient(135deg,#1877F2 0%,#0c63d4 100%);color:#fff}.pd-share-icon-twitter{background:linear-gradient(135deg,#1DA1F2 0%,#0d8bd9 100%);color:#fff}.pd-share-icon-telegram{background:linear-gradient(135deg,#0088cc 0%,#0077b3 100%);color:#fff}.pd-share-icon-email{background:linear-gradient(135deg,#EA4335 0%,#c5331f 100%);color:#fff}.pd-share-icon-copy{background:linear-gradient(135deg,#f1db63 0%,#e5d146 100%);color:#fff}.pd-share-icon-pdf{background:linear-gradient(135deg,#ef4444 0%,#dc2626 100%);color:#fff}.pd-share-name{font-size:12px;font-weight:600;color:#475569;text-align:center}
1165
1166  .pd-share-copy-section{background:#f8fafc;padding:16px;border-radius:12px}.pd-share-copy-input-wrap{display:flex;gap:8px}.pd-share-copy-input{flex:1;padding:12px 14px;border:1px solid #e2e8f0;border-radius:10px;font-size:14px;color:#0f172a;background:#fff;font-family:'Segoe UI',system-ui,sans-serif}.pd-share-copy-input:focus{outline:0;border-color:#0077ff;box-shadow:0 0 0 3px rgba(14,165,233,.1)}.pd-share-copy-btn{padding:12px 20px;border:0;border-radius:10px;background:linear-gradient(135deg,#e90e0e 0%,#0284c7 100%);color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap;display:inline-flex;align-items:center;gap:6px}.pd-share-copy-btn:hover{background:linear-gradient(135deg,#0284c7 0%,#0369a1 100%);transform:translateY(-1px);box-shadow:0 4px 12px rgba(14,165,233,.3)}
1166.pd-share-copy-btn:active{transform:translateY(0)}.pd-share-copy-btn svg{width:16px;height:16px}.pd-share-copy-btn.copied{background:linear-gradient(135deg,#c52222 0%,#a31616 100%);pointer-events:none}
1167
1168  @media(max-width:640px){.pd-share-modal{border-radius:20px 20px 0 0;margin-top:auto;max-height:85vh}.pd-share-grid{grid-template-columns:repeat(3,1fr)}.pd-share-header{padding:16px 20px}.pd-share-body{padding:20px}.pd-share-btn{width:36px;height:36px}.pd-share-btn svg{width:18px;height:18px}}@media(max-width:480px){.pd-share-grid{grid-template-columns:repeat(3,1fr);gap:10px}.pd-share-option{padding:12px 6px}.pd-share-icon{width:36px;height:36px}.pd-share-icon svg{width:20px;height:20px}.pd-share-name{font-size:11px}}
1169
1170  .mf-share{background:#fff;color:#fb923c;border:2px solid #fb923c;display:inline-flex;align-items:center;justify-content:center}.mf-share:active{transform:scale(.95)}.mf-share svg{display:block}
1171
1172  @media(max-width:640px){.pd-share-btn{display:none!important}}
1173
1174  .stock-badge.in{background:#e6f9ec;color:#801515;border-radius:999px;padding:4px 10px;font-weight:700}.stock-badge.out{background:#fee2e2;color:#b91c1c;border-radius:999px;padding:4px 10px;font-weight:700}
1175
1176  .stock-info-btn{--c:#e90e0e;--b:#bae6fd;--bg:#f0f9ff;--bg-h:#e0f2fe;--b-h:#e90e0e;margin-left:0;display:inline-flex;align-items:center;justify-content:center;gap:0.5rem;padding:4px 10px;border-radius:999px;border:1.5px solid var(--b);background:var(--bg);color:var(--c);cursor:pointer;font-size:12px;font-weight:600;transition:all .2s ease;-webkit-tap-highlight-color:transparent}.stock-info-btn:hover{background:var(--bg-h);border-color:var(--b-h);color:#0284c7;transform:translateY(-1px);box-shadow:0 2px 8px rgba(14,165,233,.15)}.stock-info-btn:active{transform:translateY(0)}.stock-info-btn:focus-visible{outline:0;box-shadow:0 0 0 3px rgba(14,165,233,.2)}.stock-info-btn svg{width:14px;height:14px;flex-shrink:0}.stock-info-btn .btn-text{white-space:nowrap}
1177
1178  .stock-popover{position:absolute;z-index:9999;min-width:280px;max-width:92vw;background:#0b1220;color:#eef3ff;border:1px solid rgba(255,255,255,.08);border-radius:14px;box-shadow:0 20px 40px rgba(12,12,20,.45);padding:12px 12px 8px;display:none}.stock-popover.show{display:block}.stock-popover::before{content:"";position:absolute;top:-8px;left:24px;width:14px;height:14px;background:#0b1220;border-left:1px solid rgba(255,255,255,.08);border-top:1px solid rgba(255,255,255,.08);transform:rotate(45deg)}.sp-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.sp-title{font-weight:800;font-size:14px}.sp-close{background:transparent;border:0;color:#98a2b3;cursor:pointer}
1179
1180  .sp-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.sp-item{display:grid;grid-template-columns:1fr auto 32px;column-gap:12px;align-items:center;padding:10px 10px;min-height:44px;border-radius:10px;background:rgba(255,255,255,.03)}.sp-left{display:flex;align-items:center;gap:10px}.sp-dot{width:10px;height:10px;border-radius:999px;background:var(--dot,#60a5fa);display:inline-block}.sp-label{font-weight:600;font-size:13px}
1181
1182
1183  .sp-qty{grid-column:2;justify-self:end;min-width:40px;text-align:right;font-weight:800;font-size:13px;color:#cfe4ff;font-variant-numeric:tabular-nums}
1184
1185  .sp-wa{
1186    grid-column:3; justify-self:end;
1187    width:32px; height:32px; min-width:32px; min-height:32px;
1188    box-sizing:border-box;
1189    padding:0; line-height:0; text-decoration:none; outline:0;
1190    display:inline-flex; align-items:center; justify-content:center;
1191    border-radius:999px; border:1px solid rgba(211, 37, 37, 0.6);  /* 1px untuk hasil “crisp” */
1192    background:rgba(37,211,102,.08); color:#d32525;
1193    transition:background-color .15s ease, border-color .15s ease, transform .05s ease;
1194    -webkit-tap-highlight-color:transparent;
1195  }
1196  .sp-wa:hover{background:rgba(37, 51, 211, 0.16);border-color:rgba(37, 104, 211, 0.75)}
1197  .sp-wa:active{transform:translateY(.5px) scale(.98)}
1198
1199  .sp-wa svg{width:18px;height:18px;display:block;vertical-align:middle}
1200  .stock-popover a{text-decoration:none}
1201
1202  #deskripsi img{max-width:200px!important;height:unset!important}@media(max-width:640px){.stock-popover{position:fixed;left:0;right:0;bottom:max(12px,env(safe-area-inset-bottom,12px));margin:0 10px;padding:14px 12px 10px;border-radius:16px}.stock-popover::before{display:none}.stock-info-btn{padding:4px 8px;gap:4px;border:0;background:transparent}.stock-info-btn:hover{background:transparent;box-shadow:none;transform:none}.stock-info-btn .btn-text{display:none}.stock-info-btn svg{width:16px;height:16px}.sp-item{grid-template-columns:1fr auto 36px}.sp-wa{width:36px;height:36px;min-width:36px;min-height:36px}.sp-wa svg{width:19px;height:19px}}
1203
1204  .stock-dot{position:absolute;bottom:8px;right:8px;width:8px;height:8px;border-radius:50%;box-shadow:0 1px 3px rgba(0,0,0,0.4);z-index:2;cursor:help}.stock-dot.ready{background:#10b981}.stock-dot.low{background:#f59e0b}.stock-dot.out{background:#ef4444}.stock-dot:hover{transform:scale(1.2);transition:transform 0.2s ease}@media(max-width:640px){.stock-dot{width:7px;height:7px;bottom:6px;right:6px}}
1205
1206  .pd-related-card .spec-chips{font-size:11px;color:#64748b;margin:4px 0 6px 0;line-height:1.3;font-weight:500}.pd-related-card .spec-chips .spec-divider{margin:0 4px;opacity:0.6}@media(max-width:640px){.pd-related-card .spec-chips{font-size:10px;margin:3px 0 5px 0}#deskripsi img{max-width:300px!important;height:unset!important;justify-self:center!important}}
1207
1208  .pwp-trigger-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 8px 4px;background:linear-gradient(135deg,#fbbf24 0%,#f59e0b 100%);color:#78350f;border-radius:6px;font-size:.65rem;font-weight:600;border:0}.pwp-trigger-badge svg{flex-shrink:0;width:12px;height:12px}
1209  .pwp-deals-section{margin:0;padding:12px;background:linear-gradient(135deg,#fef3c7 0%,#fde68a 100%);border-radius:12px;border:2px solid #fbbf24}.pwp-deals-header{display:flex;gap:10px;margin-bottom:10px}.pwp-icon{flex-shrink:0;color:#f59e0b;width:18px;height:18px}.pwp-text .pwp-title{margin:0 0 2px 0;font-size:14px;font-weight:700;color:#78350f}.pwp-text .pwp-subtitle{margin:0;font-size:11px;color:#92400e;opacity:0.9}.pwp-deals-loading{text-align:center;padding:40px 0;color:#92400e}.pwp-spinner{width:40px;height:40px;border:3px solid #fbbf24;border-top-color:#f59e0b;border-radius:50%;animation:spin 0.8s linear infinite;margin:0 auto 12px}@keyframes spin{to{transform:rotate(360deg)}}
1210  .pwp-deals-grid{display:flex;flex-direction:column;gap:6px}.pwp-deal-card{background:#fff;border-radius:6px;overflow:hidden;border:1px solid #fbbf24;display:flex;align-items:center;padding:8px;gap:10px}.pwp-deal-card:hover{background:#fef3c7}.pwp-deal-thumb{flex-shrink:0;width:50px;height:50px;background:#f8fafc;overflow:hidden;border-radius:4px}.pwp-deal-thumb img{width:100%;height:100%;object-fit:cover}.pwp-deal-badge{background:#dc2626;color:#fff;padding:2px 5px;border-radius:3px;font-size:9px;font-weight:700;margin-left:auto}.pwp-deal-info{flex:1;display:flex;flex-direction:column;gap:4px}.pwp-deal-name{font-size:12px;font-weight:600;color:#0f172a;margin:0;line-height:1.2}.pwp-deal-prices{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.pwp-deal-price{font-size:14px;font-weight:800;color:#dc2626;white-space:nowrap}.pwp-deal-original{font-size:11px;color:#64748b;text-decoration:line-through;white-space:nowrap}.pwp-cart-note{margin-top:8px;padding:6px 10px;background:#e0f2fe;border-left:2px solid#e90e0e;font-size:11px;color:#0c4a6e;border-radius:4px}
1211  @media(max-width:640px){.pwp-deals-section{margin:12px 0;padding:10px;border-radius:10px}.pwp-deals-header{gap:8px}.pwp-text .pwp-title{font-size:13px}.pwp-text .pwp-subtitle{font-size:10px}.pwp-deal-card{padding:6px;gap:8px}.pwp-deal-thumb{width:45px;height:45px}.pwp-deal-name{font-size:11px}.pwp-deal-price{font-size:13px}.pwp-deal-original{font-size:10px}}
1212
1213  .preorder-badge{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;background:linear-gradient(135deg,#8b5cf6 0%,#7c3aed 100%);color:#fff;border-radius:8px;font-size:13px;font-weight:700;border:0;box-shadow:0 2px 8px rgba(139,92,246,.25)}.preorder-badge svg{width:16px;height:16px;flex-shrink:0}.preorder-info{margin:12px 0;padding:14px;background:linear-gradient(135deg,#f5f3ff 0%,#ede9fe 100%);border:1.5px solid #c4b5fd;border-radius:12px}.preorder-info-header{display:flex;align-items:center;gap:8px;margin-bottom:10px}.preorder-info-icon{width:20px;height:20px;color:#7c3aed;flex-shrink:0}.preorder-info-title{font-size:14px;font-weight:700;color:#5b21b6;margin:0}.preorder-info-items{display:flex;flex-direction:column;gap:8px}.preorder-info-row{display:flex;align-items:center;justify-content:space-between;font-size:13px}.preorder-info-label{color:#6b21a8;font-weight:600}.preorder-info-value{color:#5b21b6;font-weight:700}.preorder-info-value.highlight{color:#dc2626;font-size:14px}.preorder-info-note{margin-top:10px;padding:8px 10px;background:#fef3c7;border-left:2px solid #f59e0b;font-size:12px;color:#78350f;border-radius:6px;line-height:1.4}@media(max-width:640px){.preorder-badge{font-size:12px;padding:5px 10px}.preorder-info{margin:10px 0;padding:12px}.preorder-info-title{font-size:13px}.preorder-info-row{font-size:12px}.preorder-info-note{font-size:11px;padding:6px 8px}}
1214  </style>
1215
1216  <div class="pd-sticky-header" id="pd-sticky-header"><div class="pd-sticky-header-container"><div class="pd-sticky-thumb">
1216<img src="https://veldrive.com/nAhfgJZ5/gopaysayur/img.webp" alt="GOPAYTOGEL" id="pd-sticky-thumb-img"></div><div class="pd-sticky-info"><h2 class="pd-sticky-title" id="pd-sticky-title">GOPAYTOGEL | Racikan Situs Toto 4D Resmi & Bandar Togel Online dengan Layanan 24 Jam</h2><div class="pd-sticky-price-row"><span class="pd-sticky-price" id="pd-sticky-price">Rp 10.000,-</span><span class="pd-sticky-price-original" id="pd-sticky-price-original">Rp 1.000.000</span><span class="pd-sticky-discount" id="pd-sticky-discount">-99.5%</span></div></div><div class="pd-sticky-actions"><button type="button" class="pd-sticky-share-btn" id="pd-sticky-share-btn" aria-label="Bagikan produk" title="Bagikan"><svg viewBox="0 0 24 24" width="16" height="16" aria-hidden="true"><path fill="currentColor" d="M18 16.08c-.76 0-1.44.3-1.96.77L8.91 12.7c.05-.23.09-.46.09-.7s-.04-.47-.09-.7l7.05-4.11c.54.5 1.25.81 2.04.81 1.66 0 3-1.34 3-3s-1.34-3-3-3-3 1.34-3 3c0 .24.04.47.09.7L8.04 9.81C7.5 9.31 6.79 9 6 9c-1.66 0-3 1.34-3 3s1.34 3 3 3c.79 0 1.5-.31 2.04-.81l7.12 4.16c-.05.21-.08.43-.08.65 0 1.61 1.31 2.92 2.92 2.92s2.92-1.31 2.92-2.92-1.31-2.92-2.92-2.92z"/></svg></button><button type="button" class="pd-sticky-btn pd-sticky-btn-chat" id="pd-sticky-chat"><svg viewBox="0 0 640 640" fill="currentColor" aria-hidden="true"><path d="M320 128C241 128 175.3 185.3 162.3 260.7C171.6 257.7 181.6 256 192 256L208 256C234.5 256 256 277.5 256 304L256 400C256 426.5 234.5 448 208 448L192 448C139 448 96 405 96 352L96 288C96 164.3 196.3 64 320 64C443.7 64 544 164.3 544 288L544 456.1C544 522.4 490.2 576.1 423.9 576.1L336 576L304 576C277.5 576 256 554.5 256 528C256 501.5 277.5 480 304 480L336 480C362.5 480 384 501.5 384 528L384 528L424 528C463.8 528 496 495.8 496 456L496 435.1C481.9 443.3 465.5 447.9 448 447.9L432 447.9C405.5 447.9 384 426.4 384 399.9L384 303.9C384 277.4 405.5 255.9 432 255.9L448 255.9C458.4 255.9 468.3 257.5 477.7 260.6C464.7 185.3 399.1 127.9 320 127.9z"/></svg>Tanya</button><button type="button" class="pd-sticky-btn pd-sticky-btn-cart" id="pd-sticky-add-cart" disabled>+ Keranjang</button><button type="button" class="pd-sticky-btn pd-sticky-btn-buy" id="pd-sticky-buy" disabled>Beli Sekarang</button></div></div></div>
1217
1218  <main class="product-single product-single--v3"><nav class="pd-breadcrumb" aria-label="breadcrumb"><a href="https://penthouse.gopaytogel.network/">GOPAYTOGEL</a><span>/</span><a href="https://gopaysayur.com/">GOPAY TOGEL</a><span>/</span><a href="https://gopaysayur.com/">GOPAYTOGEL LOGIN</a><span>/</span><a href="https://gopaysayur.com/">GOPAYTOGEL DAFTAR</a><span>/</span><a href="https://gopaysayur.com/">GOPAYTOGEL LINK </a><span>/</span><span class="current">GOPAYTOGEL | Racikan Situs Toto 4D Resmi & Bandar Togel Online dengan Layanan 24 Jam
1219
1220  </span></nav>
1221
1222  <div class="pd-top-layout"><section class="pd-media-card"><figure class="pd-main-image" id="pd-main-figure"><img id="pd-main-img" src="https://veldrive.com/nAhfgJZ5/gopaysayur/img.webp" alt="GOPAYTOGEL" data-slug="" loading="eager">
1223  </figure>
1224
1225  <div class="pd-mobile-slider-wrapper">
1226  <div class="pd-mobile-slider" id="pd-mobile-slider" aria-label="Galeri gambar (geser)"><div class="pd-mslide"><img src="https://veldrive.com/nAhfgJZ5/gopaysayur/img.webp" alt="GOPAYTOGEL" loading="eager"></div><div class="pd-mslide"><img src="https://veldrive.com/nAhfgJZ5/gopaysayur/img.webp" alt="GOPAYTOGEL" loading="lazy"></div><div class="pd-mslide"><img src="https://veldrive.com/nAhfgJZ5/gopaysayur/img.webp" alt="GOPAYTOGEL" loading="lazy"></div><div class="pd-mslide"><img src="https://veldrive.com/nAhfgJZ5/gopaysayur/img.webp" alt="GOPAYTOGEL" loading="lazy"></div><div class="pd-mslide"><img src="https://veldrive.com/nAhfgJZ5/gopaysayur/img.webp" alt="GOPAYTOGEL" loading="lazy"></div><div class="pd-mslide"><img src="https://veldrive.com/nAhfgJZ5/gopaysayur/img.webp" alt="GOPAYTOGEL" loading="lazy"></div></div><div class="pd-gallery-counter" id="pd-gallery-counter">1/6</div></div>
1227  <div class="pd-thumb-gallery" id="pd-thumb-gallery" aria-label="Galeri gambar produk"><button type="button" class="pd-thumb-btn active" data-full="https://veldrive.com/nAhfgJZ5/gop
1227aysayur/img.webp" data-alt="GOPAYTOGEL" data-slug="" aria-label="Gambar 1"><img src="https://veldrive.com/nAhfgJZ5/gopaysayur/img.webp" alt="GOPAYTOGEL" loading="lazy"></button><button type="button" class="pd-thumb-btn " data-full="https://veldrive.com/nAhfgJZ5/gopaysayur/img.webp" data-alt="GOPAYTOGEL" data-slug="https://veldrive.com/nAhfgJZ5/gopaysayur/img.webp" aria-label="Gambar 2"><img src="https://veldrive.com/nAhfgJZ5/gopaysayur/img.webp" alt="GOPAYTOGEL" loading="lazy"></button><button type="button" class="pd-thumb-btn " data-full="https://veldrive.com/nAhfgJZ5/gopaysayur/img.webp" data-alt="GOPAYTOGEL" data-slug="lenovo-legion-go-8asp2-83n0000rid-ryzen-z2-extreme-amd-radeon-graphics-eclipse-b-1761796941-223.webp" aria-label="Gambar 3"><img src="https://veldrive.com/nAhfgJZ5/gopaysayur/img.webp" alt="GOPAYTOGEL" loading="lazy"></button><button type="button" class="pd-thumb-btn " data-full="https://veldrive.com/nAhfgJZ5/gopaysayur/img.webp" data-alt="GOPAYTOGEL" data-slug="lenovo-legion-go-8asp2-83n0000rid-ryzen-z2-extreme-amd-radeon-graphics-eclipse-b-1761796941-776.webp" aria-label="Gambar 4"><img src="https://veldrive.com/nAhfgJZ5/gopaysayur/img.webp" alt="GOPAYTOGEL" loading="lazy"></button><button type="button" class="pd-thumb-btn " data-full="https://veldrive.com/nAhfgJZ5/gopaysayur/img.webp" data-alt="GOPAYTOGEL" data-slug="lenovo-legion-go-8asp2-83n0000rid-ryzen-z2-extreme-amd-radeon-graphics-eclipse-b-1761796941-634.webp" aria-label="Gambar 5"><img src="https://veldrive.com/nAhfgJZ5/gopaysayur/img.webp" alt="GOPAYTOGEL" loading="lazy"></button><button type="button" class="pd-thumb-btn " data-full="https://veldrive.com/nAhfgJZ5/gopaysayur/img.webp" data-alt="GOPAYTOGEL" data-slug="lenovo-legion-go-8asp2-83n0000rid-ryzen-z2-extreme-amd-radeon-graphics-eclipse-b-1761796941-892.webp" aria-label="Gambar 6"><img src="https://veldrive.com/nAhfgJZ5/gopaysayur/img.webp" alt="GOPAYTOGEL" loading="lazy"></button></div></section><section class="pd-info-card"><div id="pd-variant-combined" class="pd-variant-combined" hidden></div><div class="pd-title-row">
1228          <h1 class="pd-title" id="pd-title">GOPAYTOGEL | Racikan Situs Toto 4D Resmi & Bandar Togel Online dengan Layanan 24 Jam</h1><button type="button" class="pd-share-btn" id="pd-share-btn" aria-label="Bagikan produk" title="Bagikan"><svg viewBox="0 0 24 24" width="20" height="20" aria-hidden="true"><path fill="currentColor" d="M18 16.08c-.76 0-1.44.3-1.96.77L8.91 12.7c.05-.23.09-.46.09-.7s-.04-.47-.09-.7l7.05-4.11c.54.5 1.25.81 2.04.81 1.66 0 3-1.34 3-3s-1.34-3-3-3-3 1.34-3 3c0 .24.04.47.09.7L8.04 9.81C7.5 9.31 6.79 9 6 9c-1.66 0-3 1.34-3 3s1.34 3 3 3c.79 0 1.5-.31 2.04-.81l7.12 4.16c-.05.21-.08.43-.08.65 0 1.61 1.31 2.92 2.92 2.92s2.92-1.31 2.92-2.92-1.31-2.92-2.92-2.92z"/></svg></button></div>
1229  <div id="pd-price-anchor">
1230  </div>
1231  <div class="pd-price-qr-container">
1232          <div class="pd-price-block" id="pd-price-block">
1233                  <div class="pd-price-row">
1234                          <span class="pd-price-current" id="pd-price-current" >Rp 10.000</span>
1235                          <span class="pd-price-original" id="pd-price-original">Rp 50.000</span>
1236                          <span class="pd-discount-badge" id="pd-discount-badge">-90%</span></div>
1237                          <div class="pd-meta-row">
1238                                  <span class="sold-inline" id="pd-sold-inline" data-role="sold-chip">Terjual Terjual 2K</span>
1239                                  <span class="pwp-trigger-badge" id="pwp-trigger-badge" hidden>
1240                                          <svg width="14" height="14" viewBox="0 0 24 24" fill="currentColor">
1241                                                  <path d="M21.41 11.58l-9-9C12.05 2.22 11.55 2 11 2H4c-1.1 0-2 .9-2 2v7c0 .55.22 1.05.59 1.42l9 9c.36.36.86.58 1.41.58.55 0 1.05-.22 1.41-.59l7-7c.37-.36.59-.86.59-1.41 0-.55-.23-1.06-.59-1.42zM5.5 7C4.67 7 4 6.33 4 5.5S4.67 4 5.5 4 7 4.67 7 5.5 6.33 7 5.5 7z"/></svg>Bisa PWP</span></div>
1242                                                  <div class="pd-meta-inline"><span class="stock-badge out" id="pd-stock-badge">
1242GOPAYTOGEL</span>
1243                                                          <span class="sku">SKU: <span id="pd-sku">1S83N0880RID</span></span></div>
1244  <div class="paylater-promo paylater-promo-sm paylater-mobile-only">
1245      <span class="paylater-icon">💳</span>
1246      <span class="paylater-text">
1247          <strong>GOPAYTOGEL</strong>
1248          <small>SITUS TOTO</small>
1249      </span>
1250  </div>
1251
1252  <div class="stock-popover" id="pd-stock-popover" role="dialog" aria-hidden="true" aria-label="Informasi stok cabang"><div class="sp-head"><div class="sp-title">Stok Cabang</div><button type="button" class="sp-close" id="pd-stock-popover-close" aria-label="Tutup"><svg width="18" height="18" viewBox="0 0 24 24"><path fill="currentColor" d="M18.3 5.71L12 12.01l-6.3-6.3-1.4 1.41 6.3 6.3-6.3 6.3 1.4 1.41 6.3-6.3 6.3 6.3 1.41-1.41-6.3-6.3 6.3-6.3z"/></svg></button></div><ul class="sp-list">
1253  <li class="sp-item"><div class="sp-left"><span class="sp-dot" style="--dot:#60a5fa;"></span><span class="sp-label">Asia Mega Mas</span></div><span class="sp-qty" id="sp-qty-meg">0</span><a class="sp-wa" href="https://wa.me/6281380009898?text=Halo%2C%20saya%20ingin%20tanya%20stok%20di%20Asia%20Mega%20Mas%20untuk%20produk%20https%3A%2F%2Fplazait.co.id%2Fproduct%2Flenovo-legion-go-8asp2-83n0000rid-ryzen-z2-extreme-amd-radeon-graphics-eclipse-black" target="_blank" rel="noopener" aria-label="WhatsApp Asia Mega Mas"><svg class="ico-wa" viewBox="0 0 24 24" aria-hidden="true" focusable="false"><path fill="currentColor" d="M17.472 14.382c-.297-.149-1.758-.867-2.029-.967-.273-.099-.471-.148-.669.149-.198.297-.767.966-.94 1.164-.173.198-.347.223-.644.074-.297-.149-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.297-.347.446-.52.149-.173.198-.297.298-.495.099-.198.05-.372-.025-.521-.075-.149-.669-1.612-.916-2.206-.242-.579-.487-.5-.669-.51l-.57-.01c-.198 0-.52.074-.792.372s-1.04 1.016-1.04 2.479 1.065 2.876 1.213 3.074c.149.198 2.095 3.2 5.076 4.487.709.306 1.262.489 1.694.626.712.226 1.36.194 1.872.118.571-.085 1.758-.718 2.006-1.411.248-.694.248-1.29.173-1.411-.074-.123-.272-.198-.57-.347m-5.421 7.403h-.002a9.87 9.87 0 01-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86 9.86 0 01-1.51-5.263c.001-5.45 4.436-9.884 9.888-9.884 2.64 0 5.122 1.03 6.988 2.898a9.825 9.825 0 012.893 6.994c-.003 5.45-4.437 9.884-9.887 9.884m8.413-18.297A11.815 11.815 0 0012.05 0C5.495 0 .16 5.335.158 11.892c0 2.096.547 4.142 1.588 5.945L0 24l6.305-1.654a11.86 11.86 0 005.67 1.448h.005c6.554 0 11.89-5.335 11.893-11.893a11.821 11.821 0 00-3.485-8.413"/></svg></a></li>
1254                  
1255                      <li class="sp-item">
1256                        <div class="sp-left">
1257                          <span class="sp-dot" style="--dot:#d33434;"></span>
1258                          <span class="sp-label">Medan Fair</span>
1259                        </div>
1260                        <span class="sp-qty" id="sp-qty-mdf">0</span>
1261                        <a class="sp-wa"
1262                          href="https://wa.me/6285388992009?text=Halo%2C%20saya%20ingin%20tanya%20stok%20di%20Medan%20Fair%20untuk%20produk%20https%3A%2F%2Fplazait.co.id%2Fproduct%2Flenovo-legion-go-8asp2-83n0000rid-ryzen-z2-extreme-amd-radeon-graphics-eclipse-black"
1263                          target="_blank" rel="noopener" aria-label="WhatsApp Medan Fair">
1264                          <svg class="ico-wa" viewBox="0 0 24 24" aria-hidden="true" focusable="false">
1265                              <path fill="currentColor" d="M17.472 14.382c-.297-.149-1.758-.867-2.029-.967-.273-.099-.471-.148-.669.149-.198.297-.767.966-.94 1.164-.173.198-.347.223-.644.074-.297-.149-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.297-.347.446-.52.149-.173.198-.297.298-.495.099-.198.05-.372-.025-.521-.075-.149-.669-1.612-.916-2.206-.242-.579-.487-.5-.669-.51l-.57-.01c-.198 0-.52.074-.792.372s-1.04 1.016-1.04 2.479 1.065 2.876 1.213 3.074c.149.198 2.095 3.2 5.076 4.487.709.306 1.262.489 1.694.626.712.226 1.36.194 1.872.118.571-.085 1.758-.718 2.006-1.411.248-.694.248-1.29.173-1.411-.074-.123-.272-.198-.57-.347m-5.421 7.403h-.002a9.87 9.87 0 01-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86 9.86 0 01-1.51-5.263c.001-5.45 4.436-9.884 9.888-9.884 2.64 0 5.122 1.03 6.988 2.898a9.825 9.825 0 012.893 6.994c-.003 5.45-4.437 9.884-9.887 9.884m8.413-18.297A11.815 11.815 0 0012.05 0C5.495 0 .16 5.335.158 11.892c0 2.096.547 4.142 1.588 5.945L0 24l6.305-1.654a11.86 11.86 0 005.67 1.448h.005c6.554 0 11.89-5.335 11.893-11.893a11.821 11.821 0 00-3.485-8.413"/>
1266                            </svg>
1267                        </a>
1268                      </li>
1269                  
1270                      <li class="sp-item">
1271                        <div class="sp-left">
1272                          <span class="sp-dot" style="--dot:#f59e0b;"></span>
1273                          <span class="sp-label">Banda Aceh</span>
1274                        </div>
1275                        <span class="sp-qty" id="sp-qty-bda">0</span>
1276                        <a class="sp-wa"
1277                          href="https://wa.me/628116833411?text=Halo%2C%20saya%20ingin%20tanya%20stok%20di%20Banda%20Aceh%20untuk%20produk%20https%3A%2F%2Fplazait.co.id%2Fproduct%2Flenovo-legion-go-8asp2-83n0000rid-ryzen-z2-extreme-amd-radeon-graphics-eclipse-black"
1278                          target="_blank" rel="noopener" aria-label="WhatsApp Banda Aceh">
1279                          <svg class="ico-wa" viewBox="0 0 24 24" aria-hidden="true" focusable="false">
1280                              <path fill="currentColor" d="M17.472 14.382c-.297-.149-1.758-.867-2.029-.967-.273-.099-.471-.148-.669.149-.198.297-.767.966-.94 1.164-.173.198-.347.223-.644.074-.297-.149-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.297-.347.446-.52.149-.173.198-.297.298-.495.099-.198.05-.372-.025-.521-.075-.149-.669-1.612-.916-2.206-.242-.579-.487-.5-.669-.51l-.57-.01c-.198 0-.52.074-.792.372s-1.04 1.016-1.04 2.479 1.065 2.876 1.213 3.074c.149.198 2.095 3.2 5.076 4.487.709.306 1.262.489 1.694.626.712.226 1.36.194 1.872.118.571-.085 1.758-.718 2.006-1.411.248-.694.248-1.29.173-1.411-.074-.123-.272-.198-.57-.347m-5.421 7.403h-.002a9.87 9.87 0 01-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86 9.86 0 01-1.51-5.263c.001-5.45 4.436-9.884 9.888-9.884 2.64 0 5.122 1.03 6.988 2.898a9.825 9.825 0 012.893 6.994c-.003 5.45-4.437 9.884-9.887 9.884m8.413-18.297A11.815 11.815 0 0012.05 0C5.495 0 .16 5.335.158 11.892c0 2.096.547 4.142 1.588 5.945L0 24l6.305-1.654a11.86 11.86 0 005.67 1.448h.005c6.554 0 11.89-5.335 11.893-11.893a11.821 11.821 0 00-3.485-8.413"/>
1281                            </svg>
1282                        </a>
1283                      </li>
1284                    </ul>
1285                  </div>
1286
1287                              </div>
1288              <div class="pd-qr-print" style="display:none;"><div class="pd-qr-label">Scan untuk lihat produk:</div><img src="https://api.qrserver.com/v1/create-qr-code/?size=120x120&data=https%3A%2F%2Fplazait.co.id%2Fproduct%2Flenovo-legion-go-8asp2-83n0000rid-ryzen-z2-extreme-amd-radeon-graphics-eclipse-black" alt="QR Code" class="pd-qr-image"></div>
1289              </div>
1290                                      <div id="pd-variants-anchor"></div>
1291
1292                          
1293
1294              <div class="pd-compare-section">
1295                  <button type="button" class="pd-compare-btn" id="pd-compare-btn" data-product-id="325">
1296                      <svg class="compare-icon" width="18" height="18" viewBox="0 0 24 24" fill="currentColor">
1297                          <path d="M21,9L17,5V8H10V10H17V13M7,11L3,15L7,19V16H14V14H7V11Z"/>
1298                      </svg>
1299                      <span class="compare-text">Bandingkan Produk</span>
1300                      <span class="compare-remove" hidden>
1301                          <svg width="18" height="18" viewBox="0 0 24 24" fill="currentColor">
1302                              <path d="M19,6.41L17.59,5L12,10.59L6.41,5L5,6.41L10.59,12L5,17.59L6.41,19L12,13.41L17.59,19L19,17.59L13.41,12L19,6.41Z"/>
1303                          </svg>
1304                          Hapus dari Perbandingan
1305                      </span>
1306                  </button>
1307                  <div class="pd-compare-info">
1308                      <small class="compare-note" id="compare-note">Bandingkan hingga 5 produk dengan bantuan AI</small>
1309                  </div>
1310              </div>
1311              
1312              <div class="pd-short-desc"><p><strong>Informasi GOPAYTOGEL :</strong></p><ul><li>Minimal Deposit: Rp.10.000,-</li><li>Minimal Withdraw: Rp 50.000,-</li><li>Jenis Permainan: Togel Online, Toto Togel, Toto 4d</li><li>Metode Pembayaran: Bank, QRIS, E-Wallet, USDT</li><li>Mata Uang: IDR (Indonesian Rupiah)</li><li>Jam Operasional: 24 Jam Nonstop</li><li>Total Rating: 865.676.885</li><li>Rating: ⭐⭐⭐⭐⭐</li><li>Daftar Sekarang: <a href="https://penthouse.gopaytogel.network/">Klik Disini</a></li></ul></div>
1313  <div id="golden-slot-standalone-v3">
1314                          
1315              <div class="pwp-deals-section" id="pwp-deals-section" hidden data-product-id="325" data-variant-id="0" data-category-path="Komputer &amp; Laptop/Laptop/Gaming"><div class="pwp-deals-header"><svg class="pwp-icon" width="20" height="20" viewBox="0 0 24 24" fill="currentColor"><path d="M21.41 11.58l-9-9C12.05 2.22 11.55 2 11 2H4c-1.1 0-2 .9-2 2v7c0 .55.22 1.05.59 1.42l9 9c.36.36.86.58 1.41.58.55 0 1.05-.22 1.41-.59l7-7c.37-.36.59
1315-.86.59-1.41 0-.55-.23-1.06-.59-1.42zM5.5 7C4.67 7 4 6.33 4 5.5S4.67 4 5.5 4 7 4.67 7 5.5 6.33 7 5.5 7z"/></svg><div class="pwp-text"><h3 class="pwp-title">Penawaran Spesial PWP (Purchase with Purchase)</h3><p class="pwp-subtitle">Beli produk ini dan dapatkan produk pilihan dengan harga spesial</p></div></div><div class="pwp-deals-loading"><div class="pwp-spinner"></div><p>Memuat penawaran...</p></div><div class="pwp-deals-grid" id="pwp-deals-grid"></div><p class="pwp-cart-note">💡 Produk PWP dapat ditambahkan di halaman keranjang setelah produk ini dimasukkan</p></div>
1316          </section>
1317
1318          <aside class="pd-sidebar">
1319              <div class="pd-side-card pd-buy-card">
1320                  <form class="pd-buy-form" id="pd-buy-form" data-pid="325">
1321                      <input type="hidden" name="variant_id" id="pd-variant-id" value="0">
1322                      <div>
1323                          <label for="qty" class="qty-label">Qty</label>
1324                          <input type="number" id="qty" name="qty" value="0" min="1"
1325                                max="0"
1326                                disabled>
1327                      </div>
1328                      <div class="pd-actions">
1329                          <button type="submit" class="btn-add-cart" id="btn-add-cart" disabled>+ Keranjang</button>
1330                          <button type="button" class="btn-buy" id="btn-buy" data-id="278426" disabled >Beli</button>
1331                          <button type="button" class="btn-chat-icon" id="btn-chat-icon" aria-label="Tanya Produk" title="Tanya Produk"><svg viewBox="0 0 640 640" fill="currentColor"><path d="M320 128C241 128 175.3 185.3 162.3 260.7C171.6 257.7 181.6 256 192 256L208 256C234.5 256 256 277.5 256 304L256 400C256 426.5 234.5 448 208 448L192 448C139 448 96 405 96 352L96 288C96 164.3 196.3 64 320 64C443.7 64 544 164.3 544 288L544 456.1C544 522.4 490.2 576.1 423.9 576.1L336 576L304 576C277.5 576 256 554.5 256 528C256 501.5 277.5 480 304 480L336 480C362.5 480 384 501.5 384 528L384 528L424 528C463.8 528 496 495.8 496 456L496 435.1C481.9 443.3 465.5 447.9 448 447.9L432 447.9C405.5 447.9 384 426.4 384 399.9L384 303.9C384 277.4 405.5 255.9 432 255.9L448 255.9C458.4 255.9 468.3 257.5 477.7 260.6C464.7 185.3 399.1 127.9 320 127.9z"/></svg></button>
1332                                              </div>
1333                  </form>
1334                  <div class="paylater-promo paylater-promo-md paylater-desktop-only">
1335      <span class="paylater-icon">💳</span>
1336      <span class="paylater-text">
1337          <strong>Authorized GOPAYTOGEL</strong>
1338          <small>GOPAYTOGEL OFFICIAL</small>
1339      </span>
1340  </div>            </div>
1341
1342                          
1343                          <div class="pd-side-card qoala-banner-card">
1344                  <div class="qoala-banner">
1345                      <div class="qoala-banner-content">
1346                          <div class="qoala-icon">
1347                              <center><img src="https://veldrive.com/nAhfgJZ5/gopaysayur/gopaytogel-favicon.webp" alt="GOPAYTOGEL" class="qoala-shield-img"></center>
1348                          </div>
1349                          <div class="qoala-text">
1350                              <div class="qoala-title">GOPAYTOGEL</div>
1351                              <div class="qoala-subtitle">Verified</div>
1352                          </div>
1353                      </div>
1354                      <a href="https://gopaysayur.com/" class="qoala-cta"
1355                        data-ga-event="qoala_banner_click"
1356                        data-product-id="325"
1357                        data-product-name="GOPAYTOGEL"
1358                        data-category-path="Komputer &amp; Laptop/Laptop/Gaming" target="_blank">Info</a>
1359                  </div>
1360  <style>.qoala-banner-card{padding:0;overflow:hidden}.qoala-banner{background:linear-gradient(135deg, #ffffff 0%, #ffffff 100%);padding:12px 16px;display:flex;align-items:center;justify-content:space-between;color:rgb(0, 0, 0);text-decoration:none;min-height:60px}.qoala-banner-content{display:flex;align-items:center;gap:12px}.qoala-icon{display:flex;align-items:center;justify-content:center}.qoala-shield-img{width:36px;height:36px;object-fit:contain;opacity:0.9}.qoala-title{font-weight:600;font-size:14px;line-height:1.2}.qoala-subtitle{font-size:12px;opacity:0.9;line-height:1.2}.qoala-cta{background:rgba(255,255,255,0.2);color:rgb(0, 0, 0);padding:6px 12px;border-radius:6px;font-size:12px;font-weight:600;text-decoration:none;transition:background 0.2s ease;border:1px solid rgba(255,255,255,0.3)}.qoala-cta:hover{background:rgba(255,255,255,0.3);color:rgb(0, 0, 0)}@media(max-width:768px){.qoala-banner{padding:10px 12px}.qoala-title{font-size:17px}.qoala-subtitle{font-size:11px}}</style>
1361              </div>
1362              
1363                          <div class="pd-side-card pd-installment-card2"
1364                  id="inst-card"
1365                  data-base-price="20789000"
1366                  data-zero-smart="0">
1367                  <div class="inst-head">
1368                      <h3>Promo & Fitur GOPAYTOGEL</h3>
1369                                      </div>
1370
1371                  <div class="inst-bank-tabs" role="tablist" aria-label="Bank">
1372                      <button type="button" class="bank-tab active" data-bank="Lucky Draw" aria-selected="true">Lucky Draw</button>
1373                      <button type="button" class="bank-tab" data-bank="gopaytogel" aria-selected="false">gopaytogel</button>
1374                      <button type="button" class="bank-tab" data-bank="Situs Toto" aria-selected="false">Situs Toto</button>
1375                  </div>
1376
1377                  <ul class="inst-month-list" id="inst-month-list" aria-label="Daftar cicilan per bulan"></ul>
1378                  <div class="inst-note" id="inst-zero-note" style="display:none;">
1378Bonus 10% Cashback Slot Online & Live Game</div>
1379                  <div class="inst-disclaimer">Angka estimasi. Bisa berasumsi sesuai kebijakan bank / penyedia.</div>
1380              </div>
1381              </div>
1382
1383
1384<div class="article-aura-wrap">
1385
1386  <div class="article-pro">
1387
1388    <div class="article-pro-fx" aria-hidden="true">
1389      <span class="article-watermark">GOPAYTOGEL</span>
1390
1391      <span class="article-cube ac1"></span>
1392      <span class="article-cube ac2"></span>
1393      <span class="article-cube ac3"></span>
1394
1395      <span class="article-gem ag1"></span>
1396      <span class="article-gem ag2"></span>
1397      <span class="article-gem ag3"></span>
1398
1399      <span class="article-leaf al1">👑</span>
1400      <span class="article-leaf al2">⚡</span>
1401      <span class="article-leaf al3">👑</span>
1402    </div>
1403
1404
1405    <div class="article-pro-head">
1406      <span class="article-pro-kicker">GOPAYTOGEL ARTIKEL</span>
1407      <span class="article-pro-line"></span>
1408    </div>
1409
1410
1411    <div class="article-pro-panel panel-left">
1412
1413      <span class="article-pro-number">01</span>
1414
1415      <p>
1416        <a href="https://gopaysayur.com/">GOPAYTOGEL</a> dikembangkan sebagai platform yang menyatukan berbagai informasi Toto 4D dalam tampilan
1417        yang lebih teratur dan mudah dipahami. Pengguna dapat menemukan pembaruan result, pilihan pasaran,
1418        serta informasi pendukung lainnya tanpa harus berpindah-pindah halaman. Penyajian kontennya dibuat
1419        ringkas agar pembaca bisa langsung menemukan informasi yang sedang dicari.
1420      </p>
1421
1422
1423    </div>
1424
1425
1426    <div class="article-energy" aria-hidden="true">
1427      <span></span>
1428    </div>
1429
1430
1431    <div class="article-pro-panel panel-right">
1432
1433      <span class="article-pro-number">02</span>
1434
1435      <p>Selain menyediakan informasi yang diperbarui secara berkala, GOPAYTOGEL juga menghadirkan layanan
1436        yang tersedia selama 24 jam untuk membantu kebutuhan pengguna kapan saja. Fokus utamanya bukan
1437        sekadar menampilkan banyak pilihan, tetapi menjaga agar setiap informasi tetap jelas, tersusun rapi, dan
1438        nyaman dibaca. Dengan pendekatan tersebut, brand ini berusaha membangun pengalaman yang lebih
1439        konsisten bagi pengguna yang mengikuti informasi <a href="https://gopaysayur.com/">TOTO 4D</a> secara rutin. 
1440      </p>
1441
1442    </div>
1443
1444
1445    <div class="article-pro-footer">
1446
1447      <span>GOPAYTOGEL</span>
1448      <i></i>
1449
1450      <span>TOTO 4D</span>
1451      <i></i>
1452
1453      <span>GOPAYTOGEL ARTIKEL</span>
1454
1455    </div>
1456
1457  </div>
1458
1459</div>
1460
1461<style>
1462
1463/* ======================================================
1464   OUTER AURA WRAPPER
1465====================================================== */
1466
1467.article-aura-wrap{
1468    position:relative;
1469
1470    width:min(1100px,calc(100% - 30px));
1471
1472    margin:60px auto;
1473
1474    animation:
1475        articleOuterAura 3.8s ease-in-out infinite alternate;
1476
1477    filter:
1478        drop-shadow(0 0 8px rgba(32, 65, 232, 0.25))
1479        drop-shadow(0 0 22px rgba(32, 105, 232, 0.14))
1480        drop-shadow(0 0 38px rgba(65, 255, 255, 0.08));
1481}
1482
1483
1484/* aura kiri */
1485
1486.article-aura-wrap::before{
1487    content:"";
1488
1489    position:absolute;
1490
1491    left:-70px;
1492    top:12%;
1493
1494    width:150px;
1495    height:76%;
1496
1497    z-index:-1;
1498
1499    border-radius:50%;
1500
1501    background:
1502        radial-gradient(
1503            ellipse,
1504            rgba(76, 228, 255, 0.44) 0%,
1505            rgba(32, 132, 232, 0.2) 32%,
1506            rgba(35, 32, 232, 0.06) 58%,
1507            transparent 76%
1508        );
1509
1510    filter:blur(26px);
1511
1512    animation:
1513        articleAuraLeft 4.2s ease-in-out infinite alternate;
1514}
1515
1516
1517/* aura kanan gold */
1518
1519.article-aura-wrap::after{
1520    content:"";
1521
1522    position:absolute;
1523
1524    right:-75px;
1525    top:14%;
1526
1527    width:155px;
1528    height:72%;
1529
1530    z-index:-1;
1531
1532    border-radius:50%;
1533
1534    background:
1535        radial-gradient(
1536            ellipse,
1537            rgba(255,237,140,.40) 0%,
1538            rgba(255,215,65,.18) 32%,
1539            rgba(255,190,30,.06) 58%,
1540            transparent 76%
1541        );
1542
1543    filter:blur(27px);
1544
1545    animation:
1546        articleAuraRight 4.8s ease-in-out infinite alternate;
1547}
1548
1549
1550/* ======================================================
1551   ARTICLE MAIN
1552====================================================== */
1553
1554.article-pro{
1555    position:relative;
1556
1557    width:100%;
1558
1559    margin:0;
1560
1561    padding:
1562        31px 34px 28px;
1563
1564    box-sizing:border-box;
1565
1566    overflow:hidden;
1567
1568    color:#fff;
1569
1570    font-family:
1571        "Trebuchet MS",
1572        "Segoe UI",
1573        Arial,
1574        sans-serif;
1575
1576    clip-path:
1577        polygon(
1578            32px 0,
1579            calc(100% - 74px) 0,
1580            100% 42px,
1581            100% calc(100% - 30px),
1582            calc(100% - 32px) 100%,
1583            72px 100%,
1584            0 calc(100% - 43px),
1585            0 30px
1586        );
1587
1588    background:
1589        radial-gradient(
1590            circle at 10% 10%,
1591            rgba(43, 33, 238, 0.15),
1592            transparent 30%
1593        ),
1594        radial-gradient(
1595            circle at 90% 90%,
1596            rgba(255,216,75,.075),
1597            transparent 30%
1598        ),
1599        linear-gradient(
1600            145deg,
1601            #06150b,
1602            #020905 62%,
1603            #0a120d
1604        );
1605
1606    border:
1607        1px solid rgba(86, 60, 255, 0.22);
1608
1609    box-shadow:
1610        0 25px 60px rgba(0,0,0,.42),
1611        inset 0 0 45px rgba(32,232,106,.04);
1612
1613    isolation:isolate;
1614}
1615
1616
1617/* ======================================================
1618   BACKGROUND GRID
1619====================================================== */
1620
1621.article-pro::before{
1622    content:"";
1623
1624    position:absolute;
1625
1626    inset:0;
1627
1628    z-index:-5;
1629
1630    opacity:.08;
1631
1632    background-image:
1633        linear-gradient(
1634            rgba(71, 99, 255, 0.17) 1px,
1635            transparent 1px
1636        ),
1637        linear-gradient(
1638            90deg,
1639            rgba(71, 74, 255, 0.17) 1px,
1640            transparent 1px
1641        );
1642
1643    background-size:
1644        45px 45px;
1645
1646    mask-image:
1647        linear-gradient(
1648            transparent,
1649            #000 20%,
1650            #000 80%,
1651            transparent
1652        );
1653}
1654
1655
1656/* ======================================================
1657   INNER EMERALD AURA
1658====================================================== */
1659
1660.article-pro::after{
1661    content:"";
1662
1663    position:absolute;
1664
1665    width:620px;
1666    height:620px;
1667
1668    left:50%;
1669    top:50%;
1670
1671    z-index:-4;
1672
1673    transform:
1674        translate(-50%,-50%);
1675
1676    border-radius:50%;
1677
1678    background:
1679        radial-gradient(
1680            circle,
1681            rgba(32, 62, 232, 0.12),
1682            transparent 68%
1683        );
1684
1685    filter:
1686        blur(25px);
1687
1688    animation:
1689        articleAmbient 6s ease-in-out infinite alternate;
1690}
1691
1692
1693/* ======================================================
1694   HEADER
1695====================================================== */
1696
1697.article-pro-head{
1698    position:relative;
1699
1700    z-index:8;
1701
1702    display:flex;
1703
1704    align-items:center;
1705
1706    gap:14px;
1707
1708    margin-bottom:24px;
1709}
1710
1711
1712.article-pro-kicker{
1713    color:#70c6ff;
1714
1715    font-size:9px;
1716
1717    font-weight:900;
1718
1719    letter-spacing:3px;
1720
1721    white-space:nowrap;
1722
1723    text-shadow:
1724        0 0 8px rgba(32, 82, 232, 0.34);
1725}
1726
1727
1728.article-pro-line{
1729    position:relative;
1730
1731    width:100%;
1732    height:1px;
1733
1734    overflow:hidden;
1735
1736    background:
1737        rgba(255,255,255,.07);
1738}
1739
1740
1741.article-pro-line::after{
1742    content:"";
1743
1744    position:absolute;
1745
1746    left:-35%;
1747
1748    width:35%;
1749    height:100%;
1750
1751    background:
1752        linear-gradient(
1753            90deg,
1754            transparent,
1755            #35b2ff,
1756            #756bff,
1757            #35c6ff,
1758            transparent
1759        );
1760
1761    box-shadow:
1762        0 0 8px rgba(53, 198, 255, 0.5);
1763
1764    animation:
1765        articleHeadLine 4s linear infinite;
1766}
1767
1768
1769/* ======================================================
1770   PARAGRAPH PANEL
1771====================================================== */
1772
1773.article-pro-panel{
1774    position:relative;
1775
1776    z-index:8;
1777
1778    width:91%;
1779
1780    padding:
1781        25px 27px 24px 68px;
1782
1783    box-sizing:border-box;
1784
1785    overflow:hidden;
1786
1787    background:
1788        linear-gradient(
1789            120deg,
1790            rgba(16, 72, 80, 0.72),
1791            rgba(4, 3, 16, 0.96) 62%,
1792            rgba(50,37,6,.24)
1793        );
1794
1795    border:
1796        1px solid rgba(78, 155, 255, 0.14);
1797
1798    box-shadow:
1799        0 10px 25px rgba(0,0,0,.27),
1800        inset 0 0 25px rgba(32, 65, 232, 0.045);
1801
1802    transition:
1803        transform .35s ease,
1804        border-color .35s ease,
1805        box-shadow .35s ease;
1806}
1807
1808
1809/* left panel */
1810
1811.panel-left{
1812    margin-right:auto;
1813
1814    clip-path:
1815        polygon(
1816            0 0,
1817            calc(100% - 25px) 0,
1818            100% 50%,
1819            calc(100% - 25px) 100%,
1820            0 100%,
1821            16px 50%
1822        );
1823}
1824
1825
1826/* right panel */
1827
1828.panel-right{
1829    margin-left:auto;
1830
1831    clip-path:
1832        polygon(
1833            25px 0,
1834            100% 0,
1835            calc(100% - 16px) 50%,
1836            100% 100%,
1837            25px 100%,
1838            0 50%
1839        );
1840}
1841
1842
1843.panel-left:hover{
1844    transform:
1845        translateX(9px);
1846}
1847
1848
1849.panel-right:hover{
1850    transform:
1851        translateX(-9px);
1852}
1853
1854
1855.article-pro-panel:hover{
1856    border-color:
1857        rgba(255,218,75,.32);
1858
1859    box-shadow:
1860        0 15px 32px rgba(0,0,0,.35),
1861        0 0 16px rgba(32, 232, 232, 0.11),
1862        0 0 25px rgba(255,216,70,.05),
1863        inset 0 0 28px rgba(32, 232, 229, 0.065);
1864}
1865
1866
1867/* ======================================================
1868   PANEL TOP ENERGY LINE
1869====================================================== */
1870
1871.article-pro-panel::before{
1872    content:"";
1873
1874    position:absolute;
1875
1876    top:0;
1877    left:-45%;
1878
1879    width:35%;
1880    height:2px;
1881
1882    background:
1883        linear-gradient(
1884            90deg,
1885            transparent,
1886            #ffffff,
1887            #39f2ff,
1888            #ffe16a,
1889            transparent
1890        );
1891
1892    box-shadow:
1893        0 0 9px rgba(57, 199, 255, 0.55);
1894
1895    animation:
1896        panelEdgeLight 5s linear infinite;
1897}
1898
1899
1900/* glass sweep */
1901
1902.article-pro-panel::after{
1903    content:"";
1904
1905    position:absolute;
1906
1907    top:-30%;
1908    left:-50%;
1909
1910    width:22%;
1911    height:160%;
1912
1913    background:
1914        linear-gradient(
1915            90deg,
1916            transparent,
1917            rgba(255,255,255,.09),
1918            transparent
1919        );
1920
1921    transform:
1922        rotate(18deg);
1923
1924    animation:
1925        articlePanelShine 7s ease-in-out infinite;
1926
1927    pointer-events:none;
1928}
1929
1930
1931/* ======================================================
1932   NUMBER
1933====================================================== */
1934
1935.article-pro-number{
1936    position:absolute;
1937
1938    left:20px;
1939    top:50%;
1940
1941    width:36px;
1942    height:36px;
1943
1944    display:flex;
1945
1946    align-items:center;
1947    justify-content:center;
1948
1949    transform:
1950        translateY(-50%)
1951        rotate(-7deg);
1952
1953    border-radius:
1954        50% 15% 50% 15%;
1955
1956    background:
1957        linear-gradient(
1958            145deg,
1959            #32d7ed,
1960            #07105d
1961        );
1962
1963    border:
1964        1px solid rgba(255,216,71,.44);
1965
1966    color:#ffe16a;
1967
1968    font-size:9px;
1969
1970    font-weight:900;
1971
1972    box-shadow:
1973        0 0 8px rgba(32, 185, 232, 0.2),
1974        0 0 14px rgba(255,216,70,.06);
1975}
1976
1977
1978/* ======================================================
1979   TEXT
1980====================================================== */
1981
1982.article-pro p{
1983    position:relative;
1984
1985    z-index:4;
1986
1987    margin:0;
1988
1989    color:#edf3ef !important;
1990
1991    font-size:14.5px;
1992
1993    line-height:1.9;
1994
1995    text-align:left;
1996}
1997
1998
1999.article-pro a,
2000.article-pro a:visited{
2001    color:#8af5ff !important;
2002
2003    font-weight:900;
2004
2005    text-decoration:none;
2006
2007    text-shadow:
2008        0 0 7px rgba(44, 51, 242, 0.2);
2009
2010    transition:
2011        color .22s ease,
2012        text-shadow .22s ease;
2013}
2014
2015
2016.article-pro a:hover{
2017    color:#ffe16b !important;
2018
2019    text-shadow:
2020        0 0 9px rgba(255,225,107,.36);
2021}
2022
2023
2024/* ======================================================
2025   CENTER ENERGY
2026====================================================== */
2027
2028.article-energy{
2029    position:relative;
2030
2031    z-index:8;
2032
2033    width:100%;
2034    height:48px;
2035}
2036
2037
2038.article-energy::before{
2039    content:"";
2040
2041    position:absolute;
2042
2043    left:50%;
2044    top:0;
2045    bottom:0;
2046
2047    width:2px;
2048
2049    transform:
2050        translateX(-50%);
2051
2052    background:
2053        linear-gradient(
2054            transparent,
2055            #20b3e8,
2056            #ffe168,
2057            #20b3e8,
2058            transparent
2059        );
2060
2061    box-shadow:
2062        0 0 8px rgba(32, 185, 232, 0.45);
2063
2064    opacity:.58;
2065}
2066
2067
2068.article-energy span{
2069    position:absolute;
2070
2071    left:50%;
2072    top:50%;
2073
2074    width:12px;
2075    height:12px;
2076
2077    transform:
2078        translate(-50%,-50%)
2079        rotate(45deg);
2080
2081    background:
2082        linear-gradient(
2083            145deg,
2084            #b6ffd0,
2085            #37eae4
2086        );
2087
2088    border:
2089        1px solid rgba(255,227,105,.60);
2090
2091    box-shadow:
2092        0 0 8px #20b3e8,
2093        0 0 18px rgba(32, 65, 232, 0.45),
2094        0 0 25px rgba(255,216,70,.12);
2095
2096    animation:
2097        articleEnergyNode 1.6s ease-in-out infinite alternate;
2098}
2099
2100
2101/* ======================================================
2102   BACKGROUND EFFECTS
2103====================================================== */
2104
2105.article-pro-fx{
2106    position:absolute;
2107
2108    inset:0;
2109
2110    z-index:2;
2111
2112    overflow:hidden;
2113
2114    pointer-events:none;
2115}
2116
2117
2118/* ======================================================
2119   GHOST GOPAYTOGEL
2120====================================================== */
2121
2122.article-watermark{
2123    position:absolute;
2124
2125    left:50%;
2126    top:50%;
2127
2128    transform:
2129        translate(-50%,-50%)
2130        scale(.75);
2131
2132    color:#80f7ff;
2133
2134    font-size:61px;
2135
2136    font-weight:1000;
2137
2138    letter-spacing:11px;
2139
2140    white-space:nowrap;
2141
2142    opacity:0;
2143
2144    text-shadow:
2145        0 0 8px rgba(55, 125, 255, 0.3),
2146        0 0 22px rgba(55, 95, 255, 0.13);
2147
2148    animation:
2149        articleBrandGhost 12s ease-in-out infinite;
2150}
2151
2152
2153/* ======================================================
2154   EMERALD CUBES
2155====================================================== */
2156
2157.article-cube{
2158    position:absolute;
2159
2160    width:80px;
2161    height:80px;
2162
2163    border:
2164        1px solid rgba(65, 62, 255, 0.13);
2165
2166    background:
2167        linear-gradient(
2168            145deg,
2169            rgba(32, 85, 232, 0.04),
2170            rgba(255,255,255,.008)
2171        );
2172
2173    box-shadow:
2174        inset 0 0 20px rgba(32, 105, 232, 0.025);
2175
2176    transform:
2177        rotate(30deg);
2178}
2179
2180
2181.ac1{
2182    left:5%;
2183    top:17%;
2184
2185    animation:
2186        articleCubeOne 12s ease-in-out infinite alternate;
2187}
2188
2189
2190.ac2{
2191    right:6%;
2192    top:48%;
2193
2194    width:120px;
2195    height:120px;
2196
2197    animation:
2198        articleCubeTwo 15s ease-in-out infinite alternate;
2199}
2200
2201
2202.ac3{
2203    left:45%;
2204    bottom:2%;
2205
2206    width:58px;
2207    height:58px;
2208
2209    animation:
2210        articleCubeOne 10s ease-in-out infinite alternate-reverse;
2211}
2212
2213
2214/* ======================================================
2215   EMERALD GEMS
2216====================================================== */
2217
2218.article-gem{
2219    position:absolute;
2220
2221    width:24px;
2222    height:34px;
2223
2224    clip-path:
2225        polygon(
2226            50% 0,
2227            90% 21%,
2228            100% 60%,
2229            50% 100%,
2230            0 60%,
2231            10% 21%
2232        );
2233
2234    background:
2235        linear-gradient(
2236            145deg,
2237            #d8ffe4,
2238            #4beaea 29%,
2239            #0b4698 62%,
2240            #070543
2241        );
2242
2243    opacity:.22;
2244
2245    filter:
2246        drop-shadow(
2247            0 0 7px rgba(32, 49, 232, 0.22)
2248        );
2249
2250    animation:
2251        articleGemFloat 8s ease-in-out infinite alternate;
2252}
2253
2254
2255.ag1{
2256    right:13%;
2257    top:16%;
2258}
2259
2260
2261.ag2{
2262    left:10%;
2263    bottom:13%;
2264
2265    width:18px;
2266    height:26px;
2267
2268    animation-delay:-4s;
2269}
2270
2271
2272.ag3{
2273    left:54%;
2274    top:9%;
2275
2276    width:15px;
2277    height:22px;
2278
2279    animation-delay:-6s;
2280}
2281
2282
2283/* ======================================================
2284   WIND LEAVES
2285====================================================== */
2286
2287.article-leaf{
2288    position:absolute;
2289
2290    left:-70px;
2291
2292    font-size:20px;
2293
2294    opacity:.34;
2295
2296    filter:
2297        brightness(1.18)
2298        drop-shadow(
2299            0 0 5px rgba(38, 42, 255, 0.2)
2300        );
2301
2302    animation:
2303        articleLeafWind 11s linear infinite;
2304}
2305
2306
2307.al1{
2308    top:25%;
2309    animation-delay:-2s;
2310}
2311
2312
2313.al2{
2314    top:58%;
2315    animation-delay:-7s;
2316}
2317
2318
2319.al3{
2320    top:79%;
2321    animation-delay:-4s;
2322}
2323
2324
2325/* ======================================================
2326   FOOTER
2327====================================================== */
2328
2329.article-pro-footer{
2330    position:relative;
2331
2332    z-index:8;
2333
2334    display:flex;
2335
2336    align-items:center;
2337    justify-content:center;
2338
2339    gap:14px;
2340
2341    margin-top:26px;
2342
2343    padding-top:18px;
2344
2345    border-top:
2346        1px solid rgba(255,255,255,.065);
2347
2348    color:#79e6ff;
2349
2350    font-size:9px;
2351
2352    font-weight:900;
2353
2354    letter-spacing:1.6px;
2355}
2356
2357
2358.article-pro-footer i{
2359    width:5px;
2360    height:5px;
2361
2362    border-radius:50%;
2363
2364    background:#ffe169;
2365
2366    box-shadow:
2367        0 0 7px rgba(255,225,105,.5);
2368
2369    animation:
2370        footerDotPulse 1.3s ease-in-out infinite alternate;
2371}
2372
2373
2374/* ======================================================
2375   OUTER AURA ANIMATIONS
2376====================================================== */
2377
2378@keyframes articleOuterAura{
2379
2380    from{
2381        filter:
2382            drop-shadow(0 0 7px rgba(32, 79, 232, 0.22))
2383            drop-shadow(0 0 18px rgba(32, 62, 232, 0.11))
2384            drop-shadow(0 0 30px rgba(255,215,65,.05));
2385    }
2386
2387    to{
2388        filter:
2389            drop-shadow(0 0 15px rgba(58, 235, 255, 0.5))
2390            drop-shadow(0 0 34px rgba(32, 82, 232, 0.24))
2391            drop-shadow(0 0 58px rgba(255,215,65,.15));
2392    }
2393}
2394
2395
2396@keyframes articleAuraLeft{
2397
2398    from{
2399        opacity:.28;
2400
2401        transform:
2402            translateX(-9px)
2403            scaleY(.84);
2404    }
2405
2406    to{
2407        opacity:.78;
2408
2409        transform:
2410            translateX(8px)
2411            scaleY(1.08);
2412    }
2413}
2414
2415
2416@keyframes articleAuraRight{
2417
2418    from{
2419        opacity:.23;
2420
2421        transform:
2422            translateX(8px)
2423            scaleY(.88);
2424    }
2425
2426    to{
2427        opacity:.72;
2428
2429        transform:
2430            translateX(-7px)
2431            scaleY(1.07);
2432    }
2433}
2434
2435
2436/* ======================================================
2437   INTERNAL ANIMATIONS
2438====================================================== */
2439
2440@keyframes articleAmbient{
2441
2442    from{
2443        opacity:.32;
2444
2445        transform:
2446            translate(-50%,-50%)
2447            scale(.88);
2448    }
2449
2450    to{
2451        opacity:1;
2452
2453        transform:
2454            translate(-50%,-50%)
2455            scale(1.15);
2456    }
2457}
2458
2459
2460@keyframes articleHeadLine{
2461
2462    from{
2463        left:-35%;
2464    }
2465
2466    to{
2467        left:115%;
2468    }
2469}
2470
2471
2472@keyframes panelEdgeLight{
2473
2474    from{
2475        left:-45%;
2476    }
2477
2478    to{
2479        left:120%;
2480    }
2481}
2482
2483
2484@keyframes articlePanelShine{
2485
2486    0%,
2487    65%{
2488        left:-50%;
2489        opacity:0;
2490    }
2491
2492    73%{
2493        opacity:1;
2494    }
2495
2496    100%{
2497        left:140%;
2498        opacity:0;
2499    }
2500}
2501
2502
2503@keyframes articleEnergyNode{
2504
2505    from{
2506        transform:
2507            translate(-50%,-50%)
2508            rotate(45deg)
2509            scale(.75);
2510
2511        opacity:.45;
2512    }
2513
2514    to{
2515        transform:
2516            translate(-50%,-50%)
2517            rotate(225deg)
2518            scale(1.18);
2519
2520        opacity:1;
2521    }
2522}
2523
2524
2525@keyframes articleBrandGhost{
2526
2527    0%,
2528    62%{
2529        opacity:0;
2530
2531        transform:
2532            translate(-50%,-50%)
2533            scale(.7);
2534
2535        filter:
2536            blur(6px);
2537    }
2538
2539    70%{
2540        opacity:.05;
2541    }
2542
2543    76%{
2544        opacity:.15;
2545
2546        transform:
2547            translate(-50%,-50%)
2548            scale(1);
2549
2550        filter:
2551            blur(0);
2552    }
2553
2554    82%{
2555        opacity:.08;
2556
2557        letter-spacing:18px;
2558    }
2559
2560    88%{
2561        opacity:0;
2562
2563        transform:
2564            translate(-50%,-50%)
2565            scale(1.2);
2566
2567        filter:
2568            blur(7px);
2569
2570        letter-spacing:25px;
2571    }
2572
2573    100%{
2574        opacity:0;
2575    }
2576}
2577
2578
2579@keyframes articleCubeOne{
2580
2581    from{
2582        transform:
2583            translate(0,0)
2584            rotate(25deg);
2585
2586        opacity:.14;
2587    }
2588
2589    to{
2590        transform:
2591            translate(30px,-42px)
2592            rotate(80deg);
2593
2594        opacity:.38;
2595    }
2596}
2597
2598
2599@keyframes articleCubeTwo{
2600
2601    from{
2602        transform:
2603            translate(0,0)
2604            rotate(-20deg);
2605
2606        opacity:.12;
2607    }
2608
2609    to{
2610        transform:
2611            translate(-40px,45px)
2612            rotate(55deg);
2613
2614        opacity:.31;
2615    }
2616}
2617
2618
2619@keyframes articleGemFloat{
2620
2621    from{
2622        transform:
2623            translateY(0)
2624            rotate(-5deg)
2625            scale(.82);
2626
2627        opacity:.12;
2628    }
2629
2630    to{
2631        transform:
2632            translateY(-30px)
2633            rotate(10deg)
2634            scale(1.08);
2635
2636        opacity:.31;
2637    }
2638}
2639
2640
2641@keyframes articleLeafWind{
2642
2643    0%{
2644        left:-70px;
2645
2646        opacity:0;
2647
2648        transform:
2649            translateY(0)
2650            rotate(0deg);
2651    }
2652
2653    10%{
2654        opacity:.36;
2655    }
2656
2657    35%{
2658        transform:
2659            translateY(-20px)
2660            rotate(170deg);
2661    }
2662
2663    62%{
2664        transform:
2665            translateY(18px)
2666            rotate(350deg);
2667    }
2668
2669    82%{
2670        transform:
2671            translateY(-14px)
2672            rotate(500deg);
2673    }
2674
2675    100%{
2676        left:108%;
2677
2678        opacity:0;
2679
2680        transform:
2681            translateY(10px)
2682            rotate(650deg);
2683    }
2684}
2685
2686
2687@keyframes footerDotPulse{
2688
2689    from{
2690        opacity:.35;
2691
2692        transform:scale(.7);
2693    }
2694
2695    to{
2696        opacity:1;
2697
2698        transform:scale(1.2);
2699    }
2700}
2701
2702
2703/* ======================================================
2704   MOBILE
2705====================================================== */
2706
2707@media(max-width:760px){
2708
2709    .article-aura-wrap{
2710        width:calc(100% - 14px);
2711
2712        margin:38px auto;
2713    }
2714
2715
2716    .article-aura-wrap::before,
2717    .article-aura-wrap::after{
2718        width:90px;
2719
2720        filter:blur(22px);
2721
2722        opacity:.42;
2723    }
2724
2725
2726    .article-pro{
2727        padding:
2728            23px 12px 22px;
2729
2730        clip-path:
2731            polygon(
2732                18px 0,
2733                calc(100% - 38px) 0,
2734                100% 25px,
2735                100% calc(100% - 18px),
2736                calc(100% - 20px) 100%,
2737                35px 100%,
2738                0 calc(100% - 25px),
2739                0 18px
2740            );
2741    }
2742
2743
2744    .article-pro-panel{
2745        width:100%;
2746
2747        padding:
2748            17px 14px 17px 52px;
2749    }
2750
2751
2752    .panel-left,
2753    .panel-right{
2754        clip-path:
2755            polygon(
2756                0 0,
2757                calc(100% - 13px) 0,
2758                100% 50%,
2759                calc(100% - 13px) 100%,
2760                0 100%,
2761                7px 50%
2762            );
2763    }
2764
2765
2766    .panel-left:hover,
2767    .panel-right:hover{
2768        transform:
2769            translateX(3px);
2770    }
2771
2772
2773    .article-pro-number{
2774        left:13px;
2775
2776        width:29px;
2777        height:29px;
2778    }
2779
2780
2781    .article-pro p{
2782        font-size:12px;
2783
2784        line-height:1.75;
2785    }
2786
2787
2788    .article-energy{
2789        height:35px;
2790    }
2791
2792
2793    .article-watermark{
2794        font-size:29px;
2795
2796        letter-spacing:4px;
2797    }
2798
2799
2800    .ac2,
2801    .ac3,
2802    .ag3{
2803        display:none;
2804    }
2805
2806
2807    .article-pro-footer{
2808        flex-wrap:wrap;
2809
2810        gap:8px;
2811
2812        font-size:8px;
2813    }
2814}
2815
2816
2817/* ======================================================
2818   REDUCED MOTION
2819====================================================== */
2820
2821@media(prefers-reduced-motion:reduce){
2822
2823    .article-aura-wrap,
2824    .article-aura-wrap::before,
2825    .article-aura-wrap::after,
2826    .article-pro::after,
2827    .article-pro-line::after,
2828    .article-pro-panel::before,
2829    .article-pro-panel::after,
2830    .article-energy span,
2831    .article-watermark,
2832    .article-cube,
2833    .article-gem,
2834    .article-leaf,
2835    .article-pro-footer i{
2836        animation:none !important;
2837    }
2838}
2839</style>
2840
2841
2842
2843
2844  <div class="gt-faq-aura">
2845
2846  <!-- =========================
2847       FAQ UTAMA
2848  ========================== -->
2849  <div class="gt-faq-world">
2850
2851    <!-- BACKGROUND BRAND EFFECT -->
2852    <div class="gt-brand-burst" aria-hidden="true">
2853      <strong>GOPAYTOGEL</strong>
2854
2855      <span class="burst-leaf bl1">👑</span>
2856      <span class="burst-leaf bl2">⚡</span>
2857      <span class="burst-leaf bl3">👑</span>
2858      <span class="burst-leaf bl4">⚡</span>
2859      <span class="burst-leaf bl5">👑</span>
2860      <span class="burst-leaf bl6">⚡</span>
2861      <span class="burst-leaf bl7">👑</span>
2862      <span class="burst-leaf bl8">⚡</span>
2863    </div>
2864
2865
2866    <!-- DECOR CUBES -->
2867    <span class="gt-cube cube1"></span>
2868    <span class="gt-cube cube2"></span>
2869    <span class="gt-cube cube3"></span>
2870
2871    <span class="gt-gem gem1"></span>
2872    <span class="gt-gem gem2"></span>
2873
2874
2875    <!-- HEADER -->
2876    <header class="gt-faq-header">
2877
2878      <span class="gt-faq-overline">
2879        GOPAYTOGEL FAQ
2880      </span>
2881
2882      <h2>
2883        GOPAYTOGEL | Racikan Situs Toto 4D Resmi & Bandar Togel
2884        Online dengan Layanan 24 Jam
2885      </h2>
2886
2887      <p>
2888        Informasi akses, pasaran, transaksi, layanan,
2889        pendaftaran dan penggunaan GOPAYTOGEL.
2890      </p>
2891
2892    </header>
2893
2894
2895    <!-- FAQ ROUTE -->
2896    <div class="gt-faq-route">
2897
2898      <!-- FAQ 1 -->
2899      <details class="gt-faq-node left-node" open>
2900        <summary>
2901          <span class="node-number">01</span>
2902
2903          <span class="node-text">
2904            Apa itu GOPAYTOGEL?
2905          </span>
2906
2907          <span class="node-trigger"></span>
2908        </summary>
2909
2910        <div class="node-answer">
2911          GOPAYTOGEL merupakan platform yang menyajikan informasi Toto 4D, berbagai pilihan pasaran togel online, result terbaru, serta layanan yang tersedia sepanjang hari.
2912        </div>
2913      </details>
2914
2915
2916      <!-- FAQ 2 -->
2917      <details class="gt-faq-node right-node">
2918        <summary>
2919          <span class="node-number">02</span>
2920
2921          <span class="node-text">
2922            Apa saja informasi yang tersedia di GOPAYTOGEL?
2923          </span>
2924
2925          <span class="node-trigger"></span>
2926        </summary>
2927
2928        <div class="node-answer">
2929          Pengguna dapat menemukan informasi mengenai Toto 4D, jadwal pasaran, result terbaru, pilihan permainan, serta berbagai informasi pendukung yang diperbarui secara berkala.
2930        </div>
2931      </details>
2932
2933
2934      <!-- FAQ 3 -->
2935      <details class="gt-faq-node left-node">
2936        <summary>
2937          <span class="node-number">03</span>
2938
2939          <span class="node-text">
2940            Apakah layanan GOPAYTOGEL tersedia selama 24 jam?
2941          </span>
2942
2943          <span class="node-trigger"></span>
2944        </summary>
2945
2946        <div class="node-answer">
2947          GOPAYTOGEL menyediakan layanan 24 jam agar pengguna dapat memperoleh informasi dan bantuan pada berbagai waktu sesuai kebutuhan.
2948        </div>
2949      </details>
2950
2951
2952      <!-- FAQ 4 -->
2953      <details class="gt-faq-node right-node">
2954        <summary>
2955          <span class="node-number">04</span>
2956
2957          <span class="node-text">
2958            Bagaimana cara melihat result Toto 4D di GOPAYTOGEL?
2959          </span>
2960
2961          <span class="node-trigger"></span>
2962        </summary>
2963
2964        <div class="node-answer">
2965          Result Toto 4D dapat dilihat melalui bagian informasi hasil yang tersedia pada halaman GOPAYTOGEL. Data disusun berdasarkan pasaran agar lebih mudah dibaca.
2966        </div>
2967      </details>
2968
2969
2970      <!-- FAQ 5 -->
2971      <details class="gt-faq-node left-node">
2972        <summary>
2973          <span class="node-number">05</span>
2974
2975          <span class="node-text">
2976            Apakah GOPAYTOGEL menyediakan berbagai pilihan pasaran?
2977          </span>
2978
2979          <span class="node-trigger"></span>
2980        </summary>
2981
2982        <div class="node-answer">
2983          Ya, GOPAYTOGEL menampilkan berbagai kategori pasaran dalam satu halaman sehingga pengguna dapat melihat informasi sesuai pasaran yang ingin dicari.
2984        </div>
2985      </details>
2986
2987
2988      <!-- FAQ 6 -->
2989      <details class="gt-faq-node right-node">
2990        <summary>
2991          <span class="node-number">06</span>
2992
2993          <span class="node-text">
2994            Apa keunggulan layanan GOPAYTOGEL?
2995          </span>
2996
2997          <span class="node-trigger"></span>
2998        </summary>
2999
3000        <div class="node-answer">
3001          GOPAYTOGEL mengutamakan penyajian informasi yang tersusun rapi, pembaruan result, pilihan pasaran yang beragam, serta dukungan layanan selama 24 jam.
3002        </div>
3003      </details>
3004
3005    </div>
3006    <!-- END FAQ ROUTE -->
3007
3008  </div>
3009  <!-- END gt-faq-world -->
3010
3011
3012  <!-- =========================
3013       EFEK DI LUAR TABLE
3014       JANGAN MASUKKAN KE gt-faq-world
3015  ========================== -->
3016  <div class="gt-outer-fx" aria-hidden="true">
3017
3018    <!-- PETIR -->
3019    <span class="outer-lightning ol1"></span>
3020    <span class="outer-lightning ol2"></span>
3021    <span class="outer-lightning ol3"></span>
3022    <span class="outer-lightning ol4"></span>
3023
3024    <!-- BINTANG -->
3025    <span class="outer-star os1">✦</span>
3026    <span class="outer-star os2">★</span>
3027    <span class="outer-star os3">✧</span>
3028    <span class="outer-star os4">✦</span>
3029    <span class="outer-star os5">★</span>
3030    <span class="outer-star os6">✧</span>
3031    <span class="outer-star os7">✦</span>
3032    <span class="outer-star os8">★</span>
3033
3034  </div>
3035
3036</div>
3037<!-- END gt-faq-aura -->
3038
3039
3040<style>
3041
3042/* =========================================================
3043   GLOBAL FAQ WORLD
3044========================================================= */
3045
3046.gt-faq-world{
3047    position:relative;
3048
3049    width:min(1120px,calc(100% - 28px));
3050
3051    margin:45px auto;
3052
3053    padding:
3054        36px 36px 42px;
3055
3056    box-sizing:border-box;
3057
3058    overflow:hidden;
3059
3060    color:#fff;
3061
3062    font-family:
3063        "Trebuchet MS",
3064        "Segoe UI",
3065        Arial,
3066        sans-serif;
3067
3068    /* sudut dipotong */
3069    clip-path:
3070        polygon(
3071            28px 0,
3072            calc(100% - 65px) 0,
3073            100% 38px,
3074            100% calc(100% - 27px),
3075            calc(100% - 28px) 100%,
3076            65px 100%,
3077            0 calc(100% - 40px),
3078            0 28px
3079        );
3080
3081    background:
3082        radial-gradient(
3083            circle at 15% 15%,
3084            rgba(30, 79, 255, 0.13),
3085            transparent 30%
3086        ),
3087        radial-gradient(
3088            circle at 85% 85%,
3089            rgba(255,215,80,.07),
3090            transparent 30%
3091        ),
3092        linear-gradient(
3093            145deg,
3094            #06140a,
3095            #020905 62%,
3096            #0b130d
3097        );
3098
3099    border:
3100        1px solid rgba(56, 225, 255, 0.22);
3101
3102    box-shadow:
3103        0 25px 60px rgba(0,0,0,.42),
3104        inset 0 0 55px rgba(32,232,106,.035);
3105
3106    isolation:isolate;
3107}
3108
3109
3110/* background grid */
3111.gt-faq-world::before{
3112    content:"";
3113
3114    position:absolute;
3115    inset:0;
3116
3117    z-index:-4;
3118
3119    opacity:.10;
3120
3121    background-image:
3122        linear-gradient(
3123            rgba(77, 101, 255, 0.12) 1px,
3124            transparent 1px
3125        ),
3126        linear-gradient(
3127            90deg,
3128            rgba(77, 113, 255, 0.12) 1px,
3129            transparent 1px
3130        );
3131
3132    background-size:
3133        42px 42px;
3134
3135    mask-image:
3136        linear-gradient(
3137            transparent,
3138            #000 20%,
3139            #000 80%,
3140            transparent
3141        );
3142}
3143
3144
3145/* moving green atmosphere */
3146.gt-faq-world::after{
3147    content:"";
3148
3149    position:absolute;
3150
3151    width:550px;
3152    height:550px;
3153
3154    left:50%;
3155    top:50%;
3156
3157    z-index:-3;
3158
3159    transform:
3160        translate(-50%,-50%);
3161
3162    border-radius:50%;
3163
3164    background:
3165        radial-gradient(
3166            circle,
3167            rgba(32,232,106,.12),
3168            transparent 68%
3169        );
3170
3171    filter:blur(30px);
3172
3173    animation:
3174        gtAmbientBreath 6s ease-in-out infinite alternate;
3175}
3176
3177
3178/* =========================================================
3179   HEADER
3180========================================================= */
3181
3182.gt-faq-header{
3183    position:relative;
3184
3185    z-index:10;
3186
3187    max-width:900px;
3188
3189    margin:
3190        0 auto 38px;
3191
3192    padding:
3193        0 20px 24px;
3194
3195    text-align:center;
3196}
3197
3198
3199.gt-faq-overline{
3200    display:inline-flex;
3201
3202    align-items:center;
3203
3204    gap:8px;
3205
3206    margin-bottom:9px;
3207
3208    color:#69f0ff;
3209
3210    font-size:9px;
3211    font-weight:900;
3212
3213    letter-spacing:3px;
3214}
3215
3216
3217.gt-faq-overline::before,
3218.gt-faq-overline::after{
3219    content:"";
3220
3221    width:28px;
3222    height:1px;
3223
3224    background:
3225        linear-gradient(
3226            90deg,
3227            transparent,
3228            #40fffc
3229        );
3230}
3231
3232
3233.gt-faq-overline::after{
3234    transform:scaleX(-1);
3235}
3236
3237
3238.gt-faq-header h2{
3239    margin:0 0 10px;
3240
3241    color:#fff !important;
3242
3243    font-size:27px;
3244    font-weight:900;
3245
3246    line-height:1.4;
3247
3248    text-shadow:
3249        0 2px 5px rgba(0,0,0,.65);
3250}
3251
3252
3253.gt-faq-header p{
3254    margin:0;
3255
3256    color:#aebeb3 !important;
3257
3258    font-size:13px;
3259
3260    line-height:1.7;
3261}
3262
3263
3264/* =========================================================
3265   ROUTE
3266========================================================= */
3267
3268.gt-faq-route{
3269    position:relative;
3270
3271    z-index:8;
3272
3273    display:flex;
3274
3275    flex-direction:column;
3276
3277    gap:15px;
3278}
3279
3280
3281/* vertical energy route */
3282
3283.gt-faq-route::before{
3284    content:"";
3285
3286    position:absolute;
3287
3288    left:50%;
3289    top:15px;
3290    bottom:15px;
3291
3292    width:2px;
3293
3294    transform:
3295        translateX(-50%);
3296
3297    background:
3298        linear-gradient(
3299            transparent,
3300            #20b3e8,
3301            #ffe161,
3302            #20b3e8,
3303            transparent
3304        );
3305
3306    box-shadow:
3307        0 0 7px rgba(32, 42, 232, 0.45);
3308
3309    opacity:.42;
3310}
3311
3312
3313/* moving particle */
3314
3315.gt-faq-route::after{
3316    content:"";
3317
3318    position:absolute;
3319
3320    left:50%;
3321    top:0;
3322
3323    width:8px;
3324    height:8px;
3325
3326    transform:
3327        translateX(-50%);
3328
3329    border-radius:50%;
3330
3331    background:#caffd9;
3332
3333    box-shadow:
3334        0 0 6px #fff,
3335        0 0 15px #20b3e8;
3336
3337    animation:
3338        routeParticle 6s linear infinite;
3339}
3340
3341
3342/* =========================================================
3343   FAQ NODE
3344========================================================= */
3345
3346.gt-faq-node{
3347    position:relative;
3348
3349    width:calc(50% - 28px);
3350
3351    box-sizing:border-box;
3352
3353    overflow:hidden;
3354
3355    background:
3356        linear-gradient(
3357            120deg,
3358            rgba(15, 31, 71, 0.74),
3359            rgba(3,15,7,.96)
3360        );
3361
3362    border:
3363        1px solid rgba(79, 79, 255, 0.15);
3364
3365    box-shadow:
3366        0 8px 22px rgba(0,0,0,.25);
3367
3368    transition:
3369        transform .3s ease,
3370        border-color .3s ease,
3371        box-shadow .3s ease;
3372}
3373
3374
3375/* kiri punya bentuk khusus */
3376.left-node{
3377    align-self:flex-start;
3378
3379    clip-path:
3380        polygon(
3381            0 0,
3382            calc(100% - 18px) 0,
3383            100% 50%,
3384            calc(100% - 18px) 100%,
3385            0 100%,
3386            12px 50%
3387        );
3388}
3389
3390
3391/* kanan punya bentuk kebalikan */
3392.right-node{
3393    align-self:flex-end;
3394
3395    clip-path:
3396        polygon(
3397            18px 0,
3398            100% 0,
3399            calc(100% - 12px) 50%,
3400            100% 100%,
3401            18px 100%,
3402            0 50%
3403        );
3404}
3405
3406
3407.gt-faq-node:hover{
3408    border-color:
3409        rgba(255,217,78,.36);
3410
3411    box-shadow:
3412        0 12px 26px rgba(0,0,0,.33),
3413        0 0 15px rgba(32,232,106,.08);
3414}
3415
3416
3417.left-node:hover{
3418    transform:
3419        translateX(7px);
3420}
3421
3422
3423.right-node:hover{
3424    transform:
3425        translateX(-7px);
3426}
3427
3428
3429/* traveling edge light */
3430
3431.gt-faq-node::before{
3432    content:"";
3433
3434    position:absolute;
3435
3436    left:-45%;
3437    top:0;
3438
3439    width:30%;
3440    height:2px;
3441
3442    background:
3443        linear-gradient(
3444            90deg,
3445            transparent,
3446            #ffffff,
3447            #42c6ff,
3448            #ffe161,
3449            transparent
3450        );
3451
3452    box-shadow:
3453        0 0 8px rgba(46, 98, 255, 0.5);
3454
3455    animation:
3456        edgeTravel 4.5s linear infinite;
3457}
3458
3459
3460/* =========================================================
3461   QUESTION
3462========================================================= */
3463
3464.gt-faq-node summary{
3465    position:relative;
3466
3467    z-index:4;
3468
3469    display:grid;
3470
3471    grid-template-columns:
3472        42px
3473        1fr
3474        31px;
3475
3476    gap:12px;
3477
3478    align-items:center;
3479
3480    min-height:69px;
3481
3482    padding:
3483        10px 18px;
3484
3485    box-sizing:border-box;
3486
3487    list-style:none;
3488
3489    cursor:pointer;
3490
3491    user-select:none;
3492}
3493
3494
3495.gt-faq-node summary::-webkit-details-marker{
3496    display:none;
3497}
3498
3499
3500.gt-faq-node summary::marker{
3501    display:none;
3502}
3503
3504
3505/* =========================================================
3506   NUMBER
3507========================================================= */
3508
3509.node-number{
3510    width:36px;
3511    height:36px;
3512
3513    display:flex;
3514
3515    align-items:center;
3516    justify-content:center;
3517
3518    border-radius:
3519        50% 15% 50% 15%;
3520
3521    background:
3522        linear-gradient(
3523            145deg,
3524            #31d1ed,
3525            #0a075c
3526        );
3527
3528    border:
3529        1px solid rgba(255,218,85,.37);
3530
3531    color:#ffe273;
3532
3533    font-size:10px;
3534    font-weight:900;
3535
3536    box-shadow:
3537        0 0 8px rgba(32, 59, 232, 0.18);
3538
3539    transform:
3540        rotate(-5deg);
3541}
3542
3543
3544.node-text{
3545    color:#f4faf6 !important;
3546
3547    font-size:13.5px;
3548
3549    line-height:1.55;
3550
3551    font-weight:800;
3552}
3553
3554
3555/* =========================================================
3556   TRIGGER
3557========================================================= */
3558
3559.node-trigger{
3560    position:relative;
3561
3562    width:28px;
3563    height:28px;
3564
3565    border-radius:
3566        6px 50% 6px 50%;
3567
3568    background:
3569        rgba(32,232,106,.08);
3570
3571    border:
3572        1px solid rgba(91, 129, 255, 0.16);
3573
3574    transform:
3575        rotate(45deg);
3576
3577    transition:
3578        transform .35s ease,
3579        background .35s ease;
3580}
3581
3582
3583.node-trigger::before,
3584.node-trigger::after{
3585    content:"";
3586
3587    position:absolute;
3588
3589    left:50%;
3590    top:50%;
3591
3592    background:#e5ffed;
3593
3594    border-radius:99px;
3595
3596    transform:
3597        translate(-50%,-50%)
3598        rotate(-45deg);
3599}
3600
3601
3602.node-trigger::before{
3603    width:10px;
3604    height:2px;
3605}
3606
3607
3608.node-trigger::after{
3609    width:2px;
3610    height:10px;
3611}
3612
3613
3614/* =========================================================
3615   OPEN
3616========================================================= */
3617
3618.gt-faq-node[open]{
3619    border-color:
3620        rgba(255,220,85,.25);
3621
3622    background:
3623        linear-gradient(
3624            120deg,
3625            rgba(18, 45, 99, 0.8),
3626            rgba(4,18,8,.97)
3627        );
3628}
3629
3630
3631.gt-faq-node[open] .node-text{
3632    color:#ffe375 !important;
3633}
3634
3635
3636.gt-faq-node[open] .node-trigger{
3637    background:
3638        rgba(255,215,70,.13);
3639
3640    transform:
3641        rotate(225deg);
3642}
3643
3644
3645.gt-faq-node[open] .node-trigger::after{
3646    opacity:0;
3647}
3648
3649
3650/* =========================================================
3651   ANSWER
3652========================================================= */
3653
3654.node-answer{
3655    position:relative;
3656
3657    z-index:4;
3658
3659    margin:
3660        0 17px 16px;
3661
3662    padding:
3663        14px 15px;
3664
3665    border-left:
3666        2px solid rgba(47, 185, 235, 0.55);
3667
3668    background:
3669        linear-gradient(
3670            90deg,
3671            rgba(0,0,0,.25),
3672            rgba(7,28,13,.50)
3673        );
3674
3675    color:#dce7df !important;
3676
3677    font-size:12.5px;
3678
3679    line-height:1.75;
3680
3681    animation:
3682        nodeAnswerReveal .35s ease;
3683}
3684
3685
3686/* =========================================================
3687   BACKGROUND CUBES
3688========================================================= */
3689
3690.gt-cube{
3691    position:absolute;
3692
3693    z-index:1;
3694
3695    width:90px;
3696    height:90px;
3697
3698    border:
3699        1px solid rgba(59,255,133,.14);
3700
3701    background:
3702        linear-gradient(
3703            145deg,
3704            rgba(36,235,115,.045),
3705            rgba(255,255,255,.008)
3706        );
3707
3708    box-shadow:
3709        inset 0 0 25px rgba(32,232,106,.025);
3710
3711    transform:
3712        rotate(35deg);
3713
3714    pointer-events:none;
3715}
3716
3717
3718.cube1{
3719    left:5%;
3720    top:24%;
3721
3722    animation:
3723        cubeFloatOne 12s ease-in-out infinite alternate;
3724}
3725
3726
3727.cube2{
3728    right:6%;
3729    top:48%;
3730
3731    width:125px;
3732    height:125px;
3733
3734    animation:
3735        cubeFloatTwo 15s ease-in-out infinite alternate;
3736}
3737
3738
3739.cube3{
3740    left:45%;
3741    bottom:4%;
3742
3743    width:60px;
3744    height:60px;
3745
3746    animation:
3747        cubeFloatOne 10s ease-in-out infinite alternate-reverse;
3748}
3749
3750
3751/* =========================================================
3752   EMERALD GEMS
3753========================================================= */
3754
3755.gt-gem{
3756    position:absolute;
3757
3758    z-index:2;
3759
3760    width:28px;
3761    height:40px;
3762
3763    clip-path:
3764        polygon(
3765            50% 0,
3766            90% 20%,
3767            100% 60%,
3768            50% 100%,
3769            0 60%,
3770            10% 20%
3771        );
3772
3773    background:
3774        linear-gradient(
3775            145deg,
3776            #c7ffda,
3777            #47ec8b 28%,
3778            #0c9951 61%,
3779            #054124
3780        );
3781
3782    opacity:.22;
3783
3784    filter:
3785        drop-shadow(
3786            0 0 7px rgba(32,232,106,.22)
3787        );
3788
3789    pointer-events:none;
3790
3791    animation:
3792        gemSoftFloat 8s ease-in-out infinite alternate;
3793}
3794
3795
3796.gem1{
3797    right:16%;
3798    top:20%;
3799}
3800
3801
3802.gem2{
3803    left:13%;
3804    bottom:12%;
3805
3806    width:20px;
3807    height:29px;
3808
3809    animation-delay:-4s;
3810}
3811
3812
3813/* =========================================================
3814   GOPAYTOGEL APPEAR + BURST
3815========================================================= */
3816
3817.gt-brand-burst{
3818    position:absolute;
3819
3820    left:50%;
3821    top:50%;
3822
3823    width:1px;
3824    height:1px;
3825
3826    z-index:3;
3827
3828    pointer-events:none;
3829}
3830
3831
3832.gt-brand-burst strong{
3833    position:absolute;
3834
3835    left:50%;
3836    top:50%;
3837
3838    transform:
3839        translate(-50%,-50%)
3840        scale(.65);
3841
3842    white-space:nowrap;
3843
3844    color:#dffff0;
3845
3846    font-size:48px;
3847    font-weight:1000;
3848
3849    letter-spacing:5px;
3850
3851    opacity:0;
3852
3853    text-shadow:
3854        0 0 6px #fff,
3855        0 0 14px #35ff7f,
3856        0 0 30px rgba(32, 92, 232, 0.55));
3857
3858    animation:
3859        brandAppearBreak 11s ease-in-out infinite;
3860}
3861
3862
3863/* =========================================================
3864   BURST LEAVES
3865========================================================= */
3866
3867.burst-leaf{
3868    position:absolute;
3869
3870    left:0;
3871    top:0;
3872
3873    font-size:20px;
3874
3875    opacity:0;
3876
3877    filter:
3878        brightness(1.15)
3879        drop-shadow(
3880            0 0 5px rgba(42,255,123,.30)
3881        );
3882}
3883
3884
3885.bl1{
3886    --x:-150px;
3887    --y:-90px;
3888    animation-delay:0s;
3889}
3890
3891.bl2{
3892    --x:-200px;
3893    --y:20px;
3894}
3895
3896.bl3{
3897    --x:-135px;
3898    --y:115px;
3899}
3900
3901.bl4{
3902    --x:150px;
3903    --y:-100px;
3904}
3905
3906.bl5{
3907    --x:205px;
3908    --y:-5px;
3909}
3910
3911.bl6{
3912    --x:150px;
3913    --y:110px;
3914}
3915
3916.bl7{
3917    --x:-30px;
3918    --y:-145px;
3919}
3920
3921.bl8{
3922    --x:40px;
3923    --y:145px;
3924}
3925
3926
3927.burst-leaf{
3928    animation:
3929        leafBurst 11s ease-out infinite;
3930}
3931
3932
3933/* =========================================================
3934   ANIMATIONS
3935========================================================= */
3936
3937@keyframes gtAmbientBreath{
3938
3939    from{
3940        opacity:.35;
3941
3942        transform:
3943            translate(-50%,-50%)
3944            scale(.85);
3945    }
3946
3947    to{
3948        opacity:1;
3949
3950        transform:
3951            translate(-50%,-50%)
3952            scale(1.15);
3953    }
3954}
3955
3956
3957@keyframes routeParticle{
3958
3959    from{
3960        top:0;
3961        opacity:0;
3962    }
3963
3964    10%{
3965        opacity:1;
3966    }
3967
3968    90%{
3969        opacity:1;
3970    }
3971
3972    to{
3973        top:100%;
3974        opacity:0;
3975    }
3976}
3977
3978
3979@keyframes edgeTravel{
3980
3981    from{
3982        left:-45%;
3983    }
3984
3985    to{
3986        left:120%;
3987    }
3988}
3989
3990
3991@keyframes nodeAnswerReveal{
3992
3993    from{
3994        opacity:0;
3995
3996        transform:
3997            translateY(-6px);
3998    }
3999
4000    to{
4001        opacity:1;
4002
4003        transform:
4004            translateY(0);
4005    }
4006}
4007
4008
4009@keyframes cubeFloatOne{
4010
4011    from{
4012        transform:
4013            translate(0,0)
4014            rotate(25deg);
4015
4016        opacity:.18;
4017    }
4018
4019    to{
4020        transform:
4021            translate(30px,-45px)
4022            rotate(80deg);
4023
4024        opacity:.42;
4025    }
4026}
4027
4028
4029@keyframes cubeFloatTwo{
4030
4031    from{
4032        transform:
4033            translate(0,0)
4034            rotate(-20deg);
4035
4036        opacity:.14;
4037    }
4038
4039    to{
4040        transform:
4041            translate(-40px,50px)
4042            rotate(55deg);
4043
4044        opacity:.35;
4045    }
4046}
4047
4048
4049@keyframes gemSoftFloat{
4050
4051    from{
4052        transform:
4053            translateY(0)
4054            rotate(-5deg)
4055            scale(.85);
4056
4057        opacity:.12;
4058    }
4059
4060    to{
4061        transform:
4062            translateY(-35px)
4063            rotate(12deg)
4064            scale(1.08);
4065
4066        opacity:.34;
4067    }
4068}
4069
4070
4071/* text muncul lalu seolah pecah */
4072
4073@keyframes brandAppearBreak{
4074
4075    0%,
4076    58%{
4077        opacity:0;
4078
4079        transform:
4080            translate(-50%,-50%)
4081            scale(.6);
4082
4083        filter:
4084            blur(7px);
4085    }
4086
4087    64%{
4088        opacity:.25;
4089    }
4090
4091    70%{
4092        opacity:.95;
4093
4094        transform:
4095            translate(-50%,-50%)
4096            scale(1);
4097
4098        filter:
4099            blur(0);
4100    }
4101
4102    76%{
4103        opacity:1;
4104
4105        transform:
4106            translate(-50%,-50%)
4107            scale(1.04);
4108
4109        letter-spacing:6px;
4110    }
4111
4112    80%{
4113        opacity:.5;
4114
4115        transform:
4116            translate(-50%,-50%)
4117            scale(1.12);
4118
4119        letter-spacing:13px;
4120
4121        filter:
4122            blur(2px);
4123    }
4124
4125    84%{
4126        opacity:0;
4127
4128        transform:
4129            translate(-50%,-50%)
4130            scale(1.3);
4131
4132        letter-spacing:22px;
4133
4134        filter:
4135            blur(8px);
4136    }
4137
4138    100%{
4139        opacity:0;
4140    }
4141}
4142
4143
4144/* daun meledak setelah tulisan */
4145
4146@keyframes leafBurst{
4147
4148    0%,
4149    75%{
4150        opacity:0;
4151
4152        transform:
4153            translate(0,0)
4154            rotate(0deg)
4155            scale(.4);
4156    }
4157
4158    80%{
4159        opacity:0;
4160    }
4161
4162    84%{
4163        opacity:.95;
4164
4165        transform:
4166            translate(0,0)
4167            rotate(20deg)
4168            scale(.8);
4169    }
4170
4171    92%{
4172        opacity:.80;
4173
4174        transform:
4175            translate(
4176                var(--x),
4177                var(--y)
4178            )
4179            rotate(300deg)
4180            scale(1);
4181    }
4182
4183    100%{
4184        opacity:0;
4185
4186        transform:
4187            translate(
4188                calc(var(--x) * 1.25),
4189                calc(var(--y) * 1.25)
4190            )
4191            rotate(520deg)
4192            scale(.55);
4193    }
4194}
4195
4196
4197/* =========================================================
4198   MOBILE
4199========================================================= */
4200
4201@media(max-width:760px){
4202
4203    .gt-faq-world{
4204        width:calc(100% - 12px);
4205
4206        padding:
4207            24px 12px 30px;
4208
4209        clip-path:
4210            polygon(
4211                18px 0,
4212                calc(100% - 38px) 0,
4213                100% 25px,
4214                100% calc(100% - 18px),
4215                calc(100% - 20px) 100%,
4216                35px 100%,
4217                0 calc(100% - 25px),
4218                0 18px
4219            );
4220    }
4221
4222
4223    .gt-faq-header{
4224        margin-bottom:25px;
4225    }
4226
4227
4228    .gt-faq-header h2{
4229        font-size:19px;
4230    }
4231
4232
4233    .gt-faq-route::before,
4234    .gt-faq-route::after{
4235        display:none;
4236    }
4237
4238
4239    .gt-faq-node{
4240        width:100%;
4241    }
4242
4243
4244    .left-node,
4245    .right-node{
4246        align-self:stretch;
4247
4248        clip-path:
4249            polygon(
4250                0 0,
4251                calc(100% - 12px) 0,
4252                100% 50%,
4253                calc(100% - 12px) 100%,
4254                0 100%,
4255                7px 50%
4256            );
4257    }
4258
4259
4260    .left-node:hover,
4261    .right-node:hover{
4262        transform:
4263            translateX(3px);
4264    }
4265
4266
4267    .gt-faq-node summary{
4268        grid-template-columns:
4269            34px
4270            1fr
4271            27px;
4272
4273        gap:8px;
4274
4275        min-height:60px;
4276
4277        padding:
4278            9px 12px;
4279    }
4280
4281
4282    .node-number{
4283        width:31px;
4284        height:31px;
4285    }
4286
4287
4288    .node-text{
4289        font-size:11.5px;
4290    }
4291
4292
4293    .node-trigger{
4294        width:24px;
4295        height:24px;
4296    }
4297
4298
4299    .node-answer{
4300        margin:
4301            0 10px 11px;
4302
4303        padding:12px;
4304
4305        font-size:11.5px;
4306    }
4307
4308
4309    .gt-brand-burst strong{
4310        font-size:27px;
4311
4312        letter-spacing:2px;
4313    }
4314
4315
4316    .burst-leaf{
4317        font-size:15px;
4318    }
4319
4320
4321    .cube2,
4322    .cube3,
4323    .gem2{
4324        display:none;
4325    }
4326
4327}
4328
4329
4330/* =========================================================
4331   REDUCED MOTION
4332========================================================= */
4333
4334@media(prefers-reduced-motion:reduce){
4335
4336    .gt-faq-world::after,
4337    .gt-faq-route::after,
4338    .gt-faq-node::before,
4339    .gt-cube,
4340    .gt-gem,
4341    .gt-brand-burst strong,
4342    .burst-leaf{
4343        animation:none !important;
4344    }
4345}
4346
4347/* =========================================================
4348   OUTER FAQ AURA WRAPPER
4349========================================================= */
4350
4351.gt-faq-aura{
4352    position:relative;
4353
4354    width:min(1160px,calc(100% - 20px));
4355
4356    margin:65px auto;
4357
4358    isolation:isolate;
4359
4360    /* glow utama */
4361    filter:
4362        drop-shadow(0 0 8px rgba(32, 105, 232, 0.28))
4363        drop-shadow(0 0 22px rgba(32, 132, 232, 0.17))
4364        drop-shadow(0 0 42px rgba(255,215,70,.09));
4365
4366    animation:
4367        gtOuterAuraBreath 3.8s ease-in-out infinite alternate;
4368}
4369
4370
4371/* FAQ lama tetap mengikuti ukuran wrapper */
4372
4373.gt-faq-aura .gt-faq-world{
4374    width:calc(100% - 28px);
4375
4376    margin:0 auto;
4377
4378    position:relative;
4379
4380    z-index:5;
4381}
4382
4383
4384/* =========================================================
4385   EMERALD LIGHT - LEFT
4386========================================================= */
4387
4388.gt-faq-aura::before{
4389    content:"";
4390
4391    position:absolute;
4392
4393    left:-65px;
4394    top:7%;
4395
4396    width:155px;
4397    height:86%;
4398
4399    z-index:-2;
4400
4401    border-radius:50%;
4402
4403    background:
4404        radial-gradient(
4405            ellipse,
4406            rgba(145, 251, 255, 0.5) 0%,
4407            rgba(47, 151, 255, 0.32) 18%,
4408            rgba(32, 85, 232, 0.16) 38%,
4409            rgba(35, 32, 232, 0.05) 60%,
4410            transparent 78%
4411        );
4412
4413    filter:blur(28px);
4414
4415    animation:
4416        gtEmeraldOuterLeft 4s ease-in-out infinite alternate;
4417}
4418
4419
4420/* =========================================================
4421   GOLD LIGHT - RIGHT
4422========================================================= */
4423
4424.gt-faq-aura::after{
4425    content:"";
4426
4427    position:absolute;
4428
4429    right:-65px;
4430    top:10%;
4431
4432    width:160px;
4433    height:80%;
4434
4435    z-index:-2;
4436
4437    border-radius:50%;
4438
4439    background:
4440        radial-gradient(
4441            ellipse,
4442            rgba(255,245,174,.46) 0%,
4443            rgba(255,218,70,.28) 20%,
4444            rgba(255,185,35,.12) 40%,
4445            rgba(255,180,20,.04) 62%,
4446            transparent 78%
4447        );
4448
4449    filter:blur(30px);
4450
4451    animation:
4452        gtGoldOuterRight 4.7s ease-in-out infinite alternate;
4453}
4454
4455
4456/* =========================================================
4457   OUTER FX CONTAINER
4458========================================================= */
4459
4460.gt-outer-fx{
4461    position:absolute;
4462
4463    inset:-42px;
4464
4465    z-index:2;
4466
4467    overflow:visible;
4468
4469    pointer-events:none;
4470}
4471
4472
4473/* =========================================================
4474   ELECTRIC LIGHTNING
4475========================================================= */
4476
4477.outer-lightning{
4478    position:absolute;
4479
4480    display:block;
4481
4482    height:2px;
4483
4484    background:
4485        linear-gradient(
4486            90deg,
4487            transparent 0%,
4488            rgba(255,255,255,.15) 10%,
4489            #ffffff 25%,
4490            #66dbff 42%,
4491            #20b3e8 60%,
4492            #ffe365 78%,
4493            transparent 100%
4494        );
4495
4496    box-shadow:
4497        0 0 4px #ffffff,
4498        0 0 9px #48fff6,
4499        0 0 17px rgba(32, 232, 232, 0.9),
4500        0 0 27px rgba(255,218,80,.32);
4501
4502    opacity:0;
4503}
4504
4505
4506/* PETIR ATAS */
4507
4508.ol1{
4509    top:16px;
4510    left:4%;
4511
4512    width:36%;
4513
4514    transform:
4515        rotate(-1deg)
4516        skewX(-24deg);
4517
4518    animation:
4519        gtLightningTop 4.5s linear infinite;
4520}
4521
4522
4523/* PETIR ATAS KANAN */
4524
4525.ol2{
4526    top:22px;
4527    right:3%;
4528
4529    width:29%;
4530
4531    transform:
4532        rotate(2deg)
4533        skewX(22deg);
4534
4535    animation:
4536        gtLightningRight 5.4s linear infinite;
4537
4538    animation-delay:-2s;
4539}
4540
4541
4542/* PETIR BAWAH */
4543
4544.ol3{
4545    bottom:18px;
4546    left:11%;
4547
4548    width:31%;
4549
4550    transform:
4551        rotate(2deg)
4552        skewX(-20deg);
4553
4554    animation:
4555        gtLightningBottom 5s linear infinite;
4556
4557    animation-delay:-1.2s;
4558}
4559
4560
4561/* PETIR BAWAH KANAN */
4562
4563.ol4{
4564    bottom:14px;
4565    right:7%;
4566
4567    width:36%;
4568
4569    transform:
4570        rotate(-2deg)
4571        skewX(24deg);
4572
4573    animation:
4574        gtLightningRight 5.8s linear infinite;
4575
4576    animation-delay:-3s;
4577}
4578
4579
4580/* =========================================================
4581   LIGHTNING BRANCH
4582========================================================= */
4583
4584.outer-lightning::before,
4585.outer-lightning::after{
4586    content:"";
4587
4588    position:absolute;
4589
4590    left:52%;
4591
4592    width:38px;
4593    height:2px;
4594
4595    background:
4596        linear-gradient(
4597            90deg,
4598            #fff,
4599            #5cbeff,
4600            transparent
4601        );
4602
4603    box-shadow:
4604        0 0 7px #39b6ff;
4605
4606    transform-origin:left center;
4607}
4608
4609
4610.outer-lightning::before{
4611    top:-8px;
4612
4613    transform:
4614        rotate(-28deg);
4615}
4616
4617
4618.outer-lightning::after{
4619    bottom:-8px;
4620
4621    transform:
4622        rotate(30deg);
4623}
4624
4625
4626/* =========================================================
4627   OUTER STARS
4628========================================================= */
4629
4630.outer-star{
4631    position:absolute;
4632
4633    color:#dffff0;
4634
4635    font-size:20px;
4636
4637    opacity:.3;
4638
4639    text-shadow:
4640        0 0 4px #fff,
4641        0 0 8px #61cdff,
4642        0 0 15px #20b3e8,
4643        0 0 23px rgba(255,220,75,.32);
4644
4645    filter:
4646        drop-shadow(0 0 7px rgba(32, 92, 232, 0.55));
4647
4648    animation:
4649        gtOuterStarBlink 2s ease-in-out infinite alternate;
4650}
4651
4652
4653/* posisi random */
4654
4655.os1{
4656    left:2%;
4657    top:10%;
4658
4659    animation-delay:-.3s;
4660}
4661
4662
4663.os2{
4664    left:8%;
4665    bottom:19%;
4666
4667    font-size:15px;
4668
4669    animation-delay:-1.4s;
4670}
4671
4672
4673.os3{
4674    left:30%;
4675    top:-10px;
4676
4677    font-size:16px;
4678
4679    animation-delay:-.8s;
4680}
4681
4682
4683.os4{
4684    right:25%;
4685    top:-4px;
4686
4687    font-size:23px;
4688
4689    animation-delay:-1.7s;
4690}
4691
4692
4693.os5{
4694    right:2%;
4695    top:23%;
4696
4697    animation-delay:-.6s;
4698}
4699
4700
4701.os6{
4702    right:5%;
4703    bottom:21%;
4704
4705    font-size:16px;
4706
4707    animation-delay:-1.2s;
4708}
4709
4710
4711.os7{
4712    right:28%;
4713    bottom:-9px;
4714
4715    font-size:20px;
4716
4717    animation-delay:-2s;
4718}
4719
4720
4721.os8{
4722    left:27%;
4723    bottom:-7px;
4724
4725    font-size:14px;
4726
4727    animation-delay:-1s;
4728}
4729
4730
4731/* =========================================================
4732   EXTRA CORNER GLOW
4733========================================================= */
4734
4735.gt-outer-fx::before{
4736    content:"";
4737
4738    position:absolute;
4739
4740    left:-12px;
4741    top:-12px;
4742
4743    width:95px;
4744    height:95px;
4745
4746    border-top:
4747        2px solid rgba(88, 138, 255, 0.55);
4748
4749    border-left:
4750        2px solid rgba(88, 138, 255, 0.55);
4751
4752    filter:
4753        drop-shadow(0 0 7px #20d4e8);
4754
4755    opacity:.5;
4756
4757    clip-path:
4758        polygon(
4759            0 0,
4760            100% 0,
4761            100% 5%,
4762            18% 5%,
4763            5% 18%,
4764            5% 100%,
4765            0 100%
4766        );
4767
4768    animation:
4769        gtCornerPulse 2.3s ease-in-out infinite alternate;
4770}
4771
4772
4773.gt-outer-fx::after{
4774    content:"";
4775
4776    position:absolute;
4777
4778    right:-12px;
4779    bottom:-12px;
4780
4781    width:95px;
4782    height:95px;
4783
4784    border-right:
4785        2px solid rgba(255,220,75,.50);
4786
4787    border-bottom:
4788        2px solid rgba(255,220,75,.50);
4789
4790    filter:
4791        drop-shadow(0 0 7px #ffd943);
4792
4793    opacity:.5;
4794
4795    clip-path:
4796        polygon(
4797            95% 0,
4798            100% 0,
4799            100% 100%,
4800            0 100%,
4801            0 95%,
4802            82% 95%,
4803            95% 82%
4804        );
4805
4806    animation:
4807        gtCornerPulse 2.7s ease-in-out infinite alternate-reverse;
4808}
4809
4810
4811/* =========================================================
4812   AURA BREATH
4813========================================================= */
4814
4815@keyframes gtOuterAuraBreath{
4816
4817    from{
4818        filter:
4819            drop-shadow(0 0 6px rgba(32,232,106,.20))
4820            drop-shadow(0 0 16px rgba(32,232,106,.10))
4821            drop-shadow(0 0 28px rgba(255,215,65,.04));
4822    }
4823
4824    to{
4825        filter:
4826            drop-shadow(0 0 13px rgba(55,255,132,.48))
4827            drop-shadow(0 0 31px rgba(32,232,106,.22))
4828            drop-shadow(0 0 52px rgba(255,215,65,.14));
4829    }
4830}
4831
4832
4833/* =========================================================
4834   SIDE LIGHT
4835========================================================= */
4836
4837@keyframes gtEmeraldOuterLeft{
4838
4839    from{
4840        opacity:.28;
4841
4842        transform:
4843            translateX(-8px)
4844            scaleY(.83);
4845    }
4846
4847    to{
4848        opacity:.82;
4849
4850        transform:
4851            translateX(8px)
4852            scaleY(1.08);
4853    }
4854}
4855
4856
4857@keyframes gtGoldOuterRight{
4858
4859    from{
4860        opacity:.22;
4861
4862        transform:
4863            translateX(8px)
4864            scaleY(.88);
4865    }
4866
4867    to{
4868        opacity:.72;
4869
4870        transform:
4871            translateX(-8px)
4872            scaleY(1.07);
4873    }
4874}
4875
4876
4877/* =========================================================
4878   LIGHTNING FLASH
4879========================================================= */
4880
4881@keyframes gtLightningTop{
4882
4883    0%,
4884    7%{
4885        opacity:0;
4886
4887        transform:
4888            translateX(-45px)
4889            skewX(-24deg);
4890    }
4891
4892    9%{
4893        opacity:1;
4894    }
4895
4896    11%{
4897        opacity:.22;
4898    }
4899
4900    13%{
4901        opacity:1;
4902    }
4903
4904    17%{
4905        opacity:.45;
4906    }
4907
4908    23%{
4909        opacity:0;
4910
4911        transform:
4912            translateX(160px)
4913            skewX(-24deg);
4914    }
4915
4916    100%{
4917        opacity:0;
4918    }
4919}
4920
4921
4922@keyframes gtLightningRight{
4923
4924    0%,
4925    32%{
4926        opacity:0;
4927    }
4928
4929    34%{
4930        opacity:.35;
4931    }
4932
4933    36%{
4934        opacity:1;
4935    }
4936
4937    38%{
4938        opacity:.2;
4939    }
4940
4941    40%{
4942        opacity:1;
4943    }
4944
4945    47%{
4946        opacity:0;
4947
4948        transform:
4949            translateX(-120px)
4950            skewX(20deg);
4951    }
4952
4953    100%{
4954        opacity:0;
4955    }
4956}
4957
4958
4959@keyframes gtLightningBottom{
4960
4961    0%,
4962    57%{
4963        opacity:0;
4964    }
4965
4966    59%{
4967        opacity:1;
4968    }
4969
4970    61%{
4971        opacity:.18;
4972    }
4973
4974    63%{
4975        opacity:1;
4976    }
4977
4978    69%{
4979        opacity:.4;
4980    }
4981
4982    75%{
4983        opacity:0;
4984
4985        transform:
4986            translateX(170px)
4987            skewX(-20deg);
4988    }
4989
4990    100%{
4991        opacity:0;
4992    }
4993}
4994
4995
4996/* =========================================================
4997   STARS
4998========================================================= */
4999
5000@keyframes gtOuterStarBlink{
5001
5002    from{
5003        opacity:.14;
5004
5005        transform:
5006            rotate(0deg)
5007            scale(.65);
5008
5009        filter:
5010            brightness(.85)
5011            drop-shadow(
5012                0 0 4px rgba(32,232,106,.30)
5013            );
5014    }
5015
5016    to{
5017        opacity:1;
5018
5019        transform:
5020            rotate(45deg)
5021            scale(1.35);
5022
5023        filter:
5024            brightness(1.55)
5025            drop-shadow(
5026                0 0 10px rgba(32,232,106,.75)
5027            );
5028    }
5029}
5030
5031
5032/* =========================================================
5033   C
5033ORNER PULSE
5034========================================================= */
5035
5036@keyframes gtCornerPulse{
5037
5038    from{
5039        opacity:.20;
5040
5041        transform:
5042            scale(.88);
5043    }
5044
5045    to{
5046        opacity:.90;
5047
5048        transform:
5049            scale(1.04);
5050    }
5051}
5052
5053
5054/* =========================================================
5055   MOBILE
5056========================================================= */
5057
5058@media(max-width:760px){
5059
5060    .gt-faq-aura{
5061        width:calc(100% - 8px);
5062
5063        margin:45px auto;
5064    }
5065
5066
5067    .gt-faq-aura .gt-faq-world{
5068        width:calc(100% - 12px);
5069    }
5070
5071
5072    .gt-faq-aura::before,
5073    .gt-faq-aura::after{
5074        width:90px;
5075
5076        filter:blur(22px);
5077
5078        opacity:.42;
5079    }
5080
5081
5082    .gt-outer-fx{
5083        inset:-20px;
5084    }
5085
5086
5087    .outer-lightning{
5088        width:42%;
5089    }
5090
5091
5092    .outer-star{
5093        font-size:15px;
5094    }
5095
5096
5097    .os2,
5098    .os3,
5099    .os6,
5100    .os8{
5101        display:none;
5102    }
5103
5104
5105    .gt-outer-fx::before,
5106    .gt-outer-fx::after{
5107        width:60px;
5108        height:60px;
5109    }
5110}
5111
5112
5113/* =========================================================
5114   REDUCED MOTION
5115========================================================= */
5116
5117@media(prefers-reduced-motion:reduce){
5118
5119    .gt-faq-aura,
5120    .gt-faq-aura::before,
5121    .gt-faq-aura::after,
5122    .outer-lightning,
5123    .outer-star,
5124    .gt-outer-fx::before,
5125    .gt-outer-fx::after{
5126        animation:none !important;
5127    }
5128}
5129
5130</style>
5131
5132 
5133
5134    <section class="reviews-section">
5135
5136  <h3 class="sgt-title sgt-section-title">
5137    Review GOPAYTOGEL
5138  </h3>
5139
5140  <p class="sgt-review-note">
5141    Review Terbaik Member GOPAYTOGEL
5142  </p>
5143
5144
5145  <!-- =========================
5146       EXTRA EFFECT
5147  ========================== -->
5148  <div class="gt-review-effects" aria-hidden="true">
5149
5150    <span class="gt-lightning-line"></span>
5151
5152    <span class="gt-leaf leaf-1">👑</span>
5153    <span class="gt-leaf leaf-2">⚡</span>
5154    <span class="gt-leaf leaf-3">👑</span>
5155    <span class="gt-leaf leaf-4">⚡</span>
5156    <span class="gt-leaf leaf-5">👑</span>
5157    <span class="gt-leaf leaf-6">⚡</span>
5158
5159    <span class="gt-rainbow-glow"></span>
5160
5161  </div>
5162
5163
5164  <!-- =========================
5165       REVIEW MOVING LIST
5166  ========================== -->
5167  <div class="sgt-review-track">
5168
5169    <div class="sgt-review-list">
5170
5171      <!-- 1 -->
5172      <article class="sgt-review">
5173        <div class="sgt-review-top">
5174
5175          <div class="sgt-avatar">F</div>
5176
5177          <div>
5178            <div class="sgt-name">
5179              Rizky Maulana Pratama • Medan
5180            </div>
5181
5182            <div class="sgt-stars">
5183              ★★★★★
5184            </div>
5185          </div>
5186
5187        </div>
5188
5189        <p>
5190          Tampilannya cukup rapi dan gampang dipahami. Informasi pasaran juga tersusun jelas, jadi tidak bikin
5191          bingung saat mencari data yang dibutuhkan.
5192        </p>
5193      </article>
5194
5195
5196      <!-- 2 -->
5197      <article class="sgt-review">
5198        <div class="sgt-review-top">
5199
5200          <div class="sgt-avatar">A</div>
5201
5202          <div>
5203            <div class="sgt-name">
5204              Dimas Arya Saputra • Jakarta
5205            </div>
5206
5207            <div class="sgt-stars">
5208              ★★★★★
5209            </div>
5210          </div>
5211
5212        </div>
5213
5214        <p>
5215          Saya suka karena informasi di GOPAYTOGEL cukup lengkap dan update-nya terasa rutin. Layanan 24
5216          jam juga jadi nilai tambah.
5217        </p>
5218      </article>
5219
5220
5221      <!-- 3 -->
5222      <article class="sgt-review">
5223        <div class="sgt-review-top">
5224
5225          <div class="sgt-avatar">B</div>
5226
5227          <div>
5228            <div class="sgt-name">
5229              Fajar Nugroho Santoso • Makassar
5230            </div>
5231
5232            <div class="sgt-stars">
5233              ★★★★★
5234            </div>
5235          </div>
5236
5237        </div>
5238
5239        <p>
5240          Sejauh ini pengalaman saya cukup nyaman. Menu-menu utamanya mudah ditemukan dan proses
5241          melihat informasi Toto 4D juga simpel.
5242        </p>
5243      </article>
5244
5245
5246      <!-- 4 -->
5247      <article class="sgt-review">
5248        <div class="sgt-review-top">
5249
5250          <div class="sgt-avatar">P</div>
5251
5252          <div>
5253            <div class="sgt-name">
5254              Andika Putra Ramadhan • Bandung
5255            </div>
5256
5257            <div class="sgt-stars">
5258              ★★★★★
5259            </div>
5260          </div>
5261
5262        </div>
5263
5264        <p>
5265          Yang paling saya suka adalah tampilannya tidak terlalu ramai. Informasi result dan pasaran bisa dilihat
5266          dengan lebih jelas.
5267        </p>
5268      </article>
5269
5270
5271      <!-- 5 -->
5272      <article class="sgt-review">
5273        <div class="sgt-review-top">
5274
5275          <div class="sgt-avatar">T</div>
5276
5277          <div>
5278            <div class="sgt-name">
5279              Kevin Aditya Wijaya • Bandung
5280            </div>
5281
5282            <div class="sgt-stars">
5283              ★★★★★
5284            </div>
5285          </div>
5286
5287        </div>
5288
5289        <p>
5290          GOPAYTOGEL punya tampilan yang enak dilihat dan informasi yang cukup lengkap. Cocok buat yang
5291          ingin mengecek pasaran tanpa banyak langkah.
5292        </p>
5293      </article>
5294
5295
5296      <!-- 6 -->
5297      <article class="sgt-review">
5298        <div class="sgt-review-top">
5299
5300          <div class="sgt-avatar">R</div>
5301
5302          <div>
5303            <div class="sgt-name">
5304              Rian Kurniawan Putra • Papua
5305            </div>
5306
5307            <div class="sgt-stars">
5308              ★★★★★
5309            </div>
5310          </div>
5311
5312        </div>
5313
5314        <p>
5315          Pelayanannya responsif dan informasi yang tersedia cukup mudah dipahami. Secara keseluruhan
5316          pengalaman menggunakannya terasa praktis dan nyaman.
5317        </p>
5318      </article>
5319
5320
5321      <!-- DUPLIKAT UNTUK LOOP MULUS -->
5322
5323      <article class="sgt-review" aria-hidden="true">
5324        <div class="sgt-review-top">
5325          <div class="sgt-avatar">R</div>
5326          <div>
5327            <div class="sgt-name">Rizky Maulana Pratama • Medan</div>
5328            <div class="sgt-stars">★★★★★</div>
5329          </div>
5330        </div>
5331        <p>
5332          Tampilannya cukup rapi dan gampang dipahami. Informasi pasaran juga tersusun jelas, jadi tidak bikin
5333          bingung saat mencari data yang dibutuhkan.
5334        </p>
5335      </article>
5336
5337
5338      <article class="sgt-review" aria-hidden="true">
5339        <div class="sgt-review-top">
5340          <div class="sgt-avatar">D</div>
5341          <div>
5342            <div class="sgt-name">Dimas Arya Saputra • Jakarta</div>
5343            <div class="sgt-stars">★★★★★</div>
5344          </div>
5345        </div>
5346        <p>
5347          Saya suka karena informasi di GOPAYTOGEL cukup lengkap dan update-nya terasa rutin. Layanan 24
5348          jam juga jadi nilai tambah.
5349        </p>
5350      </article>
5351
5352
5353      <article class="sgt-review" aria-hidden="true">
5354        <div class="sgt-review-top">
5355          <div class="sgt-avatar">B</div>
5356          <div>
5357            <div class="sgt-name">Fajar Nugroho Santoso • Makassar</div>
5358            <div class="sgt-stars">★★★★★</div>
5359          </div>
5360        </div>
5361        <p>
5362          Sejauh ini pengalaman saya cukup nyaman. Menu-menu utamanya mudah ditemukan dan proses
5363          melihat informasi Toto 4D juga simpel.
5364        </p>
5365      </article>
5366
5367
5368      <article class="sgt-review" aria-hidden="true">
5369        <div class="sgt-review-top">
5370          <div class="sgt-avatar">P</div>
5371          <div>
5372            <div class="sgt-name">Andika Putra Ramadhan • Bandung</div>
5373            <div class="sgt-stars">★★★★★</div>
5374          </div>
5375        </div>
5376        <p>
5377          Yang paling saya suka adalah tampilannya tidak terlalu ramai. Informasi result dan pasaran bisa dilihat
5378          dengan lebih jelas.
5379        </p>
5380      </article>
5381
5382
5383      <article class="sgt-review" aria-hidden="true">
5384        <div class="sgt-review-top">
5385          <div class="sgt-avatar">T</div>
5386          <div>
5387            <div class="sgt-name">Kevin Aditya Wijaya • Bandung</div>
5388            <div class="sgt-stars">★★★★★</div>
5389          </div>
5390        </div>
5391        <p>
5392          GOPAYTOGEL punya tampilan yang enak dilihat dan informasi yang cukup lengkap. Cocok buat yang
5393          ingin mengecek pasaran tanpa banyak langkah.
5394        </p>
5395      </article>
5396
5397
5398      <article class="sgt-review" aria-hidden="true">
5399        <div class="sgt-review-top">
5400          <div class="sgt-avatar">R</div>
5401          <div>
5402            <div class="sgt-name">Rian Kurniawan Putra • Papua</div>
5403            <div class="sgt-stars">★★★★★</div>
5404          </div>
5405        </div>
5406        <p>
5407          Pelayanannya responsif dan informasi yang tersedia cukup mudah dipahami. Secara keseluruhan
5408          pengalaman menggunakannya terasa praktis dan nyaman.
5409        </p>
5410      </article>
5411
5412    </div>
5413  </div>
5414
5415
5416  <footer class="sgt-footer">
5417    © 2026 GOPAYTOGEL
5418  </footer>
5419
5420</section>
5421
5422<style>
5423/* =========================================================
5424   REVIEW SECTION
5425========================================================= */
5426
5427.reviews-section{
5428    position:relative;
5429
5430    width:min(1100px,calc(100% - 28px));
5431
5432    margin:40px auto;
5433
5434    padding:32px 22px 26px;
5435
5436    box-sizing:border-box;
5437
5438    overflow:hidden;
5439
5440    border-radius:25px;
5441
5442    background:
5443        radial-gradient(
5444            circle at 10% 10%,
5445            rgba(32,232,106,.16),
5446            transparent 30%
5447        ),
5448        radial-gradient(
5449            circle at 90% 90%,
5450            rgba(255,215,60,.09),
5451            transparent 30%
5452        ),
5453        linear-gradient(
5454            145deg,
5455            #06130a,
5456            #020704 65%,
5457            #101109
5458        );
5459
5460    border:
5461        1px solid rgba(32,232,106,.26);
5462
5463    box-shadow:
5464        0 20px 45px rgba(0,0,0,.38),
5465        0 0 20px rgba(32,232,106,.12),
5466        inset 0 0 35px rgba(32,232,106,.045);
5467
5468    isolation:isolate;
5469}
5470
5471
5472/* animated outer border */
5473
5474.reviews-section::before{
5475    content:"";
5476
5477    position:absolute;
5478    inset:0;
5479
5480    padding:2px;
5481
5482    border-radius:25px;
5483
5484    background:
5485        linear-gradient(
5486            120deg,
5487            #20b3e8,
5488            #ffe15a,
5489            #ffffff,
5490            #a84cff,
5491            #20b3e8
5492        );
5493
5494    background-size:300% 300%;
5495
5496    -webkit-mask:
5497        linear-gradient(#fff 0 0) content-box,
5498        linear-gradient(#fff 0 0);
5499
5500    -webkit-mask-composite:xor;
5501    mask-composite:exclude;
5502
5503    animation:
5504        reviewOuterBorder 7s linear infinite;
5505
5506    pointer-events:none;
5507}
5508
5509
5510/* =========================================================
5511   TITLE
5512========================================================= */
5513
5514.sgt-section-title{
5515    position:relative;
5516    z-index:5;
5517
5518    margin:0 0 8px;
5519
5520    text-align:center;
5521
5522    color:#fff;
5523
5524    font-size:30px;
5525    font-weight:900;
5526
5527    letter-spacing:.5px;
5528
5529    text-shadow:
5530        0 0 6px rgba(255,255,255,.32),
5531        0 0 14px rgba(32,232,106,.60);
5532}
5533
5534
5535.sgt-section-title::after{
5536    content:"";
5537
5538    display:block;
5539
5540    width:135px;
5541    height:3px;
5542
5543    margin:13px auto 0;
5544
5545    border-radius:999px;
5546
5547    background:
5548        linear-gradient(
5549            90deg,
5550            transparent,
5551            #20b3e8,
5552            #ffe15a,
5553            #20b3e8,
5554            transparent
5555        );
5556
5557    background-size:220% 100%;
5558
5559    box-shadow:
5560        0 0 9px rgba(32,232,106,.45);
5561
5562    animation:
5563        titleLightMove 3s linear infinite;
5564}
5565
5566
5567.sgt-review-note{
5568    position:relative;
5569    z-index:5;
5570
5571    margin:0 0 18px;
5572
5573    text-align:center;
5574
5575    color:#cfded3;
5576
5577    font-size:14px;
5578}
5579
5580
5581/* =========================================================
5582   TRACK / VIEWPORT
5583========================================================= */
5584
5585.sgt-review-track{
5586    position:relative;
5587
5588    z-index:4;
5589
5590    width:100%;
5591
5592    overflow:hidden;
5593
5594    padding:10px 0 15px;
5595
5596    -webkit-mask-image:
5597        linear-gradient(
5598            90deg,
5599            transparent,
5600            #000 7%,
5601            #000 93%,
5602            transparent
5603        );
5604
5605    mask-image:
5606        linear-gradient(
5607            90deg,
5608            transparent,
5609            #000 7%,
5610            #000 93%,
5611            transparent
5612        );
5613}
5614
5615
5616/* =========================================================
5617   MOVING REVIEW LIST
5618========================================================= */
5619
5620.sgt-review-list{
5621    display:flex;
5622
5623    width:max-content;
5624
5625    gap:18px;
5626
5627    animation:
5628        reviewMarquee 42s linear infinite;
5629}
5630
5631
5632.sgt-review-track:hover .sgt-review-list{
5633    animation-play-state:paused;
5634}
5635
5636
5637/* =========================================================
5638   REVIEW CARD
5639========================================================= */
5640
5641.sgt-review{
5642    position:relative;
5643
5644    flex:0 0 315px;
5645
5646    min-height:205px;
5647
5648    padding:20px;
5649
5650    box-sizing:border-box;
5651
5652    overflow:hidden;
5653
5654    border-radius:18px;
5655
5656    background:
5657        linear-gradient(
5658            145deg,
5659            rgba(14,70,33,.82),
5660            rgba(4,17,8,.97) 65%,
5661            rgba(42,29,5,.30)
5662        );
5663
5664    border:
5665        1px solid rgba(56,255,125,.20);
5666
5667    box-shadow:
5668        0 8px 20px rgba(0,0,0,.30),
5669        inset 0 0 22px rgba(32,232,106,.055);
5670
5671    transition:
5672        transform .30s ease,
5673        border-color .30s ease,
5674        box-shadow .30s ease;
5675
5676    isolation:isolate;
5677}
5678
5679
5680/* shine sweeping through card */
5681
5682.sgt-review::before{
5683    content:"";
5684
5685    position:absolute;
5686
5687    top:-25%;
5688    left:-65%;
5689
5690    width:35%;
5691    height:150%;
5692
5693    z-index:0;
5694
5695    background:
5696        linear-gradient(
5697            90deg,
5698            transparent,
5699            rgba(255,255,255,.04),
5700            rgba(255,255,255,.20),
5701            rgba(32,232,106,.09),
5702            transparent
5703        );
5704
5705    transform:
5706        rotate(18deg);
5707
5708    animation:
5709        reviewShine 6s ease-in-out infinite;
5710
5711    pointer-events:none;
5712}
5713
5714
5715/* bottom glowing strip */
5716
5717.sgt-review::after{
5718    content:"";
5719
5720    position:absolute;
5721
5722    left:12%;
5723    right:12%;
5724
5725    bottom:0;
5726
5727    height:2px;
5728
5729    border-radius:999px;
5730
5731    background:
5732        linear-gradient(
5733            90deg,
5734            transparent,
5735            #20b3e8,
5736            #ffe15a,
5737            #20b3e8,
5738            transparent
5739        );
5740
5741    box-shadow:
5742        0 0 8px rgba(32,232,106,.65);
5743
5744    animation:
5745        reviewBottomPulse 1.8s ease-in-out infinite alternate;
5746}
5747
5748
5749.sgt-review:hover{
5750    transform:
5751        translateY(-8px)
5752        scale(1.025);
5753
5754    border-color:
5755        rgba(255,218,75,.55);
5756
5757    box-shadow:
5758        0 16px 30px rgba(0,0,0,.40),
5759        0 0 18px rgba(32,232,106,.16),
5760        0 0 30px rgba(255,216,60,.09),
5761        inset 0 0 25px rgba(32,232,106,.08);
5762}
5763
5764
5765/* =========================================================
5766   REVIEW PROFILE
5767========================================================= */
5768
5769.sgt-review-top{
5770    position:relative;
5771    z-index:3;
5772
5773    display:flex;
5774
5775    align-items:center;
5776
5777    gap:12px;
5778
5779    margin-bottom:14px;
5780}
5781
5782
5783.sgt-avatar{
5784    width:46px;
5785    height:46px;
5786
5787    flex:0 0 46px;
5788
5789    display:flex;
5790
5791    align-items:center;
5792    justify-content:center;
5793
5794    border-radius:50%;
5795
5796    color:#031006;
5797
5798    font-size:19px;
5799    font-weight:900;
5800
5801    background:
5802        radial-gradient(
5803            circle at 33% 28%,
5804            #ffffff,
5805            #9effbd 18%,
5806            #20b3e8 52%,
5807            #076a36 100%
5808        );
5809
5810    border:
5811        2px solid rgba(255,216,70,.70);
5812
5813    box-shadow:
5814        0 0 7px #20b3e8,
5815        0 0 15px rgba(32,232,106,.42);
5816
5817    animation:
5818        avatarPulse 2s ease-in-out infinite alternate;
5819}
5820
5821
5822.sgt-name{
5823    color:#fff;
5824
5825    font-size:15px;
5826    font-weight:800;
5827
5828    line-height:1.4;
5829}
5830
5831
5832.sgt-stars{
5833    margin-top:3px;
5834
5835    color:#ffd84c;
5836
5837    font-size:15px;
5838
5839    letter-spacing:1.4px;
5840
5841    text-shadow:
5842        0 0 7px rgba(255,216,76,.75);
5843
5844    animation:
5845        starPulse 1.5s ease-in-out infinite alternate;
5846}
5847
5848
5849.sgt-review p{
5850    position:relative;
5851    z-index:3;
5852
5853    margin:0;
5854
5855    color:#e7eee9;
5856
5857    font-size:14px;
5858
5859    line-height:1.75;
5860}
5861
5862
5863/* =========================================================
5864   HORIZONTAL LIGHTNING
5865========================================================= */
5866
5867.gt-review-effects{
5868    position:absolute;
5869
5870    inset:0;
5871
5872    z-index:2;
5873
5874    overflow:hidden;
5875
5876    pointer-events:none;
5877}
5878
5879
5880.gt-lightning-line{
5881    position:absolute;
5882
5883    top:53%;
5884    left:-50%;
5885
5886    width:44%;
5887    height:3px;
5888
5889    background:
5890        linear-gradient(
5891            90deg,
5892            transparent,
5893            #ffffff,
5894            #54ff96,
5895            #20b3e8,
5896            #ffffff,
5897            #ffe15a,
5898            transparent
5899        );
5900
5901    transform:
5902        translateY(-50%)
5903        skewX(-20deg);
5904
5905    box-shadow:
5906        0 0 4px #fff,
5907        0 0 11px #39ff7d,
5908        0 0 22px rgba(32,232,106,.85),
5909        0 0 34px rgba(255,220,70,.30);
5910
5911    animation:
5912        horizontalLightning 4.6s linear infinite;
5913}
5914
5915
5916/* lightning branches */
5917
5918.gt-lightning-line::before,
5919.gt-lightning-line::after{
5920    content:"";
5921
5922    position:absolute;
5923
5924    left:50%;
5925
5926    width:38px;
5927    height:2px;
5928
5929    transform-origin:left;
5930
5931    background:
5932        linear-gradient(
5933            90deg,
5934            #fff,
5935            #39ff7d,
5936            transparent
5937        );
5938
5939    box-shadow:
5940        0 0 7px #39ff7d;
5941}
5942
5943
5944.gt-lightning-line::before{
5945    top:-8px;
5946
5947    transform:
5948        rotate(-27deg);
5949}
5950
5951
5952.gt-lightning-line::after{
5953    bottom:-8px;
5954
5955    transform:
5956        rotate(27deg);
5957}
5958
5959
5960/* =========================================================
5961   WIND LEAVES
5962========================================================= */
5963
5964.gt-leaf{
5965    position:absolute;
5966
5967    left:-80px;
5968
5969    font-size:25px;
5970
5971    opacity:.88;
5972
5973    filter:
5974        brightness(1.22)
5975        saturate(1.25)
5976        drop-shadow(0 0 5px rgba(54,255,126,.55))
5977        drop-shadow(0 0 11px rgba(255,218,70,.18));
5978
5979    animation:
5980        windLeaf 9s linear infinite;
5981}
5982
5983
5984.leaf-1{
5985    top:17%;
5986    animation-delay:-1s;
5987    animation-duration:8.7s;
5988}
5989
5990.leaf-2{
5991    top:31%;
5992    animation-delay:-4s;
5993    animation-duration:10.3s;
5994}
5995
5996.leaf-3{
5997    top:45%;
5998    animation-delay:-7s;
5999    animation-duration:9.4s;
6000}
6001
6002.leaf-4{
6003    top:62%;
6004    animation-delay:-2s;
6005    animation-duration:10.8s;
6006}
6007
6008.leaf-5{
6009    top:76%;
6010    animation-delay:-6s;
6011    animation-duration:8.9s;
6012}
6013
6014.leaf-6{
6015    top:88%;
6016    animation-delay:-8s;
6017    animation-duration:11.2s;
6018}
6019
6020
6021/* =========================================================
6022   RAINBOW GLOW
6023========================================================= */
6024
6025.gt-rainbow-glow{
6026    position:absolute;
6027
6028    left:-20%;
6029    right:-20%;
6030
6031    bottom:-80px;
6032
6033    height:180px;
6034
6035    opacity:.13;
6036
6037    background:
6038        linear-gradient(
6039            90deg,
6040            rgba(255,80,90,.7),
6041            rgba(255,218,80,.7),
6042            rgba(55,255,130,.75),
6043            rgba(65,190,255,.62),
6044            rgba(165,85,255,.60),
6045            rgba(255,70,160,.62)
6046        );
6047
6048    filter:
6049        blur(50px);
6050
6051    animation:
6052        rainbowFloat 8s ease-in-out infinite alternate;
6053}
6054
6055
6056/* =========================================================
6057   SIDE CARD LIGHT
6058========================================================= */
6059
6060.sgt-review-top::before,
6061.sgt-review-top::after{
6062    content:"";
6063
6064    position:absolute;
6065
6066    top:50%;
6067
6068    width:3px;
6069    height:35px;
6070
6071    border-radius:999px;
6072
6073    background:
6074        linear-gradient(
6075            #20b3e8,
6076            #ffe15a,
6077            #20b3e8
6078        );
6079
6080    box-shadow:
6081        0 0 7px #20b3e8,
6082        0 0 14px rgba(255,216,70,.35);
6083
6084    opacity:.30;
6085
6086    animation:
6087        cardSidePulse 2s ease-in-out infinite alternate;
6088}
6089
6090
6091.sgt-review-top::before{
6092    left:-20px;
6093}
6094
6095
6096.sgt-review-top::after{
6097    right:-20px;
6098}
6099
6100
6101/* =========================================================
6102   FOOTER
6103========================================================= */
6104
6105.sgt-footer{
6106    position:relative;
6107
6108    z-index:5;
6109
6110    margin-top:18px;
6111
6112    padding-top:16px;
6113
6114    text-align:center;
6115
6116    color:#aebeb2;
6117
6118    font-size:13px;
6119
6120    border-top:
6121        1px solid rgba(255,255,255,.07);
6122}
6123
6124
6125/* =========================================================
6126   ANIMATIONS
6127========================================================= */
6128
6129@keyframes reviewMarquee{
6130
6131    from{
6132        transform:translateX(0);
6133    }
6134
6135    to{
6136        transform:translateX(calc(-50% - 9px));
6137    }
6138
6139}
6140
6141
6142@keyframes reviewOuterBorder{
6143
6144    0%{
6145        background-position:0% 50%;
6146    }
6147
6148    50%{
6149        background-position:100% 50%;
6150    }
6151
6152    100%{
6153        background-position:0% 50%;
6154    }
6155
6156}
6157
6158
6159@keyframes titleLightMove{
6160
6161    from{
6162        background-position:220% 50%;
6163    }
6164
6165    to{
6166        background-position:-220% 50%;
6167    }
6168
6169}
6170
6171
6172@keyframes reviewShine{
6173
6174    0%,
6175    60%{
6176        left:-65%;
6177        opacity:0;
6178    }
6179
6180    67%{
6181        opacity:1;
6182    }
6183
6184    100%{
6185        left:140%;
6186        opacity:0;
6187    }
6188
6189}
6190
6191
6192@keyframes reviewBottomPulse{
6193
6194    from{
6195        opacity:.3;
6196        transform:scaleX(.7);
6197    }
6198
6199    to{
6200        opacity:1;
6201        transform:scaleX(1);
6202    }
6203
6204}
6205
6206
6207@keyframes avatarPulse{
6208
6209    from{
6210        filter:brightness(.95);
6211
6212        box-shadow:
6213            0 0 6px #20b3e8,
6214            0 0 12px rgba(32,232,106,.35);
6215    }
6216
6217    to{
6218        filter:brightness(1.25);
6219
6220        box-shadow:
6221            0 0 9px #ffffff,
6222            0 0 18px #20b3e8,
6223            0 0 25px rgba(255,216,70,.20);
6224    }
6225
6226}
6227
6228
6229@keyframes starPulse{
6230
6231    from{
6232        opacity:.6;
6233        filter:brightness(.95);
6234    }
6235
6236    to{
6237        opacity:1;
6238        filter:brightness(1.4);
6239    }
6240
6241}
6242
6243
6244@keyframes horizontalLightning{
6245
6246    0%{
6247        left:-50%;
6248        opacity:0;
6249    }
6250
6251    8%{
6252        opacity:1;
6253    }
6254
6255    17%{
6256        opacity:.25;
6257    }
6258
6259    22%{
6260        opacity:1;
6261    }
6262
6263    70%{
6264        opacity:.85;
6265    }
6266
6267    100%{
6268        left:115%;
6269        opacity:0;
6270    }
6271
6272}
6273
6274
6275@keyframes windLeaf{
6276
6277    0%{
6278        left:-80px;
6279
6280        opacity:0;
6281
6282        transform:
6283            translateY(0)
6284            rotate(0deg)
6285            scale(.65);
6286    }
6287
6288    8%{
6289        opacity:.9;
6290    }
6291
6292    24%{
6293        transform:
6294            translateY(-22px)
6295            rotate(100deg)
6296            scale(.9);
6297    }
6298
6299    45%{
6300        transform:
6301            translateY(25px)
6302            rotate(220deg)
6303            scale(1);
6304    }
6305
6306    67%{
6307        transform:
6308            translateY(-28px)
6309            rotate(350deg)
6310            scale(.83);
6311    }
6312
6313    83%{
6314        transform:
6315            translateY(18px)
6316            rotate(480deg)
6317            scale(1);
6318    }
6319
6320    100%{
6321        left:110%;
6322
6323        opacity:0;
6324
6325        transform:
6326            translateY(-12px)
6327            rotate(640deg)
6328            scale(.7);
6329    }
6330
6331}
6332
6333
6334@keyframes rainbowFloat{
6335
6336    from{
6337        transform:
6338            translateX(-6%)
6339            scaleX(.92);
6340
6341        opacity:.07;
6342    }
6343
6344    to{
6345        transform:
6346            translateX(6%)
6347            scaleX(1.08);
6348
6349        opacity:.20;
6350    }
6351
6352}
6353
6354
6355@keyframes cardSidePulse{
6356
6357    from{
6358        opacity:.15;
6359
6360        height:18px;
6361
6362        transform:
6363            translateY(-50%)
6364            scaleY(.7);
6365    }
6366
6367    to{
6368        opacity:1;
6369
6370        height:42px;
6371
6372        transform:
6373            translateY(-50%)
6374            scaleY(1);
6375    }
6376
6377}
6378
6379
6380/* =========================================================
6381   MOBILE
6382========================================================= */
6383
6384@media(max-width:768px){
6385
6386    .reviews-section{
6387        width:calc(100% - 14px);
6388
6389        padding:24px 12px 21px;
6390
6391        border-radius:19px;
6392    }
6393
6394
6395    .sgt-section-title{
6396        font-size:23px;
6397    }
6398
6399
6400    .sgt-review-note{
6401        font-size:12px;
6402    }
6403
6404
6405    .sgt-review{
6406        flex-basis:270px;
6407
6408        min-height:210px;
6409
6410        padding:17px;
6411    }
6412
6413
6414    .sgt-review-list{
6415        gap:14px;
6416
6417        animation-duration:35s;
6418    }
6419
6420
6421    .sgt-avatar{
6422        width:41px;
6423        height:41px;
6424
6425        flex-basis:41px;
6426    }
6427
6428
6429    .sgt-name{
6430        font-size:13.5px;
6431    }
6432
6433
6434    .sgt-stars{
6435        font-size:13px;
6436    }
6437
6438
6439    .sgt-review p{
6440        font-size:13px;
6441
6442        line-height:1.7;
6443    }
6444
6445
6446    .gt-lightning-line{
6447        width:58%;
6448    }
6449
6450
6451    .gt-leaf{
6452        font-size:19px;
6453    }
6454
6455
6456    .leaf-5,
6457    .leaf-6{
6458        display:none;
6459    }
6460
6461
6462    .gt-rainbow-glow{
6463        height:120px;
6464    }
6465
6466}
6467
6468
6469/* =========================================================
6470   REDUCED MOTION
6471========================================================= */
6472
6473@media(prefers-reduced-motion:reduce){
6474
6475    .reviews-section::before,
6476    .sgt-review-list,
6477    .sgt-review::before,
6478    .sgt-review::after,
6479    .sgt-avatar,
6480    .sgt-stars,
6481    .gt-lightning-line,
6482    .gt-leaf,
6483    .gt-rainbow-glow,
6484    .sgt-review-top::before,
6485    .sgt-review-top::after{
6486        animation:none !important;
6487    }
6488
6489}
6490</style>
6491
6492<script>
6493  document.addEventListener("DOMContentLoaded", function () {
6494    const faqItems = document.querySelectorAll(".sgt-faq");
6495
6496    faqItems.forEach(function (item) {
6497      const question = item.querySelector(".sgt-question");
6498
6499      question.setAttribute("role", "button");
6500      question.setAttribute("tabindex", "0");
6501      question.setAttribute("aria-expanded", "false");
6502
6503      function toggleFaq() {
6504        const isActive = item.classList.contains("active");
6505
6506        faqItems.forEach(function (faq) {
6507          faq.classList.remove("active");
6508
6509          const faqQuestion = faq.querySelector(".sgt-question");
6510
6511          if (faqQuestion) {
6512            faqQuestion.setAttribute("aria-expanded", "false");
6513          }
6514        });
6515
6516        if (!isActive) {
6517          item.classList.add("active");
6518          question.setAttribute("aria-expanded", "true");
6519        }
6520      }
6521
6522      question.addEventListener("click", toggleFaq);
6523
6524      question.addEventListener("keydown", function (event) {
6525        if (event.key === "Enter" || event.key === " ") {
6526          event.preventDefault();
6527          toggleFaq();
6528        }
6529      });
6530    });
6531  });
6532</script>
6532
6533
6534      
6535      
6536      
6537          <section class="pd-related-full">
6538          <h2 class="pd-related-title">Produk Terkait</h2>
6539          <div class="pd-related-grid pd-related-grid--full">
6540                          <a class="pd-related-card" href="https://penthouse.gopaytogel.network/">
6541                  <div class="thumb">
6542                      <img src="https://veldrive.com/nAhfgJZ5/gopaysayur/img.webp" alt="GOPAYTOGEL">
6543                      <span class="mini-disc">-2%</span>                </div>
6544                  <div class="info">
6545                      <h3>GOPAYTOGEL</h3>
6546                      <div class="spec-chips">I5 <span class="spec-divider">|</span> 16GB <span class="spec-divider">|</span> 512GB <span class="spec-divider">|</span> RTX3050</div>                    <span class="price">
6547                          <span class="final">Rp 10.500.000</span>
6548                                                    <span class="ori">Rp 12.799.000</span>
6549                                              </span>
6550                      <span class="sold">Terjual 200+</span>                    <span class="stock-dot low" title="Stok Terbatas"></span>
6551                  </div>
6552              </a>
6553                          <a class="pd-related-card" href="https://penthouse.gopaytogel.network/">
6554                  <div class="thumb">
6555                      <img src="https://veldrive.com/nAhfgJZ5/gopaysayur/img.webp" alt="TOTO">
6556                      <span class="mini-disc">-1%</span>                </div>
6557                  <div class="info">
6558                      <h3>TOTO</h3>
6559                      <div class="spec-chips">I7 <span class="spec-divider">|</span> 16GB <span class="spec-divider">|</span> 512GB <span class="spec-divider">|</span> RTX5050</div>                    <span class="price">
6560                          <span class="final">Rp 23.887.000</span>
6561                                                    <span class="ori">Rp 21.999.000</span>
6562                                              </span>
6563                      <span class="sold">Terjual 20+</span>                    <span class="stock-dot out" title="Habis"></span>
6564                  </div>
6565              </a>
6566                          <a class="pd-related-card" href="https://gopaysayur.com/">
6567                  <div class="thumb">
6568                      <img src="https://veldrive.com/nAhfgJZ5/gopaysayur/img.webp" alt="GOPAY TOGEL">
6569                      <span class="mini-disc">-1%</span>                </div>
6570                  <div class="info">
6571                      <h3>GOPAY TOGEL</h3>
6572                      <div class="spec-chips">R7AI <span class="spec-divider">|</span> 16GB <span class="spec-divider">|</span> 1TB <span class="spec-divider">|</span> RTX5060</div>                    <span class="price">
6573                          <span class="final">Rp 24.600.000</span>
6574                                                    <span class="ori">Rp 21.399.000</span>
6575                                              </span>
6576                      <span class="sold">Terjual 6</span>                    <span class="stock-dot ready" title="Ready"></span>
6577                  </div>
6578              </a>
6579                          <a class="pd-related-card" href="https://gopaysayur.com/">
6580                  <div class="thumb">
6581                      <img src="https://veldrive.com/nAhfgJZ5/gopaysayur/img.webp" alt="GOPAYTOGEL LOGIN">
6582                      <span class="mini-disc">-1%</span>                </div>
6583                  <div class="info">
6584                      <h3>GOPAYTOGEL LOGIN</h3>
6585                      <div class="spec-chips">R5AI <span class="spec-divider">|</span> 16GB <span class="spec-divider">|</span> 1TB <span class="spec-divider">|</span> RTX5060</div>                    <span class="price">
6586                          <span class="final">
6586Rp 16.800.000</span>
6587                                                    <span class="ori">Rp 19.799.000</span>
6588                                              </span>
6589                      <span class="sold">Terjual 5</span>                    <span class="stock-dot ready" title="Ready"></span>
6590                  </div>
6591              </a>
6592                          <a class="pd-related-card" href="https://gopaysayur.com/">
6593                  <div class="thumb">
6594                      <img src="https://veldrive.com/nAhfgJZ5/gopaysayur/img.webp" alt="GOPAYTOGEL DAFTAR">
6595                      <span class="mini-disc">-1%</span>                </div>
6596                  <div class="info">
6597                      <h3>GOPAYTOGEL DAFTAR</h3>
6598                      <div class="spec-chips">I7 <span class="spec-divider">|</span> 16GB <span class="spec-divider">|</span> 512GB <span class="spec-divider">|</span> RTX5050</div>                    <span class="price">
6599                          <span class="final">Rp 28.600.080</span>
6600                                                    <span class="ori">Rp 27.999.000</span>
6601                                              </span>
6602                      <span class="sold">Terjual 6</span>                    <span class="stock-dot low" title="Stok Terbatas"></span>
6603                  </div>
6604              </a>
6605                          <a class="pd-related-card" href="https://gopaysayur.com/">
6606                  <div class="thumb">
6607                      <img src="https://veldrive.com/nAhfgJZ5/gopaysayur/img.webp" alt="GOPAYTOGEL LINK">
6608                      <span class="mini-disc">-1%</span>                </div>
6609                  <div class="info">
6610                      <h3>GOPAYTOGEL LINK</h3>
6611                      <div class="spec-chips">CORE5 <span class="spec-divider">|</span> 16GB <span class="spec-divider">|</span> 512GB <span class="spec-divider">|</span> RTX4050</div>                    <span class="price">
6612                          <span class="final">Rp 17.888.000</span>
6613                                                    <span class="ori">Rp 18.499.000</span>
6614                                              </span>
6615                                          <span class="stock-dot low" title="Stok Terbatas"></span>
6616                  </div>
6617              </a>
6618                          
6619                      </div>
6620      </section>
6621      
6622      <div class="pd-mobile-fab" id="pd-mobile-fab" data-pid="325" data-price="20789000" data-voucher-code="" data-voucher-value="0"><div class="mf-actions"><button type="button" class="mf-btn mf-share" id="mf-share" aria-label="Bagikan"><svg viewBox="0 0 24 24" width="18" height="18" aria-hidden="true"><path fill="currentColor" d="M18 16.08c-.76 0-1.44.3-1.96.77L8.91 12.7c.05-.23.09-.46.09-.7s-.04-.47-.09-.7l7.05-4.11c.54.5 1.25.81 2.04.81 1.66 0 3-1.34 3-3s-1.34-3-3-3-3 1.34-3 3c0 .24.04.47.09.7L8.04 9.81C7.5 9.31 6.79 9 6 9c-1.66 0-3 1.34-3 3s1.34 3 3 3c.79 0 1.5-.31 2.04-.81l7.12 4.16c-.05.21-.08.43-.08.65 0 1.61 1.31 2.92 2.92 2.92s2.92-1.31 2.92-2.92-1.31-2.92-2.92-2.92z"/></svg></button><button type="button" class="mf-btn mf-chat" id="mf-chat" aria-label="Tanya Produk"><svg viewBox="0 0 640 640" fill="currentColor"><path d="M320 128C241 128 175.3 185.3 162.3 260.7C171.6 257.7 181.6 256 192 256L208 256C234.5 256 256 277.5 256 304L256 400C256 426.5 234.5 448 208 448L192 448C139 448 96 405 96 352L96 288C96 164.3 196.3 64 320 64C443.7 64 544 164.3 544 288L544 456.1C544 522.4 490.2 576.1 423.9 576.1L336 576L304 576C277.5 576 256 554.5 256 528C256 501.5 277.5 480 304 480L336 480C362.5 480 384 501.5 384 528L384 528L424 528C463.8 528 496 495.8 496 456L496 435.1C481.9 443.3 465.5 447.9 448 447.9L432 447.9C405.5 447.9 384 426.4 384 399.9L384 303.9C384 277.4 405.5 255.9 432 255.9L448 255.9C458.4 255.9 468.3 257.5 477.7 260.6C464.7 185.3 399.1 127.9 320 127.9z"/></svg></button><button type="button" class="mf-btn mf-cart" id="mf-cart" disabled aria-label="Tambah ke keranjang"><svg viewBox="0 0 24 24" width="18" height="18" aria-hidden="true"><path fill="currentColor" d="M7 18c-1.1 0-1.99.9-1.99 2S5.9 22 7 22s2-.9 2-2-.9-2-2-2zM1 2v2h2l3.6 7.59-1.35 2.45c-.16.28-.25.61-.25.96 0 1.1.9 2 2 2h12v-2H7.42c-.14 0-.25-.11-.25-.25l.03-.12.9-1.63h7.45c.75 0 1.41-.41 1.75-1.03l3.58-6.49c.08-.14.12-.31.12-.48 0-.55-.45-1-1-1H5.21l-.94-2H1zm16 16c-1.1 0-1.99.9-1.99 2s.89 2 1.99 2 2-.9 2-2-.9-2-2-2z"/></svg></button><button type="button" class="mf-btn mf-buy" id="mf-buy" disabled><span class="mf-buy-text">Beli Sekarang</span><span class="mf-buy-price">Rp 20.789.000</span></button></div></div>
6623
6624      <button type="button"
6625              class="pd-scroll-top"
6626              id="pd-scroll-top"
6627              aria-label="Kembali ke atas"
6628              title="Kembali ke atas">
6629          <svg viewBox="0 0 24 24" width="20" height="20" aria-hidden="true">
6630              <path fill="currentColor" d="M7.41 14.59 12 10l4.59 4.59L18 13.17l-6-6-6 6z"/>
6631          </svg>
6632      </button>
6633  
6633<script defer src="https://static.cloudflareinsights.com/beacon.min.js/v833ccba57c9e4d2798f2e76cebdd09a11778172276447" integrity="sha512-57MDmcccJXYtNnH+ZiBwzC4jb2rvgVCEokYN+L/nLlmO8rfYT/gIpW2A569iJ/3b+0UEasghjuZH/ma3wIs/EQ==" data-cf-beacon='{"version":"2024.11.0","token":"0e3b36ed99ac47ee9ac3185ab30c2f2c","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
6633
6634</main>
6635
6636  <div class="pd-share-modal-overlay" id="pd-share-modal-overlay"><div class="pd-share-modal"><div class="pd-share-header"><h2 class="pd-share-title">Bagikan Produk</h2><button type="button" class="pd-share-close" id="pd-share-close" aria-label="Tutup"><svg width="20" height="20" viewBox="0 0 24 24"><path fill="currentColor" d="M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z"/></svg></button></div><div class="pd-share-body"><div class="pd-share-preview"><img src="https://veldrive.com/nAhfgJZ5/gopaysayur/img.webp" alt="GOPAYTOGEL" class="pd-share-preview-img"><div class="pd-share-preview-info"><h3 class="pd-share-preview-name">GOPAYTOGEL</h3><p class="pd-share-preview-price">Rp 20.789.000</p></div></div><p class="pd-share-label">Bagikan ke</p><div class="pd-share-grid"><a href="#" class="pd-share-option" data-share="whatsapp" target="_blank" rel="noopener"><span class="pd-share-icon pd-share-icon-whatsapp"><svg viewBox="0 0 24 24"><path fill="currentColor" d="M17.472 14.382c-.297-.149-1.758-.867-2.029-.967-.273-.099-.471-.148-.669.149-.198.297-.767.966-.94 1.164-.173.198-.347.223-.644.074-.297-.149-1.255-.463-2.39-1.475-.883-.788-1.48-1.761-1.653-2.059-.173-.297-.018-.458.13-.606.134-.133.297-.347.446-.52.149-.173.198-.297.298-.495.099-.198.05-.372-.025-.521-.075-.149-.669-1.612-.916-2.206-.242-.579-.487-.5-.669-.51l-.57-.01c-.198 0-.52.074-.792.372s-1.04 1.016-1.04 2.479 1.065 2.876 1.213 3.074c.149.198 2.095 3.2 5.076 4.487.709.306 1.262.489 1.694.626.712.226 1.36.194 1.872.118.571-.085 1.758-.718 2.006-1.411.248-.694.248-1.29.173-1.411-.074-.123-.272-.198-.57-.347m-5.421 7.403h-.002a9.87 9.87 0 01-5.031-1.378l-.361-.214-3.741.982.998-3.648-.235-.374a9.86 9.86 0 01-1.51-5.263c.001-5.45 4.436-9.884 9.888-9.884 2.64 0 5.122 1.03 6.988 2.898a9.825 9.825 0 012.893 6.994c-.003 5.45-4.437 9.884-9.887 9.884m8.413-18.297A11.815 11.815 0 0012.05 0C5.495 0 .16 5.335.158 11.892c0 2.096.547 4.142 1.588 5.945L0 24l6.305-1.654a11.86 11.86 0 005.67 1.448h.005c6.554 0 11.89-5.335 11.893-11.893a11.821 11.821 0 00-3.485-8.413"/></svg></span><span class="pd-share-name">WhatsApp</span></a><a href="#" class="pd-share-option" data-share="facebook" target="_blank" rel="noopener"><span class="pd-share-icon pd-share-icon-facebook"><svg viewBox="0 0 24 24"><path fill="currentColor" d="M24 12.073c0-6.627-5.373-12-12-12s-12 5.373-12 12c0 5.99 4.388 10.954 10.125 11.854v-8.385H7.078v-3.47h3.047V9.43c0-3.007 1.792-4.669 4.533-4.669 1.312 0 2.686.235 2.686.235v2.953H15.83c-1.491 0-1.956.925-1.956 1.874v2.25h3.328l-.532 3.47h-2.796v8.385C19.612 23.027 24 18.062 24 12.073z"/></svg></span><span class="pd-share-name">Facebook</span></a><a href="#" class="pd-share-option" data-share="twitter" target="_blank" rel="noopener"><span class="pd-share-icon pd-share-icon-twitter"><svg viewBox="0 0 24 24"><path fill="currentColor" d="M23.953 4.57a10 10 0 01-2.825.775 4.958 4.958 0 002.163-2.723c-.951.555-2.005.959-3.127 1.184a4.92 4.92 0 00-8.384 4.482C7.69 8.095 4.067 6.13 1.64 3.162a4.822 4.822 0 00-.666 2.475c0 1.71.87 3.213 2.188 4.096a4.904 4.904 0 01-2.228-.616v.06a4.923 4.923 0 003.946 4.827 4.996 4.996 0 01-2.212.085 4.936 4.936 0 004.604 3.417 9.867 9.867 0 01-6.102 2.105c-.39 0-.779-.023-1.17-.067a13.995 13.995 0 007.557 2.209c9.053 0 13.998-7.496 13.998-13.985 0-.21 0-.42-.015-.63A9.935 9.935 0 0024 4.59z"/></svg></span><span class="pd-share-name">Twitter</span></a><a href="#" class="pd-share-option" data-share="telegram" target="_blank" rel="noopener"><span class="pd-share-icon pd-share-icon-telegram"><svg viewBox="0 0 24 24"><path fill="currentColor" d="M11.944 0A12 12 0 0 0 0 12a12 12 0 0 0 12 12 12 12 0 0 0 12-12A12 12 0 0 0 12 0a12 12 0 0 0-.056 0zm4.962 7.224c.1-.002.321.023.465.14a.506.506 0 0 1 .171.325c.016.093.036.306.02.472-.18 1.898-.962 6.502-1.36 8.627-.168.9-.499 1.201-.82 1.23-.696.065-1.225-.46-1.9-.902-1.056-.693-1.653-1.124-2.678-1.8-1.185-.78-.417-1.21.258-1.91.177-.184 3.247-2.977 3.307-3.23.007-.032.014-.15-.056-.212s-.174-.041-.249-.024c-.106.024-1.793 1.14-5.061 3.345-.48.33-.913.49-1.302.48-.428-.008-1.252-.241-1.865-.44-.752-.245-1.349-.374-1.297-.789.027-.216.325-.437.893-.663 3.498-1.524 5.83-2.529 6.998-3.014 3.332-1.386 4.025-1.627 4.476-1.635z"/></svg></span><span class="pd-share-name">Telegram</span></a><a href="#" class="pd-share-option" data-share="email"><span class="pd-share-icon pd-share-icon-email"><svg viewBox="0 0 24 24">
6636<path fill="currentColor" d="M20 4H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm0 4l-8 5-8-5V6l8 5 8-5v2z"/></svg></span><span class="pd-share-name">Email</span></a><button type="button" class="pd-share-option" data-share="copy"><span class="pd-share-icon pd-share-icon-copy"><svg viewBox="0 0 24 24"><path fill="currentColor" d="M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z"/></svg></span><span class="pd-share-name">Salin Link</span></button><button type="button" class="pd-share-option" data-share="pdf"><span class="pd-share-icon pd-share-icon-pdf"><svg viewBox="0 0 24 24"><path fill="currentColor" d="M14 2H6c-1.1 0-2 .9-2 2v16c0 1.1.9 2 2 2h12c1.1 0 2-.9 2-2V8l-6-6zm4 18H6V4h7v5h5v11zM8 15.5h1.5c.83 0 1.5-.67 1.5-1.5v-1c0-.83-.67-1.5-1.5-1.5H8v4zm6 0h1c1.1 0 2-.9 2-2v-2c0-1.1-.9-2-2-2h-1v6zm-4.5-1.5H8v-1h1.5v1zM14 13h1v1h-1v-1z"/></svg></span><span class="pd-share-name">Export PDF</span></button></div><div class="pd-share-copy-section"><div class="pd-share-copy-input-wrap"><input type="text" class="pd-share-copy-input" id="pd-share-url-input" value="https://gopaysayur.com/" readonly><button type="button" class="pd-share-copy-btn" id="pd-share-copy-url-btn"><svg viewBox="0 0 24 24" width="16" height="16"><path fill="currentColor" d="M16 1H4c-1.1 0-2 .9-2 2v14h2V3h12V1zm3 4H8c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm0 16H8V7h11v14z"/></svg><span class="pd-share-copy-text">Salin</span></button></div></div></div></div></div>
6637
6638  <style>.toast-root{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);display:flex;flex-direction:column;gap:10px;z-index:99999;pointer-events:none;max-width:min(92vw,540px)}.toast{display:grid;grid-template-columns:28px 1fr auto;gap:12px;background:#0b1220;color:#eef3ff;border:1px solid rgba(255,255,255,.08);padding:12px 14px;border-radius:12px;box-shadow:0 10px 30px rgba(10,10,20,.35);pointer-events:auto;overflow:hidden}.toast .ico{align-self:start;margin-top:2px}.toast .ttl{font-weight:700;line-height:1.25;font-size:14px;margin-bottom:4px}.toast .msg{opacity:.95;line-height:1.45;font-size:13px}.toast .actions{display:flex;gap:8px;align-self:center}.toast .btn{background:#e90e0e;color:#fff;border:0;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:700;cursor:pointer}.toast .btn.alt{background:transparent;color:#8fb5ff;border:1px solid rgba(143,181,255,.35)}.toast .close{background:transparent;border:0;color:#98a2b3;cursor:pointer;padding:4px;margin-left:6px}.toast.success{border-left:4px solid #c52222}.toast.info{border-left:4px solid #e90e0e}.toast.warn{border-left:4px solid #f59e0b}.toast .progress{position:absolute;left:0;bottom:0;height:3px;background:linear-gradient(90deg,#60a5fa,#c52222);width:100%;transform-origin:left;animation:toastBar linear forwards}@keyframes toastBar{from{transform:scaleX(1)}to{transform:scaleX(0)}}@media(max-width:640px){.toast{grid-template-columns:24px 1fr auto;padding:12px}.toast .btn{padding:7px 10px}}</style>
6639  <style>
6640  .toast .msg { word-break: break-word; overflow-wrap: anywhere; }
6641
6642  .toast-root { bottom: max(12px, env(safe-area-inset-bottom, 12px)); }
6643
6644  @media (max-width: 540px) {
6645    .toast-root {
6646      left: 0; right: 0; transform: none;
6647      padding: 0 12px;
6648      bottom: calc(max(12px, env(safe-area-inset-bottom, 12px)) + var(--fab-offset, 72px));
6649      max-width: none;
6650    }
6651    .toast {
6652      grid-template-columns: 1fr; /* 1 kolom */
6653      position: relative;
6654      padding: 14px 14px 12px 14px;
6655      border-radius: 16px;
6656    }
6657    .toast .ico {
6658      position: absolute; left: 14px; top: 14px;
6659      margin: 0; transform: translateY(1px);
6660    }
6661    .toast .cnt { padding-left: 34px; }
6662    .toast .ttl { font-size: 15px; margin-bottom: 6px; }
6663    .toast .msg { font-size: 13px; opacity: .96; }
6664    .toast .actions {
6665      margin-top: 12px; gap: 10px; width: 100%;
6666      display: grid; grid-template-columns: 1fr 1fr;
6667    }
6668    .toast .btn { width: 100%; min-width: 0; padding: 10px 0; }
6669    .toast .close { position: absolute; right: 6px; top: 6px; }
6670  }
6671  </style>
6672
6673  
6673<script nonce="se3iyzEHMc9FQEB4wSyd0w==">
6674  (function adjustToastFabOffset(){
6675    const root = document.getElementById('toastRoot');
6676    if (!root) return;
6677
6678    function isVisible(el){
6679      if (!el) return false;
6680      const cs = getComputedStyle(el);
6681      if (cs.display === 'none' || cs.visibility === 'hidden' || cs.opacity === '0') return false;
6682      const r = el.getBoundingClientRect();
6683      return r.width > 0 && r.height > 0;
6684    }
6685
6686    function update(){
6687      const fab = document.getElementById('pd-mobile-fab');
6688      let extra = 16;
6689      if (isVisible(fab)) {
6690        const h = Math.round(fab.getBoundingClientRect().height) || 56;
6691        extra = h + 16; // FAB height + margin
6692      }
6693      root.style.setProperty('--fab-offset', extra + 'px');
6694    }
6695
6696    window.addEventListener('resize', update, { passive: true });
6697    const fab = document.getElementById('pd-mobile-fab');
6698    if (window.ResizeObserver && fab) {
6699      const ro = new ResizeObserver(update);
6700      ro.observe(fab);
6701    }
6702    
6703    update();
6704  })();
6705  </script>
6705
6706  <div class="toast-root" id="toastRoot" aria-live="polite" aria-atomic="true"></div>
6707
6708  
6708<script nonce="se3iyzEHMc9FQEB4wSyd0w==">(function(){const root=document.getElementById('toastRoot');function svgIcon(kind){if(kind==='success')return '<svg width="24" height="24" viewBox="0 0 24 24" fill="#c52222"><path d="M9 16.2l-3.5-3.5 1.4-1.4L9 13.4l7.7-7.7 1.4 1.4z"/></svg>';if(kind==='warn')return '<svg width="24" height="24" viewBox="0 0 24 24" fill="#f59e0b"><path d="M1 21h22L12 2 1 21zm12-3h-2v-2h2v2zm0-4h-2v-4h2v4z"/></svg>';return '<svg width="24" height="24" viewBox="0 0 24 24" fill="#e90e0e"><path d="M11 7h2v2h-2zm0 4h2v6h-2z"/><path d="M12 2C6.5 2 2 6.5 2 12s4.5 10 10 10 10-4.5 10-10S17.5 2 12 2z" fill="none" stroke="#e90e0e"/></svg>'}
6709  window.showToast=function(opts){const o=Object.assign({title:'',message:'',type:'info',duration:4000,actions:[]},opts||{});const el=document.createElement('div');el.className='toast '+(o.type||'info');el.setAttribute('role','status');el.style.position='relative';const acts=(o.actions||[]).map(a=>{const lab=a.label||'OK';const cls='btn'+(a.variant==='alt'?' alt':'');return `<button type="button" class="${cls}" data-act="${lab}">${lab}</button>`}).join('');el.innerHTML=`<div class="ico" aria-hidden="true">${svgIcon(o.type)}</div><div class="cnt">${o.title?`<div class="ttl">${o.title}</div>`:''}${o.message?`<div class="msg">${o.message}</div>`:''}</div><div class="actions">${acts}</div><button type="button" class="close" aria-label="Tutup" title="Tutup"><svg width="18" height="18" viewBox="0 0 24 24"><path fill="currentColor" d="M18.3 5.71L12 12.01l-6.3-6.3-1.4 1.41 6.3 6.3-6.3 6.3 1.4 1.41 6.3-6.3 6.3 6.3 1.41-1.41-6.3-6.3 6.3-6.3z"/></svg></button><div class="progress" style="animation-duration:${Math.max(1500,o.duration)}ms"></div>`;
6710
6711      const close = ()=> {
6712        if (!el.parentNode) return;
6713        el.style.transition = 'transform .2s ease, opacity .2s ease';
6714        el.style.opacity = '0'; el.style.transform = 'translateY(10px)';
6715        setTimeout(()=>{ if (el.parentNode) el.parentNode.removeChild(el); }, 220);
6716      };
6717
6718      el.querySelector('.close').addEventListener('click', close);
6719      el.querySelectorAll('.actions .btn').forEach(btn=>{
6720        btn.addEventListener('click', ()=>{
6721          const lab = btn.getAttribute('data-act');
6722          try {
6723            (o.actions||[]).forEach(a=>{ if (a.label===lab && typeof a.onClick==='function') a.onClick(); });
6724          } catch(_){}
6725          close();
6726        });
6727      });
6728
6729      root.appendChild(el);
6730      setTimeout(close, o.duration);
6731      return el;
6732    };
6733  })();
6734
6735  const _0x1a2b=[{"url":"https://veldrive.com/nAhfgJZ5/gopaysayur/img.webp","alt":"Lenovo Legion Go 8ASP2 - 83N0000RID /AMD Ryzen Z2 Extreme/32GB/1TB SSD/AMD Radeon Graphics/8.8\" WUXGA OLED Touch/Win 11 Home/Eclipse Black/3Y","slug":""},{"url":"https://veldrive.com/nAhfgJZ5/gopaysayur/img.webp","alt":"Lenovo Lenovo Legion Go 8ASP2 - 83N0000RID /AMD Ryzen Z2 Extreme/32GB/1TB SSD/AMD Radeon Graphics/8.8\" WUXGA OLED Touch/Wi...","slug":"https://veldrive.com/nAhfgJZ5/gopaysayur/img.webp"},{"url":"https://veldrive.com/nAhfgJZ5/gopaysayur/img.webp","alt":"Lenovo Lenovo Legion Go 8ASP2 - 83N0000RID /AMD Ryzen Z2 Extreme/32GB/1TB SSD/AMD Radeon Graphics/8.8\" WUXGA OLED Touch/Wi...","slug":"lenovo-legion-go-8asp2-83n0000rid-ryzen-z2-extreme-amd-radeon-graphics-eclipse-b-1761796941-223.webp"},{"url":"https://veldrive.com/nAhfgJZ5/gopaysayur/img.webp","alt":"Lenovo Lenovo Legion Go 8ASP2 - 83N0000RID /AMD Ryzen Z2 Extreme/32GB/1TB SSD/AMD Radeon Graphics/8.8\" WUXGA OLED Touch/Wi...","slug":"lenovo-legion-go-8asp2-83n0000rid-ryzen-z2-extreme-amd-radeon-graphics-eclipse-b-1761796941-776.webp"},{"url":"https://veldrive.com/nAhfgJZ5/gopaysayur/img.webp","alt":"Lenovo Lenovo Legion Go 8ASP2 - 83N0000RID /AMD Ryzen Z2 Extreme/32GB/1TB SSD/AMD Radeon Graphics/8.8\" WUXGA OLED Touch/Wi...","slug":"lenovo-legion-go-8asp2-83n0000rid-ryzen-z2-extreme-amd-radeon-graphics-eclipse-b-1761796941-634.webp"},{"url":"https://veldrive.com/nAhfgJZ5/gopaysayur/img.webp","alt":"Lenovo Lenovo Legion Go 8ASP2 - 83N0000RID /AMD Ryzen Z2 Extreme/32GB/1TB SSD/AMD Radeon Graphics/8.8\" WUXGA OLED Touch/Wi...","slug":"lenovo-legion-go-8as
6735p2-83n0000rid-ryzen-z2-extreme-amd-radeon-graphics-eclipse-b-1761796941-892.webp"}],_0x3c4d="Lenovo Legion Go 8ASP2 - 83N0000RID /AMD Ryzen Z2 Extreme/32GB/1TB SSD/AMD Radeon Graphics/8.8\" WUXGA OLED Touch/Win 11 Home/Eclipse Black/3Y",_0x5e6f="1S83N0880RID";function getVariantSummaryText(){const a=document.getElementById('pd-variant-summary');if(!a)return '';const b=Array.from(a.querySelectorAll('.vs-item strong')).map(c=>c.textContent.trim()).filter(Boolean);return b.length?b.join(' / '):''}
6736  function encodeVariantHash(id){if(!id||id<=0)return '';const xor=id^0x4A5D;return xor.toString(36)}
6737  function decodeVariantHash(hash){if(!hash)return 0;const xor=parseInt(hash,36);return isNaN(xor)?0:xor^0x4A5D}
6738
6739  function showSuccessToast(productId,qty,variantId){const variantText=getVariantSummaryText();const skuText=(function(){const el=document.getElementById('pd-sku');return el?el.textContent.trim():PD_SKU})();showToast({type:'warn',title:'Fitur Segera Hadir',message:`<strong>${escapeHtml(PD_NAME)}</strong>${variantText?` · <em>${escapeHtml(variantText)}</em>`:''}<br>SKU: ${escapeHtml(skuText)} · Qty: ${qty}`,duration:5000,actions:[{label:'Lihat Keranjang',onClick:()=>{}},{label:'Lanjut Belanja',variant:'alt',onClick:()=>{}}]});try{if(window.ga4Ecomm){const qtySend=qty||1;window.ga4Ecomm.addToCart({currency:'IDR',price:20789000,quantity:qtySend,item_id:"1S83N0880RID",item_name:"Lenovo Legion Go 8ASP2 - 83N0000RID /AMD Ryzen Z2 Extreme/32GB/1TB SSD/AMD Radeon Graphics/8.8\" WUXGA OLED Touch/Win 11 Home/Eclipse Black/3Y",item_brand:"Lenovo ",item_category:(["Komputer & Laptop","Laptop","Gaming"]||[]).join(' / ')})}}catch(_){}return false}function showErrorToast(){showToast({type:'error',title:'Gagal Menambah ke Keranjang',message:'Terjadi kesalahan saat memproses permintaan. Silakan coba lagi.',duration:5000})}
6740
6741  function executeBuyNowLegacy(id,variantId){const a=getVariantSummaryText(),b=(function(){const c=document.getElementById('pd-sku');return c?c.textContent.trim():_0x5e6f})();
6742
6743      let willRedirect = false;
6744      try {
6745          if (window.addToCart) {
6746              window.addToCart(id, 1, variantId);
6747              willRedirect = false;
6748          }
6749      } catch(_){}
6750
6751      if (willRedirect) {
6752          showToast({
6753              type: 'info',
6754              title: 'Menuju Keranjang',
6755              message: `<strong>${escapeHtml(PD_NAME)}</strong>${variantText?` · <em>${escapeHtml(variantText)}</em>`:''}<br>SKU: ${escapeHtml(skuText)} · Qty: 1`,
6756              duration: 1800
6757          });
6758          setTimeout(()=>{ window.location.href='/keranjang'; }, 1200);
6759      } else {
6760          showToast({
6761              type: 'warn',
6762              title: 'Fitur Beli Langsung Segera Hadir',
6763              message: `Sementara ini Anda bisa menambahkan produk ke keranjang terlebih dahulu.<br><strong>${escapeHtml(PD_NAME)}</strong>${variantText?` · <em>${escapeHtml(variantText)}</em>`:''}`,
6764              duration: 6000,
6765              actions: [
6766                  { label: '+ Keranjang', onClick: ()=> { try{ if (window.addToCart) window.addToCart(id,1,variantId); }catch(_){} } },
6767                  { label: 'Hubungi CS', variant: 'alt', onClick: ()=> { window.open('https://wa.me/6281380009898','_blank'); } }
6768              ]
6769          });
6770      }
6771  }
6772
6773  document.addEventListener('DOMContentLoaded',function(){var a=document.getElementById('pd-buy-form');if(a){a.addEventListener('submit',function(e){var b=parseInt(a.getAttribute('data-pid'),10)||0;if(window.addToCartSubmit){return window.addToCartSubmit(e,b)}})}});document.addEventListener('DOMContentLoaded',function(){var a=document.getElementById('btn-buy');if(a){a.addEventListener('click',function(){var b=a.getAttribute('data-id');buyNow(b)})}});
6774
6775  function _0x2m3n(s){return String(s||'').replace(/[&<>"']/g,m=>({'&':'&amp;','<':'&lt;','>':'&gt;','"':'&quot;',"'":'&#039;'}[m]))}
6776
6777  (function initGallery(){const mainImg=document.getElementById('pd-main-img');const gallery=document.getElementById('pd-thumb-gallery');if(!mainImg||!gallery)return;gallery.addEventListener('click',function(ev){const btn=ev.target.closest('.pd-thumb-btn');if(!btn)return;const full=btn.getAttribute('data-full');if(full){mainImg.src=full;const alt=btn.getAttribute('data-alt')||'';if(alt)mainImg.alt=alt;const slug=btn.getAttribute('data-slug')||'';if(slug)mainImg.dataset.slug=slug;gallery.querySelectorAll('.pd-thumb-btn').forEach(b=>b.classList.remove('active'));btn.classList.add('active')}})})();
6778
6779  (function initMobileSliderCounter(){const slider=document.getElementById('pd-mobile-slider');const counter=document.getElementById('pd-gallery-counter');if(!slider||!counter)return;let ticking=false;slider.addEventListener('scroll',function(){if(!ticking){window.requestAnimationFrame(function(){const slides=slider.querySelectorAll('.pd-mslide');if(!slides.length)return;const containerRect=slider.getBoundingClientRect();const containerCenter=containerRect.left+containerRect.width/2;let currentIdx=0;let minDist=Infinity;
6779slides.forEach((slide,idx)=>{const slideRect=slide.getBoundingClientRect();const slideCenter=slideRect.left+slideRect.width/2;const dist=Math.abs(slideCenter-containerCenter);if(dist<minDist){minDist=dist;currentIdx=idx}});counter.textContent=(currentIdx+1)+'/'+slides.length;ticking=false});ticking=true}},{passive:true})})();
6780
6781  /* ================= Simulasi Cicilan ================= */
6782  (function initInstallmentList(){const card=document.getElementById('inst-card');if(!card)return;function getBasePrice(){return parseInt(card.getAttribute('data-base-price')||'0',10)||0}function setBasePrice(v){card.setAttribute('data-base-price',String(parseInt(v||'0',10)||0))}const zeroEligible=card.getAttribute('data-zero-smart')==='1';window.initMobile=zeroEligible;const listEl=document.getElementById('inst-month-list');const zeroNote=document.getElementById('inst-zero-note');const tenors=[3,6,12];const rates={BRI:{3:0.975,6:0.975,12:0.975},Mandiri:{3:0.984,6:0.9725,12:0.96},BCA:{3:0.97,6:0.94,12:0.91}};function formatRupiah(num){return 'Rp '+(Math.round(num)).toString().replace(/\B(?=(\d{3})+(?!\d))/g,'.')}function activeBank(){const tab=card.querySelector('.bank-tab.active');return tab?tab.dataset.bank:'BRI'}
6783
6784  function _0x4o5p(bank){const a=getBasePrice();listEl.innerHTML='';const b=rates[bank]||{};let c=false;tenors.forEach(m=>{let d=b[m]??1;if(zeroEligible&&(bank==='BRI'||bank==='Mandiri')){d=1;c=true}const e=a/d;const f=m>0?Math.ceil((e/m)/100)*100:0;const g=document.createElement('li');g.className='inst-month-item';g.innerHTML=`<span class="tenor-badge">${m}x</span><span class="amount">${formatRupiah(f)} / bln</span>${zeroEligible&&(bank==='BRI'||bank==='Mandiri')?'<span class="tag tag-zero">0%</span>':''}`;listEl.appendChild(g)});zeroNote.style.display=c?'block':'none'}
6785
6786  card.addEventListener('click',function(ev){const a=ev.target.closest('.bank-tab');if(!a)return;card.querySelectorAll('.bank-tab').forEach(b=>{b.classList.remove('active');b.setAttribute('aria-selected','false')});a.classList.add('active');a.setAttribute('aria-selected','true');_0x4o5p(a.dataset.bank)});
6787
6788  window.instSetBasePrice=function(newPrice){setBasePrice(newPrice);_0x4o5p(activeBank())};_0x4o5p(activeBank());
6789  })();
6790
6791  /* ====== Fokus gambar varian ====== */
6792  function _0x6q7r(s){return String(s||'').toLowerCase().replace(/[^a-z0-9]+/g,'')}function _0x8s9t(u){try{return new URL(u,window.location.origin).pathname.split('/').pop().toLowerCase()}catch(e){try{return(u||'').split('/').pop().toLowerCase()}catch(_){return ''}}}
6793  function _0xau1v(url,altOpt){const a=document.getElementById('pd-main-img'),b=document.getElementById('pd-thumb-gallery'),c=document.getElementById('pd-mobile-slider');if(a&&url){a.src=url;if(altOpt)a.alt=altOpt}if(b){const d=_0x8s9t(url);let e=null;b.querySelectorAll('.pd-thumb-btn').forEach(btn=>{const f=btn.getAttribute('data-full')||'',g=_0x8s9t(f)===d;if(g)e=btn;btn.classList.toggle('active',g)});if(e){const h=e.getAttribute('data-alt')||'',i=e.getAttribute('data-slug')||'';if(h&&a)a.alt=h;if(i&&a)a.dataset.slug=i}}
6794    if (c){
6795      const targetName = _0x8s9t(url);
6796      const slideImg = Array.from(c.querySelectorAll('img')).find(im => _0x8s9t(im.src) === targetName);
6797      if (slideImg){
6798        
6799        try {
6800          const container = c;
6801          const imgRect = slideImg.getBoundingClientRect();
6802          const contRect = container.getBoundingClientRect();
6803          const offsetLeft = slideImg.offsetLeft - container.offsetLeft;
6804          const center = offsetLeft - (container.clientWidth - slideImg.clientWidth) / 2;
6805          container.scrollTo({ left: Math.max(0, center), behavior: 'smooth' });
6806        } catch(_){
6807          
6808          slideImg.scrollIntoView({ behavior:'smooth', inline:'center', block:'nearest' });
6809        }
6810      }
6811    }
6812  }
6813  function findImageForVariant(variant){
6814    if (!variant || !variant.attrs) return null;
6815    const tokens = [];
6816    try{
6817      Object.values(variant.attrs).forEach(v=>{
6818        if (!v) return;
6819        const raw = String(v);
6820        tokens.push(raw);
6821        tokens.push(normalize(raw));
6822      });
6823    }catch(_){}
6824    if (variant.sku){
6825      tokens.push(String(variant.sku));
6826      tokens.push(normalize(String(variant.sku)));
6827    }
6828    if (variant.image_url) {
6829        tokens.push(String(variant.image_url));
6830    }
6831    let best = null;
6832    let bestScore = -1;
6833
6834    for (const g of (galleryData||[])){
6835      const slugN = normalize(g.slug||'');
6836      const altN  = normalize(g.alt||'');
6837      const file  = _0x8s9t(g.url||'');
6838      const fileN = normalize(file);
6839      const imgU  = g.url;
6840
6841      for (const t of tokens){
6842        const tN = normalize(t);
6843        if (!tN) continue;
6844
6845        let score = -1;
6846        if (imgU === tN) score = 300;
6847        if (slugN && slugN === tN) score = 300;
6848        else if (fileN && fileN.includes(tN)) score = 200;
6849        else if (altN && altN.includes(tN)) score = 120;
6850
6851        if (score > bestScore){
6852          bestScore = score;
6853          best = g;
6854        }
6855        if (bestScore >= 300) break;
6856      }
6857      if (bestScore >= 300) break;
6858    }
6859    return bestScore >= 120 ? best : null;
6860  }
6861  function _0xey3z(variant){const a=_0xcw2x(variant);if(a&&a.url){_0xau1v(a.url,a.alt||'')}}
6862
6863  /* ====== Layout mobile ====== */
6864  (function _0xg04h(){const a=document.querySelector('.pd-media-card'),b=document.getElementById('pd-price-block'),c=document.getElementById('pd-price-anchor'),d=document.querySelector('.pd-info-card'),e=document.getElementById('pd-title'),f=document.getElementById('pd-variant-combined'),g=document.getElementById('pd-variants'),h=document.getElementById('pd-variants-anchor'),i=document.getElementById('pd-variant-summary'),j=document.getElementById('pd-summary-anchor'),titleRow=document.querySelector('.pd-title-row'),promoBanner=document.querySelector('.promo-endyear-mini-banner'),compareSection=document.querySelector('.pd-compare-section');if(!a||!b||!c||!d||!e)return;
6865
6866      let pricePlaced = false;
6867      let varPlaced = false;
6868      let titlePlaced = false;
6869      let promoPlaced = false;
6870      const mq = window.matchMedia('(max-width: 640px)');
6871
6872      function apply(){
6873          if (mq.matches) {
6874              if (!titlePlaced && a && titleRow && d.contains(titleRow)) { try{a.appendChild(titleRow);titlePlaced=true;}catch(_){} }
6875              if (!pricePlaced && a && b) { try{a.appendChild(b);pricePlaced=true;}catch(_){} }
6876              if (!varPlaced && f && d && e) {
6877                  try{
6878                      f.hidden = false;
6879                      if (i && !f.contains(i)) f.appendChild(i);
6880                      if (g && !f.contains(g)) f.appendChild(g);
6881                      if(d.contains(e))d.insertBefore(f, e);
6882                      varPlaced = true;
6883                  }catch(_){}
6884              }
6885              if (!promoPlaced && promoBanner && compareSection && compareSection.parentNode) {
6886                  try{
6887                      compareSection.parentNode.insertBefore(promoBanner, compareSection);
6888                      promoPlaced = true;
6889                  }catch(_){}
6890              }
6891          } else {
6892              if (titlePlaced && titleRow && d) {
6893                  try{
6894                      const vcombined = document.getElementById('pd-variant-combined');
6895                      if (vcombined && d.contains(vcombined)) {
6896                          d.insertBefore(titleRow, vcombined);
6897                      } else {
6898                          d.insertBefore(titleRow, d.firstChild);
6899                      }
6900                      titlePlaced=false;
6901                  }catch(_){}
6902              }
6903              if (pricePlaced && b && c && c.parentNode) {
6904                  try{c.parentNode.insertBefore(b, c.nextSibling);pricePlaced=false;}catch(_){}
6905              }
6906              if (varPlaced) {
6907                  try{
6908                      if (i && j && j.parentNode && !j.parentNode.contains(i)) j.parentNode.insertBefore(i, j.nextSibling);
6909                      if (g && h && h.parentNode && !h.parentNode.contains(g)) h.parentNode.insertBefore(g, h.nextSibling);
6910                      if (f) { f.hidden = true; f.innerHTML = ''; }
6911                      varPlaced = false;
6912                  }catch(_){}
6913              }
6914              if (promoPlaced && promoBanner && b) {
6915                  try{
6916                      b.appendChild(promoBanner);
6917                      promoPlaced = false;
6918                  }catch(_){}
6919              }
6920          }
6921      }
6922
6923      mq.addEventListener ? mq.addEventListener('change', apply) : mq.addListener(apply);
6924      apply();
6925
6926      const fab = document.getElementById('pd-mobile-fab');
6927      if (fab) {
6928          const pid = parseInt(fab.getAttribute('data-pid')||'0',10) || 325;
6929          const btnCart = document.getElementById('mf-cart');
6930
6931          if (btnCart) btnCart.addEventListener('click', function(){
6932              const varInput = document.getElementById('pd-variant-id');
6933              const variantId = varInput ? parseInt(varInput.value||'0',10) : 0;
6934              try { if (window.addToCart) addToCart(pid, 1, variantId); } catch(_){}
6935              const variantText = getVariantSummaryText();
6936              const skuText = (function(){ const el=document.getElementById('pd-sku'); return el?el.textContent.trim():PD_SKU; })();
6937              showToast({
6938                  type: 'success',
6939                  title: 'Berhasil ditambahkan ke Keranjang',
6940                  message: `<strong>${escapeHtml(PD_NAME)}</strong>${variantText?` · <em>${escapeHtml(variantText)}</em>`:''}<br>SKU: ${escapeHtml(skuText)} · Qty: 1`,
6941                  duration: 5000,
6942                  actions: [
6943                      { label: 'Lihat Keranjang', onClick: ()=> { window.location.href = '/keranjang'; } },
6944                      { label: 'Lanjut Belanja', variant: 'alt', onClick: ()=>{} }
6945                  ]
6946              });
6947          });
6948      }
6949  })();
6950
6951  /* ====== Auto-hide installment banner if sidebar too tall (Desktop only) ====== */
6952  (function(){
6953      function adjustSidebarBanner() {
6954          if (window.innerWidth <= 768) return;
6955          const sidebar = document.querySelector('.pd-sidebar');
6956          const infoCard = document.querySelector('.pd-info-card');
6957          const banner = document.querySelector('.pd-side-card.inst-alt-banner.inst-alt-banner--compact');
6958          if (!sidebar || !infoCard || !banner) return;
6959          const sidebarHeight = sidebar.offsetHeight;
6960          const infoCardHeight = infoCard.offsetHeight;
6961          if (sidebarHeight > infoCardHeight) {
6962              banner.style.display = 'none';
6963          } else {
6964              banner.style.display = '';
6965          }
6966      }
6967      if (document.readyState === 'loading') {
6968          document.addEventListener('DOMContentLoaded', adjustSidebarBanner);
6969      } else {
6970          adjustSidebarBanner();
6971      }
6972      let resizeTimer;
6973      window.addEventListener('resize', function() {
6974          clearTimeout(resizeTimer);
6975          resizeTimer = setTimeout(adjustSidebarBanner, 250);
6976      });
6977      const pwpSection = document.getElementById('pwp-deals-section');
6978      if (pwpSection) {
6979          const observer = new MutationObserver(function(mutations) {
6980              let shouldRecheck = false;
6981              mutations.forEach(function(mutation) {
6982                  if (mutation.type === 'attributes' && mutation.attributeName === 'hidden') {
6983                      shouldRecheck = true;
6984                  } else if (mutation.type === 'childList' && mutation.addedNodes.length > 0) {
6985                      shouldRecheck = true;
6986                  }
6987              });
6988              if (shouldRecheck) {
6989                  setTimeout(adjustSidebarBanner, 100);
6990              }
6991          });
6992          observer.observe(pwpSection, {
6993              attributes: true,
6994              childList: true,
6995              subtree: true
6996          });
6997      }
6998      window.adjustSidebarBanner = adjustSidebarBanner;
6999  })();
7000
7001  /* ====== Global constants ====== */
7002  const IS_DIGITAL=false;
7003  const IS_PREORDER=false;
7004
7005  /* ====== Variants state (REVISED) ====== */
7006  (function initVariants(){
7007  const _0x7g8h=[];window.variants=_0x7g8h;
7008  window.isPreorderProduct=false;
7009      const attrOrder = [];
7010
7011      if (!variants.length || !attrOrder.length) return;
7012
7013      function comboKey(sel){
7014          return attrOrder.map(a => a + '=' + (sel[a] ?? '')).join('|');
7015      }
7016
7017      const variantMap = {};
7018      variants.forEach(v=>{
7019          const key = comboKey(v.attrs);
7020          variantMap[key] = v;
7021      });
7022
7023      function readSelection(){
7024          const sel = {};
7025          attrOrder.forEach(a=>{
7026              const r = document.querySelector(`.v-group[data-attr="${CSS.escape(a)}"] input[type=radio]:checked`);
7027              sel[a] = r ? r.value : '';
7028          });
7029          return sel;
7030      }
7031
7032      function findVariant(sel){
7033          return variantMap[comboKey(sel)] || null;
7034      }
7035
7036      function autoFillMissing(sel){
7037          let changed = false;
7038          for (const a of attrOrder) {
7039              if (sel[a]) continue;
7040              const possible = [];
7041              const seen = new Set();
7042              variants.forEach(v=>{
7043                  let ok = true;
7044                  for (const a2 of attrOrder) {
7045                      if (a2 === a) continue;
7046                      if (sel[a2] && v.attrs[a2] !== sel[a2]) { ok = false; break; }
7047                  }
7048                  if (ok) {
7049                      const val = v.attrs[a];
7050                      if (!seen.has(val)) { seen.add(val); possible.push(val); }
7051                  }
7052              });
7053              if (possible.length === 1) {
7054                  const val = possible[0];
7055                  const input = document.querySelector(`.v-group[data-attr="${CSS.escape(a)}"] input[type=radio][value="${CSS.escape(val)}"]`);
7056                  if (input && !input.checked) { input.checked = true; sel[a] = val; changed = true; }
7057              }
7058          }
7059          return changed;
7060      }
7061
7062      function rupiah(n){
7063          n = parseInt(n||0,10)||0;
7064          return 'Rp ' + n.toString().replace(/\B(?=(\d{3})+(?!\d))/g,'.');
7065      }
7066      
7067      function focusGalleryByUrl(imageUrl) {
7068          const isMobile = window.matchMedia && window.matchMedia('(max-width: 640px)').matches;
7069            if (isMobile) {
7070              _0xau1v(imageUrl);
7071              return;
7072            }
7073          
7074            const gallery = document.getElementById('pd-thumb-gallery');
7075            const targetName = _0x8s9t(imageUrl);
7076          
7077            if (gallery) {
7078              const btns = Array.from(gallery.querySelectorAll('.pd-thumb-btn'));
7079              const btn = btns.find(b => _0x8s9t(b.getAttribute('data-full') || '') === targetName);
7080              if (btn) { btn.click(); return; }
7081            }
7082            
7083            _0xau1v(imageUrl);
7084      }
7085      
7086
7087  function formatStockLabel(n){n=parseInt(n||0,10)||0;return(n>10)?'10+':String(n)}
7088  function updateBranchPopover(v){try{if(!v)return;const a=document.getElementById('sp-qty-meg'),b=document.getElementById('sp-qty-mdf'),c=document.getElementById('sp-qty-bda');if(a)a.textContent=formatStockLabel(Math.max(0,v.smm|0));if(b)b.textContent=formatStockLabel(Math.max(0,v.smf|0));if(c)c.textContent=formatStockLabel(Math.max(0,v.sba|0))}catch(_){}}
7089
7090      function calcVoucherDisc(type,value,price,maxDisc){if(type==='PERCENTAGE'){let d=(price*value)/100;if(maxDisc>0&&d>maxDisc)d=maxDisc;return Math.round(d)}return Math.round(value)}
7091
7092      function applyVariant(v, focusImage = true){
7093          const elCur  = document.getElementById('pd-price-current');
7094          const elOri  = document.getElementById('pd-price-original');
7095          const elDisc = document.getElementById('pd-discount-badge');
7096          const elSku  = document.getElementById('pd-sku');
7097          const elStock= document.getElementById('pd-stock-badge');
7098          const elQty  = document.getElementById('qty');
7099          const btnAdd = document.getElementById('btn-add-cart');
7100          const btnBuy = document.getElementById('btn-buy');
7101          const hidVar = document.getElementById('pd-variant-id');
7102
7103          const mfCart= document.getElementById('mf-cart');
7104          const mfBuy = document.getElementById('mf-buy');
7105          const fab = document.getElementById('pd-mobile-fab');
7106
7107          if (hidVar) hidVar.value = v ? v.id : 0;
7108          if (elCur) elCur.textContent = rupiah(v ? v.final : 0);
7109          if (elSku && v && v.sku) elSku.textContent = v.sku;
7110
7111          if (v && v.ori > v.final) {
7112              if (elOri) { elOri.style.display='inline'; elOri.textContent = rupiah(v.ori); }
7113              if (elDisc) { elDisc.style.display='inline'; elDisc.textContent = '-' + (v.disc||0) + '%'; }
7114          } else {
7115              if (elOri) elOri.style.display='none';
7116              if (elDisc) elDisc.style.display='none';
7117          }
7118
7119          const stock = v ? (parseInt(v.stock||0,10)||0) : 0;
7120          let effectiveStock = stock;
7121          let isActivePreorder = false;
7122          if (window.isPreorderProduct && v && 'preorder_remaining' in v && v.preorder_remaining !== null) {
7123              effectiveStock = parseInt(v.preorder_remaining, 10);
7124              if (isNaN(effectiveStock)) effectiveStock = 0;
7125              isActivePreorder = true;
7126          }
7127          if (elStock){
7128              elStock.classList.remove('in','out');
7129              if (effectiveStock>0){ 
7130                  elStock.classList.add('in'); 
7131                  elStock.textContent = IS_DIGITAL ? 'Tersedia' : (isActivePreorder ? 'Sisa Slot: ' + effectiveStock : 'Stok: ' + formatStockLabel(effectiveStock)); 
7132              } else { 
7133                  elStock.classList.add('out'); 
7134                  elStock.textContent = 'Habis'; 
7135              }
7136          }
7137          if (elQty){
7138              elQty.max = String(effectiveStock>0?effectiveStock:0);
7139              if (effectiveStock<=0) { elQty.value = '0'; elQty.disabled = true; }
7140              else { if (parseInt(elQty.value||'1',10) < 1) elQty.value='1'; elQty.disabled=false; }
7141          }
7142          
7143          const shouldDisable = !(v && effectiveStock>0);
7144          const updateButtons = () => {
7145              const btnAddCart = document.getElementById('btn-add-cart');
7146              const btnBuyNow = document.getElementById('btn-buy');
7147              const mobileCart = document.getElementById('mf-cart');
7148              const mobileBuy = document.getElementById('mf-buy');
7149              [btnAddCart, btnBuyNow, mobileCart, mobileBuy].forEach(btn => {
7150                  if (!btn) return;
7151                  if (shouldDisable) {
7152                      btn.disabled = true;
7153                      btn.setAttribute('disabled', 'disabled');
7154                      btn.classList.add('stock-disabled');
7155                      btn.setAttribute('data-stock-blocked', 'true');
7156                      btn.setAttribute('data-stock-reason', window.isPreorderProduct ? 'Pre-order habis' : 'Stok habis');
7157                  } else {
7158                      btn.disabled = false;
7159                      btn.removeAttribute('disabled');
7160                      btn.classList.remove('stock-disabled');
7161                      btn.removeAttribute('data-stock-blocked');
7162                      btn.removeAttribute('data-stock-reason');
7163                  }
7164              });
7165          };
7166          updateButtons();
7167          setTimeout(updateButtons, 10);
7168          setTimeout(updateButtons, 50);
7169          setTimeout(updateButtons, 100);
7170          if (mfBuy && v) {
7171              const voucherBtn = document.getElementById('btn-buy-voucher');
7172              const voucherCode = fab ? fab.dataset.voucherCode : '';
7173              let voucherDiscount = 0;
7174              
7175              if (voucherBtn && voucherCode) {
7176                  const vType = voucherBtn.dataset.voucherType;
7177                  const vValue = parseFloat(voucherBtn.dataset.voucherValue) || 0;
7178                  const vMax = parseFloat(voucherBtn.dataset.voucherMax) || 0;
7179                  const finalPrice = v.final || 0;
7180                  if (vType && vValue > 0) {
7181                      voucherDiscount = calcVoucherDisc(vType, vValue, finalPrice, vMax);
7182                      if (fab) fab.dataset.voucherValue = voucherDiscount.toString();
7183                  }
7184              }
7185              
7186              const finalPrice = v.final || 0;
7187              const textEl = mfBuy.querySelector('.mf-buy-text');
7188              const priceEl = mfBuy.querySelector('.mf-buy-price');
7189              
7190              if (effectiveStock > 0) {
7191                      if (IS_PREORDER) {
7192                          if (textEl) textEl.textContent = 'Pre Order Sekarang';
7193                          if (priceEl) priceEl.textContent = rupiah(finalPrice);
7194                      } else if (voucherCode && voucherDiscount > 0) {
7195                          if (textEl) textEl.textContent = 'Beli dengan Voucher';
7196                          if (priceEl) priceEl.textContent = rupiah(Math.max(0, finalPrice - voucherDiscount));
7197                      } else {
7198                          if (textEl) textEl.textContent = 'Beli Sekarang';
7199                          if (priceEl) priceEl.textContent = rupiah(finalPrice);
7200                      }
7201                  } else {
7202                      if (textEl) textEl.textContent = 'Stok Habis';
7203                      if (priceEl) priceEl.textContent = rupiah(finalPrice);
7204                  }
7205              }
7206          
7207          const isMobile = window.initMobile ?? 0;
7208          if (window.instSetBasePrice) window.instSetBasePrice(v ? (isMobile == '1' ? v.ori : v.final) : 0);
7209          if (window.updateSoldBySku) window.updateSoldBySku(v.sku);
7210          updateBranchPopover(v);
7211          if (v && v.image_url && focusImage) focusGalleryByUrl(v.image_url);
7212          if (v) {
7213              window.dispatchEvent(new CustomEvent('pd-variant-changed', {
7214                  detail: {
7215                      price: v.final,
7216                      originalPrice: v.ori,
7217                      discount: v.disc,
7218                      stock: effectiveStock,
7219                      sku: v.sku,
7220                      variant_id: v.id
7221                  }
7222              }));
7223              
7224              const encodedHash = encodeVariantHash(v.id);
7225              if (encodedHash && window.history && window.history.replaceState) {
7226                  const newHash = '#v=' + encodedHash;
7227                  const newUrl = window.location.pathname + window.location.search + newHash;
7228                  window.history.replaceState(null, '', newUrl);
7229              }
7230          }
7231      }
7232
7233      let sel = readSelection();
7234      if (autoFillMissing(sel)) sel = readSelection();
7235
7236      let v = findVariant(sel);
7237      if (!v) {
7238          const candidates = variants.filter(variant=>{
7239              return attrOrder.every(a=>{
7240                  if (!sel[a]) return true;
7241                  return variant.attrs[a] === sel[a];
7242              });
7243          });
7244          if (candidates.length >= 1) {
7245              v = candidates[0];
7246              attrOrder.forEach(a=> sel[a] = v.attrs[a]);
7247              attrOrder.forEach(a=>{
7248                  const val = sel[a];
7249                  const input = document.querySelector(`.v-group[data-attr="${CSS.escape(a)}"] input[type=radio][value="${CSS.escape(val)}"]`);
7250                  if (input) input.checked = true;
7251              });
7252          }
7253      }
7254
7255      const initSel = readSelection();
7256      const initVar = findVariant(initSel) || variants[0] || null;
7257      if (document.readyState === 'loading') {
7258          document.addEventListener('DOMContentLoaded', () => applyVariant(initVar, false));
7259      } else {
7260          applyVariant(initVar, false);
7261      }
7262      
7263  function updateSummary(sel){Object.entries(sel).forEach(([a,val])=>{const el=document.getElementById('vs-'+a);if(el)el.textContent=val||'-'})}
7264      function refreshOptions(sel){
7265          attrOrder.forEach(a=>{
7266              const group = document.querySelector(`.v-group[data-attr="${CSS.escape(a)}"]`);
7267              if (!group) return;
7268              const chips = group.querySelectorAll('.v-chip');
7269              chips.forEach(ch=>{
7270                  const val = ch.getAttribute('data-value');
7271                  const possible = variants.some(v=>{
7272                      if (v.attrs[a] !== val) return false;
7273                      for (const a2 of attrOrder) {
7274                          if (a2 === a) continue;
7275                          if (sel[a2] && v.attrs[a2] !== sel[a2]) return false;
7276                      }
7277                      return true;
7278                  });
7279                  const input = ch.querySelector('input[type=radio]');
7280                  const disabled = !possible;
7281                  if (input) input.disabled = disabled;
7282                  ch.classList.toggle('disabled', disabled);
7283
7284                  let candidateVariant = null;
7285                  if (possible) {
7286                      candidateVariant = variants.find(v=>{
7287                          if (v.attrs[a] !== val) return false;
7288                          for (const a2 of attrOrder) {
7289                              if (a2 === a) continue;
7290                              if (sel[a2] && v.attrs[a2] !== sel[a2]) return false;
7291                          }
7292                          return true;
7293                      });
7294                  }
7295                  const outOfStock = candidateVariant ? (window.isPreorderProduct && candidateVariant.preorder_remaining !== null ? candidateVariant.preorder_remaining <= 0 : candidateVariant.stock <= 0) : false;
7296                  ch.classList.toggle('out', !disabled && outOfStock);
7297                  const badge = ch.querySelector('.chip-badge');
7298                  if (badge) badge.hidden = !(candidateVariant && outOfStock);
7299              });
7300              group.querySelectorAll('.v-chip').forEach(ch=>{
7301                  const input = ch.querySelector('input[type=radio]');
7302                  ch.classList.toggle('selected', input && input.checked);
7303              });
7304          });
7305      }
7306      updateSummary(sel);
7307      refreshOptions(sel);
7308      document.querySelectorAll('.v-chip').forEach(chip=>{const input=chip.querySelector('input[type=radio]');if(input&&input.checked){chip.classList.add('selected');}});
7309
7310      const container = document.getElementById('pd-variants');
7311      container && container.addEventListener('change', function(ev){
7312          const radio = ev.target.closest('input[type=radio]');
7313          if (!radio) return;
7314          sel = readSelection();
7315          if (autoFillMissing(sel)) sel = readSelection();
7316          const chosen = findVariant(sel);
7317          applyVariant(chosen || null, true);
7318          
7319          updateSummary(sel);
7320          refreshOptions(sel);
7321      });
7322      
7323  window.applyVariant=applyVariant;
7324  })();
7325
7326  (function cleanBrokenDescImages(){
7327      const containers = [
7328          document.querySelector('.pd-full-desc-body'),
7329          document.querySelector('.pd-short-desc')
7330      ].filter(Boolean);
7331
7332      containers.forEach(root => {
7333          const imgs = root.querySelectorAll('img');
7334          imgs.forEach(img => {
7335              if (img.complete && img.naturalWidth === 0) {
7336                  img.remove();
7337                  return;
7338              }
7339              img.addEventListener('error', () => {
7340                  img.remove();
7341              }, { once:true });
7342          });
7343      });
7344  })();
7345
7346  /* ====== Scroll To Top ====== */
7347  (function _0xi25j(){const a=document.getElementById('pd-scroll-top');if(!a)return;function b(){if(window.matchMedia('(max-width:640px)').matches){const d=document.querySelector('.bottom-nav'),e=document.querySelector('.pd-mobile-fab');if(!d&&!e){setTimeout(b,100);return}const f=d&&window.getComputedStyle(d).display!=='none'&&window.getComputedStyle(d).visibility!=='hidden',g=e&&window.getComputedStyle(e).display!=='none'&&window.getComputedStyle(e).visibility!=='hidden';let h;if(f&&g){h='calc(68px + 54px + env(safe-area-inset-bottom))'}else if(g){h='calc(68px + 8px + env(safe-area-inset-bottom))'}else if(f){h='calc(60px + env(safe-area-inset-bottom))'}else{h='calc(20px + env(safe-area-inset-bottom))'}a.style.setProperty('--scroll-top-bottom',h)}else{a.style.removeProperty('--scroll-top-bottom')}}function c(){const d=window.pageYOffset||document.documentElement.scrollTop||0,e=d>300;a.classList.toggle('visible',e);a.setAttribute('aria-hidden',e?'false':'true');b()}window.addEventListener('scroll',c,{passive:!0});window.addEventListener('resize',b,{passive:!0});setTimeout(b,100);c();a.addEventListener('click',function(){window.scrollTo({top:0,behavior:'smooth'})})})();
7348
7349  /* Format stok 10+ */
7350  function _0xk67l(n){n=parseInt(n||0,10)||0;return n>10?'10+':String(n)}
7351
7352  /* Toggle popover stok per cabang */
7353  (function _0xm89n(){const a=document.getElementById('pd-stock-info-btn'),b=document.getElementById('pd-stock-popover'),c=document.getElementById('pd-stock-popover-close');if(!a||!b)return;function d(){if(window.matchMedia('(min-width: 641px)').matches){const e=document.getElementById('pd-stock-badge');if(!e)return;const f=e.getBoundingClientRect(),g=window.pageXOffset||document.documentElement.scrollLeft||0,h=window.pageYOffset||document.documentElement.scrollTop||0;b.style.left=(f.left+g-10)+'px';b.style.top=(f.bottom+h+10)+'px'}else{b.style.left='';b.style.top=''}}
7354  function e(){d();b.classList.add('show');a.setAttribute('aria-expanded','true');b.setAttribute('aria-hidden','false');document.addEventListener('click',g,{capture:true});window.addEventListener('resize',d,{passive:true});window.addEventListener('scroll',d,{passive:true})}function f(){b.classList.remove('show');a.setAttribute('aria-expanded','false');b.setAttribute('aria-hidden','true');document.removeEventListener('click',g,{capture:true});window.removeEventListener('resize',d);window.removeEventListener('scroll',d)}function g(h){if(b.contains(h.target)||a.contains(h.target))return;f()}
7355  a.addEventListener('click',function(h){h.preventDefault();b.classList.contains('show')?f():e()});if(c)c.addEventListener('click',f)})();
7356
7357  /* ===== Share Product Modal ===== */
7358  (function(){const a=document.getElementById('pd-share-btn'),z=document.getElementById('mf-share'),b=document.getElementById('pd-share-modal-overlay'),c=document.getElementById('pd-share-close'),d=document.getElementById('pd-share-copy-url-btn'),e=document.getElementById('pd-share-url-input');if((!a&&!z)||!b)return;const f="https://gopaysayur.com/",g="Lenovo Legion Go 8ASP2 - 83N0000RID /AMD Ryzen Z2 Extreme/32GB/1TB SSD/AMD Radeon Graphics/8.8\" WUXGA OLED Touch/Win 11 Home/Eclipse Black/3Y",h="Rp 20.789.000";const discountPercent=1;let i='';if(discountPercent>0){i=`🔥 Lagi Promo Nih! Diskon ${discountPercent}%\n\n✨ ${g}\n💰 Cuma ${h} aja!\n\n🛒 Buruan cek sebelum kehabisan!\n👉 `}else{i=`✨ Ada barang bagus nih!\n\n📦 ${g}\n💸 Harga: ${h}\n\n🛍️ Yuk, langsung cek!\n👉 `}function j(){b.classList.add('show');document.body.style.overflow='hidden'}function k(){b.classList.remove('show');document.body.style.overflow=''}if(a)a.addEventListener('click',j);if(z)z.addEventListener('click',j);if(c)c.addEventListener('click',k);b.addEventListener('click',function(l){if(l.target===b)k()});document.addEventListener('keydown',function(l){if(l.key==='Escape'&&b.classList.contains('show'))k()});b.addEventListener('click',function(l){const m=l.target.closest('[data-share]');if(!m)return;const n=m.getAttribute('data-share'),o=encodeURIComponent(f),p=e
7358ncodeURIComponent(i),q=encodeURIComponent(g);let r='';switch(n){case 'whatsapp':r=`https://wa.me/?text=${p}${o}`;break;case 'facebook':r=`https://www.facebook.com/sharer/sharer.php?u=${o}`;break;case 'twitter':r=`https://twitter.com/intent/tweet?text=${p}${o}`;break;case 'telegram':r=`https://t.me/share/url?url=${o}&text=${p}`;break;case 'email':r=`mailto:?subject=${encodeURIComponent('🔥 Cek Produk Keren Ini!')}&body=${p}${o}`;window.location.href=r;k();return;case 'copy':s();return;case 'pdf':const ps=document.querySelector('.product-single');if(ps){ps.setAttribute('data-print-date',new Date().toLocaleDateString('id-ID',{year:'numeric',month:'long',day:'numeric'}))}k();setTimeout(function(){window.print();try{if(window.ga4Ecomm&&window.ga4Ecomm.trackEvent)window.ga4Ecomm.trackEvent('share',{method:'pdf_export',content_type:'product',item_id:"1S83N0880RID"})}catch(_){}},300);return}if(r){window.open(r,'_blank','noopener,noreferrer');try{if(window.ga4Ecomm&&window.ga4Ecomm.trackEvent)window.ga4Ecomm.trackEvent('share',{method:n,content_type:'product',item_id:"1S83N0880RID"})}catch(_){}}});function s(){if(!e)return;e.select();e.setSelectionRange(0,99999);try{if(navigator.clipboard&&navigator.clipboard.writeText){navigator.clipboard.writeText(f).then(function(){t()}).catch(function(){document.execCommand('copy');t()})}else{document.execCommand('copy');t()}}catch(u){console.error('Failed to copy:',u)}}function t(){if(!d)return;const v=d.innerHTML;d.classList.add('copied');d.innerHTML='<svg viewBox="0 0 24 24" width="16" height="16"><path fill="currentColor" d="M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z"/></svg><span class="pd-share-copy-text">Tersalin!</span>';if(window.showToast)showToast({type:'success',title:'✨ Link Tersalin!',message:'Link produk berhasil disalin. Yuk bagikan ke teman!',duration:3000});setTimeout(function(){d.classList.remove('copied');d.innerHTML=v},2000)}if(d)d.addEventListener('click',s);if(navigator.share){const shareHandler=function(w){w.preventDefault();navigator.share({title:g,text:i+f,url:f}).catch(function(x){console.log('Native share cancelled or failed:',x)})};if(a)a.addEventListener('dblclick',shareHandler);if(z)z.addEventListener('dblclick',shareHandler)}})();
7359
7360  /* ===== Embedding variants (server → client) ===== */
7361  (function(){
7362    window.__PD_VARIANTS_WITH_BRANCH__ = [];
7363  })();
7364
7365  /* ===== Helper: update angka popover ===== */
7366  function updateStockPopoverForVariant(v){
7367    try{
7368      const elMeg = document.getElementById('sp-qty-meg');
7369      const elMdf = document.getElementById('sp-qty-mdf');
7370      const elBda = document.getElementById('sp-qty-bda');
7371
7372      if (typeof v?.smm === 'number' && elMeg) elMeg.textContent = formatStockLabel(Math.max(0, v.smm|0));
7373      if (typeof v?.smf === 'number' && elMdf) elMdf.textContent = formatStockLabel(Math.max(0, v.smf|0));
7374      if (typeof v?.sba === 'number' && elBda) elBda.textContent = formatStockLabel(Math.max(0, v.sba|0));
7375    }catch(_){}
7376  }
7377
7378  /* ===== applyVariant: 10+ dan update popover ===== */
7379  (function patchApplyVariant(){
7380    if (typeof applyVariant !== 'function') return;
7381    const original = applyVariant;
7382    window.applyVariant = function(v){
7383      original(v);
7384      
7385      try {
7386        const elStock = document.getElementById('pd-stock-badge');
7387        if (elStock){
7388          let txt = elStock.textContent || '';
7389          let m = txt.match(/\d+/);
7390          if (m) {
7391            const n = parseInt(m[0]||'0',10)||0;
7392            elStock.textContent = (n>0) ? ('Stok: ' + formatStockLabel(n)) : 'Habis';
7393          }
7394        }
7395      } catch(_){}
7396  if(window.__PD_VARIANTS_WITH_BRANCH__&&v){const vv=window.__PD_VARIANTS_WITH_BRANCH__.find(x=>x.id===v.id)||v;updateStockPopoverForVariant(vv)}
7397    };
7398  })();
7399
7400  (function initCurrentVariantBranch(){
7401    const list = window.__PD_VARIANTS_WITH_BRANCH__ || [];
7402    if (!list.length) return;
7403    const hid = document.getElementById('pd-variant-id');
7404    const vid = hid ? parseInt(hid.value||'0',10) : 0;
7405    const current = list.find(x => x.id === vid) || list[0] || null;
7406    if (current) updateStockPopoverForVariant(current);
7407  })();
7408
7409  (function(){
7410      if (!window.ga4Ecomm) return;
7411      const catSegs = ["Komputer & Laptop","Laptop","Gaming"];
7412      window.ga4Ecomm.viewItem({
7413        currency: 'IDR',
7414        value: 20789000,
7415        item_id: "1S83N0880RID",
7416        item_name: "Lenovo Legion Go 8ASP2 - 83N0000RID /AMD Ryzen Z2 Extreme/32GB/1TB SSD/AMD Radeon Graphics/8.8\" WUXGA OLED Touch/Win 11 Home/Eclipse Black/3Y",
7417        item_brand: "Lenovo ",
7418        item_category: catSegs && catSegs.length ? catSegs.join(' / ') : ''
7419      });
7420    })();
7421    
7422  (function patchApplyVariantFocus(){
7423    if (typeof applyVariant !== 'function') return;
7424    const original = applyVariant;
7425    window.applyVariant = function(v, focusImage = true){
7426      
7427      original(v, focusImage);
7428      
7429      if (focusImage && v && v.image_url) {
7430        _0xau1v(v.image_url);
7431      }
7432    };
7433  })();
7434
7435  (function() {
7436    var soldMap = [];
7437    var soldTotalLabel = "Terjual 2";
7438
7439    function formatSoldLabel(qty) {
7440      if (qty >= 1000000) {
7441        var v = Math.floor((qty / 100000) ) / 10;
7442        return 'Terjual ' + (String(v).replace('.', ',')) + 'jt+';
7443      }
7444      if (qty >= 1000) {
7445        var v2 = Math.floor((qty / 100) ) / 10;
7446        return 'Terjual ' + (String(v2).replace('.', ',')) + 'rb+';
7447      }
7448      if (qty >= 100) {
7449        var v2 = Math.floor((qty / 100) ) * 100;
7450        return 'Terjual ' + (String(v2).replace('.', ',')) + '+';
7451      }
7452      if (qty >= 10) {
7453        var v2 = Math.floor((qty / 10) ) * 10;
7454        return 'Terjual ' + (String(v2).replace('.', ',')) + '+';
7455      }
7456      return 'Terjual ' + (qty.toLocaleString('id-ID'));
7457    }
7458
7459    function updateSoldLabel(labelText) {
7460      var el = document.querySelector('#pd-sold-inline, [data-role="sold-chip"]');
7461      if (el) el.textContent = labelText;
7462    }
7463
7464    window.updateSoldBySku = function(sku) {
7465      if (!sku || typeof sku !== 'string') {
7466        updateSoldLabel(soldTotalLabel);
7467        return;
7468      }
7469      var qty = soldMap[sku] || 0;
7470      updateSoldLabel(formatSoldLabel(qty));
7471    };
7472
7473      updateSoldLabel(soldTotalLabel);
7474    })();
7475
7476  (function(){const h=document.getElementById('pd-sticky-header');if(!h)return;const p=document.getElementById('pd-price-anchor');const ac=document.getElementById('pd-sticky-add-cart');const by=document.getElementById('pd-sticky-buy');let lt=window.scrollY;let tk=false;function u(){if(!p)return;const r=p.getBoundingClientRect();const s=window.scrollY;if(r.top<0){h.classList.add('visible')}else{h.classList.remove('visible')}lt=s;tk=false}function rt(){if(!tk){window.requestAnimationFrame(u);tk=true}}window.addEventListener('scroll',rt,{passive:true});u();function sy(){const ma=document.getElementById('btn-add-cart');const mb=document.getElementById('btn-buy');if(ac&&ma){ac.disabled=ma.disabled}if(by&&mb){by.disabled=mb.disabled}}sy();const ob=new MutationObserver(sy);const ma=document.getElementById('btn-add-cart');const mb=document.getElementById('btn-buy');if(ma)ob.observe(ma,{attributes:true,attributeFilter:['disabled']});if(mb)ob.observe(mb,{attributes:true,attributeFilter:['disabled']});const ss=document.getElementById('pd-sticky-share-btn');const ms=document.getElementById('pd-share-btn');if(ss&&ms){ss.addEventListener('click',function(e){e.preventDefault();ms.click()})}if(ac){ac.addEventListener('click',function(e){e.preventDefault();if(ac.disabled)return;const m=document.getElementById('btn-add-cart');if(m&&!m.disabled){m.click()}})}if(by){by.addEventListener('click',function(e){e.preventDefault();if(by.disabled)return;const m=document.getElementById('btn-buy');if(m&&!m.disabled&&window.buyNow){window.buyNow(e)}})}
7477  function getChatProductData(){const varInput=document.getElementById('pd-variant-id');const variantId=varInput?parseInt(varInput.value||'0',10):0;const variantSummary=getVariantSummaryText();const priceEl=document.getElementById('pd-price-current');const currentPrice=priceEl?priceEl.textContent.trim():'Rp 20.789.000';const pd={id:325,name:"Lenovo Legion Go 8ASP2 - 83N0000RID \/AMD Ryzen Z2 Extreme\/32GB\/1TB SSD\/AMD Radeon Graphics\/8.8\" WUXGA OLED Touch\/Win 11 Home\/Eclipse Black\/3Y",price:currentPrice,image:"\/uploads\/products\/lenovo-legion-go-8asp2-83n0000rid.webp",url:window.location.href};if(variantId>0){pd.variant_id=variantId}if(variantSummary){pd.variant_summary=variantSummary}return pd}
7478  const ch=document.getElementById('pd-sticky-chat');if(ch){ch.addEventListener('click',function(e){e.preventDefault();if(!window.plazaChat){console.warn('Chat widget not loaded');return}window.plazaChat.attachProduct(getChatProductData());window.plazaChat.openWidget()})}const dch=document.getElementById('btn-chat-icon');if(dch){dch.addEventListener('click',function(e){e.preventDefault();if(!window.plazaChat){console.warn('Chat widget not loaded');return}window.plazaChat.attachProduct(getChatProductData());window.plazaChat.openWidget()})}const mch=document.getElementById('mf-chat');if(mch){mch.addEventListener('click',function(e){e.preventDefault();if(!window.plazaChat){console.warn('Chat widget not loaded');return}window.plazaChat.attachProduct(getChatProductData());window.plazaChat.openWidget()})}window.addEventListener('pd-variant-changed',function(e){const d=e.detail||{};if(d.price!==undefined){const sp=document.getElementById('pd-sticky-price');if(sp){sp.textContent=formatRupiah(d.price)}}if(d.originalPrice!==undefined&&d.originalPrice>d.price){const so=document.getElementById('pd-sticky-price-original');if(so){so.textContent=formatRupiah(d.originalPrice);so.style.display=''}}else{const so=document.getElementById('pd-sticky-price-original');if(so){so.style.display='none'}}if(d.discount!==undefined&&d.discount>0){const sd=document.getElementById('pd-sticky-discount');if(sd){sd.textContent='-'+d.discount+'%';sd.style.display=''}}else{const sd=document.getElementById('pd-sticky-discount');if(sd){sd.style.display='none'}}const hs=d.stock>0;if(ac){ac.disabled=!hs}if(by){by.disabled=!hs}});
7478function formatRupiah(n){return'Rp'+Math.floor(n).toLocaleString('id-ID')}})();
7479
7480  (function(){const t=document.getElementById('pdv-toggle-btn');const v=document.getElementById('pd-voucher-section');if(t&&v){const h=v.querySelectorAll('.pdv-min-hidden');const n=h.length;t.addEventListener('click',function(){const e=t.classList.toggle('expanded');h.forEach(function(i){if(e){i.classList.remove('pdv-min-hidden')}else{i.classList.add('pdv-min-hidden')}});t.textContent=e?'Tutup':'+'+n})}const m=document.getElementById('voucher-detail-modal');const mc=document.getElementById('voucher-modal-close');const ma=document.getElementById('voucher-modal-cancel');const mcp=document.getElementById('voucher-modal-copy');if(m){const bb=document.querySelectorAll('.pdv-badge-btn');bb.forEach(function(btn){btn.addEventListener('click',function(){if(btn.disabled)return;const c=btn.getAttribute('data-voucher-code');const nm=btn.getAttribute('data-voucher-name');const dl=btn.getAttribute('data-discount-label');const bl=btn.getAttribute('data-badge-label');const mp=parseInt(btn.getAttribute('data-min-purchase'));const md=parseInt(btn.getAttribute('data-max-discount'));const vu=btn.getAttribute('data-valid-until');document.getElementById('voucher-modal-badge').innerHTML='<span class="vmb-value">'+dl+'</span><span class="vmb-label">'+bl+'</span>';document.getElementById('voucher-modal-code').textContent=c;document.getElementById('voucher-modal-name').textContent=nm;const me=document.getElementById('voucher-modal-min');if(mp>0){me.style.display='';document.getElementById('voucher-modal-min-val').textContent=fr(mp)}else{me.style.display='none'}const xe=document.getElementById('voucher-modal-max');if(md>0){xe.style.display='';document.getElementById('voucher-modal-max-val').textContent=fr(md)}else{xe.style.display='none'}if(vu){const d=new Date(vu);const ft=d.toLocaleDateString('id-ID',{day:'numeric',month:'long',year:'numeric',hour:'2-digit',minute:'2-digit'});document.getElementById('voucher-modal-valid-val').textContent=ft}mcp.setAttribute('data-code',c);m.classList.add('show');document.body.style.overflow='hidden'})});function cm(){m.classList.remove('show');document.body.style.overflow=''}if(mc)mc.addEventListener('click',cm);if(ma)ma.addEventListener('click',cm);m.addEventListener('click',function(e){if(e.target===m)cm()});if(mcp){mcp.addEventListener('click',function(){const c=mcp.getAttribute('data-code');if(!c)return;if(navigator.clipboard&&navigator.clipboard.writeText){navigator.clipboard.writeText(c).then(function(){smc()}).catch(function(err){fc(c)})}else{fc(c)}})}}const b=document.querySelectorAll('.pdv-min-copy');b.forEach(function(btn){btn.addEventListener('click',function(){if(btn.disabled)return;const code=btn.getAttribute('data-code');if(!code)return;if(navigator.clipboard&&navigator.clipboard.writeText){navigator.clipboard.writeText(code).then(function(){sc(btn)}).catch(function(err){fc(code,btn)})}else{fc(code,btn)}})});function fc(text,btn){const tx=document.createElement('textarea');tx.value=text;tx.style.position='fixed';tx.style.opacity='0';document.body.appendChild(tx);tx.select();try{document.execCommand('copy');if(btn)sc(btn);else smc()}catch(err){}document.body.removeChild(tx)}function sc(btn){const o=btn.textContent;btn.classList.add('copied');btn.textContent='✓ Tersalin';setTimeout(function(){btn.classList.remove('copied');btn.textContent=o},2000)}function smc(){const o=mcp.textContent;mcp.textContent='✓ Kode Tersalin';mcp.style.background='#c52222';setTimeout(function(){mcp.textContent=o;mcp.style.background=''},2000)}function fr(a){return'Rp'+Math.floor(a).toLocaleString('id-ID')}})();
7481  </script>
7481
7482  
7482<script nonce="se3iyzEHMc9FQEB4wSyd0w==">
7483  window.PD_ID=325;window.PD_NAME=_0x3c4d;window.PD_SKU=_0x5e6f;window.PD_CATEGORY_PATH="Komputer & Laptop/Laptop/Gaming";window.PD_BEST_VOUCHER=null;
7484  window.IS_DIGITAL=IS_DIGITAL;
7485  window.isPreorderProduct=false;
7486  window.PD_PREORDER_DATA=null;
7487  </script>
7487
7488
7489  
7489<script nonce="se3iyzEHMc9FQEB4wSyd0w==">document.addEventListener('DOMContentLoaded',function(){if(typeof ProductReviews!=='undefined'){ProductReviews.init(325);}const r=document.getElementById('pd-rating-inline');if(r){r.addEventListener('click',function(e){e.preventDefault();const s=document.getElementById('reviews');if(s){s.scrollIntoView({behavior:'smooth',block:'start'});s.classList.add('highlight-flash');setTimeout(()=>{s.classList.remove('highlight-flash')},1500)}});}});</script>
7489
7490
7491  
7491<script nonce="se3iyzEHMc9FQEB4wSyd0w==">
7492  (function(){function _0x9i0j(el){if(typeof gtag==='function'){gtag('event','qoala_insurance_click',{event_category:'Insurance',event_label:'Qoala Banner Click - Product Detail',link_url:'/plazait-protect',page_location:window.location.href,product_id:parseInt(el.getAttribute('data-product-id'))||0,product_name:el.getAttribute('data-product-name')||'',category_path:el.getAttribute('data-category-path')||'',custom_map:{custom_parameter_1:'qoala_banner_product_detail'}})}}
7493
7494  function _0x1k2l(){var a=document.querySelector('.qoala-cta[data-ga-event="qoala_banner_click"]');if(a){a.addEventListener('click',function(e){_0x9i0j(this)})}}if(document.readyState==='loading'){document.addEventListener('DOMContentLoaded',_0x1k2l)}else{_0x1k2l()}})();
7495
7496  (function(){const pwpSection=document.getElementById('pwp-deals-section');const pwpBadge=document.getElementById('pwp-trigger-badge');if(!pwpSection)return;const productId=parseInt(pwpSection.getAttribute('data-product-id'))||0;const variantId=parseInt(pwpSection.getAttribute('data-variant-id'))||0;const categoryPath=pwpSection.getAttribute('data-category-path')||'';if(!productId)return;function formatRupiah(n){return'Rp'+Math.floor(n).toLocaleString('id-ID')}function loadPWPDeals(){const url=`/api/pwp/get_by_product.php?product_id=${productId}${variantId?`&variant_id=${variantId}`:''}${categoryPath?`&category_path=${encodeURIComponent(categoryPath)}`:''}`;fetch(url).then(r=>r.json()).then(data=>{if(data.success&&data.promotions&&data.promotions.length>0){renderPWPDeals(data.promotions);pwpSection.hidden=false;if(pwpBadge)pwpBadge.hidden=false;setTimeout(function(){if(typeof window.adjustSidebarBanner==='function'){window.adjustSidebarBanner()}},150)}else{pwpSection.hidden=true;if(pwpBadge)pwpBadge.hidden=true}}).catch(err=>{console.error('PWP load error:',err);pwpSection.hidden=true;if(pwpBadge)pwpBadge.hidden=true})}function renderPWPDeals(promotions){const loading=pwpSection.querySelector('.pwp-deals-loading');const grid=document.getElementById('pwp-deals-grid');if(loading)loading.hidden=true;if(!grid)return;grid.innerHTML='';promotions.forEach(promo=>{promo.bundled_products.forEach(product=>{const card=document.createElement('div');card.className='pwp-deal-card';const discount=product.discount>0?product.discount:0;const discountPercent=product.regular_price>0?Math.round((discount/product.regular_price)*100):0;const imgUrl=product.image_url?`/uploads/products/${product.image_url}`:'/assets/img/no-image.png';card.innerHTML=`<div class="pwp-deal-thumb"><img src="${imgUrl}" alt="${escapeHtml(product.name)}" loading="lazy"></div><div class="pwp-deal-info"><h4 class="pwp-deal-name">${escapeHtml(product.name)}</h4><div class="pwp-deal-prices"><span class="pwp-deal-price">${formatRupiah(product.pwp_price)}</span>${product.regular_price>product.pwp_price?`<span class="pwp-deal-original">${formatRupiah(product.regular_price)}</span>`:''}</div></div>${discountPercent>0?`<span class="pwp-deal-badge">-${discountPercent}%</span>`:''}`;grid.appendChild(card)})})}function escapeHtml(str){const div=document.createElement('div');div.textContent=str||'';return div.innerHTML}loadPWPDeals();window.addEventListener('pd-variant-changed',function(e){const detail=e.detail||{};const newVid=detail.variant_id||0;const currentVid=parseInt(pwpSection.getAttribute('data-variant-id'))||0;if(newVid!==currentVid){pwpSection.setAttribute('data-variant-id',newVid);loadPWPDeals()}})})();
7497  </script>
7497<footer class="site-footer footer-compact variant-stripes" role="contentinfo">
7498    <div class="ft-top ft-collapsible" id="ftTop">
7499      <div class="container ft-grid">
7500
7501        <div class="ft-col ft-help">
7502          <h4 class="ft-title">Butuh Bantuan?</h4>
7503          <p class="ft-desc">Hubungi kami melalui Official WhatsApp interaktif sekarang.</p>
7504          <a class="ft-wa-btn" href="#" target="_blank" rel="nofollow noopener">
7505            <span class="ico" aria-hidden="true">
7506              <svg viewBox="0 0 24 24" width="18" height="18"><path fill="#d32525" d="M12.04 2c-5.52 0-10 4.43-10 9.9 0 1.75.47 3.45 1.38 4.94L2 22l5.3-1.38c1.43.78 3.05 1.19 4.7 1.19 5.52 0 10-4.43 10-9.9S17.56 2 12.04 2Zm5.86 13.9c-.25.7-1.23 1.28-1.7 1.33-.45.06-1.02.08-1.65-.1-.38-.12-.88-.29-1.52-.56-2.66-1.15-4.4-3.83-4.53-4.01-.13-.18-1.08-1.44-1.08-2.75 0-1.31.68-1.95.92-2.22.25-.27.54-.33.72-.33.18 0 .36.01.52.01.17 0 .39-.06.62.47.25.6.85 2.07.92 2.22.07.15.12.33.02.53-.1.2-.15.33-.3.5-.15.17-.32.39-.46.53-.15.15-.3.31-.13.6.18.3.8 1.31 1.73 2.12 1.19 1.03 2.17 1.36 2.48 1.5.31.14.49.12.67-.07.18-.18.77-.82.98-1.1.21-.27.42-.23.7-.14.27.09 1.72.81 2.02.95.3.14.5.22.58.35.08.13.08.72-.17 1.42Z"/></svg>
7507            </span>
7508            Kirim Pesan
7509          </a>
7510
7511          <p class="ft-desc sm-gap">Ikuti kami:</p>
7512          <div class="ft-social">
7513            <a aria-label="Facebook" href="https://facebook.com/PlazaIt/"><svg viewBox="0 0 24 24" width="18" height="18"><path fill="currentColor" d="M13.5 22v-8.2h2.7l.4-3.2h-3.1V8c0-.9.3-1.5 1.6-1.5H17V3.7c-.3 0-1.2-.1-2.2-.1-2.2 0-3.8 1.3-3.8 3.9v2.2H8v3.2h3v8.1h2.5Z"/></svg></a>
7514            <a aria-label="Instagram" href="https://www.instagram.com/plazait"><svg viewBox="0 0 24 24" width="18" height="18"><path fill="currentColor" d="M7.8 2h8.4A5.8 5.8 0 0 1 22 7.8v8.4A5.8 5.8 0 0 1 16.2 22H7.8A5.8 5.8 0 0 1 2 16.2V7.8A5.8 5.8 0 0 1 7.8 2Zm0 2A3.8 3.8 0 0 0 4 7.8v8.4A3.8 3.8 0 0 0 7.8 20h8.4a3.8 3.8 0 0 0 3.8-3.8
7514V7.8A3.8 3.8 0 0 0 16.2 4H7.8Zm9.9 1.7a1.1 1.1 0 1 1 0 2.3 1.1 1.1 0 0 1 0-2.3ZM12 7a5 5 0 1 1 0 10 5 5 0 0 1 0-10Zm0 2a3 3 0 1 0 0 6 3 3 0 0 0 0-6Z"/></svg></a>
7515            <a aria-label="TikTok" href="https://www.tiktok.com/@plazait"><svg viewBox="0 0 24 24" width="18" height="18"><path fill="currentColor" d="M18.9 7.4a6.4 6.4 0 0 1-3.2-1.2v6.3a5.47 5.47 0 1 1-5.5-5.5c.2 0 .4 0 .6.02v2.37a2.92 2.92 0 0 0-.6-.07 2.8 2.8 0 1 0 2.8 2.8V2h2.3a4.6 4.6 0 0 0 4.5 4.1v2.3Z"/></svg></a>
7516          </div>
7517        </div>
7518
7519              <!-- Collapsible Content Wrapper (Non-Homepage Only) -->
7520        <div class="ft-collapsible-content" id="ftCollapsible">
7521        
7522        <div class="ft-col">
7523          <h4 class="ft-title">Tentang GOPAYTOGEL</h4>
7524          <ul class="ft-links">
7525            <li><a href="/tentang-kami">Tentang Kami</a></li>
7526            <li><a href="/kontak-kami">Kontak Kami</a></li>
7527            <li><a href="/lokasi-toko">Lokasi Toko</a></li>
7528            <li><a href="/faq">FAQ</a></li>
7529          </ul>
7530          <div class="ft-address">
7531            <p class="company">PT PRIMAJAYA MULTI TECHNOLOGY</p>
7532                        <p>JL. Asia Raya Blok BB No. 12-A, Kel. Sukaramai II, Kec.</p>
7533                        <p>Medan Area, Kota Medan, Sumatera Utara, 20216</p>
7534                    </div>
7535        </div>
7536
7537        <div class="ft-col">
7538          <h4 class="ft-title">Informasi</h4>
7539          <ul class="ft-links">
7540            <li><a href="/syarat-dan-ketentuan">Syarat &amp; Ketentuan</a></li>
7541            <li><a href="/kebijakan-privasi">Kebijakan Privasi</a></li>
7542            <li><a href="/kebijakan-cookie">Kebijakan Cookie</a></li>
7543            <li><a href="/pengiriman-dan-pengembalian">Pengiriman &amp; Pengembalian</a></li>
7544            <li><a href="/pembayaran-dan-cicilan">Pembayaran &amp; Cicilan</a></li>
7545            <li><a href="/garansi-dan-layanan">Garansi &amp; Layanan</a></li>
7546          </ul>
7547
7548          <div class="ft-payments payments-small" aria-label="Metode Pembayaran">
7549            <div class="pay-row">
7550              <img src="https://plazaitdotid.pages.dev/assets/img/payments/mandiri.svg" alt="Mandiri" loading="lazy">
7551              <img src="https://plazaitdotid.pages.dev/assets/img/payments/bni.svg" alt="BNI" loading="lazy">
7552              <img src="https://plazaitdotid.pages.dev/assets/img/payments/bri.svg" alt="BRI" loading="lazy">
7553              <img src="https://plazaitdotid.pages.dev/assets/img/payments/bsi.svg" alt="BSI" loading="lazy">
7554              <img src="https://plazaitdotid.pages.dev/assets/img/payments/cimb-logo.svg" alt="ShopeePay" loading="lazy">
7555            </div>
7556          </div>
7557        </div>
7558
7559              </div>
7560        <!-- End Collapsible Content -->
7561        
7562        <!-- Expand Button (Mobile Only) -->
7563        <button class="ft-expand-btn" id="ftExpandBtn" aria-label="Lihat semua informasi footer">
7564          <span class="expand-text">Selengkapnya</span>
7565          <svg viewBox="0 0 24 24" width="18" height="18" fill="currentColor">
7566            <path d="M7.41 8.59L12 13.17l4.59-4.58L18 10l-6 6-6-6 1.41-1.41z"/>
7567          </svg>
7568        </button>
7569        
7570      </div>
7571    </div>
7572    <div class="ft-bottom">
7573      <div class="container ft-bottom-inner">
7574        <div class="ft-copy">
7575          <span>MAGIC-POWER &copy; <span id="yearNow">2026</span></span>
7576          <span>PT MAGIC-POWER. All rights reserved.</span>
7577        </div>
7578      </div>
7579    </div>
7580<style>
7581  :root {
7582    --sd-black: #07040c;
7583    --sd-dark: #12071b;
7584    --sd-panel: #1b0d28;
7585    --sd-red: #1eff1e;
7586    --sd-red-dark: #a80000;
7587    --sd-gold: #0077ff;
7588    --sd-gold-soft: #f4c542;
7589    --sd-white: #ffffff;
7590    --sd-text: #dcd2e6;
7591    --blade-cut: 10px;
7592  }
7593
7594  * {
7595    box-sizing: border-box;
7596  }
7597
7598  body {
7599    margin: 0;
7600    padding: 0;
7601    font-family: "Segoe UI", Arial, sans-serif;
7602    background: transparent;
7603    color: var(--sd-text);
7604  }
7605
7606  /* =========================
7607     POPUP OVERLAY
7608  ========================= */
7609  .popup-overlay {
7610    position: fixed;
7611    inset: 0;
7612    width: 100vw;
7613    height: 100vh;
7614
7615    display: flex;
7616    justify-content: center;
7617    align-items: center;
7618
7619    padding: 18px;
7620    background: rgba(3, 1, 7, 0.76);
7621    backdrop-filter: blur(3px);
7622    -webkit-backdrop-filter: blur(3px);
7623
7624    z-index: 9999;
7625  }
7626
7627  /* =========================
7628     POPUP CONTAINER
7629  ========================= */
7630  .popup-container{
7631              position:relative;
7632              width:100%;
7633              max-width:420px;
7634              overflow:hidden;
7635
7636              padding:8px 8px 18px;
7637
7638              color:var(--sd-text);
7639              text-align:center;
7640
7641              background:
7642              radial-gradient(
7643                  circle at top right,
7644                  rgba(255,40,0,.18),
7645                  transparent 30%
7646              ),
7647              radial-gradient(
7648                  circle at bottom left,
7649                  rgba(255,215,0,.08),
7650                  transparent 35%
7651              ),
7652              linear-gradient(
7653                  145deg,
7654                  #050505 0%,
7655                  #120707 45%,
7656                  #090909 100%
7657              );
7658
7659              border:1px solid rgba(255,215,0,.22);
7660
7661              border-radius:18px;
7662
7663              box-shadow:
7664              0 25px 60px rgba(0,0,0,.75),
7665              0 0 20px rgba(255,0,0,.18),
7666              0 0 35px rgba(255,215,0,.08);
7667
7668              animation:rajaPopupIn .6s ease;
7669}
7670
7671  /* Tekstur graffiti ringan */
7672  .popup-container::before{
7673    content:"";
7674    position:absolute;
7675    top:0;
7676    left:-180%;
7677
7678    width:220px;
7679    height:100%;
7680
7681    background:linear-gradient(
7682        90deg,
7683        transparent,
7684        rgba(255,215,0,.08),
7685        rgba(255,0,0,.18),
7686        rgba(255,215,0,.08),
7687        transparent
7688    );
7689
7690    transform:skewX(-25deg);
7691
7692    animation:rajaPopupShine 6s linear infinite;
7693
7694    pointer-events:none;
7695}
7696
7697  @keyframes rajaPopupShine{
7698
7699      0%{
7700          left:-180%;
7701          opacity:0;
7702      }
7703
7704      20%{
7705          opacity:.5;
7706      }
7707
7708      45%{
7709          opacity:1;
7710      }
7711
7712      100%{
7713          left:180%;
7714          opacity:0;
7715      }
7716
7717  }
7718
7719  @keyframes rajaPopupIn{
7720
7721      from{
7722          opacity:0;
7723          transform:scale(.92);
7724      }
7725
7726      to{
7727          opacity:1;
7728          transform:scale(1);
7729      }
7730
7731}
7732
7733  /* Aksen neon di sisi kiri */
7734  .popup-container::after {
7735    content: "";
7736    position: absolute;
7737    top: 0;
7738    left: 0;
7739
7740    width: 5px;
7741    height: 100%;
7742    z-index: 3;
7743
7744    background: linear-gradient(
7745      to bottom,
7746      var(--sd-red),
7747      var(--sd-gold),
7748      var(--sd-red)
7749    );
7750
7751    box-shadow:
7752      0 0 10px rgba(255, 60, 166, 0.65),
7753      0 0 16px rgba(32, 231, 242, 0.35);
7754  }
7755
7756  @keyframes streetPopupIn {
7757    from {
7758      opacity: 0;
7759      transform: translateY(18px) scale(0.96);
7760    }
7761
7762    to {
7763      opacity: 1;
7764      transform: translateY(0) scale(1);
7765    }
7766  }
7767
7768  /* =========================
7769     IMAGE
7770  ========================= */
7771  .popup-image{
7772    border-radius:14px;
7773    border:1px solid rgba(255,215,0,.18);
7774    }
7775  
7776
7777  /* =========================
7778     BUTTON WRAPPER
7779  ========================= */
7780  .clk-btn-sgp {
7781    position: relative;
7782    z-index: 3;
7783
7784    width: 100%;
7785    display: grid;
7786    grid-template-columns: repeat(2, minmax(0, 1fr));
7787    gap: 12px;
7788
7789    padding: 18px;
7790    font-family: "Segoe UI", Arial, sans-serif;
7791  }
7792
7793  .clk-btn-sgp a {
7794    position: relative;
7795    overflow: hidden;
7796
7797    display: flex;
7798    align-items: center;
7799    justify-content: center;
7800
7801    min-height: 50px;
7802    padding: 13px 12px;
7803
7804    color: var(--sd-white);
7805    text-align: center;
7806    text-decoration: none;
7807    text-transform: uppercase;
7808
7809    font-size: 13px;
7810    font-weight: 900;
7811    letter-spacing: 1.2px;
7812
7813    border-radius: 7px 15px 7px 15px;
7814    clip-path: polygon(
7815      var(--blade-cut) 0,
7816      100% 0,
7817      100% calc(100% - var(--blade-cut)),
7818      calc(100% - var(--blade-cut)) 100%,
7819      0 100%,
7820      0 var(--blade-cut)
7821    );
7822
7823    transition:
7824      transform 0.22s ease,
7825      border-color 0.22s ease,
7826      box-shadow 0.22s ease,
7827      filter 0.22s ease;
7828  }
7829
7830  .clk-btn-sgp a::after {
7831    content: "";
7832    position: absolute;
7833    inset: 0;
7834    pointer-events: none;
7835
7836    background: linear-gradient(
7837      110deg,
7838      transparent 25%,
7839      rgba(255, 255, 255, 0.16) 48%,
7840      transparent 70%
7841    );
7842
7843    transform: translateX(-140%);
7844    transition: transform 0.45s ease;
7845  }
7846
7847  .clk-btn-sgp a:hover::after {
7848    transform: translateX(140%);
7849  }
7850
7851  .clk-btn-sgp a:hover {
7852    transform: translateY(-3px);
7853    filter: brightness(1.12);
7854  }
7855
7856  /* =========================
7857   LOGIN BUTTON
7858========================= */
7859
7860.login{
7861    color: var(--sd-gold) !important;
7862
7863    background:
7864    linear-gradient(
7865        145deg,
7866        rgba(255,215,0,.08),
7867        rgba(255,0,0,.12)
7868    ),
7869    #0b0b0b;
7870
7871    border:1px solid rgba(255,215,0,.35);
7872
7873    box-shadow:
7874    0 8px 18px rgba(0,0,0,.45),
7875    0 0 12px rgba(255,0,0,.12),
7876    inset 0 0 10px rgba(255,215,0,.05);
7877
7878    transition:
7879    all .25s ease;
7880}
7881
7882.login:hover{
7883    color:#ffffff !important;
7884
7885    background:
7886    linear-gradient(
7887        145deg,
7888        rgba(255,215,0,.18),
7889        rgba(255,0,0,.22)
7890    );
7891
7892    border-color:var(--sd-gold);
7893
7894    transform:translateY(-2px);
7895
7896    box-shadow:
7897    0 10px 24px rgba(0,0,0,.55),
7898    0 0 18px rgba(255,215,0,.25),
7899    0 0 25px rgba(255,0,0,.20);
7900}
7901
7902  /* =========================
7903   REGISTER BUTTON
7904========================= */
7905
7906      .register{
7907          color:#ffffff !important;
7908
7909          background:
7910          linear-gradient(
7911              135deg,
7912              #1eff1e 0%,
7913              #ff4d00 45%,
7914              #0077ff 100%
7915    );
7916
7917    border:1px solid rgba(255,215,0,.45);
7918
7919    box-shadow:
7920    0 8px 18px rgba(0,0,0,.45),
7921    0 0 18px rgba(255,0,0,.22),
7922    0 0 30px rgba(255,215,0,.12);
7923
7924    transition:all .25s ease;
7925}
7926
7927.register:hover{
7928    color:#ffffff !important;
7929
7930    transform:translateY(-2px) scale(1.03);
7931
7932    border-color:#0077ff;
7933
7934    background:
7935    linear-gradient(
7936        135deg,
7937        #ff2d2d 0%,
7938        #ff5a00 45%,
7939        #0077ff 100%
7940    );
7941
7942    box-shadow:
7943    0 12px 25px rgba(0,0,0,.55),
7944    0 0 25px rgba(255,0,0,.35),
7945    0 0 40px rgba(255,215,0,.20);
7946}
7947
7948/* Pastikan tulisan tetap di atas efek */
7949        .clk-btn-sgp a span{
7950            position:relative;
7951            z-index:2;
7952    }
7953
7954  /* =========================
7955     INFO TABLE
7956  ========================= */
7957  .info-table {
7958    position: relative;
7959    z-index: 3;
7960
7961    width: calc(100% - 36px);
7962    margin: 2px auto 18px;
7963
7964    color: var(--sd-text);
7965    background: rgba(13, 7, 20, 0.9);
7966
7967    border-collapse: separate;
7968    border-spacing: 0;
7969    overflow: hidden;
7970
7971    border: 1px solid rgba(139, 44, 255, 0.25);
7972    border-radius: 12px;
7973
7974    font-size: 13px;
7975    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.32);
7976  }
7977
7978  .info-table th {
7979    padding: 13px 10px;
7980
7981    color: #ffffff;
7982    background: linear-gradient(
7983      135deg,
7984      var(--sd-gold),
7985      var(--sd-red)
7986    );
7987
7988    border: 0;
7989
7990    font-size: 13px;
7991    font-weight: 900;
7992    letter-spacing: 0.8px;
7993    text-transform: uppercase;
7994
7995    text-shadow: 1px 1px 0 rgba(0, 0, 0, 0.35);
7996  }
7997
7998  .info-table td {
7999    padding: 11px 12px;
8000
8001    color: var(--sd-text);
8002    text-align: left;
8003
8004    border-bottom: 1px solid rgba(32, 231, 242, 0.1);
8005  }
8006
8007  .info-table tr:last-child td {
8008    border-bottom: none;
8009  }
8010
8011  .info-table tr:hover td {
8012    background: rgba(139, 44, 255, 0.07);
8013  }
8014
8015  /* =========================
8016     FOOTER
8017  ========================= */
8018  .popup-footer {
8019    position: relative;
8020    z-index: 3;
8021
8022    padding: 4px 20px 8px;
8023
8024    color: #bfb3ca;
8025    font-size: 12px;
8026    line-height: 1.6;
8027    text-align: center;
8028  }
8029
8030  /* =========================
8031     DECORATIVE BORDER
8032  ========================= */
8033  .luxury-border {
8034    position: absolute;
8035    inset: 9px;
8036    z-index: 4;
8037    pointer-events: none;
8038
8039    border: 1px solid rgba(32, 231, 242, 0.08);
8040    border-radius: 7px 20px 7px 20px;
8041  }
8042
8043  /* =========================
8044     PARTICLE
8045  ========================= */
8046  .gold-particle {
8047    display: none;
8048  }
8049
8050  /* =========================
8051     CLOSE BUTTON
8052  ========================= */
8053  .close-btn {
8054    position: absolute;
8055    top: 12px;
8056    right: 12px;
8057    z-index: 10;
8058
8059    width: 34px;
8060    height: 34px;
8061
8062    display: flex;
8063    align-items: center;
8064    justify-content: center;
8065
8066    cursor: pointer;
8067
8068    background: rgba(8, 4, 13, 0.82);
8069    border: 1px solid rgba(255, 60, 166, 0.58);
8070    border-radius: 9px 4px 9px 4px;
8071
8072    box-shadow:
8073      0 0 10px rgba(255, 60, 166, 0.18);
8074
8075    transition:
8076      transform 0.22s ease,
8077      background 0.22s ease,
8078      border-color 0.22s ease;
8079  }
8080
8081  .close-btn:hover {
8082    transform: rotate(90deg);
8083    background: var(--sd-red);
8084    border-color: #ffffff;
8085  }
8086
8087  .close-btn::before,
8088  .close-btn::after {
8089    content: "";
8090    position: absolute;
8091
8092    width: 16px;
8093    height: 2px;
8094
8095    background: #ffffff;
8096    border-radius: 3px;
8097  }
8098
8099  .close-btn::before {
8100    transform: rotate(45deg);
8101  }
8102
8103  .close-btn::after {
8104    transform: rotate(-45deg);
8105  }
8106
8107  /* =========================
8108     RESPONSIVE
8109  ========================= */
8110  @media (max-width: 480px) {
8111    .popup-overlay {
8112      padding: 12px;
8113    }
8114
8115    .popup-container {
8116      max-width: 355px;
8117      border-radius: 8px 20px 8px 20px;
8118    }
8119
8120    .clk-btn-sgp {
8121      grid-template-columns: 1fr;
8122      gap: 10px;
8123      padding: 14px;
8124    }
8125
8126    .clk-btn-sgp a {
8127      min-height: 47px;
8128      padding: 12px;
8129      font-size: 12px;
8130    }
8131
8132    .info-table {
8133      width: calc(100% - 28px);
8134      font-size: 12px;
8135    }
8136
8137    .info-table th,
8138    .info-table td {
8139      padding: 10px;
8140    }
8141
8142    .popup-footer {
8143      padding-right: 16px;
8144      padding-left: 16px;
8145      font-size: 11px;
8146    }
8147
8148    .close-btn {
8149      width: 30px;
8150      height: 30px;
8151    }
8152  }
8153
8154  @media (prefers-reduced-motion: reduce) {
8155    .popup-container,
8156    .clk-btn-sgp a,
8157    .close-btn {
8158      animation: none;
8159      transition: none;
8160    }
8161  }
8162</style>
8163  <div class="popup-overlay" id="popupOverlay">
8164      <div class="popup-container">
8165          <!-- Tombol Close -->
8166          <div class="close-btn" onclick="closePopup()"></div>
8167          <!-- Partikel emas untuk efek elegan -->
8168          <div class="gold-particle" style="width: 10px; height: 10px; top: 15%; left: 12%; animation-delay: 0s;"></div>
8169          <div class="gold-particle" style="width: 8px; height: 8px; top: 35%; left: 88%; animation-delay: 1.5s;"></div>
8170          <div class="gold-particle" style="width: 12px; height: 12px; top: 65%; left: 18%; animation-delay: 3s;"></div>
8171          <div class="gold-particle" style="width: 6px; height: 6px; top: 25%; left: 75%; animation-delay: 4.5s;"></div>
8172          <div class="gold-particle" style="width: 9px; height: 9px; top: 80%; left: 60%; animation-delay: 6s;"></div>
8173          <!-- Border mewah -->
8174          <div class="luxury-border"></div>
8175          <div class="Popup Banner">
8176              <img src="https://veldrive.com/nAhfgJZ5/gopaysayur/img.webp" alt="Popup Banner" class="popup-image" />
8177              <div class="clk-btn-sgp" style="font-size: 20px;">
8178                  <a href="https://penthouse.gopaytogel.network/" target="_blank" rel="nofollow noreferrer"
8179                      class="login">LOGIN</a>
8180                  <a href="https://penthouse.gopaytogel.network/" target="_blank" rel="nofollow noreferrer"
8181                      class="register">DAFTAR</a>
8182              </div>
8183              <div class="popup-footer">
8184                  GOPAYTOGEL | Racikan Situs Toto 4D Resmi & Bandar Togel Online dengan Layanan 24 Jam<br/>
8185                  <span style="color: #ffd900; font-weight: 600; text-shadow: 0 0 5px rgba(212, 175, 55, 0.5);">&copy; GOPAYTOGEL - SITUS TOTO - SITUS TOGEL - REAL TIME - SEO ABANG ADEK X S.KENNEDY GOPAYTOGEL.</span>
8186              </div>
8187          </div>
8188      </div>
8189  </div>
8190  
8190<script>
8191      function closePopup() {
8192          const popupOverlay = document.getElementById('popupOverlay');
8193          popupOverlay.style.opacity = '0';
8194          popupOverlay.style.transition = 'opacity 0.3s ease';
8195          
8196          setTimeout(() => {
8197              popupOverlay.style.display = 'none';
8198          }, 300);
8199      }
8200      
8201      // Menutup popup ketika mengklik area di luar popup
8202      document.getElementById('popupOverlay').addEventListener('click', function(event) {
8203          if (event.target === this) {
8204              closePopup();
8205          }
8206      });
8207  </script>
8207
8208            <style nonce="se3iyzEHMc9FQEB4wSyd0w==">
8209              /* Chat Widget Styles - Lightweight & Minimal */
8210              .chat-widget {
8211                  position: fixed;
8212                  bottom: 20px;
8213                  right: 20px;
8214                  z-index: 9999;
8215                  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
8216              }
8217              
8218              /* Hide floating button on mobile - use bottom nav instead */
8219              @media (max-width: 640px) {
8220                  .chat-toggle-btn {
8221                      display: none !important;
8222                  }
8223                  
8224                  /* Ensure popup is still visible on mobile even when button is hidden */
8225                  .chat-widget {
8226                      display: block !important;
8227                  }
8228                  
8229                  .chat-popup {
8230                      display: none; /* Hidden by default, shown via JS */
8231                  }
8232                  
8233                  .chat-popup[style*="display: block"],
8234                  .chat-popup[style*="display:block"] {
8235                      display: block !important;
8236                  }
8237              }
8238              
8239              .chat-toggle-btn{
8240
8241                  width:60px;
8242                  height:60px;
8243
8244                  border:none;
8245                  border-radius:50%;
8246
8247                  background:
8248                  linear-gradient(
8249                      145deg,
8250                      #1eff1e,
8251                      #a80000
8252                  );
8253
8254                  color:#fff;
8255
8256                  cursor:pointer;
8257
8258                  box-shadow:
8259                  0 0 15px rgba(255,0,0,.20),
8260                  0 0 25px rgba(255,215,0,.08);
8261
8262                  transition:
8263                  transform .2s ease,
8264                  box-shadow .2s ease;
8265
8266                  }
8267
8268                  .chat-toggle-btn{
8269
8270                  transform:scale(1.05);
8271
8272                  box-shadow:
8273                  0 0 20px rgba(255,0,0,.28),
8274                  0 0 30px rgba(255,215,0,.12);
8275
8276}
8277              
8278              #chat-toggle-btn .chat-icon {
8279                  position: absolute;
8280                  top: 50%;
8281                  left: 50%;
8282                  transform: translate(-50%, -50%);
8283                  width: 28px !important;
8284                  height: 28px !important;
8285              }
8286              
8287              .chat-unread-badge{
8288                position:absolute;
8289                top:-5px;
8290                right:-5px;
8291
8292                background:var(--gopay-red);
8293
8294                color:#fff;
8295
8296                border-radius:12px;
8297
8298                padding:2px 6px;
8299
8300                font-size:11px;
8301                font-weight:700;
8302
8303                min-width:20px;
8304
8305                text-align:center;
8306
8307                box-shadow:
8308                0 0 10px rgba(255,0,0,.25);
8309}
8310              }
8311              
8312              .chat-popup {
8313                  position:absolute;
8314                  bottom:80px;
8315                  right:0;
8316
8317                  width:380px;
8318
8319                  max-width:calc(100vw - 40px);
8320
8321                  height:500px;
8322
8323                  max-height:calc(100vh - 120px);
8324
8325                  background:var(--gopay-card);
8326
8327                  border:1px solid rgba(255,215,0,.18);
8328
8329                  border-radius:16px;
8330
8331                  box-shadow:
8332                  0 0 20px rgba(255,0,0,.15),
8333                  0 0 35px rgba(255,215,0,.05);
8334
8335                  display:flex;
8336                  flex-direction:column;
8337
8338                  overflow:hidden;
8339              }
8340              
8341              .chat-popup-header{
8342
8343                  background:
8344                  linear-gradient(
8345                      145deg,
8346                      #1eff1e,
8347                      #a80000
8348                  );
8349
8350                  color:#fff;
8351
8352                  padding:16px 20px;
8353
8354                  display:flex;
8355                  justify-content:space-between;
8356                  align-items:center;
8357
8358                  flex-shrink:0;
8359
8360                  border-bottom:1px solid rgba(255,215,0,.18);
8361
8362                  box-shadow:
8363                  inset 0 -1px 0 rgba(255,215,0,.08);
8364                }
8365            
8366              
8367              .chat-header-title {
8368                  display: flex;
8369                  flex-direction: column;
8370                  gap: 2px;
8371                  min-height: 0;
8372              }
8373              
8374              .chat-popup-header h3 {
8375                  margin: 0;
8376                  font-size: 18px;
8377                  font-weight: 600;
8378                  line-height: 1.2;
8379              }
8380              
8381              .chat-operating-hours {
8382                  font-size: 11px;
8383                  opacity: 0.9;
8384                  font-weight: 400;
8385                  display: flex;
8386                  align-items: center;
8387                  gap: 4px;
8388                  line-height: 1.2;
8389              }
8390              
8391              .chat-operating-hours svg {
8392                  width: 12px;
8393                  height: 12px;
8394                  opacity: 0.8;
8395                  flex-shrink: 0;
8396              }
8397              
8398              .chat-header-actions {
8399                  display: flex;
8400                  align-items: center;
8401                  gap: 8px;
8402              }
8403              
8404              /* Notification Toggle Button */
8405              .btn-notif-toggle {
8406                  background: none;
8407                  border: none;
8408                  color: white;
8409                  font-size: 18px;
8410                  cursor: pointer;
8411                  padding: 4px 8px;
8412                  transition: all 0.2s;
8413                  opacity: 0.8;
8414              }
8415              
8416              .btn-notif-toggle:hover {
8417                  opacity: 1;
8418                  transform: scale(1.1);
8419              }
8420              
8421              /* Icon states */
8422              .btn-notif-toggle[data-status="not-subscribed"] svg {
8423                  opacity: 0.7;
8424              }
8425              
8426              .btn-notif-toggle[data-status="not-subscribed"]:hover svg {
8427                  opacity: 1;
8428              }
8429              
8430              .btn-notif-toggle[data-status="subscribed"] svg {
8431                  opacity: 1;
8432                  animation: bellRing 2s ease-in-out;
8433              }
8434              
8435              .btn-notif-toggle[data-status="blocked"] svg {
8436                  color: #ff6b6b;
8437              }
8438              
8439              .btn-notif-toggle[data-status="not-supported"] {
8440                  display: none !important;
8441              }
8442              
8443              @keyframes bellRing {
8444                  0%, 100% { transform: rotate(0deg); }
8445                  10%, 30% { transform: rotate(-10deg); }
8446                  20%, 40% { transform: rotate(10deg); }
8447              }
8448              
8449              /* Notification Info Bar */
8450              .chat-notif-info-bar {
8451                  position: absolute;
8452                  top: 64px;
8453                  left: 0;
8454                  right: 0;
8455                  background: linear-gradient(to right, #e3f2fd, #f5f5f5);
8456                  border-bottom: 1px solid #bbdefb;
8457                  padding: 8px 12px;
8458                  display: flex;
8459                  align-items: center;
8460                  gap: 8px;
8461                  font-size: 12px;
8462                  color: #616161;
8463                  z-index: 10;
8464                  animation: slideDown 0.3s ease;
8465              }
8466              
8467              .chat-notif-info-bar svg {
8468                  flex-shrink: 0;
8469              }
8470              
8471              .chat-notif-info-bar .small {
8472                  flex: 1;
8473                  line-height: 1.4;
8474              }
8475              
8476              .chat-notif-info-bar .btn-dismiss {
8477                  background: none;
8478                  border: none;
8479                  color: #9e9e9e;
8480                  cursor: pointer;
8481                  padding: 0 4px;
8482                  font-size: 16px;
8483                  transition: color 0.2s;
8484              }
8485              
8486              .chat-notif-info-bar .btn-dismiss:hover {
8487                  color: #f3c806;
8488              }
8489              
8490              @keyframes slideDown {
8491                  from {
8492                      max-height: 0;
8493                      opacity: 0;
8494                  }
8495                  to {
8496                      max-height: 50px;
8497                      opacity: 1;
8498                  }
8499              }
8500              
8501              .chat-close-btn {
8502                  background: none;
8503                  border: none;
8504                  color: white;
8505                  font-size: 28px;
8506                  line-height: 1;
8507                  cursor: pointer;
8508                  padding: 0;
8509                  width: 30px;
8510                  height: 30px;
8511              }
8512              
8513              .chat-popup-body {
8514                  flex: 1 1 auto;
8515                  display: flex;
8516                  flex-direction: column;
8517                  min-height: 0;
8518                  overflow: hidden;
8519                  height: calc(100% - 64px);
8520                  position: relative;
8521                  transition: padding-top 0.3s ease;
8522              }
8523              
8524              /* Add padding when info bar is visible */
8525              .chat-popup-body.has-info-bar {
8526                  padding-top: 40px;
8527              }
8528              
8529              .chat-view {
8530                  flex: 1 1 auto;
8531                  display: none;
8532                  flex-direction: column;
8533                  min-height: 0;
8534                  overflow: hidden;
8535              }
8536              
8537              #chat-list-view {
8538                  display: flex;
8539              }
8540              
8541              #chat-messages-view {
8542                  display: none;
8543              }
8544              
8545              #chat-messages-view.active {
8546                  display: flex;
8547                  flex-direction: column;
8548              }
8549              
8550              #chat-new-view {
8551                  display: none;
8552              }
8553              
8554              #chat-new-view.active {
8555                  display: flex;
8556              }
8557              
8558              .chat-conversations-list {
8559                  flex: 1;
8560                  overflow-y: auto;
8561                  padding: 0;
8562                  background: white;
8563              }
8564              
8565              /* Custom Scrollbar for Conversations List */
8566              .chat-conversations-list::-webkit-scrollbar {
8567                  width: 6px;
8568              }
8569              
8570              .chat-conversations-list::-webkit-scrollbar-track {
8571                  background: #f1f1f1;
8572              }
8573              
8574              .chat-conversations-list::-webkit-scrollbar-thumb {
8575                  background: #F28C1A;
8576                  border-radius: 3px;
8577              }
8578              
8579              .chat-conversations-list::-webkit-scrollbar-thumb:hover {
8580                  background: #D97809;
8581              }
8582              
8583              /* Firefox */
8584              .chat-conversations-list {
8585                  scrollbar-width: thin;
8586                  scrollbar-color: #F28C1A #f1f1f1;
8587              }
8588              
8589              .chat-conversation-item {
8590                  padding: 12px 16px;
8591                  cursor: pointer;
8592                  display: flex;
8593                  gap: 12px;
8594                  align-items: flex-start;
8595                  transition: background 0.15s ease;
8596                  color: #e97407;
8597                  border-bottom: 1px solid #f0f0f0;
8598              }
8599              
8600              .chat-conversation-item:hover {
8601                  background: #f5f5f5;
8602              }
8603              
8604              .chat-conversation-item.active {
8605                  background: #FFF5EB;
8606              }
8607              
8608              /* WhatsApp-like Avatar */
8609              .conversation-avatar {
8610                  width: 48px;
8611                  height: 48px;
8612                  border-radius: 50%;
8613                  background: linear-gradient(135deg, #F28C1A 0%, #D97809 100%);
8614                  flex-shrink: 0;
8615                  display: flex;
8616                  align-items: center;
8617                  justify-content: center;
8618                  color: white;
8619                  font-weight: 600;
8620                  font-size: 18px;
8621              }
8622              
8623              .conversation-avatar svg {
8624                  width: 24px;
8625                  height: 24px;
8626              }
8627              
8628              /* WhatsApp-like Content */
8629              .conversation-content {
8630                  flex: 1;
8631                  min-width: 0;
8632                  display: flex;
8633                  flex-direction: column;
8634                  gap: 4px;
8635              }
8636              
8637              .conversation-header {
8638                  display: flex;
8639                  justify-content: space-between;
8640                  align-items: center;
8641                  gap: 8px;
8642              }
8643              
8644              .conversation-name {
8645                  font-weight: 600;
8646                  font-size: 15px;
8647                  color: #111;
8648                  white-space: nowrap;
8649                  overflow: hidden;
8650                  text-overflow: ellipsis;
8651              }
8652              
8653              .conversation-time {
8654                  font-size: 12px;
8655                  color: #1adbcb;
8656                  flex-shrink: 0;
8657              }
8658              
8659              .conversation-preview {
8660                  display: flex;
8661                  justify-content: space-between;
8662                  align-items: center;
8663                  gap: 8px;
8664              }
8665              
8666              .conversation-message {
8667                  font-size: 14px;
8668                  color: #1fe2e2;
8669                  white-space: nowrap;
8670                  overflow: hidden;
8671                  text-overflow: ellipsis;
8672                  margin: 0;
8673                  flex: 1;
8674              }
8675              
8676              .conversation-unread {
8677                  background: #d32525;
8678                  color: white;
8679                  border-radius: 12px;
8680                  padding: 2px 8px;
8681                  font-size: 12px;
8682                  font-weight: 600;
8683                  min-width: 20px;
8684                  text-align: center;
8685                  flex-shrink: 0;
8686              }
8687              
8688              /* Active item styling */
8689              .chat-conversation-item.active .conversation-name {
8690                  color: #F28C1A;
8691              }
8692              
8693              .chat-conversation-item.active .conversation-time {
8694                  color: #F28C1A;
8695              }
8696              
8697              .chat-new-btn {
8698                  margin: 12px;
8699                  padding: 12px;
8700                  background: linear-gradient(135deg, #F28C1A 0%, #D97809 100%);
8701                  color: white;
8702                  border: none;
8703                  border-radius: 8px;
8704                  cursor: pointer;
8705                  font-weight: 500;
8706                  font-size: 14px;
8707                  display: flex;
8708                  align-items: center;
8709                  justify-content: center;
8710                  gap: 8px;
8711                  transition: all 0.2s;
8712                  flex-shrink: 0;
8713              }
8714              
8715              .chat-new-btn:hover {
8716                  transform: translateY(-1px);
8717                  box-shadow: 0 4px 8px rgba(242, 140, 26, 0.3);
8718              }
8719              
8720              .chat-conversation-title {
8721                  flex: 1;
8722                  font-weight: 600;
8723                  font-size: 16px;
8724                  color: #1f2937;
8725              }
8726              
8727              .chat-messages-container {
8728                  flex: 1;
8729                  overflow-y: auto;
8730                  padding: 16px;
8731                  display: flex;
8732                  flex-direction: column;
8733                  gap: 8px;
8734                  min-height: 0;
8735                  background: #E5DDD5;
8736              }
8737              
8738              /* Custom Scrollbar for Messages Container */
8739              .chat-messages-container::-webkit-scrollbar {
8740                  width: 6px;
8741              }
8742              
8743              .chat-messages-container::-webkit-scrollbar-track {
8744                  background: rgba(0, 0, 0, 0.05);
8745              }
8746              
8747              .chat-messages-container::-webkit-scrollbar-thumb {
8748                  background: rgba(242, 140, 26, 0.6);
8749                  border-radius: 3px;
8750              }
8751              
8752              .chat-messages-container::-webkit-scrollbar-thumb:hover {
8753                  background: #F28C1A;
8754              }
8755              
8756              /* Firefox */
8757              .chat-messages-container {
8758                  scrollbar-width: thin;
8759                  scrollbar-color: rgba(242, 140, 26, 0.6) rgba(0, 0, 0, 0.05);
8760              }
8761              
8762              /* WhatsApp Group-like Messages */
8763              .chat-message {
8764                  display: flex;
8765                  margin-bottom: 4px;
8766                  animation: fadeIn 0.2s ease;
8767              }
8768              
8769              @keyframes fadeIn {
8770                  from { opacity: 0; transform: translateY(10px); }
8771                  to { opacity: 1; transform: translateY(0); }
8772              }
8773              
8774              .chat-message.mine {
8775                  justify-content: flex-end;
8776              }
8777              
8778              .chat-message-bubble {
8779                  max-width: 80%;
8780                  padding: 6px 8px 8px 10px;
8781                  border-radius: 8px;
8782                  position: relative;
8783                  box-shadow: 0 1px 0.5px rgba(0,0,0,0.13);
8784              }
8785              
8786              /* Bubble from others (Admin/CS) */
8787              .chat-message:not(.mine) .chat-message-bubble {
8788                  background: #FFFFFF;
8789                  border-radius: 0 8px 8px 8px;
8790              }
8791              
8792              /* Bubble tail for others */
8793              .chat-message:not(.mine) .chat-message-bubble::before {
8794                  content: '';
8795                  position: absolute;
8796                  top: 0;
8797                  left: -8px;
8798                  width: 0;
8799                  height: 0;
8800                  border-style: solid;
8801                  border-width: 0 8px 13px 0;
8802                  border-color: transparent #FFFFFF transparent transparent;
8803              }
8804              
8805              /* Bubble from user (mine) */
8806              .chat-message.mine .chat-message-bubble {
8807                  background: #e4f5d0; /* Light blue for user messages */
8808                  border-radius: 8px 0 8px 8px;
8809              }
8810              
8811              /* Bubble tail for mine */
8812              .chat-message.mine .chat-message-bubble::before {
8813                  content: '';
8814                  position: absolute;
8815                  top: 0;
8816                  right: -8px;
8817                  width: 0;
8818                  height: 0;
8819                  border-style: solid;
8820                  border-width: 0 0 13px 8px;
8821                  border-color: transparent transparent transparent #eaf5d0;
8822              }
8823              
8824              .message-sender {
8825                  font-size: 12.5px;
8826                  font-weight: 600;
8827                  color: #F28C1A !important;
8828                  margin-bottom: 4px;
8829              }
8830              
8831              .chat-message.mine .message-sender {
8832                  display: none;
8833              }
8834              
8835              /* Message text */
8836              .message-text {
8837                  font-size: 14px;
8838                  line-height: 19px;
8839                  color: #000000 !important;
8840                  word-wrap: break-word;
8841                  white-space: pre-wrap;
8842                  margin-bottom: 4px;
8843              }
8844              
8845              /* Message metadata (time + status) */
8846              .message-meta {
8847                  display: flex;
8848                  align-items: center;
8849                  justify-content: flex-end;
8850                  gap: 4px;
8851                  margin-top: 2px;
8852              }
8853              
8854              .message-time {
8855                  font-size: 11px;
8856                  color: #728166 !important;
8857                  line-height: 15px;
8858              }
8859              
8860              /* Use multiple selectors to override global styles */
8861              .chat-message-bubble .message-status,
8862              .message-meta .message-status,
8863              .chat-message .message-status {
8864                  width: 16px !important;
8865                  height: 16px !important;
8866                  min-width: 16px !important;
8867                  min-height: 16px !important;
8868                  max-width: 16px !important;
8869                  max-height: 16px !important;
8870                  flex-shrink: 0;
8871                  color: #728166 !important;
8872                  fill: currentColor !important;
8873              }
8874              
8875              .chat-message:not(.mine) .message-status {
8876                  display: none;
8877              }
8878              
8879              /* Loading dots animation */
8880              @keyframes loadingDots {
8881                  0%, 20% { content: '.'; }
8882                  40% { content: '..'; }
8883                  60%, 100% { content: '...'; }
8884              }
8885              
8886              .message-status.loading::after {
8887                  content: '...';
8888                  animation: loadingDots 1.5s infinite;
8889                  font-size: 16px;
8890                  line-height: 16px;
8891              }
8892              
8893              .message-status.loading path {
8894                  display: none;
8895              }
8896              
8897              .message-status.failed {
8898                  color: #ef4444 !important;
8899                  cursor: pointer;
8900              }
8901              
8902              .message-status.sent {
8903                  color: #667781 !important;
8904              }
8905              
8906              .chat-new-form {
8907                  flex: 1;
8908                  overflow-y: auto;
8909                  padding: 16px;
8910                  display: flex;
8911                  flex-direction: column;
8912              }
8913              
8914              .chat-new-form form {
8915                  display: flex;
8916                  flex-direction: column;
8917                  gap: 16px;
8918                  flex: 1;
8919              }
8920              
8921              .chat-new-form .form-group {
8922                  display: flex;
8923                  flex-direction: column;
8924                  gap: 6px;
8925              }
8926              
8927              .chat-new-form label {
8928                  font-size: 14px;
8929                  font-weight: 500;
8930                  color: #374151;
8931              }
8932              
8933              .chat-new-form .form-control {
8934                  width: 100%;
8935                  padding: 10px 12px;
8936                  border: 1px solid #d1d5db;
8937                  border-radius: 8px;
8938                  font-size: 14px;
8939                  font-family: inherit;
8940                  transition: border-color 0.2s;
8941                  box-sizing: border-box;
8942              }
8943              
8944              .chat-new-form .form-control:focus {
8945                  outline: none;
8946                  border-color: #F28C1A;
8947                  box-shadow: 0 0 0 3px rgba(242, 140, 26, 0.1);
8948              }
8949              
8950              .chat-new-form textarea.form-control {
8951                  resize: vertical;
8952                  min-height: 100px;
8953              }
8954              
8955              .chat-new-form .btn {
8956                  padding: 12px 20px;
8957                  border: none;
8958                  border-radius: 8px;
8959                  font-size: 15px;
8960                  font-weight: 500;
8961                  cursor: pointer;
8962                  transition: all 0.2s;
8963                  text-align: center;
8964              }
8965              
8966              .chat-new-form .btn-primary {
8967                  background: linear-gradient(135deg, #F28C1A 0%, #D97809 100%);
8968                  color: white;
8969              }
8970              
8971              .chat-new-form .btn-primary:hover {
8972                  transform: translateY(-1px);
8973                  box-shadow: 0 4px 8px rgba(242, 140, 26, 0.3);
8974              }
8975              
8976              .chat-new-form .btn-primary:active {
8977                  transform: scale(0.98);
8978              }
8979              
8980              .chat-new-form .btn-block {
8981                  width: 100%;
8982                  margin-top: auto;
8983              }
8984              
8985              .chat-message-form {
8986                  padding: 12px;
8987                  border-top: 1px solid #e5e7eb;
8988                  display: flex;
8989                  flex-wrap: wrap;
8990                  gap: 8px;
8991                  align-items: flex-end;
8992                  flex-shrink: 0;
8993                  background: white;
8994              }
8995              
8996              .chat-product-card {
8997                  flex: 1 1 100%;
8998                  max-width: 100%;
8999                  display: flex;
9000                  gap: 12px;
9001                  padding: 12px;
9002                  background: #f3f4f6;
9003                  border-radius: 8px;
9004                  margin-bottom: 4px;
9005                  border: 1px solid #e5e7eb;
9006              }
9007              
9008              .chat-product-card img {
9009                  width: 60px;
9010                  height: 60px;
9011                  object-fit: cover;
9012                  border-radius: 6px;
9013                  flex-shrink: 0;
9014              }
9015              
9016              .chat-product-card-content {
9017                  flex: 1;
9018                  min-width: 0;
9019              }
9020              
9021              .chat-product-card-name {
9022                  font-weight: 500;
9023                  font-size: 14px;
9024                  color: #1f2937;
9025                  margin-bottom: 4px;
9026                  white-space: nowrap;
9027                  overflow: hidden;
9028                  text-overflow: ellipsis;
9029              }
9030              
9031              .chat-product-card-variant {
9032                  font-size: 12px;
9033                  color: #74806b;
9034                  margin-bottom: 4px;
9035              }
9036              
9037              .chat-product-card-price {
9038                  font-size: 13px;
9039                  color: #8bea66;
9040                  font-weight: 600;
9041              }
9042              
9043              .chat-product-card-remove {
9044                  align-self: flex-start;
9045                  background: none;
9046                  border: none;
9047                  color: #9ca3af;
9048                  cursor: pointer;
9049                  padding: 4px;
9050                  font-size: 18px;
9051                  line-height: 1;
9052                  transition: color 0.2s;
9053              }
9054              
9055              .chat-product-card-remove:hover {
9056                  color: #ef4444;
9057              }
9058              
9059              /* Product card in messages (read-only display) */
9060              .message-product-card {
9061                  display: flex;
9062                  gap: 10px;
9063                  padding: 10px;
9064                  background: rgba(255, 255, 255, 0.5);
9065                  border-radius: 8px;
9066                  margin-bottom: 6px;
9067                  border: 1px solid rgba(0, 0, 0, 0.08);
9068                  align-items: center;
9069              }
9070              
9071              .chat-message.mine .message-product-card {
9072                  background: rgba(255, 255, 255, 0.7);
9073              }
9074              
9075              .message-product-card img {
9076                  width: 50px;
9077                  height: 50px;
9078                  object-fit: cover;
9079                  border-radius: 6px;
9080                  flex-shrink: 0;
9081              }
9082              
9083              .message-product-info {
9084                  flex: 1;
9085                  min-width: 0;
9086              }
9087              
9088              .message-product-name {
9089                  font-weight: 500;
9090                  font-size: 13px;
9091                  color: #33371f;
9092                  margin-bottom: 2px;
9093                  overflow: hidden;
9094                  text-overflow: ellipsis;
9095                  display: -webkit-box;
9096                  -webkit-line-clamp: 2;
9097                  -webkit-box-orient: vertical;
9098                  line-height: 1.3;
9099              }
9100              
9101              .message-product-variant {
9102                  font-size: 11px;
9103                  color: #78806b;
9104                  margin-bottom: 2px;
9105              }
9106              
9107              .message-product-price {
9108                  font-size: 12px;
9109                  color: #c7ea66;
9110                  font-weight: 600;
9111              }
9112              
9113              .message-product-link {
9114                  flex-shrink: 0;
9115                  width: 32px;
9116                  height: 32px;
9117                  display: flex;
9118                  align-items: center;
9119                  justify-content: center;
9120                  background: rgba(102, 126, 234, 0.1);
9121                  border-radius: 6px;
9122                  color: #c7ea66;
9123                  text-decoration: none;
9124                  transition: all 0.2s;
9125              }
9126              
9127              .message-product-link:hover {
9128                  background: #b7ea66;
9129                  color: white;
9130              }
9131              
9132              .message-product-link svg {
9133                  width: 16px;
9134                  height: 16px;
9135              }
9136              
9137              .chat-message-input {
9138                  flex: 1;
9139                  border: 1px solid #d1d5db;
9140                  border-radius: 20px;
9141                  padding: 10px 16px;
9142                  resize: none;
9143                  max-height: 100px;
9144                  font-family: inherit;
9145                  font-size: 14px;
9146                  line-height: 1.5;
9147                  box-sizing: border-box;
9148                  overflow-y: hidden;
9149              }
9150              
9151              .chat-message-input:focus {
9152                  outline: none;
9153                  border-color: #F28C1A;
9154                  box-shadow: 0 0 0 3px rgba(242, 140, 26, 0.1);
9155              }
9156              
9157              .chat-send-btn {
9158                  width: 40px;
9159                  height: 40px;
9160                  border-radius: 50%;
9161                  background: linear-gradient(135deg, #F28C1A 0%, #D97809 100%);
9162                  border: none;
9163                  color: white;
9164                  cursor: pointer;
9165                  flex-shrink: 0;
9166                  display: flex;
9167                  align-items: center;
9168                  justify-content: center;
9169                  transition: all 0.2s;
9170              }
9171              
9172              .chat-send-btn:hover {
9173                  transform: scale(1.05);
9174                  box-shadow: 0 2px 8px rgba(242, 140, 26, 0.3);
9175              }
9176              
9177              .chat-send-btn:active {
9178                  transform: scale(0.95);
9179              }
9180              
9181              .chat-loading {
9182                  text-align: center;
9183                  padding: 20px;
9184                  color: #6b7280;
9185              }
9186              
9187              /* Date Separator (WhatsApp-style) */
9188              .date-separator {
9189                  display: flex;
9190                  align-items: center;
9191                  gap: 12px;
9192                  margin: 24px 0 16px;
9193                  opacity: 0;
9194                  animation: fadeInSeparator 0.3s ease forwards;
9195              }
9196
9197              @keyframes fadeInSeparator {
9198                  from {
9199                      opacity: 0;
9200                      transform: translateY(-10px);
9201                  }
9202                  to {
9203                      opacity: 1;
9204                      transform: translateY(0);
9205                  }
9206              }
9207
9208              .date-separator-line {
9209                  flex: 1;
9210                  height: 1px;
9211                  background: linear-gradient(90deg, transparent, rgba(0, 0, 0, 0.1) 50%, transparent);
9212              }
9213
9214              .date-separator-text {
9215                  flex-shrink: 0;
9216                  padding: 4px 12px;
9217                  background: #e9ecef;
9218                  color: #6c757d;
9219                  font-size: 11px;
9220                  font-weight: 600;
9221                  text-transform: uppercase;
9222                  letter-spacing: 0.5px;
9223                  border-radius: 12px;
9224                  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
9225              }
9226              
9227              /* Mobile responsive */
9228              @media (max-width: 640px) {
9229                  .chat-popup {
9230                      position: fixed !im
9230portant; /* Override absolute positioning */
9231                      bottom: 45px !important; /* Above bottom nav */
9232                      right: 0 !important;
9233                      left: 0 !important;
9234                      width: 100% !important;
9235                      max-width: 100% !important;
9236                      /* Use dvh (dynamic viewport height) for browser UI awareness */
9237                      height: calc(100dvh - 45px) !important;
9238                      max-height: calc(100dvh - 45px) !important;
9239                      /* Fallback for browsers that don't support dvh */
9240                      height: calc(var(--viewport-height, 100vh) - 45px) !important;
9241                      max-height: calc(var(--viewport-height, 100vh) - 45px) !important;
9242                      border-radius: 0 !important;
9243                      z-index: 9999 !important;
9244                  }
9245                  
9246                  .chat-popup-header {
9247                      border-radius: 0;
9248                  }
9249                  
9250                  .chat-messages-container,
9251                  .chat-conversations-list {
9252                      /* Adjust for mobile keyboard using dynamic viewport */
9253                      max-height: calc(100dvh - 190px);
9254                      /* Fallback for browsers that don't support dvh */
9255                      max-height: calc(var(--viewport-height, 100vh) - 190px);
9256                  }
9257              }
9258          </style>
9259
9260                  <!-- Chat Widget Button -->
9261          <div id="chat-widget" class="chat-widget" 
9262              data-user-id=""
9263              data-is-logged-in="false"
9264              data-csrf-token="df5d776748b1ed8c8dd0d987bae99b1ee3dea6c6dcbe0eedb1bea766c56d569a">
9265              <button id="chat-toggle-btn" class="chat-toggle-btn" aria-label="Toggle chat">
9266                  <svg class="chat-icon" width="28" height="28" viewBox="0 0 640 640" fill="currentColor">
9267                      <path d="M320 128C241 128 175.3 185.3 162.3 260.7C171.6 257.7 181.6 256 192 256L208 256C234.5 256 256 277.5 256 304L256 400C256 426.5 234.5 448 208 448L192 448C139 448 96 405 96 352L96 288C96 164.3 196.3 64 320 64C443.7 64 544 164.3 544 288L544 456.1C544 522.4 490.2 576.1 423.9 576.1L336 576L304 576C277.5 576 256 554.5 256 528C256 501.5 277.5 480 304 480L336 480C362.5 480 384 501.5 384 528L384 528L424 528C463.8 528 496 495.8 496 456L496 435.1C481.9 443.3 465.5 447.9 448 447.9L432 447.9C405.5 447.9 384 426.4 384 399.9L384 303.9C384 277.4 405.5 255.9 432 255.9L448 255.9C458.4 255.9 468.3 257.5 477.7 260.6C464.7 185.3 399.1 127.9 320 127.9z"/>
9268                  </svg>
9269                  <span id="chat-unread-badge" class="chat-unread-badge" style="display: none;">0</span>
9270              </button>
9271              
9272              <div id="chat-popup" class="chat-popup" style="display: none;">
9273                  <div class="chat-popup-header">
9274                      <div class="chat-header-title">
9275                          <h3>Bantuan</h3>
9276                          <span id="chatOperatingHours" class="chat-operating-hours" style="display: none;"></span>
9277                      </div>
9278                      <div class="chat-header-actions">
9279                          <button id="chatNotifToggle" class="btn-notif-toggle" data-status="not-supported" title="Push notification" style="display: none;">
9280                              <svg width="18" height="18" viewBox="0 0 24 24" fill="currentColor">
9281                                  <path d="M12 22c1.1 0 2-.9 2-2h-4c0 1.1.89 2 2 2zm6-6v-5c0-3.07-1.64-5.64-4.5-6.32V4c0-.83-.67-1.5-1.5-1.5s-1.5.67-1.5 1.5v.68C7.63 5.36 6 7.92 6 11v5l-2 2v1h16v-1l-2-2z"/>
9282                              </svg>
9283                          </button>
9284                          <button id="chat-close-btn" class="chat-close-btn" aria-label="Close chat">×</button>
9285                      </div>
9286                  </div>
9287                  
9288                  <!-- Notification Info Bar (conditional) -->
9289                  <div class="chat-notif-info-bar" id="chatNotifInfoBar" style="display:none;">
9290                      <svg width="14" height="14" viewBox="0 0 24 24" fill="#ffc107">
9291                          <path d="M9 21c0 .55.45 1 1 1h4c.55 0 1-.45 1-1v-1H9v1zm3-19C8.14 2 5 5.14 5 9c0 2.38 1.19 4.47 3 5.74V17c0 .55.45 1 1 1h6c.55 0 1-.45 1-1v-2.26c1.81-1.27 3-3.36 3-5.74 0-3.86-3.14-7-7-7zm2.85 11.1l-.85.6V16h-4v-2.3l-.85-.6C7.8 12.16 7 10.63 7 9c0-2.76 2.24-5 5-5s5 2.24 5 5c0 1.63-.8 3.16-2.15 4.1z"/>
9292                      </svg>
9293                      <span class="small">Aktifkan notifikasi untuk pemberitahuan balasan</span>
9294                      <button class="btn-dismiss" onclick="ChatNotification.dismissInfo()">✕</button>
9295                  </div>
9296                  
9297                  <div class="chat-popup-body">
9298                      <!-- Conversations List View -->
9299                      <div id="chat-list-view" class="chat-view">
9300                          <div id="chat-conversations-list" class="chat-conversations-list">
9301                              <div class="chat-loading">Memuat...</div>
9302                              <!-- Conversation Item Structure (rendered by JS):
9303                              <div class="chat-conversation-item">
9304                                  <div class="conversation-avatar">
9305                                      <svg>...</svg>
9306                                  </div>
9307                                  <div class="conversation-content">
9308                                      <div class="conversation-header">
9309                                          <span class="conversation-name">Admin Support</span>
9310                                          <span class="conversation-time">10:30</span>
9311                                      </div>
9312                                      <div class="conversation-preview">
9313                                          <p class="conversation-message">Terima kasih telah menghubungi kami...</p>
9314                                          <span class="conversation-unread">2</span>
9315                                      </div>
9316                                  </div>
9317                              </div>
9318                              -->
9319                          </div>
9320                          <button id="chat-new-btn" class="chat-new-btn">
9321                              <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
9322                                  <line x1="12" y1="5" x2="12" y2="19"></line>
9323                                  <line x1="5" y1="12" x2="19" y2="12"></line>
9324                              </svg>
9325                              Percakapan Baru
9326                          </button>
9327                      </div>
9328                      
9329                      <!-- Chat Messages View -->
9330                      <div id="chat-messages-view" class="chat-view" style="display: none;">
9331                          <div id="chat-messages-container" class="chat-messages-container">
9332                              <div class="chat-loading">Memuat pesan...</div>
9333                              <!-- Message Structure (rendered by JS):
9334                              <div class="chat-message"> (or .chat-message.mine)
9335                                  <div class="chat-message-bubble">
9336                                      <div class="message-sender">Admin Support</div> (only for non-mine)
9337                                      <div class="message-text">Halo, ada yang bisa dibantu?</div>
9338                                      <div class="message-meta">
9339                                          <span class="message-time">10:30</span>
9340                                          <svg class="message-status">...</svg> (only for mine)
9341                                      </div>
9342                                  </div>
9343                              </div>
9344                              -->
9345                          </div>
9346                          
9347                          <form id="chat-message-form" class="chat-message-form">
9348                              <input type="hidden" id="chat-current-conversation-id" value="">
9349                              <textarea 
9350                                  id="chat-message-input" 
9351                                  class="chat-message-input" 
9352                                  placeholder="Ketik pesan..."
9353                                  rows="1"
9354                                  maxlength="5000"
9355                              ></textarea>
9356                              <button type="submit" class="chat-send-btn" aria-label="Send message">
9357                                  <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
9358                                      <line x1="22" y1="2" x2="11" y2="
935813"></line>
9359                                      <polygon points="22 2 15 22 11 13 2 9 22 2"></polygon>
9360                                  </svg>
9361                              </button>
9362                          </form>
9363                      </div>
9364                      
9365                      <!-- New Chat View -->
9366                      <div id="chat-new-view" class="chat-view" style="display: none;">
9367                          <div class="chat-messages-header">
9368                              <button id="chat-new-back-btn" class="chat-back-btn" aria-label="Back to list">
9369                                  <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
9370                                      <path d="M19 12H5M12 19l-7-7 7-7"/>
9371                                  </svg>
9372                              </button>
9373                              <div class="chat-conversation-title">Percakapan Baru</div>
9374                          </div>
9375                          
9376                          <div class="chat-new-form">
9377                              <form id="chat-start-form">
9378                                  <div class="form-group">
9379                                      <label for="chat-new-subject">Subjek</label>
9380                                      <input 
9381                                          type="text" 
9382                                          id="chat-new-subject" 
9383                                          class="form-control" 
9384                                          placeholder="Bantuan Pelanggan"
9385                                          maxlength="255"
9386                                      >
9387                                  </div>
9388                                  <div class="form-group">
9389                                      <label for="chat-new-message">Pesan</label>
9390                                      <textarea 
9391                                          id="chat-new-message" 
9392                                          class="form-control" 
9393                                          rows="4" 
9394                                          placeholder="Tulis pertanyaan Anda..."
9395                                          required
9396                                          maxlength="5000"
9397                                      ></textarea>
9398                                  </div>
9399                                  <button type="submit" class="btn btn-primary btn-block">Kirim</button>
9400                              </form>
9401                          </div>
9402                      </div>
9403                  </div>
9404              </div>
9405          </div>
9406          
9407          <!-- Login Required Modal -->
9408          <div class="modal-overlay" id="chatLoginModal">
9409              <div class="modal-dialog">
9410                  <div class="modal-header">
9411                      <h3 class="modal-title">
9412                          <div class="modal-icon info">
9413                              <svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor">
9414                                  <path d="M11,9H13V7H11M12,20C7.59,20 4,16.41 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20,12C20,16.41 16.41,20 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M11,17H13V11H11V17Z"/>
9415                              </svg>
9416                          </div>
9417                          Login Diperlukan
9418                      </h3>
9419                  </div>
9420                  <div class="modal-body">
9421                      <p class="modal-message">Anda harus login terlebih dahulu untuk menggunakan fitur chat bantuan pelanggan.</p>
9422                      <div class="modal-actions">
9423                          <button class="modal-btn modal-btn-secondary" id="chatLoginCancel">Batal</button>
9424                          <button class="modal-btn modal-btn-primary" id="chatLoginConfirm">Login Sekarang</button>
9425                      </div>
9426                  </div>
9427              </div>
9428          </div>
9429          
9430      <!-- Footer Collapse Toggle Script -->
9431    
9431<script nonce="se3iyzEHMc9FQEB4wSyd0w==">
9432    document.addEventListener('DOMContentLoaded', function() {
9433      const ftTop = document.getElementById('ftTop');
9434      const expandBtn = document.getElementById('ftExpandBtn');
9435      
9436      if (ftTop && expandBtn) {
9437        const expandText = expandBtn.querySelector('.expand-text');
9438        
9439        expandBtn.addEventListener('click', function() {
9440          ftTop.classList.toggle('expanded');
9441          const isExpanded = ftTop.classList.contains('expanded');
9442          if (expandText) {
9443            expandText.textContent = isExpanded ? 'Sembunyikan' : 'Selengkapnya';
9444          }
9445        });
9446      }
9447    });
9448    </script>
9448
9449    </footer>
9450
9451  <!-- Compare Sidebar Overlay -->
9452  <div class="compare-overlay" id="compareOverlay"></div>
9453
9454  <!-- Floating Compare Badge (Sticky) -->
9455  <button class="compare-floating-badge" id="compareFloatingBadge" aria-label="Lihat produk yang dibandingkan" style="display:none;">
9456    <svg class="cfb-icon" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true">
9457      <path d="M9.01 14H2v2h7.01v3L13 15l-3.99-4v3zm5.98-1v-3H22V8h-7.01V5L11 9l3.99 4z"/>
9458    </svg>
9459    <span class="cfb-text">Bandingkan</span>
9460    <span class="cfb-count" id="cfbCount">0</span>
9461  </button>
9462
9463  <!-- AI Comparison Modal -->
9464  <div class="ai-compare-modal" id="aiCompareModal">
9465    <div class="modal-backdrop"></div>
9466    <div class="modal-container">
9467      <div class="modal-header">
9468        <h3 class="modal-title">
9469          <svg width="24" height="24" viewBox="0 0 24 24" fill="currentColor">
9470            <path d="M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M12,4A8,8 0 0,1 20,12A8,8 0 0,1 12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4M11,16.5L18,9.5L16.59,8.09L11,13.67L7.91,10.59L6.5,12L11,16.5Z"/>
9471          </svg>
9472          Analisis AI: Perbandingan Produk
9473        </h3>
9474        <button class="modal-close" id="aiCompareModalClose" aria-label="Tutup">
9475          <svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor">
9476            <path d="M18.3 5.7a1 1 0 0 0-1.4 0L12 10.6 7.1 5.7a1 1 0 1 0-1.4 1.4L10.6 12l-4.9 4.9a1 1 0 0 0 1.4 1.4L12 13.4l4.9 4.9a1 1 0 0 0 1.4-1.4L13.4 12l4.9-4.9a1 1 0 0 0 0-1.4z"/>
9477          </svg>
9478        </button>
9479      </div>
9480      
9481      <div class="modal-content">
9482        <!-- Loading State -->
9483        <div class="ai-loading" id="aiLoading">
9484          <div class="loading-animation">
9485            <div class="typing-indicator">
9486              <span></span>
9487              <span></span>
9488              <span></span>
9489            </div>
9490            <p>AI sedang menganalisis produk...</p>
9491            <small>Proses ini membutuhkan waktu 10-30 detik</small>
9492          </div>
9493        </div>
9494        
9495        <!-- Error State -->
9496        <div class="ai-error" id="aiError" hidden>
9497          <div class="error-icon">
9498            <svg width="48" height="48" viewBox="0 0 24 24" fill="#ef4444">
9499              <path d="M12,2C17.53,2 22,6.47 22,12C22,17.53 17.53,22 12,22C6.47,22 2,17.53 2,12C2,6.47 6.47,2 12,2M15.59,7L12,10.59L8.41,7L7,8.41L10.59,12L7,15.59L8.41,17L12,13.41L15.59,17L17,15.59L13.41,12L17,8.41L15.59,7Z"/>
9500            </svg>
9501          </div>
9502          <h4>Analisis AI Gagal</h4>
9503          <p id="aiErrorMessage">Terjadi kesalahan saat memproses analisis.</p>
9504          <button class="btn btn-outline-primary" id="aiRetry">Coba Lagi</button>
9505        </div>
9506        
9507        <!-- Analysis Results -->
9508        <div class="ai-results" id="aiResults" hidden>
9509          <!-- Summary Section -->
9510          <div class="ai-summary-card">
9511            <h4>
9512              <svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor">
9513                <path d="M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2M11,16.5L6.5,12L7.91,10.59L11,13.67L16.59,8.09L18,9.5L11,16.5Z"/>
9514              </svg>
9515              Ringkasan Analisis
9516            </h4>
9517            <p id="aiSummary" class="summary-text"></p>
9518            <div class="winner-badge" id="winnerBadge">
9519              <strong>Rekomendasi Terbaik:</strong> <span id="winnerProduct"></span>
9520              <small id="winnerReason"></small>
9521            </div>
9522          </div>
9523          
9524          <!-- Comparison Table -->
9525          <div class="ai-comparison-table">
9526            <h4>
9527              <svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor">
9528                <path d="M3,3H21V5H3V3M3,7H21V9H3V7M3,11H21V13H3V11M3,15H21V17H3V15M3,19H21V21H3V19Z"/>
9529              </svg>
9530              Perbandingan Detail
9531            </h4>
9532            <div id="comparisonTable" class="comparison-grid"></div>
9533          </div>
9534          
9535          <!-- Detailed Analysis -->
9536          <div class="ai-detailed-analysis">
9537            <h4>
9538              <svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor">
9539                <path d="M14,2A8,8 0 0,1 22,10A8,8 0 0,1 14,18A8,8 0 0,1 6,10A8,8 0 0,1 14,2M14,4A6,6 0 0,0 8,10A6,6 0 0,0 14,16A6,6 0 0,0 20,10A6,6 0 0,0 14,4M14,6A4,4 0 0,1 18,10A4,4 0 0,1 14,14A4,4 0 0,1 10,10A4,4 0 0,1 14,6M14,8A2,2 0 0,0 12,10A2,2 0 0,0 14,12A2,2 0 0,0 16,10A2,2 0 0,0 14,8Z"/>
9540              </svg>
9541              Analisis Mendalam
9542            </h4>
9543            <div id="detailedAnalysis" class="products-analysis"></div>
9544          </div>
9545          
9546          <!-- Recommendations -->
9547          <div class="ai-recommendations">
9548            <h4>
9549              <svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor">
9550                <path d="M12,17.27L18.18,21L16.54,13.97L22,9.24L14.81,8.62L12,2L9.19,8.62L2,9.24L7.45,13.97L5.82,21L12,17.27Z"/>
9551              </svg>
9552              Rekomendasi Berdasarkan Kebutuhan
9553            </h4>
9554            <div class="recommendations-grid">
9555              <div class="recommendation-card">
9556                <h5>💰 Budget Conscious</h5>
9557                <p id="budgetRecommendation"></p>
9558              </div>
9559              <div class="recommendation-card">
9560                <h5>⚡ Performance Focused</h5>
9561                <p id="performanceRecommendation"></p>
9562              </div>
9563              <div class="recommendation-card">
9564                <h5>⚖️ Balanced Choice</h5>
9565                <p id="balancedRecommendation"></p>
9566              </div>
9567            </div>
9568          </div>
9569          
9570          <!-- Buying Tips -->
9571          <div class="ai-tips">
9572            <h4>
9573              <svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor">
9574                <path d="M11,18H13V16H11V18M12,6A4,4 0 0,0 8,10H10A2,2 0 0,1 12,8A2,2 0 0,1 14,10C14,12 11,11.75 11,15H13C13,12.75 16,12.5 16,10A4,4 0 0,0 12,6
9574M5,3H19A2,2 0 0,1 21,5V19A2,2 0 0,1 19,21H5A2,2 0 0,1 3,19V5A2,2 0 0,1 5,3Z"/>
9575              </svg>
9576              Tips Pembelian
9577            </h4>
9578            <ul id="buyingTips" class="tips-list"></ul>
9579          </div>
9580        </div>
9581      </div>
9582    </div>
9583  </div>
9584
9585  <!-- Cart Login Modal -->
9586  <div class="modal-overlay" id="cartLoginModal">
9587    <div class="modal-dialog">
9588      <div class="modal-header">
9589        <h3 class="modal-title">
9590          <div class="modal-icon info">
9591            <svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor">
9592              <path d="M17,18A2,2 0 0,1 19,20A2,2 0 0,1 17,22C15.89,22 15,21.1 15,20C15,18.89 15.89,18 17,18M1,2H4.27L5.21,4H20A1,1 0 0,1 21,5C21,5.17 20.95,5.34 20.88,5.5L17.3,11.97C16.96,12.58 16.3,13 15.55,13H8.1L7.2,14.63L7.17,14.75A0.25,0.25 0 0,0 7.42,15H19V17H7C5.89,17 5,16.1 5,15C5,14.65 5.09,14.32 5.24,14.04L6.6,11.59L3,4H1V2M7,18A2,2 0 0,1 9,20A2,2 0 0,1 7,22C5.89,22 5,21.1 5,20C5,18.89 5.89,18 7,18M16,11L18.78,6H6.14L8.5,11H16Z"/>
9593            </svg>
9594          </div>
9595          Login untuk Melanjutkan
9596        </h3>
9597      </div>
9598      <div class="modal-body">
9599        <p class="modal-message" style="margin-bottom: 16px;">Silakan login atau daftar untuk mengakses keranjang belanja dan menyelesaikan pesanan Anda.</p>
9600        <div style="background: #f8fafc; border-radius: 8px; padding: 12px; margin-bottom: 20px;">
9601          <p style="font-size: 14px; color: #646947; margin: 0; line-height: 1.6;">
9602            <strong style="color: #2a2a0f;">Keuntungan dengan akun:</strong><br>
9603            ✓ Simpan keranjang belanja Anda<br>
9604            ✓ Lacak status pesanan secara real-time<br>
9605            ✓ Checkout lebih cepat dengan data tersimpan<br>
9606            ✓ Dapatkan notifikasi promo & diskon eksklusif
9607          </p>
9608        </div>
9609        <div class="modal-actions">
9610          <button class="modal-btn modal-btn-secondary" id="cartLoginCancel">Batal</button>
9611          <button class="modal-btn modal-btn-primary" id="cartLoginConfirm" style="background: #ff6b35; border-color: #ff6b35;">Login</button>
9612          <button class="modal-btn modal-btn-primary" id="cartRegisterBtn" style="background: #f7931e; border-color: #f7931e;">Daftar</button>
9613        </div>
9614      </div>
9615    </div>
9616  </div>
9617
9618<style>
9619  :root {
9620    --gopay-black: #080808;
9621    --gopay-dark: #101010;
9622    --gopay-red: #1eff1e;
9623    --gopay-red-dark: #a80000;
9624    --gopay-red-soft: #ff4d4d;
9625    --gopay-white: #ffffff;
9626  }
9627
9628  /* =========================================================
9629   FIXED FOOTER – GOPAYTOGEL FIRE GOLD EDITION
9630========================================================= */
9631
9632.gopay-fixed-footer {
9633
9634    position: fixed;
9635    left: 0;
9636    right: 0;
9637    bottom: 0;
9638    z-index: 999;
9639
9640    display: flex;
9641    align-items: center;
9642    justify-content: space-around;
9643    gap: 8px;
9644
9645    padding: 11px 12px calc(11px + env(safe-area-inset-bottom));
9646    overflow: hidden;
9647
9648    background:
9649
9650    radial-gradient(
9651        circle at 50% 0%,
9652        rgba(255,0,0,.15),
9653        rgba(16,16,16,.96) 60%,
9654        rgba(8,8,8,1)
9655    ),
9656
9657    linear-gradient(
9658        180deg,
9659        rgba(21,21,21,.95),
9660        rgba(8,8,8,1)
9661    );
9662
9663    border-top: 2px solid rgba(255,215,0,.25);
9664
9665    border-radius: 18px 18px 0 0;
9666
9667    box-shadow:
9668    0 -10px 30px rgba(255,0,0,.12),
9669    0 -4px 18px rgba(255,215,0,.05),
9670    inset 0 1px 0 rgba(255,255,255,.05);
9671
9672    font-family: "Orbitron","Poppins",Arial,sans-serif;
9673
9674}
9675
9676  /* Scanline premium ringan */
9677.gopay-fixed-footer::before {
9678    content: "";
9679    position: absolute;
9680    inset: 0;
9681    pointer-events: none;
9682
9683    background: repeating-linear-gradient(
9684        0deg,
9685        rgba(255,0,0,.018),
9686        rgba(255,215,0,.02) 1px,
9687        transparent 1px,
9688        transparent 4px
9689    );
9690
9691    opacity: .55;
9692    mix-blend-mode: screen;
9693}
9694
9695  /* Sweep Premium Fire */
9696.gopay-fixed-footer::after {
9697    content: "";
9698    position: absolute;
9699    top: 0;
9700    left: -160%;
9701
9702    width: 60%;
9703    height: 100%;
9704
9705    background: linear-gradient(
9706        120deg,
9707        transparent,
9708        rgba(255,215,0,.10),
9709        rgba(255,0,0,.18),
9710        rgba(255,215,0,.10),
9711        transparent
9712    );
9713
9714    transform: skewX(-25deg);
9715
9716    animation: gopayShine 6s linear infinite;
9717
9718    pointer-events: none;
9719}
9720
9721  @keyframes gopayShine {
9722    0% {
9723      left: -160%;
9724      opacity: 0;
9725    }
9726
9727    15% {
9728      opacity: 1;
9729    }
9730
9731    55% {
9732      left: 160%;
9733      opacity: 1;
9734    }
9735
9736    100% {
9737      left: 160%;
9738      opacity: 0;
9739    }
9740  }
9741
9742  /* =========================================================
9743   ITEM STYLE
9744========================================================= */
9745
9746    .gopay-fixed-footer a {
9747
9748        flex:1;
9749        max-width:110px;
9750
9751        display:flex;
9752        flex-direction:column;
9753        align-items:center;
9754        justify-content:center;
9755        gap:5px;
9756
9757        padding:8px 4px;
9758
9759        color:rgba(255,255,255,.9);
9760
9761        text-decoration:none;
9762        text-align:center;
9763        text-transform:uppercase;
9764
9765        font-size:11px;
9766        font-weight:800;
9767        letter-spacing:.4px;
9768
9769        position:relative;
9770        z-index:2;
9771
9772        transition:
9773        color .2s ease,
9774        transform .2s ease,
9775        filter .2s ease;
9776}
9777
9778/* Hover item */
9779    .gopay-fixed-footer a:hover{
9780
9781        color:var(--gopay-gold);
9782
9783        transform:translateY(-2px);
9784
9785        filter:
9786        drop-shadow(0 0 6px rgba(255,215,0,.45))
9787        drop-shadow(0 0 10px rgba(255,0,0,.18));
9788}
9789
9790/* Icon */
9791    .gopay-fixed-footer img{
9792
9793        width:24px;
9794        height:24px;
9795        object-fit:contain;
9796
9797        filter:
9798        drop-shadow(0 0 5px rgba(255,0,0,.18))
9799        drop-shadow(0 0 7px rgba(255,215,0,.18));
9800
9801        transition:
9802        transform .2s ease,
9803        filter .2s ease;
9804}
9805
9806/* Hover icon */
9807    .gopay-fixed-footer a:hover img{
9808
9809        transform:scale(1.08);
9810
9811        filter:
9812        drop-shadow(0 0 8px rgba(255,215,0,.35))
9813        drop-shadow(0 0 12px rgba(255,0,0,.22));
9814}
9815
9816  /* =========================================================
9817   CENTER CTA – GOPAYTOGEL FIRE CORE
9818========================================================= */
9819
9820.gopay-fixed-footer .core-cta {
9821
9822    background:
9823    linear-gradient(
9824        145deg,
9825        rgba(255,0,0,.18),
9826        rgba(168,0,0,.12)
9827    );
9828
9829    border:1px solid rgba(255,215,0,.35);
9830
9831    border-radius:10px 18px 10px 18px;
9832
9833    box-shadow:
9834    0 0 14px rgba(255,0,0,.18),
9835    0 0 22px rgba(255,215,0,.08),
9836    inset 0 0 10px rgba(255,215,0,.06);
9837
9838    transform:scale(1.05);
9839}
9840
9841/* ICON CTA */
9842.gopay-fixed-footer .core-cta img{
9843
9844    width:28px;
9845    height:28px;
9846
9847    filter:
9848    drop-shadow(0 0 8px rgba(255,215,0,.45))
9849    drop-shadow(0 0 12px rgba(255,0,0,.25));
9850}
9851
9852/* Halo belakang CTA */
9853.gopay-fixed-footer .core-cta::before{
9854
9855    content:"";
9856    position:absolute;
9857    inset:-5px;
9858    z-index:-1;
9859
9860    border-radius:13px 21px 13px 21px;
9861
9862    background:
9863    radial-gradient(
9864        circle,
9865        rgba(255,0,0,.20),
9866        rgba(255,215,0,.08),
9867        transparent 72%
9868    );
9869
9870    animation:gopayPulse 2.8s ease-in-out infinite;
9871}
9872
9873/* Pulse */
9874@keyframes gopayPulse{
9875
9876    0%,100%{
9877        opacity:.35;
9878        transform:scale(1);
9879    }
9880
9881    50%{
9882        opacity:.8;
9883        transform:scale(1.06);
9884    }
9885
9886}
9887
9888  /* =========================================================
9889   RESPONSIVE
9890========================================================= */
9891
9892@media (max-width:400px){
9893
9894    .gopay-fixed-footer{
9895        gap:4px;
9896        padding-right:8px;
9897        padding-left:8px;
9898    }
9899
9900    .gopay-fixed-footer a{
9901        font-size:10px;
9902        letter-spacing:.2px;
9903    }
9904
9905    .gopay-fixed-footer img{
9906        width:20px;
9907        height:20px;
9908    }
9909
9910    .gopay-fixed-footer .core-cta img{
9911        width:24px;
9912        height:24px;
9913    }
9914
9915}
9916
9917/* =========================================================
9918   ACCESSIBILITY
9919========================================================= */
9920
9921@media (prefers-reduced-motion:reduce){
9922
9923    .gopay-fixed-footer::after,
9924    .gopay-fixed-footer .core-cta::before{
9925        animation:none;
9926    }
9927
9928    .gopay-fixed-footer a,
9929    .gopay-fixed-footer img{
9930        transition:none;
9931    }
9932
9933}
9934</style>
9935
9936<!-- DENTAL CLINIC FLOATING EFFECT -->
9937<div class="dental-fx" aria-hidden="true">
9938
9939  <span class="dental-drop dd1">🦷</span>
9940  <span class="dental-drop dd2">🪥</span>
9941  <span class="dental-drop dd3">✚</span>
9942
9943  <span class="dental-drop dd4">🦷</span>
9944  <span class="dental-drop dd5">✚</span>
9945  <span class="dental-drop dd6">🪥</span>
9946
9947  <span class="dental-drop dd7">🦷</span>
9948  <span class="dental-drop dd8">🪥</span>
9949  <span class="dental-drop dd9">✚</span>
9950
9951  <span class="dental-drop dd10">🦷</span>
9952  <span class="dental-drop dd11">✚</span>
9953  <span class="dental-drop dd12">🪥</span>
9954
9955</div>
9956
9957<style>
9958/* ==========================================
9959   DENTAL CLINIC ANIMATION
9960   🦷 🪥 ✚
9961========================================== */
9962
9963.dental-fx{
9964  position:fixed;
9965  inset:0;
9966
9967  width:100%;
9968  height:100%;
9969
9970  overflow:hidden;
9971  pointer-events:none;
9972
9973  z-index:9998;
9974}
9975
9976
9977/* BASE ICON */
9978
9979.dental-drop{
9980  position:absolute;
9981  top:-80px;
9982
9983  font-size:34px;
9984  line-height:1;
9985
9986  opacity:0;
9987
9988  will-change:
9989    top,
9990    transform,
9991    opacity;
9992
9993  filter:
9994    drop-shadow(0 0 3px rgba(255,255,255,.95))
9995    drop-shadow(0 0 8px rgba(62,220,255,.55))
9996    drop-shadow(0 0 15px rgba(70,255,160,.28));
9997
9998  animation:
9999    dentalFloat var(--time,10s)
10000    linear
10001    var(--delay,0s)
10002    infinite;
10003}
10004
10005
10006/* ==========================================
10007   POSISI + KECEPATAN
10008========================================== */
10009
10010.dd1{
10011  left:3%;
10012  --time:9s;
10013  --delay:-2s;
10014  --wind:50px;
10015  font-size:41px;
10016}
10017
10018.dd2{
10019  left:12%;
10020  --time:12s;
10021  --delay:-7s;
10022  --wind:-46px;
10023  font-size:30px;
10024}
10025
10026.dd3{
10027  left:21%;
10028  --time:10s;
10029  --delay:-5s;
10030  --wind:65px;
10031}
10032
10033.dd4{
10034  left:31%;
10035  --time:13s;
10036  --delay:-9s;
10037  --wind:-58px;
10038  font-size:45px;
10039}
10040
10041.dd5{
10042  left:40%;
10043  --time:8.5s;
10044  --delay:-3s;
10045  --wind:48px;
10046  font-size:27px;
10047}
10048
10049.dd6{
10050  left:49%;
10051  --time:11s;
10052  --delay:-6s;
10053  --wind:-70px;
10054}
10055
10056.dd7{
10057  left:58%;
10058  --time:14s;
10059  --delay:-11s;
10060  --wind:62px;
10061  font-size:40px;
10062}
10063
10064.dd8{
10065  left:67%;
10066  --time:9.5s;
10067  --delay:-4s;
10068  --wind:-50px;
10069  font-size:28px;
10070}
10071
10072.dd9{
10073  left:76%;
10074  --time:12.5s;
10075  --delay:-8s;
10076  --wind:65px;
10077}
10078
10079.dd10{
10080  left:84%;
10081  --time:10.5s;
10082  --delay:-5.5s;
10083  --wind:-55px;
10084  font-size:43px;
10085}
10086
10087.dd11{
10088  left:91%;
10089  --time:13s;
10090  --delay:-10s;
10091  --wind:44px;
10092  font-size:26px;
10093}
10094
10095.dd12{
10096  left:97%;
10097  --time:9s;
10098  --delay:-6s;
10099  --wind:-52px;
10100}
10101
10102
10103/* ==========================================
10104   GERAK TURUN MELAYANG
10105========================================== */
10106
10107@keyframes dentalFloat{
10108
10109  0%{
10110    top:-80px;
10111
10112    opacity:0;
10113
10114    transform:
10115      translateX(0)
10116      rotate(0deg)
10117      scale(.65);
10118  }
10119
10120  6%{
10121    opacity:.92;
10122  }
10123
10124  20%{
10125    transform:
10126      translateX(var(--wind))
10127      rotate(75deg)
10128      scale(.92);
10129  }
10130
10131  40%{
10132    transform:
10133      translateX(calc(var(--wind) * -.55))
10134      rotate(160deg)
10135      scale(1);
10136  }
10137
10138  60%{
10139    transform:
10140      translateX(calc(var(--wind) * .78))
10141      rotate(250deg)
10142      scale(.88);
10143  }
10144
10145  80%{
10146    transform:
10147      translateX(calc(var(--wind) * -.65))
10148      rotate(350deg)
10149      scale(1.04);
10150  }
10151
10152  94%{
10153    opacity:.85;
10154  }
10155
10156  100%{
10157    top:108vh;
10158
10159    opacity:0;
10160
10161    transform:
10162      translateX(calc(var(--wind) * .35))
10163      rotate(500deg)
10164      scale(.68);
10165  }
10166}
10167
10168
10169/* ==========================================
10170   TOOTH SPECIAL GLOW
10171========================================== */
10172
10173.dd1,
10174.dd4,
10175.dd7,
10176.dd10{
10177  filter:
10178    drop-shadow(0 0 4px #ffffff)
10179    drop-shadow(0 0 10px rgba(77,220,255,.80))
10180    drop-shadow(0 0 20px rgba(67,255,170,.35));
10181}
10182
10183
10184/* ==========================================
10185   MEDICAL CROSS
10186========================================== */
10187
10188.dd3,
10189.dd5,
10190.dd9,
10191.dd11{
10192  color:#42e890;
10193
10194  text-shadow:
10195    0 0 5px #fff,
10196    0 0 10px #3eff9c,
10197    0 0 18px rgba(42,255,135,.55);
10198}
10199
10200
10201/* ==========================================
10202   BACKGROUND SOFT LIGHT
10203========================================== */
10204
10205.dental-fx::before{
10206  content:"";
10207
10208  position:absolute;
10209  inset:0;
10210
10211  background:
10212    radial-gradient(
10213      circle at 15% 25%,
10214      rgba(70,220,255,.035),
10215      transparent 20%
10216    ),
10217
10218    radial-gradient(
10219      circle at 85% 65%,
10220      rgba(55,255,150,.035),
10221      transparent 22%
10222    );
10223
10224  animation:
10225    dentalAmbient 4s
10226    ease-in-out
10227    infinite alternate;
10228}
10229
10230
10231@keyframes dentalAmbient{
10232
10233  from{
10234    opacity:.2;
10235  }
10236
10237  to{
10238    opacity:.8;
10239  }
10240}
10241
10242
10243/* ==========================================
10244   MOBILE
10245========================================== */
10246
10247@media(max-width:768px){
10248
10249  .dental-drop{
10250    font-size:26px;
10251  }
10252
10253  .dd1,
10254  .dd4,
10255  .dd7,
10256  .dd10{
10257    font-size:33px;
10258  }
10259
10260  /* kurangi jumlah pada HP */
10261  .dd2,
10262  .dd5,
10263  .dd8,
10264  .dd11{
10265    display:none;
10266  }
10267}
10268
10269
10270/* ==========================================
10271   REDUCED MOTION
10272========================================== */
10273
10274@media(prefers-reduced-motion:reduce){
10275
10276  .dental-fx{
10277    display:none;
10278  }
10279}
10280
10281</style>
10282
10283  <div class="gopay-fixed-footer">
10284    <a href="https://penthouse.gopaytogel.network/" target="_blank" rel="nofollow noopener">
10285      <img src="https://veldrive.com/nAhfgJZ5/gopaysayur/gopaytogel-favicon.webp" alt="BONUS GOPAYTOGEL">
10286      PROMO
10287    </a>
10288    
10289    <a href="https://penthouse.gopaytogel.network/" target="_blank" rel="nofollow noopener">
10290      <img src="https://veldrive.com/nAhfgJZ5/gopaysayur/gopaytogel-favicon.webp" alt="TELEGRAM GOPAYTOGEL">
10291      TELEGRAM
10292    </a>
10293
10294    <a href="https://penthouse.gopaytogel.network/" target="_blank" rel="nofollow noopener" class="core-cta">
10295      <img src="https://veldrive.com/nAhfgJZ5/gopaysayur/gopaytogel-favicon.webp" alt="DAFTAR GOPAYTOGEL">
10296      DAFTAR
10297    </a>
10298
10299    <a href="https://penthouse.gopaytogel.network/" target="_blank" rel="nofollow noopener">
10300      <img src="https://veldrive.com/nAhfgJZ5/gopaysayur/gopaytogel-favicon.webp" alt="RTP GOPAYTOGEL">
10301      RTP
10302    </a>
10303
10304    <a href="https://penthouse.gopaytogel.network/" target="_blank" rel="nofollow noopener">
10305      <img src="https://veldrive.com/nAhfgJZ5/gopaysayur/gopaytogel-favicon.webp" alt="LIVECHAT GOPAYTOGEL">
10306      LIVECHAT
10307    </a>
10308  </div>
10309  
10309<script defer src="https://static.cloudflareinsights.com/beacon.min.js/v833ccba57c9e4d2798f2e76cebdd09a11778172276447" integrity="sha512-57MDmcccJXYtNnH+ZiBwzC4jb2rvgVCEokYN+L/nLlmO8rfYT/gIpW2A569iJ/3b+0UEasghjuZH/ma3wIs/EQ==" data-cf-beacon='{"version":"2024.11.0","token":"3e9b3809d54c4fd180442ae60f330b2a","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 10309
10309
10310<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v4513226cdae34746b4dedf0b4dfa099e1781791509496" integrity="sha512-ZE9pZaUXND66v380QUtch/5sE9tPFh2zg45pR2PB0CVkCtOREv2AJKkSidISWkysEuQ0EH8faUU5du78bx87UQ==" data-cf-beacon='{"version":"2024.11.0","token":"7ebe78757f484d75a7ee72147bbb9aff","r":1}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 10310
10310
10311<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v4513226cdae34746b4dedf0b4dfa099e1781791509496" integrity="sha512-ZE9pZaUXND66v380QUtch/5sE9tPFh2zg45pR2PB0CVkCtOREv2AJKkSidISWkysEuQ0EH8faUU5du78bx87UQ==" data-cf-beacon='{"version":"2024.11.0","token":"7ebe78757f484d75a7ee72147bbb9aff","r":1}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 10311
10311
10312<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v4513226cdae34746b4dedf0b4dfa099e1781791509496" integrity="sha512-ZE9pZaUXND66v380QUtch/5sE9tPFh2zg45pR2PB0CVkCtOREv2AJKkSidISWkysEuQ0EH8faUU5du78bx87UQ==" data-cf-beacon='{"version":"2024.11.0","token":"7ebe78757f484d75a7ee72147bbb9aff","r":1}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 10312
10312
10313<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v4513226cdae34746b4dedf0b4dfa099e1781791509496" integrity="sha512-ZE9pZaUXND66v380QUtch/5sE9tPFh2zg45pR2PB0CVkCtOREv2AJKkSidISWkysEuQ0EH8faUU5du78bx87UQ==" data-cf-beacon='{"version":"2024.11.0","token":"7ebe78757f484d75a7ee72147bbb9aff","r":1}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 10313
10313
10314<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v4513226cdae34746b4dedf0b4dfa099e1781791509496" integrity="sha512-ZE9pZaUXND66v380QUtch/5sE9tPFh2zg45pR2PB0CVkCtOREv2AJKkSidISWkysEuQ0EH8faUU5du78bx87UQ==" data-cf-beacon='{"version":"2024.11.0","token":"7ebe78757f484d75a7ee72147bbb9aff","r":1}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 10314
10314
10315<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v4513226cdae34746b4dedf0b4dfa099e1781791509496" integrity="sha512-ZE9pZaUXND66v380QUtch/5sE9tPFh2zg45pR2PB0CVkCtOREv2AJKkSidISWkysEuQ0EH8faUU5du78bx87UQ==" data-cf-beacon='{"version":"2024.11.0","token":"7ebe78757f484d75a7ee72147bbb9aff","r":1}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 10315
10315
10316<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v4513226cdae34746b4dedf0b4dfa099e1781791509496" integrity="sha512-ZE9pZaUXND66v380QUtch/5sE9tPFh2zg45pR2PB0CVkCtOREv2AJKkSidISWkysEuQ0EH8faUU5du78bx87UQ==" data-cf-beacon='{"version":"2024.11.0","token":"7ebe78757f484d75a7ee72147bbb9aff","r":1}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 10316
10316
10317<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v4513226cdae34746b4dedf0b4dfa099e1781791509496" integrity="sha512-ZE9pZaUXND66v380QUtch/5sE9tPFh2zg45pR2PB0CVkCtOREv2AJKkSidISWkysEuQ0EH8faUU5du78bx87UQ==" data-cf-beacon='{"version":"2024.11.0","token":"7ebe78757f484d75a7ee72147bbb9aff","r":1}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 10317
10317
10318<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v3d52b47920f24c319d37e2661827c42b1787588026925" integrity="sha512-d9sL6GJLXn6fInD1+TVXhTcQOsmxeHfmHAvwGDIxp5TO+uo1fiWW7mHomMj4MLRlCsJDTqXzWLHJFFlPCEIj/A==" data-cf-beacon='{"version":"2024.11.0","token":"d34cd3c418e44208a70a377d9b17e76b","r":1}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 10318
10318
10319<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v3d52b47920f24c319d37e2661827c42b1787588026925" integrity="sha512-d9sL6GJLXn6fInD1+TVXhTcQOsmxeHfmHAvwGDIxp5TO+uo1fiWW7mHomMj4MLRlCsJDTqXzWLHJFFlPCEIj/A==" data-cf-beacon='{"version":"2024.11.0","token":"24b3897dbe18470a93565d51351d0077","r":1}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 10319
10319
10320<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v3d52b47920f24c319d37e2661827c42b1787588026925" integrity="sha512-d9sL6GJLXn6fInD1+TVXhTcQOsmxeHfmHAvwGDIxp5TO+uo1fiWW7mHomMj4MLRlCsJDTqXzWLHJFFlPCEIj/A==" data-cf-beacon='{"version":"2024.11.0","token":"3afa77784aab44e9883ef34b9b08caeb","r":1}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 10320
10320
10321<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v3d52b47920f24c319d37e2661827c42b1787588026925" integrity="sha512-d9sL6GJLXn6fInD1+TVXhTcQOsmxeHfmHAvwGDIxp5TO+uo1fiWW7mHomMj4MLRlCsJDTqXzWLHJFFlPCEIj/A==" data-cf-beacon='{"version":"2024.11.0","token":"5d01a14a36bc414780760ebd365122fd","r":1}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 10321
10321
10322<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":"5bab00436a0348a3a75a27795f3b3592","r":1,"spa":2}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 10322
10322
10323<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":"f8ad726e033c4beb9b56b366feecfbd3","r":1,"spa":2}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 10323
10323
10324<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":"ebbcb2abac4b45a89eaa1dc955502b54","r":1,"spa":2}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 10324
10324
10325<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":"f1b62b7b25834bb79f5fcef13c20e9d6","r":1,"spa":2}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 10325
10325
10326<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":"017d1c438b9146d2ac5e239f9e229d01","r":1,"spa":2}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 10326
10326
10327<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":"d1b515b63769490b965f5db25747278b","r":1,"spa":2}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 10327
10327
10328<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":"a2aef1f4698c4a22a91f0a2ea3288dd8","r":1,"spa":2}' crossorigin="anonymous"></script>
vendor: 1 bytes, line 10328
10328
10329<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v4bc70e2c01a94c73b74392e4234840661791215815920" integrity="sha512-L0ha0OXavK/8okipN9F8BtP84dg9DUhPERbBXzwI6dgTA55d2+yweo3pn5CSFYs45/r8md2+xvUPtTdvTNRfjA==" data-cf-beacon='{"version":"2024.11.0","token":"b5c72092cafa455cb3fc5726a4382271","r":1,"spa":2}' crossorigin="anonymous"></script>
10329
10330</body>
10331  </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.