PageSourceSearch

https://daftarsitusjudibolaonlineterpercaya.com/

html daftarsitusjudibolaonlineterpercaya.com collected 2026-10-10 00:11:54 UTC 249,974 bytes, 4,874 lines download raw bytes

1<!DOCTYPE html><html lang="id"><head>
2  <meta charset="UTF-8">
3  <title>MUSANGWIN Rutinitas Cek RTP Slot Sebelum Spin Malam Ini</title>
4  <meta name="description" content="MUSANGWIN jadi teman cek RTP sebelum spin slot gacor. Obrolan santai soal bocoran, scatter, dan maxwin. Yuk daftar dan main sekarang!">
5  <meta name="robots" content="index,follow">
6  <link rel="canonical" href="https://daftarsitusjudibolaonlineterpercaya.com">
7  <link rel="amphtml" href="https://daftarsitusjudibolaonlineterpercaya.pages.dev/">
8    <link rel="preconnect" href="https://www.googletagmanager.com" crossorigin="">
vendor: 69 bytes, lines 8-9
8
9  <script async="" src="https://www.googletagmanager.com/gtag/js?id=
9G-0LSM1YJSPZ
vendor: 47 bytes, lines 9-10
9" nonce="se3iyzEHMc9FQEB4wSyd0w=="></script>
10  
10<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",)}catch(t){}},addToCart:function(e){if(!window.gtag)return;try{gtag("event","add_to_cart","IDR",value:(e.price)}catch(t){}}};</script>
10
11  <meta property="og:locale" content="id_ID">
12  <meta property="og:site_name" content="MUSANGWIN">
13  <meta property="og:type" content="product">
14  <meta property="og:title" content="MUSANGWIN Rutinitas Cek RTP Slot Sebelum Spin Malam Ini">
15  <meta property="og:description" content="MUSANGWIN jadi teman cek RTP sebelum spin slot gacor. Obrolan santai soal bocoran, scatter, dan maxwin. Yuk daftar dan main sekarang!">
16  <meta property="og:url" content="https://daftarsitusjudibolaonlineterpercaya.com">
17  <meta property="og:image" content="https://meubelkayumurah.pics/wp-content/uploads/2026/09/musangwinpro.jpg">
18  <meta property="og:image:alt" content="MUSANGWIN Rutinitas Cek RTP Slot Sebelum Spin Malam Ini">
19<meta property="product:price:amount" content="5000">
20<meta property="product:price:currency" content="IDR">
21<meta property="product:availability" content="out of stock">
22<meta name="twitter:card" content="summary_large_image">
23<meta name="twitter:title" content="MUSANGWIN Rutinitas Cek RTP Slot Sebelum Spin Malam Ini">
24<meta name="twitter:description" content="MUSANGWIN jadi teman cek RTP sebelum spin slot gacor. Obrolan santai soal bocoran, scatter, dan maxwin. Yuk daftar dan main sekarang!">
25<meta name="twitter:image" content="https://meubelkayumurah.pics/wp-content/uploads/2026/09/musangwinpro.jpg">
26
27<script type="application/ld+json">
28{
29  "@context": "https://schema.org",
30  "@type": "WebSite",
31  "@id": "/#website",
32  "url": "https://daftarsitusjudibolaonlineterpercaya.com",
33  "name": "MUSANGWIN",
34  "inLanguage": "id",
35  "potentialAction": {
36    "@type": "SearchAction",
37    "target": "https://daftarsitusjudibolaonlineterpercaya.com",
38    "query-input": "required name=search_term_string"
39  }
40}
41</script>
41
42
43<script type="application/ld+json">
44{
45  "@context": "https://schema.org",
46  "@type": "Organization",
47  "@id": "/#organization",
48  "name": "MUSANGWIN",
49  "url": "https://daftarsitusjudibolaonlineterpercaya.com",
50  "logo": "https://meubelkayumurah.pics/wp-content/uploads/2026/05/logo-musangwin.png"
51}
52</script>
52
53
54<script type="application/ld+json">
55{
56  "@context": "https://schema.org",
57  "@type": "Product",
58  "name": "MUSANGWIN Rutinitas Cek RTP Slot Sebelum Spin Malam Ini",
59  "sku": "1S83N0880RID",
60  "image": [
61    "https://meubelkayumurah.pics/wp-content/uploads/2026/09/musangwinpro.jpg"
62  ],
63  "url": "https://daftarsitusjudibolaonlineterpercaya.com",
64  "description": "MUSANGWIN jadi teman cek RTP sebelum spin slot gacor. Obrolan santai soal bocoran, scatter, dan maxwin. Yuk daftar dan main sekarang!",
65  "category": "Link Togel",
66  "brand": {
67    "@type": "Brand",
68    "name": "MUSANGWIN"
69  },
70  "offers": {
71    "@type": "Offer",
72    "url": "https://daftarsitusjudibolaonlineterpercaya.com",
73    "priceCurrency": "IDR",
74    "price": "5000",
75    "priceValidUntil": "2027-03-01",
76    "availability": "https://schema.org/OutOfStock",
77    "itemCondition": "https://schema.org/NewCondition",
78    "seller": {
79      "@type": "Organization",
80      "name": "MUSANGWIN",
81      "url": "https://daftarsitusjudibolaonlineterpercaya.com"
82    }
83  },
84  "aggregateRating": {
85    "@type": "AggregateRating",
86    "ratingValue": "4.9",
87    "reviewCount": "198",
88    "bestRating": "5",
89    "worstRating": "1"
90  }
91}
92</script>
92
93
94<script type="application/ld+json">
95{
96  "@context": "https://schema.org",
97  "@type": "BreadcrumbList",
98  "itemListElement": [
99    {
100      "@type": "ListItem",
101      "position": 1,
102      "name": "MUSANGWIN",
103      "item": "https://daftarsitusjudibolaonlineterpercaya.com"
104    },
105    {
106      "@type": "ListItem",
107      "position": 2,
108      "name": "Link Togel",
109      "item": "https://daftarsitusjudibolaonlineterpercaya.com"
110    }
111  ]
112}
113</script>
113
114
115<script type="application/ld+json">
116{
117  "@context": "https://schema.org",
118  "@type": "FAQPage",
119  "mainEntity": [
120    {
121      "@type": "Question",
122      "name": "Apa saja hiburan digital yang tersedia di MUSANGWIN?",
123      "acceptedAnswer": {
124        "@type": "Answer",
125        "text": "MUSANGWIN menghadirkan berbagai pilihan game online dengan tema, tampilan, dan fitur yang beragam sehingga pengguna dapat menjelajahi permainan sesuai dengan preferensi masing-masing."
126      }
127    },
128    {
129      "@type": "Question",
130      "name": "Apakah MUSANGWIN menyediakan game online dengan tema yang berbeda?",
131      "acceptedAnswer": {
132        "@type": "Answer",
133        "text": "Ya. Pilihan game online di MUSANGWIN memiliki beragam tema dan karakteristik permainan sehingga pengguna dapat memilih berdasarkan tampilan serta fitur yang paling menarik bagi mereka."
134      }
135    },
136    {
137      "@type": "Question",
138      "name": "Apakah game di MUSANGWIN bisa dimainkan untuk mengisi waktu luang?",
139      "acceptedAnswer": {
140        "@type": "Answer",
141        "text": "Game online dapat menjadi salah satu pilihan hiburan untuk mengisi waktu luang. Pengguna sebaiknya tetap mengatur waktu bermain agar aktivitas hiburan tetap seimbang dengan kegiatan lainnya."
142      }
143    },
144    {
145      "@type": "Question",
146      "name": "Apakah MUSANGWIN dapat diakses melalui smartphone?",
147      "acceptedAnswer": {
148        "@type": "Answer",
149        "text": "MUSANGWIN dapat diakses melalui perangkat seperti smartphone, tablet, maupun desktop selama perangkat memiliki koneksi internet yang stabil dan mendukung halaman platform."
150      }
151    },
152    {
153      "@type": "Question",
154      "name": "Apa yang membuat pilihan game MUSANGWIN menarik?",
155      "acceptedAnswer": {
156        "@type": "Answer",
157        "text": "Keberagaman tema, tampilan, fitur, dan mekanisme permainan menjadi beberapa hal yang dapat membuat katalog game lebih menarik untuk dijelajahi oleh pengguna."
158      }
159    },
160    {
161      "@type": "Question",
162      "name": "Bagaimana cara memilih game online yang sesuai?",
163      "acceptedAnswer": {
164        "@type": "Answer",
165        "text": "Pengguna dapat mempertimbangkan tema, tampilan, fitur, mekanisme, serta informasi permainan sebelum menentukan pilihan yang sesuai dengan preferensi dan kebutuhan hiburan."
166      }
167    },
168    {
169      "@type": "Question",
170      "name": "Apakah bermain game online menjamin mendapatkan keuntungan?",
171      "acceptedAnswer": {
172        "@type": "Answer",
173        "text": "Tidak. Hasil permainan tidak dapat dipastikan dan tidak ada permainan yang menjamin keuntungan tertentu. Karena itu, aktivitas bermain sebaiknya dilakukan secara bijak dan menggunakan dana khusus hiburan."
174      }
175    }
176  ]
177}
178</script>
178
179  <!-- User Session Data -->
180    <meta name="csrf-token" content="9ce6e4a17f7cc189893df9e47789b13e98829450d516a0cae5ca7b5f43e5dadc">
181  <meta name="user-logged-in" content="false">
182  <meta name="user-id" content="0">
183  
184  <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
185
186  <link rel="shortcut icon" href="https://meubelkayumurah.pics/wp-content/uploads/2026/05/icon-musangwin.png" type="image/x-icon">
187
188  <link rel="stylesheet" href="https://plazait-co-id-chick.pages.dev/assets/css/style.css">
189  <link rel="stylesheet" href="https://plazait-co-id-chick.pages.dev/assets/css/bottom-nav.css">
190  <link rel="stylesheet" href="https://plazait-co-id-chick.pages.dev/assets/css/search-suggest.css">
191  <link rel="stylesheet" href="https://plazait-co-id-chick.pages.dev/assets/css/product-detail.css">
192  <link rel="stylesheet" href="https://plazait-co-id-chick.pages.dev/assets/css/product-grid.css">
193  <link rel="stylesheet" href="https://plazait-co-id-chick.pages.dev/assets/css/site-notice.css">
194        <link rel="stylesheet" href="https://plazait-co-id-chick.pages.dev/assets/css/benchmark.css">
195    <link rel="stylesheet" href="https://plazait-co-id-chick.pages.dev/assets/css/product-filters.css">
196  <link rel="stylesheet" href="https://plazait-co-id-chick.pages.dev/assets/css/mega-menu-tiles.css">
197  <link rel="stylesheet" href="https://plazait-co-id-chick.pages.dev/assets/css/product-compare.css">
198  <link rel="stylesheet" href="https://plazait-co-id-chick.pages.dev/assets/css/product-card-actions.css">
199  <link rel="stylesheet" href="https://plazait-co-id-chick.pages.dev/assets/css/modal.css">
200      
201        <link rel="stylesheet" href="https://plazait-co-id-chick.pages.dev/assets/css/reviews-points.css">
202            
203</head>
204<body>
205<header class="topbar">
206  <div class="container topbar-inner">
207    <div class="topbar-left">
208      MUSANGWIN Link Slot Server Thailand Gacor 2026
209    </div>
210    <div class="topbar-right">
211      <a href="#">MUSANGWIN</a>
212      <a href="#">Livechat</a>
213      <a href="#">Promo</a>
214      <a href="#">Daftar</a>
215    </div>
216  </div>
217</header>
218<nav class="navbar">
219  <nav class="navbar-logo" style="width: 100%;">
220    <div class="container nav-inner" style="justify-items: center; justify-content: center;">
221        <a href="https://daftarsitusjudibolaonlineterpercaya.com" class="logo-mobile">
222          <img src="https://meubelkayumurah.pics/wp-content/uploads/2026/05/logo-musangwin.png" alt="MUSANGWIN" height="40">
223        </a>
224    </div>
225</nav>
226  <div class="container nav-inner">
227    <a href="https://daftarsitusjudibolaonlineterpercaya.com" class="logo">
228      <img src="https://meubelkayumurah.pics/wp-content/uploads/2026/05/logo-musangwin.png" alt="MUSANGWIN" height="40">
229    </a>
230
231    
232    <form class="search" method="get" action="#">
233      <input type="hidden" name="page" value="produk">
234      
235      <!-- Search Icon (Desktop) -->
236      <button type="submit" class="search-icon-btn" id="searchBtn" aria-label="Cari">
237        <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round">
238          <circle cx="11" cy="11" r="8"></circle>
239          <path d="m21 21-4.35-4.35"></path>
240        </svg>
241      </button>
242      
243      <input type="text" name="q" id="searchInput" placeholder="Cari MUSANGWIN" value="" autocomplete="off"> 
244      
245      <div class="search-suggest" id="searchSuggest" hidden=""></div>
246    </form>
247
248    <div class="nav-actions">
249      <!--<button class="icon-btn" id="notifBtn" title="Notifikasi">🔔</button>-->
250      <button class="icon-btn cart-indicator" id="cartBtn" title="Keranjang">
251        🛒 <span id="cartCount" class="badge" data-role="cart-badge" aria-live="polite">0</span>
252      </button>
253      
254      
255        <span id="compareCount" class="badge" data-role="compare-badge" aria-live="polite">0</span>
256      
257      
258      <!-- Dynamic login/logout button -->
259            <button class="login-btn" id="loginBtn" aria-label="Masuk">
260        <span class="login-text">Masuk</span>
261        <span class="login-ico" aria-hidden="true">😊</span>
262      </button>
263          </div>
264  </div>
265
266  <div class="container" style="display: flex; align-items: center;">
267      
268
269      <div class="mega-cats-wrapper">
270        <div class="mega-cats container" id="megaCatsScroll" style="padding-left: 5px !important;">
271                      <a class="" href="https://daftarsitusjudibolaonlineterpercaya.com">
272              MUSANGWIN            </a>
273                      <a class="" href="https://daftarsitusjudibolaonlineterpercaya.com">
274              MUSANGWIN LOGIN            </a>
275                      <a class="" href="https://daftarsitusjudibolaonlineterpercaya.com">
276              MUSANGWIN DAFTAR            </a>
277                      <a class="" href="https://daftarsitusjudibolaonlineterpercaya.com">
278              MUSANGWIN RTP            </a>
279                      <a class="" href="https://daftarsitusjudibolaonlineterpercaya.com">
280              LINK MUSANGWIN            </a>
281                      <a class="" href="https://daftarsitusjudibolaonlineterpercaya.com">
282              ALTERNATIF MUSANGWIN            </a>
283                      <a class="" href="https://daftarsitusjudibolaonlineterpercaya.com">
284              SLOT MUSANGWIN            </a>
285                  </div>
286        <div class="mega-cats-fade" id="megaCatsFade"></div>
287      </div>
288  </div>
289</nav>
290
291<!-- Panel Mega Menu - Outside navbar for full-screen -->
292<div class="mm2-panel" data-mm2="panel" role="dialog" aria-label="Kategori">
293  <div class="mm2-view is-active" data-mm2="top"></div>
294  <div class="mm2-view" data-mm2="detail"></div>
295</div>
296
297<!-- Backdrop - Outside navbar for full-screen -->
298<div class="mm2-backdrop" data-mm2="backdrop"></div>
299
300
301<!-- Mobile User Menu Bottom Sheet -->
302
303<script nonce="se3iyzEHMc9FQEB4wSyd0w==">
304(function(){
305  const btn = document.getElementById('megaMoreBtn');
306  const dd  = document.getElementById('megaMoreDropdown');
307  if(!btn || !dd) return;
308
309  function openDD(){
310    dd.hidden = false;
311    btn.setAttribute('aria-expanded','true');
312    document.addEventListener('click', outside, {capture:true});
313    document.addEventListener('keydown', esc);
314  }
315  function closeDD(){
316    if(dd.hidden) return;
317    dd.hidden = true;
318    btn.setAttribute('aria-expanded','false');
319    document.removeEventListener('click', outside, {capture:true});
320    document.removeEventListener('keydown', esc);
321  }
322  function toggle(){ dd.hidden ? openDD() : closeDD(); }
323  function outside(e){
324    if(!dd.contains(e.target) && e.target !== btn){
325      closeDD();
326    }
327  }
328  function esc(e){
329    if(e.key === 'Escape'){
330      closeDD();
331      btn.focus();
332    }
333  }
334  btn.addEventListener('click', toggle);
335})();
336
337// ========== HORIZONTAL SCROLL FADE INDICATOR ==========
338(function(){
339  const megaCats = document.getElementById('megaCatsScroll');
340  const fade = document.getElementById('megaCatsFade');
341  if (!megaCats || !fade) return;
342
343  function updateFade() {
344    const scrollLeft = megaCats.scrollLeft;
345    const scrollWidth = megaCats.scrollWidth;
346    const clientWidth = megaCats.clientWidth;
347    const maxScroll = scrollWidth - clientWidth;
348    
349    // Hide fade when scrolled to end (within 10px tolerance)
350    if (maxScroll - scrollLeft <= 10) {
351      fade.style.opacity = '0';
352    } else {
353      fade.style.opacity = '1';
354    }
355  }
356
357  // Update on scroll
358  megaCats.addEventListener('scroll', updateFade, { passive: true });
359  
360  // Update on resize
361  window.addEventListener('resize', updateFade, { passive: true });
362  
363  // Initial check
364  setTimeout(updateFade, 100);
365})();
366
367document.addEventListener('DOMContentLoaded', function () {
368  var input = document.getElementById('searchInput');
369  if (!input) return;
370  input.addEventListener('keydown', function (e) {
371    if (e.key === 'Enter') {
372      e.preventDefault();
373      var form = input.form;
374      if (!form) return;
375      if (typeof form.requestSubmit === 'function') form.requestSubmit();
376      else form.submit();
377    }
378  });
379});
380
381
382(function(){
383  const cartBtn = document.getElementById('cartBtn');
384  if (cartBtn) {
385    cartBtn.addEventListener('click', function(e) {
386      e.preventDefault();
387      
388      const checkLogin = () => {
389        return window.isUserLoggedIn ? window.isUserLoggedIn() : false;
390      };
391      
392      if (checkLogin()) {
393        window.location.href = '/keranjang';
394      } else {
395        showCartLoginModal();
396      }
397    });
398  }
399
400  const loginBtn = document.getElementById('loginBtn');
401  if (loginBtn) {
402    loginBtn.addEventListener('click', function(e) {
403      e.preventDefault();
404      window.location.href = 'https://daftarsitusjudibolaonlineterpercaya.com';
405    });
406  }
407
408  const userMenuBtn = document.getElementById('userMenuBtn');
409  const userDropdown = document.getElementById('userDropdown');
410  
411  if (userMenuBtn && userDropdown) {
412    function openDropdown() {
413      userDropdown.hidden = false;
414      userMenuBtn.setAttribute('aria-expanded', 'true');
415      document.addEventListener('click', closeOnOutside, { capture: true });
416      document.addEventListener('keydown', closeOnEscape);
417    }
418    
419    function closeDropdown() {
420      if (userDropdown.hidden) return;
421      userDropdown.hidden = true;
422      userMenuBtn.setAttribute('aria-expanded', 'false');
423      document.removeEventListener('click', closeOnOutside, { capture: true });
424      document.removeEventListener('keydown', closeOnEscape);
425    }
426    
427    function closeOnOutside(e) {
428      if (!userDropdown.contains(e.target) && e.target !== userMenuBtn) {
429        closeDropdown();
430      }
431    }
432    
433    function closeOnEscape(e) {
434      if (e.key === 'Escape') {
435        closeDropdown();
436        userMenuBtn.focus();
437      }
438    }
439    
440    userMenuBtn.addEventListener('click', function(e) {
441      e.preventDefault();
442      userDropdown.hidden ? openDropdown() : closeDropdown();
443    });
444    
445    // Close dropdown when clicking profile links
446    userDropdown.querySelectorAll('[data-close-dropdown]').forEach(link => {
447      link.addEventListener('click', function() {
448        closeDropdown();
449      });
450    });
451  }
452
453  // Bottom nav profile button - toggle mobile bottom sheet
454  const bottomProfileBtn = document.getElementById('bottomProfileBtn');
455  const mobileUserSheet = document.getElementById('mobileUserSheet');
456  const mobileUserSheetBackdrop = document.getElementById('mobileUserSheetBackdrop');
457  
458  if (bottomProfileBtn && mobileUserSheet) {
459    function openMobileSheet() {
460      mobileUserSheet.hidden = false;
461      document.body.style.overflow = 'hidden';
462      // Trigger animation
463      requestAnimationFrame(() => {
464        mobileUserSheet.classList.add('active');
465      });
466    }
467    
468    function closeMobileSheet() {
469      mobileUserSheet.classList.remove('active');
470      document.body.style.overflow = '';
471      setTimeout(() => {
472        mobileUserSheet.hidden = true;
473      }, 300);
474    }
475    
476    bottomProfileBtn.addEventListener('click', function(e) {
477      e.preventDefault();
478      openMobileSheet();
479    });
480    
481    if (mobileUserSheetBackdrop) {
482      mobileUserSheetBackdrop.addEventListener('click', closeMobileSheet);
483    }
484    
485    // Close on escape key
486    document.addEventListener('keydown', function(e) {
487      if (e.key === 'Escape' && !mobileUserSheet.hidden) {
488        closeMobileSheet();
489      }
490    });
491    
492    // Close sheet when clicking profile links
493    mobileUserSheet.querySelectorAll('[data-close-sheet]').forEach(link => {
494      link.addEventListener('click', function() {
495        closeMobileSheet();
496      });
497    });
498  }
499  
500  // Handle Google avatar error in bottom-nav (fallback to initials)
501  const bottomNavAvatar = document.querySelector('.bottom-nav-avatar-img');
502  if (bottomNavAvatar) {
503    bottomNavAvatar.addEventListener('error', function() );
504  }
505
506  // Mobile logout button
507  const mobileLogoutBtn = document.getElementById('mobileLogoutBtn');
508  if (mobileLogoutBtn) {
509    mobileLogoutBtn.addEventListener('click', async function(e) {
510      e.preventDefault();
511      
512      // Check push notification before logout
513      if (window.ChatNotification && typeof window.ChatNotification.confirmLogoutWithPushNotification === 'function') {
514        const confirmLogout = await window.ChatNotification.confirmLogoutWithPushNotification();
515        if (!confirmLogout) {
516          return; // User cancelled logout
517        }
518      }
519      
520      const getCsrfToken = () => document.querySelector('meta[name="csrf-token"]')?.getAttribute('content') || '';
521      
522      try {
523        const response = await fetch('/auth/logout', {
524          method: 'POST',
525          credentials: 'same-origin',
526          headers: {
527            'Content-Type': 'application/json',
528            'X-CSRF-Token': getCsrfToken()
529          },
530          body: JSON.stringify({
531            csrf_token: getCsrfToken()
532          })
533        });
534        
535        if (response.ok) {
536          if (window.guestCart && typeof window.guestCart.clear === 'function') {
537            window.guestCart.clear();
538          }
539          window.location.href = '/login?logged_out=1';
540        } else {
541          console.error('Logout failed');
542          window.location.href = '/logout';
543        }
544      } catch (error) {
545        console.error('Logout error:', error);
546        window.location.href = '/logout';
547      }
548    });
549  }
550
551  const logoutBtn = document.getElementById('logoutBtn');
552  if (logoutBtn) {
553    logoutBtn.addEventListener('click', async function(e) {
554      e.preventDefault();
555      
556      // Check push notification before logout
557      if (window.ChatNotification && typeof window.ChatNotification.confirmLogoutWithPushNotification === 'function') {
558        const confirmLogout = await window.ChatNotification.confirmLogoutWithPushNotification();
559        if (!confirmLogout) {
560          return; // User cancelled logout
561        }
562      }
563      
564      const getCsrfToken = () => document.querySelector('meta[name="csrf-token"]')?.getAttribute('content') || '';
565      
566      try {
567        const response = await fetch('/auth/logout', {
568          method: 'POST',
569          credentials: 'same-origin',
570          headers: {
571            'Content-Type': 'application/json',
572            'X-CSRF-Token': getCsrfToken()
573          },
574          body: JSON.stringify({
575            csrf_token: getCsrfToken()
576          })
577        });
578        
579        if (response.ok) {
580          if (window.guestCart && typeof window.guestCart.clear === 'function') {
581            window.guestCart.clear();
582          }
583          
584          window.location.href = '/login?logged_out=1';
585        } else {
586          console.error('Logout failed');
587          window.location.href = '/logout';
588        }
589      } catch (error) {
590        console.error('Logout error:', error);
591        window.location.href = '/logout';
592      }
593    });
594  }
595
596  const wishlistBtn = document.getElementById('wishlistBtn');
597  const notifBtn = document.getElementById('notifBtn');
598  
599  if (wishlistBtn) {
600    wishlistBtn.addEventListener('click', function(e) {
601      e.preventDefault();
602      alert('Fitur wishlist akan segera tersedia!');
603    });
604  }
605  
606  if (notifBtn) {
607    notifBtn.addEventListener('click', function(e) {
608      e.preventDefault();
609      alert('Fitur notifikasi akan segera tersedia!');
610    });
611  }
612})();
613
614// ========== MOBILE BOTTOM NAVIGATION ==========
615(function initBottomNav() {
616  // Sync cart badge with bottom nav
617  function syncBottomCartBadge() {
618    const mainBadge = document.getElementById('cartCount');
619    const bottomBadge = document.getElementById('bottomCartCount');
620    if (mainBadge && bottomBadge) {
621      const count = mainBadge.textContent;
622      bottomBadge.textContent = count;
623      bottomBadge.style.display = parseInt(count) > 0 ? 'flex' : 'none';
624    }
625  }
626
627  // Sync compare badge with bottom nav
628  function syncBottomCompareBadge() {
629    const mainBadge = document.getElementById('compareCount');
630    const bottomBadge = document.getElementById('bottomCompareCount');
631    if (mainBadge && bottomBadge) {
632      const count = mainBadge.textContent;
633      bottomBadge.textContent = count;
634      bottomBadge.style.display = parseInt(count) > 0 ? 'flex' : 'none';
635    }
636  }
637
638  // Initial sync
639  syncBottomCartBadge();
640  syncBottomCompareBadge();
641
642  // Observe badge changes
643  const observer = new MutationObserver(function() {
644    syncBottomCartBadge();
645    syncBottomCompareBadge();
646  });
647
648  const cartBadge = document.getElementById('cartCount');
649  const compareBadge = document.getElementById('compareCount');
650  
651  if (cartBadge) observer.observe(cartBadge, { childList: true, characterData: true, subtree: true });
652  if (compareBadge) observer.observe(compareBadge, { childList: true, characterData: true, subtree: true });
653
654  // Bottom Cart Button
655  const bottomCartBtn = document.getElementById('bottomCartBtn');
656  if (bottomCartBtn) {
657    bottomCartBtn.addEventListener('click', function(e) {
658      e.preventDefault();
659      
660      const checkLogin = () => {
661        return window.isUserLoggedIn ? window.isUserLoggedIn() : false;
662      };
663      
664      if (checkLogin()) {
665        window.location.href = '/keranjang';
666      } else {
667        showCartLoginModal();
668      }
669    });
670  }
671
672  // Bottom Compare Button
673  const bottomCompareBtn = document.getElementById('bottomCompareBtn');
674  if (bottomCompareBtn) {
675    bottomCompareBtn.addEventListener('click', function(e) {
676      e.preventDefault();
677      
678      // Close chat widget if open
679      if (window.plazaChat && window.plazaChat.isWidgetOpen) {
680        window.plazaChat.closeWidget();
681      }
682      
683      const mainCompareBtn = document.getElementById('compareBtn');
684      if (mainCompareBtn) {
685        mainCompareBtn.click();
686      }
687    });
688  }
689
690  // Bottom Category Button - triggers mega menu
691  const bottomCategoryBtn = document.getElementById('bottomCategoryBtn');
692  if (bottomCategoryBtn) {
693    bottomCategoryBtn.addEventListener('click', function(e) {
694      e.preventDefault();
695      // Trigger desktop mega menu
696      const desktopTrigger = document.querySelector('.mm2-trigger:not(#bottomCategoryBtn)');
697      if (desktopTrigger) {
698        desktopTrigger.click();
699      }
700    });
701  }
702
703  // Bottom Login Button
704  const bottomLoginBtn = document.getElementById('bottomLoginBtn');
705  if (bottomLoginBtn) {
706    bottomLoginBtn.addEventListener('click', function(e) {
707      e.preventDefault();
708      window.location.href = '/login';
709    });
710  }
711
712  // Bottom Chat Button
713  const bottomChatBtn = document.getElementById('bottomChatBtn');
714  if (bottomChatBtn) {
715    bottomChatBtn.addEventListener('click', function(e) {
716      e.preventDefault();
717      
718      // Trigger chat widget (try multiple times if needed)
719      const triggerChat = () => {
720        const chatToggle = document.getElementById('chat-toggle-btn');
721        if (chatToggle) {
722          chatToggle.click();
723          return true;
724        }
725        return false;
726      };
727      
728      // Immediate attempt
729      if (!triggerChat()) {
730        // Retry after 100ms if not found
731        setTimeout(() => {
732          if (!triggerChat()) {
733            // Last resort: manually show popup
734            const popup = document.getElementById('chat-popup');
735            if (popup) {
736              popup.style.display = 'block';
737            }
738          }
739        }, 100);
740      }
741    });
742  }
743
744  // Sync chat unread badge
745  function syncBottomChatBadge() {
746    const chatBadge = document.getElementById('chat-unread-badge');
747    const bottomChatBadge = document.getElementById('bottomChatCount');
748    if (chatBadge && bottomChatBadge) {
749      const count = chatBadge.textContent;
750      bottomChatBadge.textContent = count;
751      bottomChatBadge.style.display = chatBadge.style.display;
752    }
753  }
754
755  // Observe chat badge changes
756  const chatBadge = document.getElementById('chat-unread-badge');
757  if (chatBadge) {
758    observer.observe(chatBadge, { attributes: true, childList: true, characterData: true, subtree: true });
759    syncBottomChatBadge();
760  }
761
762  // Active state management based on current page
763  function updateActiveState() {
764    const currentPath = window.location.pathname;
765    const bottomNavItems = document.querySelectorAll('.bottom-nav-item');
766    
767    bottomNavItems.forEach(item => {
768      item.classList.remove('active');
769      
770      const itemId = item.id;
771      const page = item.getAttribute('data-page');
772      const href = item.getAttribute('href');
773      
774      // Check by ID for specific pages
775      if (itemId === 'bottomHomeBtn' && currentPath === '/') {
776        item.classList.add('active');
777      } else if (itemId === 'bottomCartBtn' && (currentPath === '/keranjang' || currentPath === '/cart')) {
778        item.classList.add('active');
779      } else if (itemId === 'bottomProfileBtn' && currentPath.startsWith('/profile')) {
780        item.classList.add('active');
781      } else if (itemId === 'bottomCategoryBtn' && currentPath.startsWith('/kategori')) {
782        item.classList.add('active');
783      } else if (itemId === 'bottomCompareBtn' && currentPath === '/compare') {
784        item.classList.add('active');
785      } else if (itemId === 'bottomChatBtn' && currentPath === '/chat') {
786        item.classList.add('active');
787      }
788      // Fallback: check by data-page attribute
789      else if (page === 'home' && currentPath === '/') {
790        item.classList.add('active');
791      } else if (page === 'profile' && currentPath.startsWith('/profile')) {
792        item.classList.add('active');
793      }
794      // Fallback: check by href
795      else if (href && currentPath === href) {
796        item.classList.add('active');
797      }
798    });
799  }
800
801  // Update active state on load
802  updateActiveState();
803
804  // Bottom nav always visible - auto-hide disabled for better UX
805  // const bottomNav = document.querySelector('.bottom-nav');
806  // if (bottomNav && window.innerWidth <= 640) {
807  //   // Auto-hide feature disabled
808  // }
809})();
810// Cart Login Modal Handler (Global scope)
811function showCartLoginModal() {
812  const modal = document.getElementById('cartLoginModal');
813  if (!modal) return;
814  
815  modal.classList.add('show');
816  
817  const confirmBtn = document.getElementById('cartLoginConfirm');
818  const registerBtn = document.getElementById('cartRegisterBtn');
819  const cancelBtn = document.getElementById('cartLoginCancel');
820  
821  const handleLogin = () => {
822    window.location.href = '/login?return=' + encodeURIComponent('/keranjang');
823  };
824  
825  const handleRegister = () => {
826    window.location.href = '/register?return=' + encodeURIComponent('/keranjang');
827  };
828  
829  const handleCancel = () => {
830    modal.classList.remove('show');
831    confirmBtn.removeEventListener('click', handleLogin);
832    registerBtn.removeEventListener('click', handleRegister);
833    cancelBtn.removeEventListener('click', handleCancel);
834  };
835  
836  confirmBtn.removeEventListener('click', handleLogin);
837  registerBtn.removeEventListener('click', handleRegister);
838  cancelBtn.removeEventListener('click', handleCancel);
839  
840  confirmBtn.addEventListener('click', handleLogin);
841  registerBtn.addEventListener('click', handleRegister);
842  cancelBtn.addEventListener('click', handleCancel);
843  
844  modal.addEventListener('click', (e) => {
845    if (e.target === modal) {
846      handleCancel();
847    }
848  });
849}
850</script>
vendor: 1 bytes, line 850
850
851<script src="https://plazait.co.id/assets/js/cart-badge.js" defer="" nonce="se3iyzEHMc9FQEB4wSyd0w=="></script>
851
852
853<!-- Product Compare Sidebar -->
854<div class="compare-sidebar" id="compareSidebar">
855  <div class="compare-header">
856    <h4 class="compare-title">
857      <svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor">
858        <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"></path>
859      </svg>
860      Bandingkan Produk
861      <span class="compare-count" id="compareCountSidebar">(0)</span>
862    </h4>
863    <button class="compare-close" id="compareClose" aria-label="Tutup">
864      <svg width="18" height="18" viewBox="0 0 24 24" fill="currentColor">
865        <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"></path>
866      </svg>
867    </button>
868  </div>
869  
870  <div class="compare-content">
871    <div class="compare-empty" id="compareEmpty">
872      <div class="empty-icon">
873        <svg width="48" height="48" viewBox="0 0 24 24" fill="currentColor" opacity="0.3">
874          <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"></path>
875        </svg>
876      </div>
877      <h5>Belum ada produk dipilih</h5>
878      <p>Pilih produk yang ingin dibandingkan dengan klik tombol "Bandingkan Produk" di halaman produk.</p>
879    </div>
880    
881    <div class="compare-list" id="compareList">
882      <!-- Products will be populated here -->
883    </div>
884  </div>
885  
886  <div class="compare-actions" id="compareActions">
887    <button class="btn btn-outline-danger btn-sm" id="compareClearAll">
888      <svg width="16" height="16" viewBox="0 0 24 24" fill="currentColor">
889        <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"></path>
890      </svg>
891      Hapus Semua
892    </button>
893    <button class="btn btn-primary btn-sm" id="compareAnalyze" disabled="">
894      <svg width="16" height="16" viewBox="0 0 24 24" fill="currentColor">
895        <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"></path>
896      </svg>
897      Analisis AI
898    </button>
899  </div>
900  
901  <!-- AI Disclaimer in Sidebar -->
902  <div class="compare-disclaimer">
903    <div class="ai-disclaimer">
904      <div class="disclaimer-text">
905        <strong>💡 Catatan:</strong> Analisis ini dihasilkan oleh AI dan dapat mengalami kesalahan. 
906        Gunakan sebagai referensi dan tetap pertimbangkan kebutuhan spesifik Anda sebelum membeli.
907        Untuk konsultasi lebih lanjut, silakan hubungi tim MUSANGWIN.
908      </div>
909    </div>
910  </div>
911</div><link rel="stylesheet" href="https://plazait-co-id-chick.pages.dev/assets/css/pd-lightbox.css">
912<style>.paylater-promo{display:inline-flex;align-items:center;gap:8px;background:linear-gradient(135deg,#f0fdf4 0,#e14b19 100%);border:1px solid #e14b19;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:#e14b19;font-weight:600}.paylater-text small{color:#e14b19;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:#e14b19;background:#e14b19;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,#e14b19 0,#e14b19 100%);border:none;border-radius:8px;padding:3px;
912cursor: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:#e14b19;cursor:pointer;transition:all .2s ease;white-space:nowrap}.pdv-min-copy:hover:not(:disabled),.pdv-min-more:hover{background:#e14b19;color:#fff;border-color:#e14b19}.pdv-min-copy:disabled{opacity:.4;cursor:not-allowed}.pdv-min-copy.copied{background:#e14b19;color:#fff;border-color:#e14b19}.pdv-min-more{margin-left:auto}.modal-close{position:absolute;top:20px;right:20px;background:none;border:none;cursor:pointer;color:#e14b19;padding:4px;transition:color .2s ease}.modal-close:hover{color:#e14b19}.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,#e14b19 0,#e14b19 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:#e14b19;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:#e14b19;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:#e14b19;border-bottom:1px solid #e2e8f0}.vmd-item:last-child{border-bottom:none}.vmd-item svg{color:#e14b19;flex-shrink:0;margin-top:2px}.vmd-item strong{color:#e14b19}.modal-actions{padding:20px}.modal-btn-primary{background:linear-gradient(135deg,#e14b19 0,#e14b19 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:#e14b19;margin-bottom:2px}.pey-content span{display:block;font-size:13px;color:#e14b19;line-height:1.4}.pey-link{flex-shrink:0;padding:8px 16px;background:linear-gradient(135deg,#e14b19,#e14b19);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>
913<style nonce="se3iyzEHMc9FQEB4wSyd0w==">
914.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;
914display:inline-flex;align-items:center;justify-content:center;border-radius:10px;border:1px solid #e2e8f0;background:#fff;color:#e14b19;cursor:pointer;transition:all .2s ease;-webkit-tap-highlight-color:transparent}.pd-share-btn:hover{background:#f8fafc;border-color:#e14b19;color:#e14b19;transform:translateY(-1px)}.pd-share-btn:active{transform:translateY(0)}.pd-share-btn svg{display:block}
915
916.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)}}
917
918.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:#e14b19;margin:0}.pd-share-close{width:32px;height:32px;border-radius:8px;border:0;background:transparent;color:#e14b19;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:all .15s ease}.pd-share-close:hover{background:#f1f5f9;color:#e14b19}.pd-share-body{padding:24px;overflow-y:auto}
919
920.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:#e14b19;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:#e14b19;margin:0}
921
922.pd-share-label{font-size:13px;font-weight:600;color:#e14b19;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:#e14b19;background:#f8fafc;transform:translateY(-2px)}.pd-share-option:active{transform:translateY(0)}
923
924.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,#e14b19 0%,#e14b19 100%);color:#fff}.pd-share-icon-facebook{background:linear-gradient(135deg,#e14b19 0%,#e14b19 100%);color:#fff}.pd-share-icon-twitter{background:linear-gradient(135deg,#e14b19 0%,#e14b19 100%);color:#fff}.pd-share-icon-telegram{background:linear-gradient(135deg,#e14b19 0%,#e14b19 100%);color:#fff}.pd-share-icon-email{background:linear-gradient(135deg,#e14b19 0%,#e14b19 100%);color:#fff}.pd-share-icon-copy{background:linear-gradient(135deg,#e14b19 0%,#e14b19 100%);color:#fff}.pd-share-icon-pdf{background:linear-gradient(135deg,#e14b19 0%,#e14b19 100%);color:#fff}.pd-share-name{font-size:12px;font-weight:600;color:#e14b19;text-align:center}
925
926.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:#e14b19;background:#fff;font-family:'Segoe UI',system-ui,sans-serif}.pd-share-copy-input:focus{outline:0;border-color:#e14b19;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,#e14b19 0%,#e14b19 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,#e14b19 0%,#e14b19 100%);transform:translateY(-1px);box-shadow:0 4px 12px rgba(14,165,233,.3)}
926.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,#e14b19 0%,#e14b19 100%);pointer-events:none}
927
928@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}}
929
930.mf-share{background:#fff;color:#e14b19;border:2px solid #e14b19;display:inline-flex;align-items:center;justify-content:center}.mf-share:active{transform:scale(.95)}.mf-share svg{display:block}
931
932@media(max-width:640px){.pd-share-btn{display:none!important}}
933
934.stock-badge.in{background:#e6f9ec;color:#e14b19;border-radius:999px;padding:4px 10px;font-weight:700}.stock-badge.out{background:#e14b19;color:#e14b19;border-radius:999px;padding:4px 10px;font-weight:700}
935
936.stock-info-btn{--c:#e14b19;--b:#e14b19;--bg:#f0f9ff;--bg-h:#e14b19;--b-h:#e14b19;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:#e14b19;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}
937
938.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:#e14b19;cursor:pointer}
939
940.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,#e14b19);display:inline-block}.sp-label{font-weight:600;font-size:13px}
941
942
943.sp-qty{grid-column:2;justify-self:end;min-width:40px;text-align:right;font-weight:800;font-size:13px;color:#e14b19;font-variant-numeric:tabular-nums}
944
945.sp-wa{
946  grid-column:3; justify-self:end;
947  width:32px; height:32px; min-width:32px; min-height:32px;
948  box-sizing:border-box;
949  padding:0; line-height:0; text-decoration:none; outline:0;
950  display:inline-flex; align-items:center; justify-content:center;
951  border-radius:999px; border:1px solid rgba(37,211,102,.60);  /* 1px untuk hasil “crisp” */
952  background:rgba(37,211,102,.08); color:#e14b19;
953  transition:background-color .15s ease, border-color .15s ease, transform .05s ease;
954  -webkit-tap-highlight-color:transparent;
955}
956.sp-wa:hover{background:rgba(37,211,102,.16);border-color:rgba(37,211,102,.75)}
957.sp-wa:active{transform:translateY(.5px) scale(.98)}
958
959.sp-wa svg{width:18px;height:18px;display:block;vertical-align:middle}
960.stock-popover a{text-decoration:none}
961
962#deskripsi img{max-width:450px!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}}
963
964.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:#e14b19}.stock-dot.low{background:#e14b19}.stock-dot.out{background:#e14b19}.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}}
965
966.pd-related-card .spec-chips{font-size:11px;color:#e14b19;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}}
967
968.pwp-trigger-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 8px 4px;background:linear-gradient(135deg,#e14b19 0%,#e14b19 100%);color:#e14b19;border-radius:6px;font-size:.65rem;font-weight:600;border:0}.pwp-trigger-badge svg{flex-shrink:0;width:12px;height:12px}
969.pwp-deals-section{margin:0;padding:12px;background:linear-gradient(135deg,#e14b19 0%,#e14b19 100%);border-radius:12px;border:2px solid #e14b19}.pwp-deals-header{display:flex;gap:10px;margin-bottom:10px}.pwp-icon{flex-shrink:0;color:#e14b19;width:18px;height:18px}.pwp-text .pwp-title{margin:0 0 2px 0;font-size:14px;font-weight:700;color:#e14b19}.pwp-text .pwp-subtitle{margin:0;font-size:11px;color:#e14b19;opacity:0.9}.pwp-deals-loading{text-align:center;padding:40px 0;color:#e14b19}.pwp-spinner{width:40px;height:40px;border:3px solid #e14b19;border-top-color:#e14b19;border-radius:50%;animation:spin 0.8s linear infinite;margin:0 auto 12px}@keyframes spin{to{transform:rotate(360deg)}}
970.pwp-deals-grid{display:flex;flex-direction:column;gap:6px}.pwp-deal-card{background:#fff;border-radius:6px;overflow:hidden;border:1px solid #e14b19;display:flex;align-items:center;padding:8px;gap:10px}.pwp-deal-card:hover{background:#e14b19}.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:#e14b19;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:#e14b19;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:#e14b19;white-space:nowrap}.pwp-deal-original{font-size:11px;color:#e14b19;text-decoration:line-through;white-space:nowrap}.pwp-cart-note{margin-top:8px;padding:6px 10px;background:#e14b19;border-left:2px solid#e14b19;font-size:11px;color:#e14b19;border-radius:4px}
971@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}}
972
973.preorder-badge{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;background:linear-gradient(135deg,#e14b19 0%,#e14b19 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 #e14b19;border-radius:12px}.preorder-info-header{display:flex;align-items:center;gap:8px;margin-bottom:10px}.preorder-info-icon{width:20px;height:20px;color:#e14b19;flex-shrink:0}.preorder-info-title{font-size:14px;font-weight:700;color:#e14b19;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:#e14b19;font-weight:600}.preorder-info-value{color:#e14b19;font-weight:700}.preorder-info-value.highlight{color:#e14b19;font-size:14px}.preorder-info-note{margin-top:10px;padding:8px 10px;background:#e14b19;border-left:2px solid #e14b19;font-size:12px;color:#e14b19;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}}
974</style>
975
976<div class="pd-sticky-header" id="pd-sticky-header"><div class="pd-sticky-header-container"><div class="pd-sticky-thumb"><img src="https://meubelkayumurah.pics/wp-content/uploads/2026/09/musangwinpro.jpg" alt="MUSANGWIN" id="pd-sticky-thumb-img"></div><div class="pd-sticky-info"><h2 class="pd-sticky-title" id="pd-sticky-title">MUSANGWIN Rutinitas Cek RTP Slot Sebelum Spin Malam Ini</h2><div class="pd-sticky-price-row"><span class="pd-sticky-price" id="pd-sticky-price">Rp 5.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">
976<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"></path></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"></path></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>
977
978<main class="product-single product-single--v3"><nav class="pd-breadcrumb" aria-label="breadcrumb"><a href="https://daftarsitusjudibolaonlineterpercaya.com">MUSANGWIN</a><span>/</span><a href="https://daftarsitusjudibolaonlineterpercaya.com">MUSANGWIN LOGIN</a><span>/</span><a href="https://daftarsitusjudibolaonlineterpercaya.com">MUSANGWIN DAFTAR</a><span>/</span><a href="https://daftarsitusjudibolaonlineterpercaya.com">SITUS TOTO</a><span>/</span><a href="https://daftarsitusjudibolaonlineterpercaya.com">BANDAR TOGEL </a><span>/</span><span class="current">MUSANGWIN Rutinitas Cek RTP Slot Sebelum Spin Malam Ini
979
980</span></nav>
981
982<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://meubelkayumurah.pics/wp-content/uploads/2026/09/musangwinpro.jpg" alt="MUSANGWIN" data-slug="" loading="eager">
983</figure>
984
985<div class="pd-mobile-slider-wrapper">
986<div class="pd-mobile-slider" id="pd-mobile-slider" aria-label="Galeri gambar (geser)"><div class="pd-mslide"><img src="https://meubelkayumurah.pics/wp-content/uploads/2026/09/musangwinpro.jpg" alt="MUSANGWIN" loading="eager"></div><div class="pd-mslide"><img src="https://meubelkayumurah.pics/wp-content/uploads/2026/09/musangwinpro.jpg" alt="MUSANGWIN" loading="lazy"></div><div class="pd-mslide"><img src="https://meubelkayumurah.pics/wp-content/uploads/2026/09/musangwinpro.jpg" alt="MUSANGWIN" loading="lazy"></div><div class="pd-mslide"><img src="https://meubelkayumurah.pics/wp-content/uploads/2026/09/musangwinpro.jpg" alt="MUSANGWIN" loading="lazy"></div><div class="pd-mslide"><img src="https://meubelkayumurah.pics/wp-content/uploads/2026/09/musangwinpro.jpg" alt="MUSANGWIN" loading="lazy"></div><div class="pd-mslide"><img src="https://meubelkayumurah.pics/wp-content/uploads/2026/09/musangwinpro.jpg" alt="MUSANGWIN" loading="lazy"></div></div><div class="pd-gallery-counter" id="pd-gallery-counter">1/6</div></div>
987<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://meubelkayumurah.pics/wp-content/uploads/2026/09/musangwinpro.jpg" data-alt="MUSANGWIN" data-slug="" aria-label="Gambar 1"><img src="https://meubelkayumurah.pics/wp-content/uploads/2026/09/musangwinpro.jpg" alt="MUSANGWIN" loading="lazy"></button><button type="button" class="pd-thumb-btn " data-full="https://meubelkayumurah.pics/wp-content/uploads/2026/09/musangwinpro.jpg" data-alt="MUSANGWIN" data-slug="https://meubelkayumurah.pics/wp-content/uploads/2026/09/musangwinpro.jpg" aria-label="Gambar 2"><img src="https://meubelkayumurah.pics/wp-content/uploads/2026/09/musangwinpro.jpg" alt="MUSANGWIN" loading="lazy"></button><button type="button" class="pd-thumb-btn " data-full="https://meubelkayumurah.pics/wp-content/uploads/2026/09/musangwinpro.jpg" data-alt
987="MUSANGWIN" 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://meubelkayumurah.pics/wp-content/uploads/2026/09/musangwinpro.jpg" alt="MUSANGWIN" loading="lazy"></button><button type="button" class="pd-thumb-btn " data-full="https://meubelkayumurah.pics/wp-content/uploads/2026/09/musangwinpro.jpg" data-alt="MUSANGWIN" 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://meubelkayumurah.pics/wp-content/uploads/2026/09/musangwinpro.jpg" alt="MUSANGWIN" loading="lazy"></button><button type="button" class="pd-thumb-btn " data-full="https://meubelkayumurah.pics/wp-content/uploads/2026/09/musangwinpro.jpg" data-alt="MUSANGWIN" 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://meubelkayumurah.pics/wp-content/uploads/2026/09/musangwinpro.jpg" alt="MUSANGWIN" loading="lazy"></button><button type="button" class="pd-thumb-btn " data-full="https://meubelkayumurah.pics/wp-content/uploads/2026/09/musangwinpro.jpg" data-alt="MUSANGWIN" 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://meubelkayumurah.pics/wp-content/uploads/2026/09/musangwinpro.jpg" alt="MUSANGWIN" 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">
988        <h1 class="pd-title" id="pd-title">MUSANGWIN Rutinitas Cek RTP Slot Sebelum Spin Malam Ini</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"></path></svg></button></div>
989<div id="pd-price-anchor">
990</div>
991<div class="pd-price-qr-container">
992        <div class="pd-price-block" id="pd-price-block">
993                <div class="pd-price-row">
994                        <span class="pd-price-current" id="pd-price-current">Rp 10.000</span>
995                        <span class="pd-price-original" id="pd-price-original">Rp 100.000</span>
996                        <span class="pd-discount-badge" id="pd-discount-badge">-90%</span></div>
997                        <div class="pd-meta-row">
998                                <span class="sold-inline" id="pd-sold-inline" data-role="sold-chip">Terjual Terjual 2</span>
999                                <span class="pwp-trigger-badge" id="pwp-trigger-badge" hidden="">
1000                                        <svg width="14" height="14" viewBox="0 0 24 24" fill="currentColor">
1001                                                <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"></path></svg>Bisa PWP</span></div>
1002                                                <div class="pd-meta-inline"><span class="stock-badge out" id="pd-stock-badge">MUSANGWIN</span>
1003                                                        <span class="sku">SKU: <span id="pd-sku">1S83N0880RID</span></span></div>
1004<div class="paylater-promo paylater-promo-sm paylater-mobile-only">
1005    <span class="paylater-icon">💳</span>
1006    <span class="paylater-text">
1007        <strong>Autorized Link Togel</strong>
1008        <small>Link Login MUSANGWIN</small>
1009    </span>
1010</div>
1011
1012<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">
1012<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"></path></svg></button></div><ul class="sp-list">
1013<li class="sp-item"><div class="sp-left"><span class="sp-dot" style="--dot:#e14b19;"></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"></path></svg></a></li>
1014                
1015                    <li class="sp-item">
1016                      <div class="sp-left">
1017                        <span class="sp-dot" style="--dot:#e14b19;"></span>
1018                        <span class="sp-label">Medan Fair</span>
1019                      </div>
1020                      <span class="sp-qty" id="sp-qty-mdf">0</span>
1021                      <a class="sp-wa" 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" target="_blank" rel="noopener" aria-label="WhatsApp Medan Fair">
1022                        <svg class="ico-wa" viewBox="0 0 24 24" aria-hidden="true" focusable="false">
1023                            <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"></path>
1024                          </svg>
1025                      </a>
1026                    </li>
1027                
1028                    <li class="sp-item">
1029                      <div class="sp-left">
1030                        <span class="sp-dot" style="--dot:#e14b19;"></span>
1031                        <span class="sp-label">Banda Aceh</span>
1032                      </div>
1033                      <span class="sp-qty" id="sp-qty-bda">0</span>
1034                      <a class="sp-wa" 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" target="_blank" rel="noopener" aria-label="WhatsApp Banda Aceh">
1035                        <svg class="ico-wa" viewBox="0 0 24 24" aria-hidden="true" focusable="false">
1036                            <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"></path>
1037                          </svg>
1038                      </a>
1039                    </li>
1040                  </ul>
1041                </div>
1042
1043                            </div>
1044            <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&amp;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>
1045            </div>
1046                                    <div id="pd-variants-anchor"></div>
1047
1048                        
1049
1050            <div class="pd-compare-section">
1051                <button type="button" class="pd-compare-btn" id="pd-compare-btn" data-product-id="325">
1052                    <svg class="compare-icon" width="18" height="18" viewBox="0 0 24 24" fill="currentColor">
1053                        <path d="M21,9L17,5V8H10V10H17V13M7,11L3,15L7,19V16H14V14H7V11Z"></path>
1054                    </svg>
1055                    <span class="compare-text">Bandingkan Produk</span>
1056                    <span class="compare-remove" hidden="">
1057                        <svg width="18" height="18" viewBox="0 0 24 24" fill="currentColor">
1058                            <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"></path>
1059                        </svg>
1060                        Hapus dari Perbandingan
1061                    </span>
1062                </button>
1063                <div class="pd-compare-info">
1064                    <small class="compare-note" id="compare-note">Bandingkan hingga 5 produk dengan bantuan AI</small>
1065                </div>
1066            </div>
1067            
1068                            <div class="pd-short-desc"><p><strong>Informasi MUSANGWIN :</strong></p><ul><li>Minimal Deposit: Rp.10.000,-</li><li>Jenis Permainan: Togel, Slot, Live Casino</li><li>Metode Pembayaran: Bank, QRIS, Dompet Digital</li><li>Mata Uang: IDR (Indonesian Rupiah)</li><li>Jam Operasional: 24 Jam</li><li>Total Rating: 1.849.488</li><li>Rating: ⭐⭐⭐⭐⭐</li><li>Daftar Sekarang: <a href="https://daftarsitusjudibolaonlineterpercaya.pages.dev/">Klik Disini</a></li></ul></div><div class="togel-container-v3 mini">
1069  <div class="togel-machine-v3">
1070    <h2 class="togel-title-v3">
1070🔥 PREDIKSI TOGEL ONLINE (SIMULASI) 🔥</h2>
1071
1072    <div class="togel-controls-v3">
1073      <label>
1074        PASARAN
1075        <select id="marketFilter">
1076          <option value="ALL">ALL PASARAN</option>
1077        </select>
1078      </label>
1079
1080      <label>
1081        TIPE
1082        <select id="typeFilter">
1083          <option value="4D">4D</option>
1084          <option value="3D">3D</option>
1085          <option value="2D">2D</option>
1086        </select>
1087      </label>
1088
1089      <label>
1090        MIN CONF
1091        <input id="minConf" type="number" min="50" max="99" step="1" value="70">
1092      </label>
1093
1094      <button id="btnTogelRandom" type="button">
1095        <span class="icon">🎲</span> GENERATE
1096      </button>
1097    </div>
1098
1099    <div class="togel-main-result-v3" id="togelResult">
1100      <div class="togel-status-v3" id="togelStatus">— READY —</div>
1101
1102      <div class="togel-highlight-box">
1103        <div class="togel-col-left">
1104          <div class="k">Pasaran Rekomendasi</div>
1105          <div class="v-game" id="rMarket">-</div>
1106
1107          <div class="provider-info">
1108            <span class="k-small">Tipe:</span>
1109            <span class="v-small" id="rType">-</span>
1110            <span class="k-small" style="margin-left:10px;">Conf:</span>
1111            <span class="v-small" id="rConf">-</span>
1112          </div>
1113        </div>
1114
1115        <div class="togel-col-right">
1116          <div class="k-rtp">Angka Utama</div>
1117          <div class="v-rtp-huge" id="rAngka">-</div>
1118        </div>
1119      </div>
1120
1121      <div class="togel-details-v3">
1122        <div class="togel-detail-item">
1123          <div class="k-detail">BBFS</div>
1124          <div class="v-detail" id="rBBFS">-</div>
1125        </div>
1126        <div class="togel-detail-item">
1127          <div class="k-detail">Angka Ikut</div>
1128          <div class="v-detail" id="rIkut">-</div>
1129        </div>
1130        <div class="togel-detail-item">
1131          <div class="k-detail">Shio</div>
1132          <div class="v-detail" id="rShio">-</div>
1133        </div>
1134      </div>
1135
1136      <div class="togel-tip-v3" id="rTip">
1137        Tips: Ini simulasi hiburan. Tetap bijak &amp; disiplin.
1138      </div>
1139    </div>
1140
1141    <div class="togel-alts-v3">
1142      <div class="togel-alts-title-v3">3 Alternatif Angka</div>
1143      <div class="togel-alt-list-v3" id="togelAltList"></div>
1144    </div>
1145
1146    <div class="togel-note-v3">
1147      Disclaimer: Hasil di halaman ini random (simulasi), bukan acuan hasil resmi.
1148    </div>
1149  </div>
1150</div>
1151
1152<style>
1153@import url("https://fonts.googleapis.com/css2?family=Orbitron:wght@600;700;800&display=swap");
1154
1155/* ===============================
1156   WRAPPER
1157================================ */
1158.togel-container-v3{
1159  display:flex;
1160  justify-content:center;
1161  padding:16px 10px;
1162  font-family:"Orbitron","Poppins",system-ui,sans-serif;
1163}
1164
1165/* ===============================
1166   MACHINE CORE (DARK ORANGE)
1167================================ */
1168.togel-machine-v3{
1169  position:relative;
1170  width:100%;
1171  max-width:520px;
1172  padding:16px;
1173  border-radius:16px;
1174  overflow:hidden;
1175  isolation:isolate;
1176
1177  background:
1178    radial-gradient(circle at 15% 0%, rgba(255, 0, 0, 0.16), transparent 48%),
1179    radial-gradient(circle at 85% 100%, rgba(255,94,0,.14), transparent 55%),
1180    linear-gradient(145deg,#e14b19,#120303);
1181
1182  border:1px solid rgba(255, 0, 0, 0.46);
1183
1184  box-shadow:
1185    inset 0 0 18px rgba(255,132,0,.22),
1186    0 0 18px rgba(255,111,0,.28);
1187
1188  color:#fff4e8;
1189}
1190
1191/* HUD SWEEP */
1192.togel-machine-v3::before{
1193  content:"";
1194  position:absolute;
1195  inset:0;
1196  background:linear-gradient(120deg, transparent 40%, rgba(255,180,80,.08), transparent 65%);
1197  animation:hudSweep 7s linear infinite;
1198  pointer-events:none;
1199  opacity:.8;
1200}
1201
1202/* ===============================
1203   TITLE
1204================================ */
1205.togel-title-v3{
1206  text-align:center;
1207  margin:0 0 12px;
1208  font-size:15px;
1209  font-weight:900;
1210  letter-spacing:1px;
1211  color:#e14b19;
1212  text-shadow:0 0 6px rgba(255, 51, 51, 0.75);
1213}
1214
1215/* ===============================
1216   CONTROLS
1217================================ */
1218.togel-controls-v3{
1219  display:grid;
1220  grid-template-columns:1fr 1fr;
1221  gap:10px;
1222  padding:12px;
1223  border-radius:14px;
1224
1225  background:rgba(0,0,0,.38);
1226  border:1px solid rgba(255, 0, 0, 0.32);
1227  box-shadow: inset 0 0 14px rgba(255, 0, 0, 0.16);
1228}
1229
1230.togel-controls-v3 label{
1231  display:grid;
1232  gap:6px;
1233  font-size:10px;
1234  letter-spacing:.8px;
1235  text-transform:uppercase;
1236  color:#e14b19;
1237}
1238
1239.togel-controls-v3 select,
1240.togel-controls-v3 input{
1241  background:rgba(32,12,0,.92);
1242  color:#fff4e8;
1243  border:1px solid rgba(255, 0, 0, 0.46);
1244  border-radius:10px;
1245  padding:7px 9px;
1246  font-weight:700;
1247  font-size:12px;
1248  outline:none;
1249  box-shadow: inset 0 0 10px rgba(255, 0, 0, 0.14);
1250}
1251
1252/* BUTTON */
1253#btnTogelRandom{
1254  grid-column:span 2;
1255  display:flex;
1256  align-items:center;
1257  justify-content:center;
1258  gap:8px;
1259
1260  background:linear-gradient(145deg,#e14b19,#e14b19);
1261  border:none;
1262  color:#e14b19;
1263  font-weight:900;
1264  letter-spacing:.8px;
1265  border-radius:14px;
1266  cursor:pointer;
1267  padding:10px 12px;
1268  font-size:12px;
1269
1270  box-shadow:0 0 16px rgba(255, 0, 0, 0.42);
1271  transition:.2s ease;
1272}
1273
1274#btnTogelRandom:active{ transform:scale(.98); }
1275#btnTogelRandom:disabled{ opacity:.75; cursor:not-allowed; }
1276
1277/* ===============================
1278   MAIN RESULT
1279================================ */
1280.togel-main-result-v3{
1281  margin-top:12px;
1282  padding:12px;
1283  border-radius:14px;
1284
1285  background:rgba(28,10,0,.78);
1286  border:1px solid rgba(255, 0, 0, 0.32);
1287  box-shadow: inset 0 0 16px rgba(255,132,0,.18);
1288}
1289
1290.togel-status-v3{
1291  text-align:center;
1292  font-weight:800;
1293  letter-spacing:.8px;
1294  color:#e14b19;
1295  margin-bottom:10px;
1296  font-size:11px;
1297}
1298
1299.togel-highlight-box{
1300  display:flex;
1301  justify-content:space-between;
1302  gap:12px;
1303  padding-bottom:10px;
1304  margin-bottom:10px;
1305  border-bottom:1px dashed rgba(255, 0, 0, 0.28);
1306}
1307
1308.k, .k-rtp{
1309  font-size:10px;
1310  color:#e14b19;
1311  text-transform:uppercase;
1312}
1313
1314.v-game{
1315  font-size:14px;
1316  font-weight:900;
1317  color:#ffffff;
1318  margin-top:6px;
1319  line-height:1.2;
1320}
1321
1322.provider-info{ margin-top:8px; font-size:11px; color:#e14b19; opacity:.95; }
1323.k-small{ color:#e14b19; font-size:10px; }
1324.v-small{ color:#fff4e8; font-weight:900; }
1325
1326.v-rtp-huge{
1327  font-size:2.4em;
1328  font-weight:900;
1329  color:#e14b19;
1330  text-shadow:0 0 10px rgba(255, 0, 0, 0.28);
1331  line-height:1;
1332  letter-spacing:1px;
1333}
1334
1335/* DETAILS */
1336.togel-details-v3{
1337  display:grid;
1338  grid-template-columns:repeat(3,1fr);
1339  gap:8px;
1340  background:rgba(0,0,0,.24);
1341  padding:10px;
1342  border-radius:12px;
1343}
1344
1345.k-detail{
1346  font-size:9px;
1347  color:#e14b19;
1348  text-transform:uppercase;
1349}
1350.v-detail{
1351  font-size:12px;
1352  font-weight:800;
1353  color:#ffffff;
1354  margin-top:4px;
1355  letter-spacing:.8px;
1356}
1357
1358.togel-tip-v3{
1359  margin-top:10px;
1360  font-size:10px;
1361  color:#e14b19;
1362  opacity:.9;
1363  text-align:center;
1364}
1365
1366/* ALTS */
1367.togel-alts-v3{
1368  margin-top:12px;
1369  padding:12px;
1370  border-radius:14px;
1371  background:rgba(0,0,0,.34);
1372  border:1px solid rgba(255, 0, 0, 0.28);
1373}
1374.togel-alts-title-v3{
1375  font-weight:900;
1376  color:#e14b19;
1377  margin-bottom:10px;
1378  font-size:12px;
1379}
1380.togel-alt-list-v3{
1381  display:grid;
1382  grid-template-columns:1fr;
1383  gap:8px;
1384}
1385
1386.togel-alt-item{
1387  background:rgba(34,12,0,.86);
1388  border-radius:12px;
1389  padding:10px;
1390  border-left:3px solid rgba(255, 0, 0, 0.28);
1391}
1392.togel-alt-item .g{ font-weight:900; color:#fff4e8; font-size:12px; }
1393.togel-alt-item .p{ font-size:10px; color:#e14b19; margin-top:4px; }
1394.togel-alt-item .r{ margin-top:6px; font-weight:900; color:#e14b19; letter-spacing:.8px; font-size:12px; }
1395
1396.togel-note-v3{
1397  margin-top:10px;
1398  font-size:10px;
1399  color:#e14b19;
1400  opacity:.85;
1401  text-align:center;
1402}
1403
1404/* MOBILE */
1405@media(max-width:420px){
1406  .togel-highlight-box{flex-direction:column}
1407  .togel-details-v3{grid-template-columns:1fr}
1408}
1409
1410/* ANIM */
1411@keyframes hudSweep{
1412  0%{transform:translateX(-110%)}
1413  100%{transform:translateX(110%)}
1414}
1415@keyframes pulse{0%{opacity:.55}50%{opacity:1}100%{opacity:.55}}
1416</style>
1417
1418<script>
1419/* ===============================
1420   DATASET TOGEL (SIMULASI)
1421================================ */
1422const TOGEL_MARKETS = [
1423  { market:"Singapore",   code:"SGP", open:"17:45", zone:"WIB" },
1424  { market:"Hongkong",    code:"HK",  open:"22:45", zone:"WIB" },
1425  { market:"Sydney",      code:"SDY", open:"13:45", zone:"WIB" },
1426  { market:"Macau",       code:"MC",  open:"16:00", zone:"WIB" },
1427  { market:"Cambodia",    code:"KHM", open:"10:45", zone:"WIB" },
1428  { market:"Japan",       code:"JP",  open:"11:30", zone:"WIB" }
1429];
1430
1431const SHIO = ["Tikus","Kerbau","Macan","Kelinci","Naga","Ular","Kuda","Kambing","Monyet","Ayam","Anjing","Babi"];
1432
1433const $ = (q) => document.querySelector(q);
1434const randInt = (min,max) => Math.floor(Math.random()*(max-min+1))+min;
1435
1436function uniqueMarkets(){
1437  return TOGEL_MARKETS.map(m => m.market);
1438}
1439
1440function genDigits(len){
1441  let s = "";
1442  for(let i=0;i<len;i++) s += String(randInt(0,9));
1443  return s;
1444}
1445
1446function genBBFS(){
1447  const pool = [...Array(10)].map((_,i)=>i);
1448  const out = [];
1449  for(let i=0;i<7;i++){
1450    const idx = randInt(0, pool.length-1);
1451    out.push(pool.splice(idx,1)[0]);
1452  }
1453  return out.join("");
1454}
1455
1456function genIkut(){
1457  const pool = [...Array(10)].map((_,i)=>i);
1458  const out = [];
1459  for(let i=0;i<4;i++){
1460    const idx = randInt(0, pool.length-1);
1461    out.push(pool.splice(idx,1)[0]);
1462  }
1463  return out.join(" • ");
1464}
1465
1466function simulateConfidence(){
1467  return randInt(60, 96);
1468}
1469
1470function applyFilters(){
1471  const m = $("#marketFilter").value;
1472  const minC = parseFloat($("#minConf").value || "0");
1473
1474  return TOGEL_MARKETS
1475    .filter(x => (m==="ALL" || x.market===m))
1476    .map(x => ({...x, conf: simulateConfidence()}))
1477    .filter(x => x.conf >= minC);
1478}
1479
1480function pickRandom(arr, n=1){
1481  const copy = [...arr];
1482  const out = [];
1483  for(let i=0;i<n && copy.length;i++){
1484    const idx = randInt(0, copy.length-1);
1485    out.push(copy.splice(idx,1)[0]);
1486  }
1487  return out;
1488}
1489
1490function formatAngka(type){
1491  if(type==="4D") return genDigits(4);
1492  if(type==="3D") return genDigits(3);
1493  return genDigits(2);
1494}
1495
1496function renderMain(item, type){
1497  $("#rMarket").textContent = `${item.market} (${item.code}) • Open ${item.open} ${item.zone}`;
1498  $("#rType").textContent = type;
1499  $("#rConf").textContent = `${item.conf}%`;
1500
1501  $("#rAngka").textContent = formatAngka(type);
1502  $("#rBBFS").textContent = genBBFS();
1503  $("#rIkut").textContent = genIkut();
1504  $("#rShio").textContent = SHIO[randInt(0, SHIO.length-1)];
1505  $("#rTip").textContent = "Tips: Ini simulasi hiburan. Tetap bijak & disiplin.";
1506}
1507
1508function renderAlts(list, type){
1509  const wrap = $("#togelAltList");
1510  wrap.innerHTML = "";
1511  list.forEach(x=>{
1512    const el = document.createElement("div");
1513    el.className = "togel-alt-item";
1514    el.innerHTML = `
1515      <div class="g">${x.market} (${x.code})</div>
1516      <div class="p">Tipe ${type} • Conf <strong>${x.conf}%</strong></div>
1517      <div class="r">Angka: <strong>${formatAngka(type)}</strong></div>
1518    `;
1519    wrap.appendChild(el);
1520  });
1521}
1522
1523function spinButton(btn, on){
1524  if(on){
1525    btn.disabled = true;
1526    btn.dataset.text = btn.innerHTML;
1527    btn.innerHTML = `<span class="icon">🔄</span> PROCESS...`;
1528  }else
1529}
1530
1531/* ===============================
1532   INIT
1533================================ */
1534(function init(){
1535  const sel = $("#marketFilter");
1536  uniqueMarkets().forEach(m=>{
1537    const o = document.createElement("option");
1538    o.value = m; o.textContent = m;
1539    sel.appendChild(o);
1540  });
1541
1542  $("#btnTogelRandom").addEventListener("click", (e)=>{
1543    const btn = e.currentTarget;
1544    const type = $("#typeFilter").value;
1545    const filtered = applyFilters();
1546    const st = $("#togelStatus");
1547
1548    if(!filtered.length){
1549      st.textContent = "— NO MATCH —";
1550      st.style.color = "white";
1551      renderAlts([], type);
1552      $("#rMarket").textContent = "-";
1553      $("#rType").textContent = type;
1554      $("#rConf").textContent = "-";
1555      $("#rAngka").textContent = "-";
1556      $("#rBBFS").textContent = "-";
1557      $("#rIkut").textContent = "-";
1558      $("#rShio").textContent = "-";
1559      return;
1560    }
1561
1562    spinButton(btn,true);
1563    st.textContent = "— GENERATING —";
1564    st.style.animation = "pulse .6s linear infinite";
1565    st.style.color = "white";
1566
1567    const t0 = setInterval(()=>{
1568      const temp = pickRandom(filtered,1)[0];
1569      $("#rMarket").textContent = `${temp.market} (${temp.code}) • Open ${temp.open} ${temp.zone}`;
1570      $("#rType").textContent = type;
1571      $("#rConf").textContent = `${temp.conf}%`;
1572      $("#rAngka").textContent = formatAngka(type);
1573      $("#rBBFS").textContent = genBBFS();
1574      $("#rIkut").textContent = genIkut();
1575      $("#rShio").textContent = SHIO[randInt(0, SHIO.length-1)];
1576    }, 85);
1577
1578    setTimeout(()=>{
1579      clearInterval(t0);
1580
1581      const picks = pickRandom(filtered,4);
1582      renderMain(picks[0], type);
1583      renderAlts(picks.slice(1), type);
1584
1585      st.textContent = "— READY —";
1586      st.style.animation = "";
1587      st.style.color = "gold";
1588      spinButton(btn,false);
1589    }, 1200);
1590  });
1591
1592  renderAlts([], "4D");
1593})();
1594</script>
1594
1595
1596
1597                        
1598            <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-.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"></path></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>
1599        </section>
1600
1601        <aside class="pd-sidebar">
1602            <div class="pd-side-card pd-buy-card">
1603                <form class="pd-buy-form" id="pd-buy-form" data-pid="325">
1604                    <input type="hidden" name="variant_id" id="pd-variant-id" value="0">
1605                    <div>
1606                        <label for="qty" class="qty-label">Qty</label>
1607                        <input type="number" id="qty" name="qty" value="0" min="1" max="0" disabled="">
1608                    </div>
1609                    <div class="pd-actions">
1610                        <button type="submit" class="btn-add-cart" id="btn-add-cart" disabled="">+ Keranjang</button>
1611                        <button type="button" class="btn-buy" id="btn-buy" data-id="278426" disabled="">Beli</button>
1612                        <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"></path></svg></button>
1613                                            </div>
1614                </form>
1615                <div class="paylater-promo paylater-promo-md paylater-desktop-only">
1616    <span class="paylater-icon">💳</span>
1617    <span class="paylater-text">
1618        <strong>Autorized Link Togel</strong>
1619        <small>Link Login MUSANGWIN</small>
1620    </span>
1621</div>            </div>
1622
1623                        
1624                        <div class="pd-side-card qoala-banner-card">
1625                <div class="qoala-banner">
1626                    <div class="qoala-banner-content">
1627                        <div class="qoala-icon">
1628                            <center><img src="https://meubelkayumurah.pics/wp-content/uploads/2026/05/icon-musangwin.png" alt="MUSANGWIN" class="qoala-shield-img"></center>
1629                        </div>
1630                        <div class="qoala-text">
1631                            <div class="qoala-title">Login MUSANGWIN</div>
1632                            <div class="qoala-subtitle">Verified</div>
1633                        </div>
1634                    </div>
1635                    <a href="https://daftarsitusjudibolaonlineterpercaya.com" class="qoala-cta" data-ga-event="qoala_banner_click" data-product-id="325" data-product-name="MUSANGWIN" data-category-path="Komputer &amp; Laptop/Laptop/Gaming" target="_blank">Info</a>
1636                </div>
1637<style>
1638.qoala-banner-card{
1639  padding:0;
1640  overflow:hidden;
1641}
1642
1643.qoala-banner{
1644  background:linear-gradient(135deg,#e14b19 0%, #e14b19 45%, #e14b19 100%);
1645  padding:12px 16px;
1646  display:flex;
1647  align-items:center;
1648  justify-content:space-between;
1649  color:#fff7ed;
1650  text-decoration:none;
1651  min-height:60px;
1652  border:1px solid rgba(255,190,120,.28);
1653  box-shadow:
1654    inset 0 0 14px rgba(255,210,160,.08),
1655    0 0 14px rgba(234,88,12,.18);
1656}
1657
1658.qoala-banner-content{
1659  display:flex;
1660  align-items:center;
1661  gap:12px;
1662}
1663
1664.qoala-icon{
1665  display:flex;
1666  align-items:center;
1667  justify-content:center;
1668}
1669
1670.qoala-shield-img{
1671  width:36px;
1672  height:36px;
1673  object-fit:contain;
1674  opacity:.95;
1675  filter:drop-shadow(0 0 6px rgba(255,190,120,.24));
1676}
1677
1678.qoala-title{
1679  font-weight:600;
1680  font-size:14px;
1681  line-height:1.2;
1682  color:#fff7ed;
1683}
1684
1685.qoala-subtitle{
1686  font-size:12px;
1687  opacity:.92;
1688  line-height:1.2;
1689  color:#e14b19;
1690}
1691
1692.qoala-cta{
1693  background:rgba(255,245,235,.14);
1694  color:#fff7ed;
1695  padding:6px 12px;
1696  border-radius:6px;
1697  font-size:12px;
1698  font-weight:600;
1699  text-decoration:none;
1700  transition:background .2s ease, border-color .2s ease, transform .2s ease;
1701  border:1px solid rgba(255,220,180,.34);
1702  box-shadow:0 0 10px rgba(255,190,120,.10);
1703}
1704
1705.qoala-cta:hover{
1706  background:rgba(255,245,235,.22);
1707  color:#fff7ed;
1708  border-color:rgba(255,230,200,.44);
1709}
1710
1711.qoala-cta:active{
1712  transform:scale(.98);
1713}
1714
1715@media(max-width:768px){
1716  .qoala-banner{
1717    padding:10px 12px;
1718  }
1719
1720  .qoala-title{
1721    font-size:17px;
1722  }
1723
1724  .qoala-subtitle{
1725    font-size:11px;
1726  }
1727}
1728</style>            </div>
1729            
1730                        <div class="pd-side-card pd-installment-card2" id="inst-card" data-base-price="20789000" data-zero-smart="0">
1731                <div class="inst-head">
1732                    <h3>Promo &amp; Fitur MUSANGWIN</h3>
1733                                    </div>
1734
1735                <div class="inst-bank-tabs" role="tablist" aria-label="Bank">
1736                    <button type="button" class="bank-tab active" data-bank="Lucky Draw" aria-selected="true">Lucky Draw</button>
1737                    <button type="button" class="bank-tab" data-bank="Lomba Panjat Tur
1737nover" aria-selected="false">Lomba Panjat Turnover</button>
1738                    <button type="button" class="bank-tab" data-bank="Prediksi Togel" aria-selected="false">Prediksi Togel</button>
1739                </div>
1740
1741                <ul class="inst-month-list" id="inst-month-list" aria-label="Daftar cicilan per bulan"></ul>
1742                <div class="inst-note" id="inst-zero-note" style="display:none;">0% Cicilan khusus bank terpilih*</div>
1743                <div class="inst-disclaimer">Angka estimasi. Bisa berbeda sesuai kebijakan bank / penyedia.</div>
1744            </div>
1745            
1746            <!-- MECHA BLUE FINAL BOSS REVIEW SLIDER -->
1747<div class="yugo-review-mecha">
1748
1749  <div class="yugo-header">
1750    <h2>MUSANGWIN</h2>
1751    <p>Review &amp; Komentar Member Indonesia</p>
1752  </div>
1753
1754  <div class="yugo-slider" id="tntSlider">
1755    
1756    <div class="yugo-slide active">
1757      <div class="yugo-name">Yusuf Rahman</div>
1758      <div class="yugo-comment">"Pilihan game online di MUSANGWIN cukup beragam. Saya bisa menjelajahi beberapa tema dan fitur sebelum menentukan permainan yang sesuai"</div>
1759    </div>
1760
1761    <div class="yugo-slide">
1762      <div class="yugo-name">Bayu Pratama</div>
1763      <div class="yugo-comment">"Tampilannya cukup simpel dan pilihan permainannya banyak. Saya suka karena bisa menemukan berbagai game dengan tema berbeda dalam satu platform"</div>
1764    </div>
1765
1766    <div class="yugo-slide">
1767      <div class="yugo-name">Agus Saputra</div>
1768      <div class="yugo-comment">"Menurut saya MUSANGWIN cukup menarik untuk mengisi waktu luang. Ada banyak pilihan game online yang bisa dijelajahi berdasarkan tema dan fitur"</div>
1769    </div>
1770
1771    <div class="yugo-slide">
1772      <div class="yugo-name">Dewi Lestari</div>
1773      <div class="yugo-comment">"MUSANGWIN punya pilihan hiburan digital yang cukup lengkap. Navigasinya mudah dipahami sehingga saya tidak kesulitan mencari game yang ingin dijelajahi"</div>
1774    </div>
1775
1776    <div class="yugo-slide">
1777      <div class="yugo-name">Eko Ramadhan</div>
1778      <div class="yugo-comment">"Saya cukup menikmati variasi game di MUSANGWIN. Setiap permainan punya tampilan dan fitur berbeda sehingga tidak terasa monoton saat menjelajahinya"</div>
1779    </div>
1780
1781  </div>
1782   </div>
1783<a href="https://daftarsitusjudibolaonlineterpercaya.pages.dev/" target="_blank">
1784                             <img style="display:block;margin-left:auto;margin-right:auto;height: 200px;border: 2px solid rgb(0, 204, 255);border-radius: 20px;box-shadow: 1px 1px 1px black;" alt="MUSANGWIN" src="https://meubelkayumurah.pics/wp-content/uploads/2026/05/icon-musangwin.png" width="250" height="300">
1785                             </a>
1786
1787</aside></div>
1788
1789<style>
1790.yugo-review-mecha{
1791  background: radial-gradient(circle at center, #e14b19, #120303);
1792  border: 2px solid #e14b19;
1793  border-radius: 14px;
1794  padding: 20px;
1795  color: #fff4e8;
1796  font-family: 'Orbitron', sans-serif;
1797  position: relative;
1798  overflow: hidden;
1799  box-shadow:
1800    0 0 20px rgba(255, 0, 0, 0.28),
1801    inset 0 0 18px rgba(255,140,0,.14);
1802}
1803
1804/* scanline */
1805.yugo-review-mecha::before{
1806  content:"";
1807  position:absolute;
1808  inset:0;
1809  background: repeating-linear-gradient(
1810    to bottom,
1811    rgba(255, 77, 77, 0.08),
1812    rgba(255, 77, 77, 0.08) 1px,
1813    transparent 2px,
1814    transparent 4px
1815  );
1816  pointer-events:none;
1817}
1818
1819.yugo-header h2{
1820  font-size: 18px;
1821  color:#e14b19;
1822  text-shadow:
1823    0 0 8px rgba(255, 0, 0, 0.28),
1824    0 0 18px rgba(255,106,0,.28);
1825  margin-bottom:5px;
1826}
1827
1828.yugo-header p{
1829  font-size:12px;
1830  opacity:.88;
1831  margin-bottom:15px;
1832  color:#e14b19;
1833}
1834
1835.yugo-slider{
1836  position:relative;
1837  height:100px;
1838}
1839
1840.yugo-slide{
1841  position:absolute;
1842  width:100%;
1843  opacity:0;
1844  transform:translateX(40px);
1845  transition:all .6s ease;
1846}
1847
1848.yugo-slide.active{
1849  opacity:1;
1850  transform:translateX(0);
1851}
1852
1853.yugo-name{
1854  font-size:14px;
1855  color:#e14b19;
1856  margin-bottom:5px;
1857  text-shadow:0 0 6px rgba(255, 0, 0, 0.28);
1858}
1859
1860.yugo-comment{
1861  font-size:13px;
1862  line-height:1.5;
1863  color:#fff4e8;
1864}
1865
1866/* glowing border animation */
1867@keyframes pulseGlow{
1868  0%{
1869    box-shadow:
1870      0 0 10px rgba(255, 44, 44, 0.24),
1871      inset 0 0 12px rgba(255, 0, 0, 0.16);
1872  }
1873  50%{
1874    box-shadow:
1875      0 0 24px rgba(255, 44, 44, 0.24),
1876      inset 0 0 18px rgba(255, 0, 0, 0.16);
1877  }
1878  100%{
1879    box-shadow:
1880      0 0 10px rgba(255, 44, 44, 0.24),
1881      inset 0 0 12px rgba(255, 0, 0, 0.16);
1882  }
1883}
1884
1885.yugo-review-mecha{
1886  animation:pulseGlow 2.5s infinite;
1887}
1888</style>
1889
1890<script>
1891let slides = document.querySelectorAll('.yugo-slide');
1892let index = 0;
1893
1894setInterval(()=>{
1895  slides[index].classList.remove('active');
1896  index = (index + 1) % slides.length;
1897  slides[index].classList.add('active');
1898}, 3000);
1899</script>
1899
1900
1901        <section class="pd-full-description cyber-mecha" id="deskripsi">
1902  <h2 class="pd-full-desc-title"></h2>
1903
1904  <div class="pd-full-desc-body">
1905    
1906    <div class="mecha-header">
1907      <h3>MUSANGWIN Rutinitas Cek RTP Slot Sebelum Spin Malam Ini</h3>
1908    </div>
1909    <div class="mecha-content">
1910    
1911<p>Malam Jumat, jam sebelas lewat. Aku baru buka laptop, kopi panas di samping, tapi tangan udah gatal pengen buka slot. Eh, notif WhatsApp muncul. Ternyata Beni — temen mabar slot yang paling anti-main kalau belum cek RTP.</p>
1912  <h3>
1913    Game Online dengan Beragam Pilihan Hiburan Digital
1914  </h3>
1915  <p>"Win, udah cek bocoran RTP hari ini belum? Jangan langsung gas, ntar zonk," tulisnya.</p>
1916
1917  <p class="final-line">
1918    <span class="glow-strong">FINAL STATUS:</span> 
1919    Seluruh Permainan yang kami Hadirkan Memiliki <strong>RTP TINGGI</strong> + 
1920    Fitur Gacor 2026
1921  </p>
1922
1923
1924    </div>
1925
1926  </div>
1927</section>
1928
1929<style>
1930@import url('https://fonts.googleapis.com/css2?family=Orbitron:wght@400;600;800&display=swap');
1931
1932.cyber-mecha {
1933  font-family: 'Orbitron', sans-serif;
1934  max-width: 900px;
1935  margin: 40px auto;
1936  padding: 25px;
1937  border-radius: 18px;
1938  background: radial-gradient(circle at top, #e14b19, #140700 70%);
1939  border: 1px solid rgba(255,140,40,0.35);
1940  box-shadow: 0 0 25px rgba(255,120,20,0.28),
1941              inset 0 0 25px rgba(255,120,20,0.12);
1942  position: relative;
1943  overflow: hidden;
1944}
1945
1946/* scanline effect */
1947.cyber-mecha::before {
1948  content: "";
1949  position: absolute;
1950  inset: 0;
1951  background: repeating-linear-gradient(
1952    to bottom,
1953    rgba(255,170,90,0.025),
1954    rgba(255,170,90,0.025) 1px,
1955    transparent 1px,
1956    transparent 3px
1957  );
1958  pointer-events: none;
1959}
1960
1961.pd-full-desc-title {
1962  text-align: center;
1963  font-size: 22px;
1964  font-weight: 800;
1965  color: #e14b19;
1966  margin-bottom: 25px;
1967  text-shadow: 0 0 10px #e14b19, 0 0 20px #e14b19;
1968  letter-spacing: 1px;
1969}
1970
1971/* FAQ BOX */
1972.faq-item {
1973  margin-bottom: 15px;
1974  border-radius: 12px;
1975  border: 1px solid rgba(255,140,40,0.22);
1976  background: rgba(55,25,8,0.5);
1977  backdrop-filter: blur(8px);
1978  transition: all 0.3s ease;
1979  overflow: hidden;
1980}
1981
1982.faq-item:hover {
1983  border-color: rgba(255,160,60,0.75);
1984  box-shadow: 0 0 15px rgba(255,120,20,0.3);
1985}
1986
1987/* QUESTION */
1988.faq-question {
1989  padding: 14px 18px;
1990  cursor: pointer;
1991  font-size: 14px;
1992  color: #e14b19;
1993  position: relative;
1994}
1995
1996.faq-question::after {
1997  content: "+";
1998  position: absolute;
1999  right: 15px;
2000  color: #e14b19;
2001  font-weight: bold;
2002  transition: 0.3s;
2003}
2004
2005/* ACTIVE */
2006.faq-item.active .faq-question::after {
2007  content: "−";
2008}
2009
2010/* ANSWER */
2011.faq-answer {
2012  max-height: 0;
2013  overflow: hidden;
2014  padding: 0 18px;
2015  font-size: 13px;
2016  color: #e14b19;
2017  line-height: 1.6;
2018  transition: all 0.35s ease;
2019}
2020
2021.faq-item.active .faq-answer {
2022  max-height: 200px;
2023  padding: 10px 18px 18px;
2024}
2025
2026/* glow text */
2027.glow {
2028  color: #e14b19;
2029  text-shadow: 0 0 8px #e14b19, 0 0 18px #e14b19;
2030}
2031
2032.glow-strong {
2033  color: #e14b19;
2034  text-shadow: 0 0 10px #e14b19, 0 0 25px #e14b19;
2035}
2036</style>
2037
2038<section class="pd-full-description cyber-mecha" id="deskripsi">
2039
2040  <h2 class="pd-full-desc-title">
2041    FAQ
2042  </h2>
2043
2044  <div class="pd-full-desc-body">
2045
2046    <div class="faq-item">
2047      <div class="faq-question">Apa saja hiburan digital yang tersedia di MUSANGWIN?</div>
2048      <div class="faq-answer">
2049        MUSANGWIN menghadirkan berbagai pilihan game online dengan tema, tampilan, dan fitur yang beragam sehingga pengguna dapat menjelajahi permainan sesuai dengan preferensi masing-masing.
2050      </div>
2051    </div>
2052
2053    <div class="faq-item">
2054      <div class="faq-question">Apakah MUSANGWIN menyediakan game online dengan tema yang berbeda?</div>
2055      <div class="faq-answer">
2056        Ya. Pilihan game online di MUSANGWIN memiliki beragam tema dan karakteristik permainan sehingga pengguna dapat memilih berdasarkan tampilan serta fitur yang paling menarik bagi mereka.
2057      </div>
2058    </div>
2059
2060    <div class="faq-item">
2061      <div class="faq-question">Apakah game di MUSANGWIN bisa dimainkan untuk mengisi waktu luang?</div>
2062      <div class="faq-answer">
2063        Game online dapat menjadi salah satu pilihan hiburan untuk mengisi waktu luang. Pengguna sebaiknya tetap mengatur waktu bermain agar aktivitas hiburan tetap seimbang dengan kegiatan lainnya.
2064      </div>
2065    </div>
2066
2067    <div class="faq-item">
2068      <div class="faq-question">Apakah MUSANGWIN dapat diakses melalui smartphone?</div>
2069      <div class="faq-answer">
2070        MUSANGWIN dapat diakses melalui perangkat seperti smartphone, tablet, maupun desktop selama perangkat memiliki koneksi internet yang stabil dan mendukung halaman platform.
2071      </div>
2072    </div>
2073
2074    <div class="faq-item">
2075      <div class="faq-question">Apa yang membuat pilihan game MUSANGWIN menarik?</div>
2076      <div class="faq-answer">
2077        Keberagaman tema, tampilan, fitur, dan mekanisme permainan menjadi beberapa hal yang dapat membuat katalog game lebih menarik untuk dijelajahi oleh pengguna.
2078      </div>
2079    </div>
2080
2081    <div class="faq-item">
2082      <div class="faq-question">Bagaimana cara memilih game online yang sesuai?</div>
2083      <div class="faq-answer">
2084        Pengguna dapat mempertimbangkan tema, tampilan, fitur, mekanisme, serta informasi permainan sebelum menentukan pilihan yang sesuai dengan preferensi dan kebutuhan hiburan.
2085      </div>
2086    </div>
2087
2088    <div class="faq-item">
2089      <div class="faq-question">Apakah bermain game online menjamin mendapatkan keuntungan?</div>
2090      <div class="faq-answer">
2091        Tidak. Hasil permainan tidak dapat dipastikan dan tidak ada permainan yang menjamin keuntungan tertentu. Karena itu, aktivitas bermain sebaiknya dilakukan secara bijak dan menggunakan dana khusus hiburan.
2092      </div>
2093    </div>
2094
2095  </div>
2096
2097</section>
2098
2099<script>
2100document.querySelectorAll(".faq-question").forEach(q => {
2101  q.addEventListener("click", () => {
2102    const item = q.parentElement;
2103    item.classList.toggle("active");
2104  });
2105});
2106</script>
2106
2107<style>
2108@import url('https://fonts.googleapis.com/css2?family=Orbitron:wght@500;700;900&display=swap');
2109
2110.cyber-mecha {
2111  max-width: 800px;
2112  margin: 40px auto;
2113  background: radial-gradient(circle at top, rgba(255,120,20,0.22), #140700 70%);
2114  border-radius: 16px;
2115  border: 1px solid rgba(255,140,40,0.38);
2116  box-shadow:
2117    0 0 25px rgba(255,120,20,0.32),
2118    inset 0 0 20px rgba(255,100,10,0.16);
2119  padding: 25px;
2120  font-family: 'Orbitron', sans-serif;
2121  color: #e14b19;
2122  position: relative;
2123  overflow: hidden;
2124}
2125
2126/* scanline overlay */
2127.cyber-mecha::before {
2128  content: "";
2129  position: absolute;
2130  inset: 0;
2131  background: repeating-linear-gradient(
2132    to bottom,
2133    rgba(255,220,180,0.025),
2134    rgba(255,220,180,0.025) 1px,
2135    transparent 1px,
2136    transparent 3px
2137  );
2138  pointer-events: none;
2139}
2140
2141.pd-full-desc-title {
2142  text-align: center;
2143  font-size: 22px;
2144  color: #e14b19;
2145  letter-spacing: 2px;
2146  text-shadow: 0 0 12px #e14b19;
2147  margin-bottom: 20px;
2148}
2149
2150.mecha-header h3 {
2151  text-align: center;
2152  font-size: 18px;
2153  color: #e14b19;
2154  text-shadow: 0 0 10px #e14b19;
2155  margin-bottom: 15px;
2156}
2157
2158.mecha-image img {
2159  width: 100%;
2160  border-radius: 10px;
2161  border: 1px solid rgba(255,150,60,0.45);
2162  box-shadow: 0 0 20px rgba(255,120,20,0.3);
2163  margin-bottom: 20px;
2164}
2165
2166.mecha-content p {
2167  font-size: 14px;
2168  line-height: 1.8;
2169  margin-bottom: 14px;
2170  color: #e14b19;
2171}
2172
2173.glow {
2174  color: #e14b19;
2175  text-shadow: 0 0 8px #e14b19;
2176  font-weight: 600;
2177}
2178
2179.glow-strong {
2180  color: #e14b19;
2181  text-shadow:
2182    0 0 10px #e14b19,
2183    0 0 20px #e14b19;
2184  font-weight: 700;
2185}
2186
2187.final-line {
2188  margin-top: 18px;
2189  padding: 10px;
2190  border: 1px solid rgba(255,150,60,0.35);
2191  background: rgba(255,120,20,0.08);
2192  border-radius: 8px;
2193  text-align: center;
2194}
2195</style>
2196    
2197    
2198    
2199        <section class="pd-related-full">
2200        <h2 class="pd-related-title">Produk Terkait</h2>
2201        <div class="pd-related-grid pd-related-grid--full">
2202                        <a class="pd-related-card" href="https://daftarsitusjudibolaonlineterpercaya.com">
2203                <div class="thumb">
2204                    <img src="https://meubelkayumurah.pics/wp-content/uploads/2026/09/musangwinpro.jpg" alt="Situs Toto">
2205                    <span class="mini-disc">-2%</span>                </div>
2206                <div class="info">
2207                    <h3>Situs Toto</h3>
2208                    <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">
2209                        <span class="final">Rp 12.600.000</span>
2210                                                  <span class="ori">Rp 12.799.000</span>
2211                                            </span>
2212                    <span class="sold">Terjual 200+</span>                    <span class="stock-dot low" title="Stok Terbatas"></span>
2213                </div>
2214            </a>
2215                        <a class="pd-related-card" href="https://daftarsitusjudibolaonlineterpercaya.com">
2216                <div class="thumb">
2217                    <img src="https://meubelkayumurah.pics/wp-content/uploads/2026/09/musangwinpro.jpg" alt="Situs Togel">
2218                    <span class="mini-disc">-1%</span>                </div>
2219                <div class="info">
2220                    <h3>Situs Togel</h3>
2221                    <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">
2222                        <span class="final">Rp 21.779.000</span>
2223                                                  <span class="ori">Rp 21.999.000</span>
2224                                            </span>
2225                    <span class="sold">Terjual 20+</span>                    <span class="stock-dot out" title="Habis"></span>
2226                </div>
2227            </a>
2228                        <a class="pd-related-card" href="https://daftarsitusjudibolaonlineterpercaya.com">
2229                <div class="thumb">
2230                    <img src="https://meubelkayumurah.pics/wp-content/uploads/2026/09/musangwinpro.jpg" alt="Bandar Togel">
2231                    <span class="mini-disc">-1%</span>                </div>
2232                <div class="info">
2233                    <h3>Bandar Togel</h3>
2234                    <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">
2235                        <span class="final">Rp 21.200.000</span>
2236                                                  <span class="ori">Rp 21.399.000</span>
2237                                            </span>
2238                    <span class="sold">Terjual 6</span>                    <span class="stock-dot ready" title="Ready"></span>
2239                </div>
2240            </a>
2241                        <a class="pd-related-card" href="https://daftarsitusjudibolaonlineterpercaya.com">
2242                <div class="thumb">
2243                    <img src="https://meubelkayumurah.pics/wp-content/uploads/2026/09/musangwinpro.jpg" alt="Bandar Togel Online">
2244                    <span class="mini-disc">-1%</span>                </div>
2245                <div class="info">
2246                    <h3>Bandar Togel Online</h3>
2247                    <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">
2248                        <span class="final">Rp 19.600.000</span>
2249                                                  <span class="ori">Rp 19.799.000</span>
2250                                            </span>
2251                    <span class="sold">Terjual 5</span>                    <span class="stock-dot ready" title="Ready"></span>
2252                </div>
2253            </a>
2254                        <a class="pd-related-card" href="https://daftarsitusjudibolaonlineterpercaya.com">
2255                <div class="thumb">
2256                    <img src="https://meubelkayumurah.pics/wp-content/uploads/2026/09/musangwinpro.jpg" alt="Situs Toto 4D">
2257                    <span class="mini-disc">-1%</span>                </div>
2258                <div class="info">
2259                    <h3>Situs Toto 4D</h3>
2260                    <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">
2261                        <span class="final">Rp 27.599.000</span>
2262                                                  <span class="ori">Rp 27.999.000</span>
2263                                            </span>
2264                    <span class="sold">Terjual 6</span>                    <span class="stock-dot low" title="Stok Terbatas"></span>
2265                </div>
2266            </a>
2267                        <a class="pd-related-card" href="https://daftarsitusjudibolaonlineterpercaya.com">
2268                <div class="thumb">
2269                    <img src="https://meubelkayumurah.pics/wp-content/uploads/2026/09/musangwinpro.jpg" alt="Situs Togel Resmi">
2270                    <span class="mini-disc">-1%</span>                </div>
2271                <div class="info">
2272                    <h3>Situs Togel Resmi</h3>
2273                    <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">
2274                        <span class="final">Rp 18.315.000</span>
2275                                                  <span class="ori">Rp 18.499.000</span>
2276                                            </span>
2277                                        <span class="stock-dot low" title="Stok Terbatas"></span>
2278                </div>
2279            </a>
2280                        
2281                    </div>
2282    </section>
2283    
2284    <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">
2284<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"></path></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"></path></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"></path></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>
2285
2286    <button type="button" class="pd-scroll-top" id="pd-scroll-top" aria-label="Kembali ke atas" title="Kembali ke atas">
2287        <svg viewBox="0 0 24 24" width="20" height="20" aria-hidden="true">
2288            <path fill="currentColor" d="M7.41 14.59 12 10l4.59 4.59L18 13.17l-6-6-6 6z"></path>
2289        </svg>
2290    </button>
2291</main>
2292
2293<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"></path></svg></button></div><div class="pd-share-body"><div class="pd-share-preview"><img src="https://meubelkayumurah.pics/wp-content/uploads/2026/09/musangwinpro.jpg" alt="MUSANGWIN" class="pd-share-preview-img"><div class="pd-share-preview-info"><h3 class="pd-share-preview-name">MUSANGWIN</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"></path></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">
2293<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"></path></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"></path></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"></path></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"><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"></path></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"></path></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"></path></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://daftarsitusjudibolaonlineterpercaya.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"></path></svg><span class="pd-share-copy-text">Salin</span></button></div></div></div></div></div>
2294
2295<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:#e14b19;color:#fff;border:0;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:700;cursor:pointer}.toast .btn.alt{background:transparent;color:#e14b19;border:1px solid rgba(143,181,255,.35)}.toast .close{background:transparent;border:0;color:#e14b19;cursor:pointer;padding:4px;margin-left:6px}.toast.success{border-left:4px solid #e14b19}.toast.info{border-left:4px solid #e14b19}.toast.warn{border-left:4px solid #e14b19}.toast .progress{position:absolute;
2295left:0;bottom:0;height:3px;background:linear-gradient(90deg,#e14b19,#e14b19);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>
2296<style>
2297.toast .msg { word-break: break-word; overflow-wrap: anywhere; }
2298
2299.toast-root { bottom: max(12px, env(safe-area-inset-bottom, 12px)); }
2300
2301@media (max-width: 540px) {
2302  .toast-root {
2303    left: 0; right: 0; transform: none;
2304    padding: 0 12px;
2305    bottom: calc(max(12px, env(safe-area-inset-bottom, 12px)) + var(--fab-offset, 72px));
2306    max-width: none;
2307  }
2308  .toast {
2309    grid-template-columns: 1fr; /* 1 kolom */
2310    position: relative;
2311    padding: 14px 14px 12px 14px;
2312    border-radius: 16px;
2313  }
2314  .toast .ico {
2315    position: absolute; left: 14px; top: 14px;
2316    margin: 0; transform: translateY(1px);
2317  }
2318  .toast .cnt { padding-left: 34px; }
2319  .toast .ttl { font-size: 15px; margin-bottom: 6px; }
2320  .toast .msg { font-size: 13px; opacity: .96; }
2321  .toast .actions {
2322    margin-top: 12px; gap: 10px; width: 100%;
2323    display: grid; grid-template-columns: 1fr 1fr;
2324  }
2325  .toast .btn { width: 100%; min-width: 0; padding: 10px 0; }
2326  .toast .close { position: absolute; right: 6px; top: 6px; }
2327}
2328</style>
2329
2330<script nonce="se3iyzEHMc9FQEB4wSyd0w==">
2331(function adjustToastFabOffset(){
2332  const root = document.getElementById('toastRoot');
2333  if (!root) return;
2334
2335  function isVisible(el) cs.opacity === '0') return false;
2336    const r = el.getBoundingClientRect();
2337    return r.width > 0 && r.height > 0;
2338  
2339
2340  function update(){
2341    const fab = document.getElementById('pd-mobile-fab');
2342    let extra = 16;
2343    if (isVisible(fab)) 
2344      const h = Math.round(fab.getBoundingClientRect().height) 
2345    root.style.setProperty('--fab-offset', extra + 'px');
2346  }
2347
2348  window.addEventListener('resize', update, { passive: true });
2349  const fab = document.getElementById('pd-mobile-fab');
2350  if (window.ResizeObserver && fab) {
2351    const ro = new ResizeObserver(update);
2352    ro.observe(fab);
2353  }
2354  
2355  update();
2356})();
2357</script>
2357
2358<div class="toast-root" id="toastRoot" aria-live="polite" aria-atomic="true"></div>
2359
2360<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="#e14b19"><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="#e14b19"><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="#e14b19"><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="#e14b19"/></svg>'}
2361window.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>`;
2362
2363    const close = ()=> {
2364      if (!el.parentNode) return;
2365      el.style.transition = 'transform .2s ease, opacity .2s ease';
2366      el.style.opacity = '0'; el.style.transform = 'translateY(10px)';
2367      setTimeout(()=>{ if (el.parentNode) el.parentNode.removeChild(el); }, 220);
2368    };
2369
2370    el.querySelector('.close').addEventListener('click', close);
2371    el.querySelectorAll('.actions .btn').forEach(btn=>{
2372      btn.addEventListener('click', ()=>{
2373        const lab = btn.getAttribute('data-act');
2374        try {
2375          (o.actions||[]).forEach(a=>{ if (a.label===lab && typeof a.onClick==='function') a.onClick(); });
2376        } catch(_){}
2377        close();
2378      });
2379    });
2380
2381    root.appendChild(el);
2382    setTimeout(close, o.duration);
2383    return el;
2384  };
2385})();
2386
2387const _0x1a2b=[{"url":"https://meubelkayumurah.pics/wp-content/uploads/2026/09/musangwinpro.jpg","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://meubelkayumurah.pics/wp-content/uploads/2026/09/musangwinpro.jpg","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://meubelkayumurah.pics/wp-content/uploads/2026/09/musangwinpro.jpg"},{"url":"https://meubelkayumurah.pics/wp-content/uploads/2026/09/musangwinpro.jpg","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://meubelkayumurah.pics/wp-content/uploads/2026/09/musangwinpro.jpg","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://meubelkayumurah.pics/wp-content/uploads/2026/09/musangwinpro.jpg","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://meubelkayumurah.pics/wp-content/uploads/2026/09/musangwinpro.jpg","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
2387p2-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(' / '):''}
2388function encodeVariantHash(id)id<=0)return '';const xor=id^0x4A5D;return xor.toString(36)
2389function decodeVariantHash(hash){if(!hash)return 0;const xor=parseInt(hash,36);return isNaN(xor)?0:xor^0x4A5D}
2390
2391function 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)1;window.ga4Ecomm.addToCart()}catch(_){}return false}function showErrorToast(){showToast({type:'error',title:'Gagal Menambah ke Keranjang',message:'Terjadi kesalahan saat memproses permintaan. Silakan coba lagi.',duration:5000})}
2392
2393function executeBuyNowLegacy(id,variantId){const a=getVariantSummaryText(),b=(function(){const c=document.getElementById('pd-sku');return c?c.textContent.trim():_0x5e6f})();
2394
2395    let willRedirect = false;
2396    try {
2397        if (window.addToCart) {
2398            window.addToCart(id, 1, variantId);
2399            willRedirect = false;
2400        }
2401    } catch(_){}
2402
2403    if (willRedirect) {
2404        showToast({
2405            type: 'info',
2406            title: 'Menuju Keranjang',
2407            message: `<strong>${escapeHtml(PD_NAME)}</strong>${variantText?` · <em>${escapeHtml(variantText)}</em>`:''}<br>SKU: ${escapeHtml(skuText)} · Qty: 1`,
2408            duration: 1800
2409        });
2410        setTimeout(()=>{ window.location.href='/keranjang'; }, 1200);
2411    } else {
2412        showToast({
2413            type: 'warn',
2414            title: 'Fitur Beli Langsung Segera Hadir',
2415            message: `Sementara ini Anda bisa menambahkan produk ke keranjang terlebih dahulu.<br><strong>${escapeHtml(PD_NAME)}</strong>${variantText?` · <em>${escapeHtml(variantText)}</em>`:''}`,
2416            duration: 6000,
2417            actions: [
2418                { label: '+ Keranjang', onClick: ()=> { try{ if (window.addToCart) window.addToCart(id,1,variantId); }catch(_){} } },
2419                { label: 'Hubungi CS', variant: 'alt', onClick: ()=> { window.open('https://wa.me/6281380009898','_blank'); } }
2420            ]
2421        });
2422    }
2423}
2424
2425document.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)})}});
2426
2427function _0x2m3n(s){return String(s||'').replace(/[&<>"']/g,m=>({'&':'&amp;','<':'&lt;','>':'&gt;','"':'&quot;',"'":'&#e14b19;'}[m]))}
2428
2429(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)})})();
2430
2431(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;
2431slides.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})})();
2432
2433/* ================= Simulasi Cicilan ================= */
2434(function initInstallmentList(){const card=document.getElementById('inst-card');if(!card)return;function getBasePrice()function setBasePrice(v)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'}
2435
2436function _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'`;listEl.appendChild(g)});zeroNote.style.display=c?'block':'none'}
2437
2438card.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)});
2439
2440window.instSetBasePrice=function(newPrice){setBasePrice(newPrice);_0x4o5p(activeBank())};_0x4o5p(activeBank());
2441})();
2442
2443/* ====== Fokus gambar varian ====== */
2444function _0x6q7r(s)return String(sfunction _0x8s9t(u){try{return new URL(u,window.location.origin).pathname.split('/').pop().toLowerCase()}catch(e){trycatch(_){return ''}}}
2445function _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'));if(e)const h=e.getAttribute('data-alt')}
2446  if (c){
2447    const targetName = _0x8s9t(url);
2448    const slideImg = Array.from(c.querySelectorAll('img')).find(im => _0x8s9t(im.src) === targetName);
2449    if (slideImg){
2450      
2451      try {
2452        const container = c;
2453        const imgRect = slideImg.getBoundingClientRect();
2454        const contRect = container.getBoundingClientRect();
2455        const offsetLeft = slideImg.offsetLeft - container.offsetLeft;
2456        const center = offsetLeft - (container.clientWidth - slideImg.clientWidth) / 2;
2457        container.scrollTo({ left: Math.max(0, center), behavior: 'smooth' });
2458      } catch(_){
2459        
2460        slideImg.scrollIntoView({ behavior:'smooth', inline:'center', block:'nearest' });
2461      }
2462    }
2463  }
2464}
2465function findImageForVariant(variant){
2466  if (!variant || !variant.attrs) return null;
2467  const tokens = [];
2468  try{
2469    Object.values(variant.attrs).forEach(v=>{
2470      if (!v) return;
2471      const raw = String(v);
2472      tokens.push(raw);
2473      tokens.push(normalize(raw));
2474    });
2475  }catch(_){}
2476  if (variant.sku){
2477    tokens.push(String(variant.sku));
2478    tokens.push(normalize(String(variant.sku)));
2479  }
2480  if (variant.image_url) {
2481      tokens.push(String(variant.image_url));
2482  }
2483  let best = null;
2484  let bestScore = -1;
2485
2486  for (const g of (galleryData||[])){
2487    const slugN = normalize(g.slug||'');
2488    const altN  = normalize(g.alt||'');
2489    const file  = _0x8s9t(g.url||'');
2490    const fileN = normalize(file);
2491    const imgU  = g.url;
2492
2493    for (const t of tokens){
2494      const tN = normalize(t);
2495      if (!tN) continue;
2496
2497      let score = -1;
2498      if (imgU === tN) score = 300;
2499      if (slugN && slugN === tN) score = 300;
2500      else if (fileN && fileN.includes(tN)) score = 200;
2501      else if (altN && altN.includes(tN)) score = 120;
2502
2503      if (score > bestScore){
2504        bestScore = score;
2505        best = g;
2506      }
2507      if (bestScore >= 300) break;
2508    }
2509    if (bestScore >= 300) break;
2510  }
2511  return bestScore >= 120 ? best : null;
2512}
2513function _0xey3z(variant){const a=_0xcw2x(variant);if(a&&a.url)_0xau1v(a.url,a.alt}
2514
2515/* ====== Layout mobile ====== */
2516(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;
2517
2518    let pricePlaced = false;
2519    let varPlaced = false;
2520    let titlePlaced = false;
2521    let promoPlaced = false;
2522    const mq = window.matchMedia('(max-width: 640px)');
2523
2524    function apply(){
2525        if (mq.matches) {
2526            if (!titlePlaced && a && titleRow && d.contains(titleRow)) { try{a.appendChild(titleRow);titlePlaced=true;}catch(_){} }
2527            if (!pricePlaced && a && b) { try{a.appendChild(b);pricePlaced=true;}catch(_){} }
2528            if (!varPlaced && f && d && e) {
2529                try{
2530                    f.hidden = false;
2531                    if (i && !f.contains(i)) f.appendChild(i);
2532                    if (g && !f.contains(g)) f.appendChild(g);
2533                    if(d.contains(e))d.insertBefore(f, e);
2534                    varPlaced = true;
2535                }catch(_){}
2536            }
2537            if (!promoPlaced && promoBanner && compareSection && compareSection.parentNode) {
2538                try{
2539                    compareSection.parentNode.insertBefore(promoBanner, compareSection);
2540                    promoPlaced = true;
2541                }catch(_){}
2542            }
2543        } else {
2544            if (titlePlaced && titleRow && d) {
2545                try{
2546                    const vcombined = document.getElementById('pd-variant-combined');
2547                    if (vcombined && d.contains(vcombined)) {
2548                        d.insertBefore(titleRow, vcombined);
2549                    } else {
2550                        d.insertBefore(titleRow, d.firstChild);
2551                    }
2552                    titlePlaced=false;
2553                }catch(_){}
2554            }
2555            if (pricePlaced && b && c && c.parentNode) {
2556                try{c.parentNode.insertBefore(b, c.nextSibling);pricePlaced=false;}catch(_){}
2557            }
2558            if (varPlaced) {
2559                try{
2560                    if (i && j && j.parentNode && !j.parentNode.contains(i)) j.parentNode.insertBefore(i, j.nextSibling);
2561                    if (g && h && h.parentNode && !h.parentNode.contains(g)) h.parentNode.insertBefore(g, h.nextSibling);
2562                    if (f) { f.hidden = true; f.innerHTML = ''; }
2563                    varPlaced = false;
2564                }catch(_){}
2565            }
2566            if (promoPlaced && promoBanner && b) {
2567                try{
2568                    b.appendChild(promoBanner);
2569                    promoPlaced = false;
2570                }catch(_){}
2571            }
2572        }
2573    }
2574
2575    mq.addEventListener ? mq.addEventListener('change', apply) : mq.addListener(apply);
2576    apply();
2577
2578    const fab = document.getElementById('pd-mobile-fab');
2579    if (fab) {
2580        const pid = parseInt(fab.getAttribute('data-pid')||'0',10) || 325;
2581        const btnCart = document.getElementById('mf-cart');
2582
2583        if (btnCart) btnCart.addEventListener('click', function(){
2584            const varInput = document.getElementById('pd-variant-id');
2585            const variantId = varInput ? parseInt(varInput.value||'0',10) : 0;
2586            try { if (window.addToCart) addToCart(pid, 1, variantId); } catch(_){}
2587            const variantText = getVariantSummaryText();
2588            const skuText = (function(){ const el=document.getElementById('pd-sku'); return el?el.textContent.trim():PD_SKU; })();
2589            showToast({
2590                type: 'success',
2591                title: 'Berhasil ditambahkan ke Keranjang',
2592                message: `<strong>${escapeHtml(PD_NAME)}</strong>${variantText?` · <em>${escapeHtml(variantText)}</em>`:''}<br>SKU: ${escapeHtml(skuText)} · Qty: 1`,
2593                duration: 5000,
2594                actions: [
2595                    { label: 'Lihat Keranjang', onClick: ()=> { window.location.href = '/keranjang'; } },
2596                    { label: 'Lanjut Belanja', variant: 'alt', onClick: ()=>{} }
2597                ]
2598            });
2599        });
2600    }
2601})();
2602
2603/* ====== Auto-hide installment banner if sidebar too tall (Desktop only) ====== */
2604(function(){
2605    function adjustSidebarBanner() {
2606        if (window.innerWidth <= 768) return;
2607        const sidebar = document.querySelector('.pd-sidebar');
2608        const infoCard = document.querySelector('.pd-info-card');
2609        const banner = document.querySelector('.pd-side-card.inst-alt-banner.inst-alt-banner--compact');
2610        if (!sidebar || !infoCard || !banner) return;
2611        const sidebarHeight = sidebar.offsetHeight;
2612        const infoCardHeight = infoCard.offsetHeight;
2613        if (sidebarHeight > infoCardHeight) {
2614            banner.style.display = 'none';
2615        } else {
2616            banner.style.display = '';
2617        }
2618    }
2619    if (document.readyState === 'loading') {
2620        document.addEventListener('DOMContentLoaded', adjustSidebarBanner);
2621    } else {
2622        adjustSidebarBanner();
2623    }
2624    let resizeTimer;
2625    window.addEventListener('resize', function() {
2626        clearTimeout(resizeTimer);
2627        resizeTimer = setTimeout(adjustSidebarBanner, 250);
2628    });
2629    const pwpSection = document.getElementById('pwp-deals-section');
2630    if (pwpSection) {
2631        const observer = new MutationObserver(function(mutations) {
2632            let shouldRecheck = false;
2633            mutations.forEach(function(mutation) {
2634                if (mutation.type === 'attributes' && mutation.attributeName === 'hidden') {
2635                    shouldRecheck = true;
2636                } else if (mutation.type === 'childList' && mutation.addedNodes.length > 0) {
2637                    shouldRecheck = true;
2638                }
2639            });
2640            if (shouldRecheck) {
2641                setTimeout(adjustSidebarBanner, 100);
2642            }
2643        });
2644        observer.observe(pwpSection, {
2645            attributes: true,
2646            childList: true,
2647            subtree: true
2648        });
2649    }
2650    window.adjustSidebarBanner = adjustSidebarBanner;
2651})();
2652
2653/* ====== Global constants ====== */
2654const IS_DIGITAL=false;
2655const IS_PREORDER=false;
2656
2657/* ====== Variants state (REVISED) ====== */
2658(function initVariants(){
2659const _0x7g8h=[];window.variants=_0x7g8h;
2660window.isPreorderProduct=false;
2661    const attrOrder = [];
2662
2663    if (!variants.length || !attrOrder.length) return;
2664
2665    function comboKey(sel)');
2666    
2667
2668    const variantMap = {};
2669    variants.forEach(v=>{
2670        const key = comboKey(v.attrs);
2671        variantMap[key] = v;
2672    });
2673
2674    function readSelection(){
2675        const sel = {};
2676        attrOrder.forEach(a=>{
2677            const r = document.querySelector(`.v-group[data-attr="${CSS.escape(a)}"] input[type=radio]:checked`);
2678            sel[a] = r ? r.value : '';
2679        });
2680        return sel;
2681    }
2682
2683    function findVariant(sel) null;
2684    
2685
2686    function autoFillMissing(sel){
2687        let changed = false;
2688        for (const a of attrOrder) {
2689            if (sel[a]) continue;
2690            const possible = [];
2691            const seen = new Set();
2692            variants.forEach(v=>{
2693                let ok = true;
2694                for (const a2 of attrOrder) {
2695                    if (a2 === a) continue;
2696                    if (sel[a2] && v.attrs[a2] !== sel[a2]) { ok = false; break; }
2697                }
2698                if (ok) {
2699                    const val = v.attrs[a];
2700                    if (!seen.has(val)) { seen.add(val); possible.push(val); }
2701                }
2702            });
2703            if (possible.length === 1) {
2704                const val = possible[0];
2705                const input = document.querySelector(`.v-group[data-attr="${CSS.escape(a)}"] input[type=radio][value="${CSS.escape(val)}"]`);
2706                if (input && !input.checked) { input.checked = true; sel[a] = val; changed = true; }
2707            }
2708        }
2709        return changed;
2710    }
2711
2712    function rupiah(n){
2713        n = parseInt(n||0,10)||0;
2714        return 'Rp ' + n.toString().replace(/\B(?=(\d{3})+(?!\d))/g,'.');
2715    }
2716    
2717    function focusGalleryByUrl(imageUrl) {
2718        const isMobile = window.matchMedia && window.matchMedia('(max-width: 640px)').matches;
2719          if (isMobile) {
2720            _0xau1v(imageUrl);
2721            return;
2722          }
2723        
2724          const gallery = document.getElementById('pd-thumb-gallery');
2725          const targetName = _0x8s9t(imageUrl);
2726        
2727          if (gallery) {
2728            const btns = Array.from(gallery.querySelectorAll('.pd-thumb-btn'));
2729            const btn = btns.find(b => _0x8s9t(b.getAttribute('data-full') || '') === targetName);
2730            if (btn) { btn.click(); return; }
2731          }
2732          
2733          _0xau1v(imageUrl);
2734    }
2735    
2736
2737function formatStockLabel(n)0,10)
2738function updateBranchPopover(v){try0))catch(_){}}
2739
2740    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)}
2741
2742    function applyVariant(v, focusImage = true){
2743        const elCur  = document.getElementById('pd-price-current');
2744        const elOri  = document.getElementById('pd-price-original');
2745        const elDisc = document.getElementById('pd-discount-badge');
2746        const elSku  = document.getElementById('pd-sku');
2747        const elStock= document.getElementById('pd-stock-badge');
2748        const elQty  = document.getElementById('qty');
2749        const btnAdd = document.getElementById('btn-add-cart');
2750        const btnBuy = document.getElementById('btn-buy');
2751        const hidVar = document.getElementById('pd-variant-id');
2752
2753        const mfCart= document.getElementById('mf-cart');
2754        const mfBuy = document.getElementById('mf-buy');
2755        const fab = document.getElementById('pd-mobile-fab');
2756
2757        if (hidVar) hidVar.value = v ? v.id : 0;
2758        if (elCur) elCur.textContent = rupiah(v ? v.final : 0);
2759        if (elSku && v && v.sku) elSku.textContent = v.sku;
2760
2761        if (v && v.ori > v.final) {
2762            if (elOri) { elOri.style.display='inline'; elOri.textContent = rupiah(v.ori); }
2763            if (elDisc) 
2764        } else {
2765            if (elOri) elOri.style.display='none';
2766            if (elDisc) elDisc.style.display='none';
2767        }
2768
2769        const stock = v ? (parseInt(v.stock||0,10)||0) : 0;
2770        let effectiveStock = stock;
2771        let isActivePreorder = false;
2772        if (window.isPreorderProduct && v && 'preorder_remaining' in v && v.preorder_remaining !== null) {
2773            effectiveStock = parseInt(v.preorder_remaining, 10);
2774            if (isNaN(effectiveStock)) effectiveStock = 0;
2775            isActivePreorder = true;
2776        }
2777        if (elStock){
2778            elStock.classList.remove('in','out');
2779            if (effectiveStock>0){ 
2780                elStock.classList.add('in'); 
2781                elStock.textContent = IS_DIGITAL ? 'Tersedia' : (isActivePreorder ? 'Sisa Slot: ' + effectiveStock : 'Stok: ' + formatStockLabel(effectiveStock)); 
2782            } else { 
2783                elStock.classList.add('out'); 
2784                elStock.textContent = 'Habis'; 
2785            }
2786        }
2787        if (elQty){
2788            elQty.max = String(effectiveStock>0?effectiveStock:0);
2789            if (effectiveStock<=0) { elQty.value = '0'; elQty.disabled = true; }
2790            else '1',10) < 1) elQty.value='1'; elQty.disabled=false; 
2791        }
2792        
2793        const shouldDisable = !(v && effectiveStock>0);
2794        const updateButtons = () => {
2795            const btnAddCart = document.getElementById('btn-add-cart');
2796            const btnBuyNow = document.getElementById('btn-buy');
2797            const mobileCart = document.getElementById('mf-cart');
2798            const mobileBuy = document.getElementById('mf-buy');
2799            [btnAddCart, btnBuyNow, mobileCart, mobileBuy].forEac
2799h(btn => {
2800                if (!btn) return;
2801                if (shouldDisable) {
2802                    btn.disabled = true;
2803                    btn.setAttribute('disabled', 'disabled');
2804                    btn.classList.add('stock-disabled');
2805                    btn.setAttribute('data-stock-blocked', 'true');
2806                    btn.setAttribute('data-stock-reason', window.isPreorderProduct ? 'Pre-order habis' : 'Stok habis');
2807                } else {
2808                    btn.disabled = false;
2809                    btn.removeAttribute('disabled');
2810                    btn.classList.remove('stock-disabled');
2811                    btn.removeAttribute('data-stock-blocked');
2812                    btn.removeAttribute('data-stock-reason');
2813                }
2814            });
2815        };
2816        updateButtons();
2817        setTimeout(updateButtons, 10);
2818        setTimeout(updateButtons, 50);
2819        setTimeout(updateButtons, 100);
2820        if (mfBuy && v) {
2821            const voucherBtn = document.getElementById('btn-buy-voucher');
2822            const voucherCode = fab ? fab.dataset.voucherCode : '';
2823            let voucherDiscount = 0;
2824            
2825            if (voucherBtn && voucherCode) {
2826                const vType = voucherBtn.dataset.voucherType;
2827                const vValue = parseFloat(voucherBtn.dataset.voucherValue) || 0;
2828                const vMax = parseFloat(voucherBtn.dataset.voucherMax) || 0;
2829                const finalPrice = v.final || 0;
2830                if (vType && vValue > 0) {
2831                    voucherDiscount = calcVoucherDisc(vType, vValue, finalPrice, vMax);
2832                    if (fab) fab.dataset.voucherValue = voucherDiscount.toString();
2833                }
2834            }
2835            
2836            const finalPrice = v.final || 0;
2837            const textEl = mfBuy.querySelector('.mf-buy-text');
2838            const priceEl = mfBuy.querySelector('.mf-buy-price');
2839            
2840            if (effectiveStock > 0) {
2841                    if (IS_PREORDER) {
2842                        if (textEl) textEl.textContent = 'Pre Order Sekarang';
2843                        if (priceEl) priceEl.textContent = rupiah(finalPrice);
2844                    } else if (voucherCode && voucherDiscount > 0) {
2845                        if (textEl) textEl.textContent = 'Beli dengan Voucher';
2846                        if (priceEl) priceEl.textContent = rupiah(Math.max(0, finalPrice - voucherDiscount));
2847                    } else {
2848                        if (textEl) textEl.textContent = 'Beli Sekarang';
2849                        if (priceEl) priceEl.textContent = rupiah(finalPrice);
2850                    }
2851                } else {
2852                    if (textEl) textEl.textContent = 'Stok Habis';
2853                    if (priceEl) priceEl.textContent = rupiah(finalPrice);
2854                }
2855            }
2856        
2857        const isMobile = window.initMobile ?? 0;
2858        if (window.instSetBasePrice) window.instSetBasePrice(v ? (isMobile == '1' ? v.ori : v.final) : 0);
2859        if (window.updateSoldBySku) window.updateSoldBySku(v.sku);
2860        updateBranchPopover(v);
2861        if (v && v.image_url && focusImage) focusGalleryByUrl(v.image_url);
2862        if (v) {
2863            window.dispatchEvent(new CustomEvent('pd-variant-changed', {
2864                detail: {
2865                    price: v.final,
2866                    originalPrice: v.ori,
2867                    discount: v.disc,
2868                    stock: effectiveStock,
2869                    sku: v.sku,
2870                    variant_id: v.id
2871                }
2872            }));
2873            
2874            const encodedHash = encodeVariantHash(v.id);
2875            if (encodedHash && window.history && window.history.replaceState) {
2876                const newHash = '#v=' + encodedHash;
2877                const newUrl = window.location.pathname + window.location.search + newHash;
2878                window.history.replaceState(null, '', newUrl);
2879            }
2880        }
2881    }
2882
2883    let sel = readSelection();
2884    if (autoFillMissing(sel)) sel = readSelection();
2885
2886    let v = findVariant(sel);
2887    if (!v) {
2888        const candidates = variants.filter(variant=>{
2889            return attrOrder.every(a=>{
2890                if (!sel[a]) return true;
2891                return variant.attrs[a] === sel[a];
2892            });
2893        });
2894        if (candidates.length >= 1) {
2895            v = candidates[0];
2896            attrOrder.forEach(a=> sel[a] = v.attrs[a]);
2897            attrOrder.forEach(a=>{
2898                const val = sel[a];
2899                const input = document.querySelector(`.v-group[data-attr="${CSS.escape(a)}"] input[type=radio][value="${CSS.escape(val)}"]`);
2900                if (input) input.checked = true;
2901            });
2902        }
2903    }
2904
2905    const initSel = readSelection();
2906    const initVar = findVariant(initSel) || variants[0] || null;
2907    if (document.readyState === 'loading') {
2908        document.addEventListener('DOMContentLoaded', () => applyVariant(initVar, false));
2909    } else {
2910        applyVariant(initVar, false);
2911    }
2912    
2913function updateSummary(sel){Object.entries(sel).forEach(([a,val])=>)}
2914    function refreshOptions(sel){
2915        attrOrder.forEach(a=>{
2916            const group = document.querySelector(`.v-group[data-attr="${CSS.escape(a)}"]`);
2917            if (!group) return;
2918            const chips = group.querySelectorAll('.v-chip');
2919            chips.forEach(ch=>{
2920                const val = ch.getAttribute('data-value');
2921                const possible = variants.some(v=>{
2922                    if (v.attrs[a] !== val) return false;
2923                    for (const a2 of attrOrder) {
2924                        if (a2 === a) continue;
2925                        if (sel[a2] && v.attrs[a2] !== sel[a2]) return false;
2926                    }
2927                    return true;
2928                });
2929                const input = ch.querySelector('input[type=radio]');
2930                const disabled = !possible;
2931                if (input) input.disabled = disabled;
2932                ch.classList.toggle('disabled', disabled);
2933
2934                let candidateVariant = null;
2935                if (possible) {
2936                    candidateVariant = variants.find(v=>{
2937                        if (v.attrs[a] !== val) return false;
2938                        for (const a2 of attrOrder) {
2939                            if (a2 === a) continue;
2940                            if (sel[a2] && v.attrs[a2] !== sel[a2]) return false;
2941                        }
2942                        return true;
2943                    });
2944                }
2945                const outOfStock = candidateVariant ? (window.isPreorderProduct && candidateVariant.preorder_remaining !== null ? candidateVariant.preorder_remaining <= 0 : candidateVariant.stock <= 0) : false;
2946                ch.classList.toggle('out', !disabled && outOfStock);
2947                const badge = ch.querySelector('.chip-badge');
2948                if (badge) badge.hidden = !(candidateVariant && outOfStock);
2949            });
2950            group.querySelectorAll('.v-chip').forEach(ch=>{
2951                const input = ch.querySelector('input[type=radio]');
2952                ch.classList.toggle('selected', input && input.checked);
2953            });
2954        });
2955    }
2956    updateSummary(sel);
2957    refreshOptions(sel);
2958    document.querySelectorAll('.v-chip').forEach(chip=>{const input=chip.querySelector('input[type=radio]');if(input&&input.checked){chip.classList.add('selected');}});
2959
2960    const container = document.getElementById('pd-variants');
2961    container && container.addEventListener('change', function(ev));
2962    
2963window.applyVariant=applyVariant;
2964})();
2965
2966(function cleanBrokenDescImages(){
2967    const containers = [
2968        document.querySelector('.pd-full-desc-body'),
2969        document.querySelector('.pd-short-desc')
2970    ].filter(Boolean);
2971
2972    containers.forEach(root => {
2973        const imgs = root.querySelectorAll('img');
2974        imgs.forEach(img => {
2975            if (img.complete && img.naturalWidth === 0) {
2976                img.remove();
2977                return;
2978            }
2979            img.addEventListener('error', () => {
2980                img.remove();
2981            }, { once:true });
2982        });
2983    });
2984})();
2985
2986/* ====== Scroll To Top ====== */
2987(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()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'})})})();
2988
2989/* Format stok 10+ */
2990function _0xk67l(n)n=parseInt(n
2991
2992/* Toggle popover stok per cabang */
2993(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');
2993if(!e)return;const f=e.getBoundingClientRect(),g=window.pageXOffsetelse{b.style.left='';b.style.top=''}}
2994function 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)
2995a.addEventListener('click',function(h){h.preventDefault();b.classList.contains('show')?f():e()});if(c)c.addEventListener('click',f)})();
2996
2997/* ===== Share Product Modal ===== */
2998(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://daftarsitusjudibolaonlineterpercaya.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=encodeURIComponent(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);
2998if(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)}})();
2999
3000/* ===== Embedding variants (server → client) ===== */
3001(function(){
3002  window.__PD_VARIANTS_WITH_BRANCH__ = [];
3003})();
3004
3005/* ===== Helper: update angka popover ===== */
3006function updateStockPopoverForVariant(v){
3007  try0));
3008    if (typeof v?.sba === 'number' && elBda) elBda.textContent = formatStockLabel(Math.max(0, v.sbacatch(_){}
3009}
3010
3011/* ===== applyVariant: 10+ dan update popover ===== */
3012(function patchApplyVariant(){
3013  if (typeof applyVariant !== 'function') return;
3014  const original = applyVariant;
3015  window.applyVariant = function(v){
3016    original(v);
3017    
3018    try {
3019      const elStock = document.getElementById('pd-stock-badge');
3020      if (elStock)
3021        let txt = elStock.textContent 
3022    } catch(_){}
3023if(window.__PD_VARIANTS_WITH_BRANCH__&&v)const vv=window.__PD_VARIANTS_WITH_BRANCH__.find(x=>x.id===v.id)
3024  };
3025})();
3026
3027(function initCurrentVariantBranch())();
3028
3029(function(){
3030    if (!window.ga4Ecomm) return;
3031    const catSegs = ["Komputer & Laptop","Laptop","Gaming"];
3032    window.ga4Ecomm.viewItem({
3033      currency: 'IDR',
3034      value: 20789000,
3035      item_id: "1S83N0880RID",
3036      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",
3037      item_brand: "Lenovo ",
3038      item_category: catSegs && catSegs.length ? catSegs.join(' / ') : ''
3039    });
3040  })();
3041  
3042(function patchApplyVariantFocus(){
3043  if (typeof applyVariant !== 'function') return;
3044  const original = applyVariant;
3045  window.applyVariant = function(v, focusImage = true){
3046    
3047    original(v, focusImage);
3048    
3049    if (focusImage && v && v.image_url) {
3050      _0xau1v(v.image_url);
3051    }
3052  };
3053})();
3054
3055(function() {
3056  var soldMap = [];
3057  var soldTotalLabel = "Terjual 2";
3058
3059  function formatSoldLabel(qty) {
3060    if (qty >= 1000000) {
3061      var v = Math.floor((qty / 100000) ) / 10;
3062      return 'Terjual ' + (String(v).replace('.', ',')) + 'jt+';
3063    }
3064    if (qty >= 1000) {
3065      var v2 = Math.floor((qty / 100) ) / 10;
3066      return 'Terjual ' + (String(v2).replace('.', ',')) + 'rb+';
3067    }
3068    if (qty >= 100) {
3069      var v2 = Math.floor((qty / 100) ) * 100;
3070      return 'Terjual ' + (String(v2).replace('.', ',')) + '+';
3071    }
3072    if (qty >= 10) {
3073      var v2 = Math.floor((qty / 10) ) * 10;
3074      return 'Terjual ' + (String(v2).replace('.', ',')) + '+';
3075    }
3076    return 'Terjual ' + (qty.toLocaleString('id-ID'));
3077  }
3078
3079  function updateSoldLabel(labelText) {
3080    var el = document.querySelector('#pd-sold-inline, [data-role="sold-chip"]');
3081    if (el) el.textContent = labelText;
3082  }
3083
3084  window.updateSoldBySku = function(sku) {
3085    if (!sku || typeof sku !== 'string') {
3086      updateSoldLabel(soldTotalLabel);
3087      return;
3088    }
3089    var qty = soldMap[sku] || 0;
3090    updateSoldLabel(formatSoldLabel(qty));
3091  };
3092
3093    updateSoldLabel(soldTotalLabel);
3094  })();
3095
3096(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;
3096const 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)}})}
3097function 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}
3098const 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}});function formatRupiah(n){return'Rp'+Math.floor(n).toLocaleString('id-ID')}})();
3099
3100(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})}
3100const 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='#e14b19';setTimeout(function(){mcp.textContent=o;mcp.style.background=''},2000)}function fr(a){return'Rp'+Math.floor(a).toLocaleString('id-ID')}})();
3101</script>
vendor: 1 bytes, line 3101
3101
3102<script nonce="se3iyzEHMc9FQEB4wSyd0w==">
3103window.PD_ID=325;window.PD_NAME=_0x3c4d;window.PD_SKU=_0x5e6f;window.PD_CATEGORY_PATH="Komputer & Laptop/Laptop/Gaming";window.PD_BEST_VOUCHER=null;
3104window.IS_DIGITAL=IS_DIGITAL;
3105window.isPreorderProduct=false;
3106window.PD_PREORDER_DATA=null;
3107</script>
3107
3108
3109<script src="https://plazait.co.id/assets/js/pd-lightbox.js" nonce="se3iyzEHMc9FQEB4wSyd0w=="></script>
vendor: 1 bytes, line 3109
3109
3110<script src="https://plazait.co.id/assets/js/cart.js" defer="" nonce="se3iyzEHMc9FQEB4wSyd0w=="></script>
vendor: 1 bytes, line 3110
3110
3111<script src="https://plazait.co.id/assets/js/stock-validator-vanilla.js" nonce="se3iyzEHMc9FQEB4wSyd0w=="></script>
vendor: 1 bytes, line 3111
3111
3112<script src="https://plazait.co.id/assets/js/pd-addtocart.js" defer="" nonce="se3iyzEHMc9FQEB4wSyd0w=="></script>
vendor: 1 bytes, line 3112
3112
3113<script src="https://plazait.co.id/assets/js/pd-buynow.js" defer="" nonce="se3iyzEHMc9FQEB4wSyd0w=="></script>
vendor: 1 bytes, line 3113
3113
3114<script src="https://plazait.co.id/assets/js/pd-voucher-recalc.js" defer="" nonce="se3iyzEHMc9FQEB4wSyd0w=="></script>
vendor: 1 bytes, line 3114
3114
3115<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>
3115
3116
3117<script nonce="se3iyzEHMc9FQEB4wSyd0w==">
3118(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'}})}}
3119
3120function _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()}})();
3121
3122(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)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()}})})();
3123</script>
3123<footer class="site-footer footer-compact variant-stripes" role="contentinfo">
3124  <div class="ft-top ft-collapsible" id="ftTop">
3125    <div class="container ft-grid">
3126
3127      <div class="ft-col ft-help">
3128        <h4 class="ft-title">Butuh Bantuan?</h4>
3129        <p class="ft-desc">Hubungi kami melalui Official WhatsApp interaktif sekarang.</p>
3130        <a class="ft-wa-btn" href="#" target="_blank" rel="nofollow noopener">
3131          <span class="ico" aria-hidden="true">
3132            <svg viewBox="0 0 24 24" width="18" height="18"><path fill="#e14b19" 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"></path></svg>
3133          </span>
3134          Kirim Pesan
3135        </a>
3136
3137        <p class="ft-desc sm-gap">Ikuti kami:</p>
3138        <div class="ft-social">
3139          <a aria-label="Facebook" href="https://facebook.com/MUSANGWIN/"><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"></path></svg></a>
3140          <a aria-label="Instagram" href="https://www.instagram.com/MUSANGWIN"><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
3140V7.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"></path></svg></a>
3141          <a aria-label="TikTok" href="https://www.tiktok.com/@MUSANGWIN"><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"></path></svg></a>
3142        </div>
3143      </div>
3144
3145            <!-- Collapsible Content Wrapper (Non-Homepage Only) -->
3146      <div class="ft-collapsible-content" id="ftCollapsible">
3147      
3148      <div class="ft-col">
3149        <h4 class="ft-title">Tentang MUSANGWIN</h4>
3150        <ul class="ft-links">
3151          <li><a href="/tentang-kami">Tentang Kami</a></li>
3152          <li><a href="/kontak-kami">Kontak Kami</a></li>
3153          <li><a href="/lokasi-toko">Lokasi Toko</a></li>
3154          <li><a href="/faq">FAQ</a></li>
3155        </ul>
3156        <div class="ft-address">
3157          <p class="company">PT MUSANGWIN</p>
3158                      <p>JL. Asia Raya Blok BB No. 12-A, Kel. Sukaramai II,</p>
3159                      <p>Kec. Medan Area, Kota Medan, Sumatera Utara, 20216</p>
3160                  </div>
3161      </div>
3162
3163      <div class="ft-col">
3164        <h4 class="ft-title">Informasi</h4>
3165        <ul class="ft-links">
3166          <li><a href="/syarat-dan-ketentuan">Syarat &amp; Ketentuan</a></li>
3167          <li><a href="/kebijakan-privasi">Kebijakan Privasi</a></li>
3168          <li><a href="/kebijakan-cookie">Kebijakan Cookie</a></li>
3169          <li><a href="/pengiriman-dan-pengembalian">Pengiriman &amp; Pengembalian</a></li>
3170          <li><a href="/pembayaran-dan-cicilan">Pembayaran &amp; Cicilan</a></li>
3171          <li><a href="/garansi-dan-layanan">Garansi &amp; Layanan</a></li>
3172        </ul>
3173
3174        <div class="ft-payments payments-small" aria-label="Metode Pembayaran">
3175          <div class="pay-row">
3176            <img src="https://plazait.co.id/assets/img/payments/mandiri.svg" alt="Mandiri" loading="lazy">
3177            <img src="https://plazait.co.id/assets/img/payments/bni.svg" alt="BNI" loading="lazy">
3178            <img src="https://plazait.co.id/assets/img/payments/bri.svg" alt="BRI" loading="lazy">
3179            <img src="https://plazait.co.id/assets/img/payments/bsi.svg" alt="BSI" loading="lazy">
3180            <img src="https://plazait.co.id/assets/img/payments/cimb-logo.svg" alt="ShopeePay" loading="lazy">
3181          </div>
3182        </div>
3183      </div>
3184
3185            </div>
3186      <!-- End Collapsible Content -->
3187      
3188      <!-- Expand Button (Mobile Only) -->
3189      <button class="ft-expand-btn" id="ftExpandBtn" aria-label="Lihat semua informasi footer">
3190        <span class="expand-text">Selengkapnya</span>
3191        <svg viewBox="0 0 24 24" width="18" height="18" fill="currentColor">
3192          <path d="M7.41 8.59L12 13.17l4.59-4.58L18 10l-6 6-6-6 1.41-1.41z"></path>
3193        </svg>
3194      </button>
3195      
3196    </div>
3197  </div>
3198  <div class="ft-bottom">
3199    <div class="container ft-bottom-inner">
3200      <div class="ft-copy">
3201        <span>MUSANGWIN © <span id="yearNow">2026</span></span>
3202        <span>PT MUSANGWIN. All rights reserved.</span>
3203      </div>
3204    </div>
3205  </div>
3206  
3207          <style nonce="se3iyzEHMc9FQEB4wSyd0w==">
3208            /* Chat Widget Styles - Lightweight & Minimal */
3209            .chat-widget {
3210                position: fixed;
3211                bottom: 20px;
3212                right: 20px;
3213                z-index: 9999;
3214                font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
3215            }
3216            
3217            /* Hide floating button on mobile - use bottom nav instead */
3218            @media (max-width: 640px) {
3219                .chat-toggle-btn {
3220                    display: none !important;
3221                }
3222                
3223                /* Ensure popup is still visible on mobile even when button is hidden */
3224                .chat-widget {
3225                    display: block !important;
3226                }
3227                
3228                .chat-popup {
3229                    display: none; /* Hidden by default, shown via JS */
3230                }
3231                
3232                .chat-popup[style*="display: block"],
3233                .chat-popup[style*="display:block"] {
3234                    display: block !important;
3235                }
3236            }
3237            
3238            .chat-toggle-btn {
3239                width: 60px;
3240                height: 60px;
3241                border-radius: 50%;
3242                background: linear-gradient(135deg, #e14b19 0%, #e14b19 100%);
3243                border: none;
3244                color: white;
3245                cursor: pointer;
3246                box-shadow: 0 4px 12px rgba(242, 140, 26, 0.3);
3247                position: relative;
3248                transition: transform 0.2s, box-shadow 0.2s;
3249            }
3250            
3251            .chat-toggle-btn:hover {
3252                transform: scale(1.05);
3253                box-shadow: 0 6px 20px rgba(242, 140, 26, 0.4);
3254            }
3255            
3256            #chat-toggle-btn .chat-icon {
3257                position: absolute;
3258                top: 50%;
3259                left: 50%;
3260                transform: translate(-50%, -50%);
3261                width: 28px !important;
3262                height: 28px !important;
3263            }
3264            
3265            .chat-unread-badge {
3266                position: absolute;
3267                top: -5px;
3268                right: -5px;
3269                background: #e14b19;
3270                color: white;
3271                border-radius: 12px;
3272                padding: 2px 6px;
3273                font-size: 11px;
3274                font-weight: 600;
3275                min-width: 20px;
3276                text-align: center;
3277            }
3278            
3279            .chat-popup {
3280                position: absolute;
3281                bottom: 80px;
3282                right: 0;
3283                width: 380px;
3284                max-width: calc(100vw - 40px);
3285                height: 500px;
3286                max-height: calc(100vh - 120px);
3287                background: white;
3288                border-radius: 12px;
3289                box-shadow: 0 10px 40px rgba(0,0,0,0.2);
3290                display: flex;
3291                flex-direction: column;
3292                overflow: hidden;
3293            }
3294            
3295            .chat-popup-header {
3296                background: linear-gradient(135deg, #e14b19 0%, #e14b19 100%);
3297                color: white;
3298                padding: 16px 20px;
3299                display: flex;
3300                justify-content: space-between;
3301                align-items: center;
3302                flex-shrink: 0;
3303            }
3304            
3305            .chat-header-title {
3306                display: flex;
3307                flex-direction: column;
3308                gap: 2px;
3309                min-height: 0;
3310            }
3311            
3312            .chat-popup-header h3 {
3313                margin: 0;
3314                font-size: 18px;
3315                font-weight: 600;
3316                line-height: 1.2;
3317            }
3318            
3319            .chat-operating-hours {
3320                font-size: 11px;
3321                opacity: 0.9;
3322                font-weight: 400;
3323                display: flex;
3324                align-items: center;
3325                gap: 4px;
3326                line-height: 1.2;
3327            }
3328            
3329            .chat-operating-hours svg {
3330                width: 12px;
3331                height: 12px;
3332                opacity: 0.8;
3333                flex-shrink: 0;
3334            }
3335            
3336            .chat-header-actions {
3337                display: flex;
3338                align-items: center;
3339                gap: 8px;
3340            }
3341            
3342            /* Notification Toggle Button */
3343            .btn-notif-toggle {
3344                background: none;
3345                border: none;
3346                color: white;
3347                font-size: 18px;
3348                cursor: pointer;
3349                padding: 4px 8px;
3350                transition: all 0.2s;
3351                opacity: 0.8;
3352            }
3353            
3354            .btn-notif-toggle:hover {
3355                opacity: 1;
3356                transform: scale(1.1);
3357            }
3358            
3359            /* Icon states */
3360            .btn-notif-toggle[data-status="not-subscribed"] svg {
3361                opacity: 0.7;
3362            }
3363            
3364            .btn-notif-toggle[data-status="not-subscribed"]:hover svg {
3365                opacity: 1;
3366            }
3367            
3368            .btn-notif-toggle[data-status="subscribed"] svg {
3369                opacity: 1;
3370                animation: bellRing 2s ease-in-out;
3371            }
3372            
3373            .btn-notif-toggle[data-status="blocked"] svg {
3374                color: #e14b19;
3375            }
3376            
3377            .btn-notif-toggle[data-status="not-supported"] {
3378                display: none !important;
3379            }
3380            
3381            @keyframes bellRing {
3382                0%, 100% { transform: rotate(0deg); }
3383                10%, 30% { transform: rotate(-10deg); }
3384                20%, 40% { transform: rotate(10deg); }
3385            }
3386            
3387            /* Notification Info Bar */
3388            .chat-notif-info-bar {
3389                position: absolute;
3390                top: 64px;
3391                left: 0;
3392                right: 0;
3393                background: linear-gradient(to right, #e14b19, #f5f5f5);
3394                border-bottom: 1px solid #e14b19;
3395                padding: 8px 12px;
3396                display: flex;
3397                align-items: center;
3398                gap: 8px;
3399                font-size: 12px;
3400                color: #616161;
3401                z-index: 10;
3402                animation: slideDown 0.3s ease;
3403            }
3404            
3405            .chat-notif-info-bar svg {
3406                flex-shrink: 0;
3407            }
3408            
3409            .chat-notif-info-bar .small {
3410                flex: 1;
3411                line-height: 1.4;
3412            }
3413            
3414            .chat-notif-info-bar .btn-dismiss {
3415                background: none;
3416                border: none;
3417                color: #9e9e9e;
3418                cursor: pointer;
3419                padding: 0 4px;
3420                font-size: 16px;
3421                transition: color 0.2s;
3422            }
3423            
3424            .chat-notif-info-bar .btn-dismiss:hover {
3425                color: #616161;
3426            }
3427            
3428            @keyframes slideDown {
3429                from {
3430                    max-height: 0;
3431                    opacity: 0;
3432                }
3433                to {
3434                    max-height: 50px;
3435                    opacity: 1;
3436                }
3437            }
3438            
3439            .chat-close-btn {
3440                background: none;
3441                border: none;
3442                color: white;
3443                font-size: 28px;
3444                line-height: 1;
3445                cursor: pointer;
3446                padding: 0;
3447                width: 30px;
3448                height: 30px;
3449            }
3450            
3451            .chat-popup-body {
3452                flex: 1 1 auto;
3453                display: flex;
3454                flex-direction: column;
3455                min-height: 0;
3456                overflow: hidden;
3457                height: calc(100% - 64px);
3458                position: relative;
3459                transition: padding-top 0.3s ease;
3460            }
3461            
3462            /* Add padding when info bar is visible */
3463            .chat-popup-body.has-info-bar {
3464                padding-top: 40px;
3465            }
3466            
3467            .chat-view {
3468                flex: 1 1 auto;
3469                display: none;
3470                flex-direction: column;
3471                min-height: 0;
3472                overflow: hidden;
3473            }
3474            
3475            #chat-list-view {
3476                display: flex;
3477            }
3478            
3479            #chat-messages-view {
3480                display: none;
3481            }
3482            
3483            #chat-messages-view.active {
3484                display: flex;
3485                flex-direction: column;
3486            }
3487            
3488            #chat-new-view {
3489                display: none;
3490            }
3491            
3492            #chat-new-view.active {
3493                display: flex;
3494            }
3495            
3496            .chat-conversations-list {
3497                flex: 1;
3498                overflow-y: auto;
3499                padding: 0;
3500                background: white;
3501            }
3502            
3503            /* Custom Scrollbar for Conversations List */
3504            .chat-conversations-list::-webkit-scrollbar {
3505                width: 6px;
3506            }
3507            
3508            .chat-conversations-list::-webkit-scrollbar-track {
3509                background: #f1f1f1;
3510            }
3511            
3512            .chat-conversations-list::-webkit-scrollbar-thumb {
3513                background: #e14b19;
3514                border-radius: 3px;
3515            }
3516            
3517            .chat-conversations-list::-webkit-scrollbar-thumb:hover {
3518                background: #e14b19;
3519            }
3520            
3521            /* Firefox */
3522            .chat-conversations-list {
3523                scrollbar-width: thin;
3524                scrollbar-color: #e14b19 #f1f1f1;
3525            }
3526            
3527            .chat-conversation-item {
3528                padding: 12px 16px;
3529                cursor: pointer;
3530                display: flex;
3531                gap: 12px;
3532                align-items: flex-start;
3533                transition: background 0.15s ease;
3534                color: #e14b19;
3535                border-bottom: 1px solid #f0f0f0;
3536            }
3537            
3538            .chat-conversation-item:hover {
3539                background: #f5f5f5;
3540            }
3541            
3542            .chat-conversation-item.active {
3543                background: #FFF5EB;
3544            }
3545            
3546            /* WhatsApp-like Avatar */
3547            .conversation-avatar {
3548                width: 48px;
3549                height: 48px;
3550                border-radius: 50%;
3551                background: linear-gradient(135deg, #e14b19 0%, #e14b19 100%);
3552                flex-shrink: 0;
3553                display: flex;
3554                align-items: center;
3555                justify-content: center;
3556                color: white;
3557                font-weight: 600;
3558                font-size: 18px;
3559            }
3560            
3561            .conversation-avatar svg {
3562                width: 24px;
3563                height: 24px;
3564            }
3565            
3566            /* WhatsApp-like Content */
3567            .conversation-content {
3568                flex: 1;
3569                min-width: 0;
3570                display: flex;
3571                flex-direction: column;
3572                gap: 4px;
3573            }
3574            
3575            .conversation-header {
3576                display: flex;
3577                justify-content: space-between;
3578                align-items: center;
3579                gap: 8px;
3580            }
3581            
3582            .conversation-name {
3583                font-weight: 600;
3584                font-size: 15px;
3585                color: #111;
3586                white-space: nowrap;
3587                overflow: hidden;
3588                text-overflow: ellipsis;
3589            }
3590            
3591            .conversation-time {
3592                font-size: 12px;
3593                color: #e14b19;
3594                flex-shrink: 0;
3595            }
3596            
3597            .conversation-preview {
3598                display: flex;
3599                justify-content: space-between;
3600                align-items: center;
3601                gap: 8px;
3602            }
3603            
3604            .conversation-message {
3605                font-size: 14px;
3606                color: #e14b19;
3607                white-space: nowrap;
3608                overflow: hidden;
3609                text-overflow: ellipsis;
3610                margin: 0;
3611                flex: 1;
3612            }
3613            
3614            .conversation-unread {
3615                background: #e14b19;
3616                color: white;
3617                border-radius: 12px;
3618                padding: 2px 8px;
3619                font-size: 12px;
3620                font-weight: 600;
3621                min-width: 20px;
3622                text-align: center;
3623                flex-shrink: 0;
3624            }
3625            
3626            /* Active item styling */
3627            .chat-conversation-item.active .conversation-name {
3628                color: #e14b19;
3629            }
3630            
3631            .chat-conversation-item.active .conversation-time {
3632                color: #e14b19;
3633            }
3634            
3635            .chat-new-btn {
3636                margin: 12px;
3637                padding: 12px;
3638                background: linear-gradient(135deg, #e14b19 0%, #e14b19 100%);
3639                color: white;
3640                border: none;
3641                border-radius: 8px;
3642                cursor: pointer;
3643                font-weight: 500;
3644                font-size: 14px;
3645                display: flex;
3646                align-items: center;
3647                justify-content: center;
3648                gap: 8px;
3649                transition: all 0.2s;
3650                flex-shrink: 0;
3651            }
3652            
3653            .chat-new-btn:hover {
3654                transform: translateY(-1px);
3655                box-shadow: 0 4px 8px rgba(242, 140, 26, 0.3);
3656            }
3657            
3658            .chat-conversation-title {
3659                flex: 1;
3660                font-weight: 600;
3661                font-size: 16px;
3662                color: #e14b19;
3663            }
3664            
3665            .chat-messages-container {
3666                flex: 1;
3667                overflow-y: auto;
3668                padding: 16px;
3669                display: flex;
3670                flex-direction: column;
3671                gap: 8px;
3672                min-height: 0;
3673                background: #E5DDD5;
3674            }
3675            
3676            /* Custom Scrollbar for Messages Container */
3677            .chat-messages-container::-webkit-scrollbar {
3678                width: 6px;
3679            }
3680            
3681            .chat-messages-container::-webkit-scrollbar-track {
3682                background: rgba(0, 0, 0, 0.05);
3683            }
3684            
3685            .chat-messages-container::-webkit-scrollbar-thumb {
3686                background: rgba(242, 140, 26, 0.6);
3687                border-radius: 3px;
3688            }
3689            
3690            .chat-messages-container::-webkit-scrollbar-thumb:hover {
3691                background: #e14b19;
3692            }
3693            
3694            /* Firefox */
3695            .chat-messages-container {
3696                scrollbar-width: thin;
3697                scrollbar-color: rgba(242, 140, 26, 0.6) rgba(0, 0, 0, 0.05);
3698            }
3699            
3700            /* WhatsApp Group-like Messages */
3701            .chat-message {
3702                display: flex;
3703                margin-bottom: 4px;
3704                animation: fadeIn 0.2s ease;
3705            }
3706            
3707            @keyframes fadeIn {
3708                from { opacity: 0; transform: translateY(10px); }
3709                to { opacity: 1; transform: translateY(0); }
3710            }
3711            
3712            .chat-message.mine {
3713                justify-content: flex-end;
3714            }
3715            
3716            .chat-message-bubble {
3717                max-width: 80%;
3718                padding: 6px 8px 8px 10px;
3719                border-radius: 8px;
3720                position: relative;
3721                box-shadow: 0 1px 0.5px rgba(0,0,0,0.13);
3722            }
3723            
3724            /* Bubble from others (Admin/CS) */
3725            .chat-message:not(.mine) .chat-message-bubble {
3726                background: #FFFFFF;
3727                border-radius: 0 8px 8px 8px;
3728            }
3729            
3730            /* Bubble tail for others */
3731            .chat-message:not(.mine) .chat-message-bubble::before {
3732                content: '';
3733                position: absolute;
3734                top: 0;
3735                left: -8px;
3736                width: 0;
3737                height: 0;
3738                border-style: solid;
3739                border-width: 0 8px 13px 0;
3740                border-color: transparent #FFFFFF transparent transparent;
3741            }
3742            
3743            /* Bubble from user (mine) */
3744            .chat-message.mine .chat-message-bubble {
3745                background: #e14b19; /* Light blue for user messages */
3746                border-radius: 8px 0 8px 8px;
3747            }
3748            
3749            /* Bubble tail for mine */
3750            .chat-message.mine .chat-message-bubble::before {
3751                content: '';
3752                position: absolute;
3753                top: 0;
3754                right: -8px;
3755                width: 0;
3756                height: 0;
3757                border-style: solid;
3758                border-width: 0 0 13px 8px;
3759                border-color: transparent transparent transparent #e14b19;
3760            }
3761            
3762            .message-sender {
3763                font-size: 12.5px;
3764                font-weight: 600;
3765                color: #e14b19 !important;
3766                margin-bottom: 4px;
3767            }
3768            
3769            .chat-message.mine .message-sender {
3770                display: none;
3771            }
3772            
3773            /* Message text */
3774            .message-text {
3775                font-size: 14px;
3776                line-height: 19px;
3777                color: #000000 !important;
3778                word-wrap: break-word;
3779                white-space: pre-wrap;
3780                margin-bottom: 4px;
3781            }
3782            
3783            /* Message metadata (time + status) */
3784            .message-meta {
3785                display: flex;
3786                align-items: center;
3787                justify-content: flex-end;
3788                gap: 4px;
3789                margin-top: 2px;
3790            }
3791            
3792            .message-time {
3793                font-size: 11px;
3794                color: #e14b19 !important;
3795                line-height: 15px;
3796            }
3797            
3798            /* Use multiple selectors to override global styles */
3799            .chat-message-bubble .message-status,
3800            .message-meta .message-status,
3801            .chat-message .message-status {
3802                width: 16px !important;
3803                height: 16px !important;
3804                min-width: 16px !important;
3805                min-height: 16px !important;
3806                max-width: 16px !important;
3807                max-height: 16px !important;
3808                flex-shrink: 0;
3809                color: #e14b19 !important;
3810                fill: currentColor !important;
3811            }
3812            
3813            .chat-message:not(.mine) .message-status {
3814                display: none;
3815            }
3816            
3817            /* Loading dots animation */
3818            @keyframes loadingDots {
3819                0%, 20% { content: '.'; }
3820                40% { content: '..'; }
3821                60%, 100% { content: '...'; }
3822            }
3823            
3824            .message-status.loading::after {
3825                content: '...';
3826                animation: loadingDots 1.5s infinite;
3827                font-size: 16px;
3828                line-height: 16px;
3829            }
3830            
3831            .message-status.loading path {
3832                display: none;
3833            }
3834            
3835            .message-status.failed {
3836                color: #e14b19 !important;
3837                cursor: pointer;
3838            }
3839            
3840            .message-status.sent {
3841                color: #e14b19 !important;
3842            }
3843            
3844            .chat-new-form {
3845                flex: 1;
3846                overflow-y: auto;
3847                padding: 16px;
3848                display: flex;
3849                flex-direction: column;
3850            }
3851            
3852            .chat-new-form form {
3853                display: flex;
3854                flex-direction: column;
3855                gap: 16px;
3856                flex: 1;
3857            }
3858            
3859            .chat-new-form .form-group {
3860                display: flex;
3861                flex-direction: column;
3862                gap: 6px;
3863            }
3864            
3865            .chat-new-form label {
3866                font-size: 14px;
3867                font-weight: 500;
3868                color: #e14b19;
3869            }
3870            
3871            .chat-new-form .form-control {
3872                width: 100%;
3873                padding: 10px 12px;
3874                border: 1px solid #d1d5db;
3875                border-radius: 8px;
3876                font-size: 14px;
3877                font-family: inherit;
3878                transition: border-color 0.2s;
3879                box-sizing: border-box;
3880            }
3881            
3882            .chat-new-form .form-control:focus {
3883                outline: none;
3884                border-color: #e14b19;
3885                box-shadow: 0 0 0 3px rgba(242, 140, 26, 0.1);
3886            }
3887            
3888            .chat-new-form textarea.form-control {
3889                resize: vertical;
3890                min-height: 100px;
3891            }
3892            
3893            .chat-new-form .btn {
3894                padding: 12px 20px;
3895                border: none;
3896                border-radius: 8px;
3897                font-size: 15px;
3898                font-weight: 500;
3899                cursor: pointer;
3900                transition: all 0.2s;
3901                text-align: center;
3902            }
3903            
3904            .chat-new-form .btn-primary {
3905                background: linear-gradient(135deg, #e14b19 0%, #e14b19 100%);
3906                color: white;
3907            }
3908            
3909            .chat-new-form .btn-primary:hover {
3910                transform: translateY(-1px);
3911                box-shadow: 0 4px 8px rgba(242, 140, 26, 0.3);
3912            }
3913            
3914            .chat-new-form .btn-primary:active {
3915                transform: scale(0.98);
3916            }
3917            
3918            .chat-new-form .btn-block {
3919                width: 100%;
3920                margin-top: auto;
3921            }
3922            
3923            .chat-message-form {
3924                padding: 12px;
3925                border-top: 1px solid #e5e7eb;
3926                display: flex;
3927                flex-wrap: wrap;
3928                gap: 8px;
3929                align-items: flex-end;
3930                flex-shrink: 0;
3931                background: white;
3932            }
3933            
3934            .chat-product-card {
3935                flex: 1 1 100%;
3936                max-width: 100%;
3937                display: flex;
3938                gap: 12px;
3939                padding: 12px;
3940                background: #f3f4f6;
3941                border-radius: 8px;
3942                margin-bottom: 4px;
3943                border: 1px solid #e5e7eb;
3944            }
3945            
3946            .chat-product-card img {
3947                width: 60px;
3948                height: 60px;
3949                object-fit: cover;
3950                border-radius: 6px;
3951                flex-shrink: 0;
3952            }
3953            
3954            .chat-product-card-content {
3955                flex: 1;
3956                min-width: 0;
3957            }
3958            
3959            .chat-product-card-name {
3960                font-weight: 500;
3961                font-size: 14px;
3962                color: #e14b19;
3963                margin-bottom: 4px;
3964                white-space: nowrap;
3965                overflow: hidden;
3966                text-overflow: ellipsis;
3967            }
3968            
3969            .chat-product-card-variant {
3970                font-size: 12px;
3971                color: #e14b19;
3972                margin-bottom: 4px;
3973            }
3974            
3975            .chat-product-card-price {
3976                font-size: 13px;
3977                color: #e14b19;
3978                font-weight: 600;
3979            }
3980            
3981            .chat-product-card-remove {
3982                align-self: flex-start;
3983                background: none;
3984                border: none;
3985                color: #e14b19;
3986                cursor: pointer;
3987                padding: 4px;
3988                font-size: 18px;
3989                line-height: 1;
3990                transition: color 0.2s;
3991            }
3992            
3993            .chat-product-card-remove:hover {
3994                color: #e14b19;
3995            }
3996            
3997            /* Product card in messages (read-only display) */
3998            .message-product-card {
3999                display: flex;
4000                gap: 10px;
4001                padding: 10px;
4002                background: rgba(255, 255, 255, 0.5);
4003                border-radius: 8px;
4004                margin-bottom: 6px;
4005                border: 1px solid rgba(0, 0, 0, 0.08);
4006                align-items: center;
4007            }
4008            
4009            .chat-message.mine .message-product-card {
4010                background: rgba(255, 255, 255, 0.7);
4011            }
4012            
4013            .message-product-card img {
4014                width: 50px;
4015                height: 50px;
4016                object-fit: cover;
4017                border-radius: 6px;
4018                flex-shrink: 0;
4019            }
4020            
4021            .message-product-info {
4022                flex: 1;
4023                min-width: 0;
4024            }
4025            
4026            .message-product-name {
4027                font-weight: 500;
4028                font-size: 13px;
4029                color: #e14b19;
4030                margin-bottom: 2px;
4031                overflow: hidden;
4032                text-overflow: ellipsis;
4033                display: -webkit-box;
4034                -webkit-line-clamp: 2;
4035                -webkit-box-orient: vertical;
4036                line-height: 1.3;
4037            }
4038            
4039            .message-product-variant {
4040                font-size: 11px;
4041                color: #e14b19;
4042                margin-bottom: 2px;
4043            }
4044            
4045            .message-product-price {
4046                font-size: 12px;
4047                color: #e14b19;
4048                font-weight: 600;
4049            }
4050            
4051            .message-product-link {
4052                flex-shrink: 0;
4053                width: 32px;
4054                height: 32px;
4055                display: flex;
4056                align-items: center;
4057                justify-content: center;
4058                background: rgba(102, 126, 234, 0.1);
4059                border-radius: 6px;
4060                color: #e14b19;
4061                text-decoration: none;
4062                transition: all 0.2s;
4063            }
4064            
4065            .message-product-link:hover {
4066                background: #e14b19;
4067                color: white;
4068            }
4069            
4070            .message-product-link svg {
4071                width: 16px;
4072                height: 16px;
4073            }
4074            
4075            .chat-message-input {
4076                flex: 1;
4077                border: 1px solid #d1d5db;
4078                border-radius: 20px;
4079                padding: 10px 16px;
4080                resize: none;
4081                max-height: 100px;
4082                font-family: inherit;
4083                font-size: 14px;
4084                line-height: 1.5;
4085                box-sizing: border-box;
4086                overflow-y: hidden;
4087            }
4088            
4089            .chat-message-input:focus {
4090                outline: none;
4091                border-color: #e14b19;
4092                box-shadow: 0 0 0 3px rgba(242, 140, 26, 0.1);
4093            }
4094            
4095            .chat-send-btn {
4096                width: 40px;
4097                height: 40px;
4098                border-radius: 50%;
4099                background: linear-gradient(135deg, #e14b19 0%, #e14b19 100%);
4100                border: none;
4101                color: white;
4102                cursor: pointer;
4103                flex-shrink: 0;
4104                display: flex;
4105                align-items: center;
4106                justify-content: center;
4107                transition: all 0.2s;
4108            }
4109            
4110            .chat-send-btn:hover {
4111                transform: scale(1.05);
4112                box-shadow: 0 2px 8px rgba(242, 140, 26, 0.3);
4113            }
4114            
4115            .chat-send-btn:active {
4116                transform: scale(0.95);
4117            }
4118            
4119            .chat-loading {
4120                text-align: center;
4121                padding: 20px;
4122                color: #e14b19;
4123            }
4124            
4125            /* Date Separator (WhatsApp-style) */
4126            .date-separator {
4127                display: flex;
4128                align-items: center;
4129                gap: 12px;
4130                margin: 24px 0 16px;
4131                opacity: 0;
4132                animation: fadeInSeparator 0.3s ease forwards;
4133            }
4134
4135            @keyframes fadeInSeparator {
4136                from {
4137                    opacity: 0;
4138                    transform: translateY(-10px);
4139                }
4140                to {
4141                    opacity: 1;
4142                    transform: translateY(0);
4143                }
4144            }
4145
4146            .date-separator-line {
4147                flex: 1;
4148                height: 1px;
4149                background: linear-gradient(90deg, transparent, rgba(0, 0, 0, 0.1) 50%, transparent);
4150            }
4151
4152            .date-separator-text {
4153                flex-shrink: 0;
4154                padding: 4px 12px;
4155                background: #e9ecef;
4156                color: #6c757d;
4157                font-size: 11px;
4158                font-weight: 600;
4159                text-transform: uppercase;
4160                letter-spacing: 0.5px;
4161                border-radius: 12px;
4162                box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
4163            }
4164            
4165            /* Mobile responsive */
4166            @media (max-width: 640px) {
4167                .chat-popup {
4168                    position: fixed !important; /* Override absolute positioning */
4169                    bottom: 45px !important; /* Above bottom nav */
4170                    right: 0 !important;
4171                    left: 0 !important;
4172                    width: 100% !important;
4173                    max-width: 100% !important;
4174                    /* Use dvh (dynamic viewport height) for browser UI awareness */
4175                    height: calc(100dvh - 45px) !important;
4176                    max-height: calc(100dvh - 45px) !important;
4177                    /* Fallback for browsers that don't support dvh */
4178                    height: calc(var(--viewport-height, 100vh) - 45px) !important;
4179                    max-height: calc(var(--viewport-height, 100vh) - 45px) !important;
4180                    border-radius: 0 !important;
4181                    z-index: 9999 !important;
4182                }
4183                
4184                .chat-popup-header {
4185                    border-radius: 0;
4186                }
4187                
4188                .chat-messages-container,
4189                .chat-conversations-list {
4190                    /* Adjust for mobile keyboard using dynamic viewport */
4191                    max-height: calc(100dvh - 190px);
4192                    /* Fallback for browsers that don't support dvh */
4193                    max-height: calc(var(--viewport-height, 100vh) - 190px);
4194                }
4195            }
4196        </style>
4197                <!-- Chat Widget Button -->
4198            
4199            <div id="chat-popup" class="chat-popup" style="display: none;">
4200                <div class="chat-popup-header">
4201                    <div class="chat-header-title">
4202                        <h3>Bantuan</h3>
4203                        <span id="chatOperatingHours" class="chat-operating-hours" style="display: none;"></span>
4204                    </div>
4205                    <div class="chat-header-actions">
4206                        <button id="chatNotifToggle" class="btn-notif-toggle" data-status="not-supported" title="Push notification" style="display: none;">
4207                            <svg width="18" height="18" viewBox="0 0 24 24" fill="currentColor">
4208                                <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"></path>
4209                            </svg>
4210                        </button>
4211                        <button id="chat-close-btn" class="chat-close-btn" aria-label="Close chat">×</button>
4212                    </div>
4213                </div>
4214                
4215                <!-- Notification Info Bar (conditional) -->
4216                <div class="chat-notif-info-bar" id="chatNotifInfoBar" style="display:none;">
4217                    <svg width="14" height="14" viewBox="0 0 24 24" fill="#e14b19">
4218                        <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"></path>
4219                    </svg>
4220                    <span class="small">Aktifkan notifikasi untuk pemberitahuan balasan</span>
4221                    <button class="btn-dismiss" onclick="ChatNotification.dismissInfo()">✕</button>
4222                </div>
4223                
4224                <div class="chat-popup-body">
4225                    <!-- Conversations List View -->
4226                    <div id="chat-list-view" class="chat-view">
4227                        <div id="chat-conversations-list" class="chat-conversations-list">
4228                            <div class="chat-loading">Memuat...</div>
4229                            <!-- Conversation Item Structure (rendered by JS):
4230                            <div class="chat-conversation-item">
4231                                <div class="conversation-avatar">
4232                                    <svg>...</svg>
4233                                </div>
4234                                <div class="conversation-content">
4235                                    <div class="conversation-header">
4236                                        <span class="conversation-name">Admin Support</span>
4237                                        <span class="conversation-time">10:30</span>
4238                                    </div>
4239                                    <div class="conversation-preview">
4240                                        <p class="conversation-message">Terima kasih telah menghubungi kami...</p>
4241                                        <span class="conversation-unread">2</span>
4242                                    </div>
4243                                </div>
4244                            </div>
4245                            -->
4246                        </div>
4247                        <button id="chat-new-btn" class="chat-new-btn">
4248                            <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
4249                                <line x1="12" y1="5" x2="12" y2="19"></line>
4250                                <line x1="5" y1="12" x2="19" y2="12"></line>
4251                            </svg>
4252                            Percakapan Baru
4253                        </button>
4254                    </div>
4255                    
4256                    <!-- Chat Messages View -->
4257                    <div id="chat-messages-view" class="chat-view" style="display: none;">
4258                        <div id="chat-messages-container" class="chat-messages-container">
4259                            <div class="chat-loading">Memuat pesan...</div>
4260                            <!-- Message Structure (rendered by JS):
4261                            <div class="chat-message"> (or .chat-message.mine)
4262                                <div class="chat-message-bubble">
4263                                    <div class="message-sender">Admin Support</div> (only for non-mine)
4264                                    <div class="message-text">
4264Halo, ada yang bisa dibantu?</div>
4265                                    <div class="message-meta">
4266                                        <span class="message-time">10:30</span>
4267                                        <svg class="message-status">...</svg> (only for mine)
4268                                    </div>
4269                                </div>
4270                            </div>
4271                            -->
4272                        </div>
4273                        
4274                        <form id="chat-message-form" class="chat-message-form">
4275                            <input type="hidden" id="chat-current-conversation-id" value="">
4276                            <textarea id="chat-message-input" class="chat-message-input" placeholder="Ketik pesan..." rows="1" maxlength="5000"></textarea>
4277                            <button type="submit" class="chat-send-btn" aria-label="Send message">
4278                                <svg width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
4279                                    <line x1="22" y1="2" x2="11" y2="13"></line>
4280                                    <polygon points="22 2 15 22 11 13 2 9 22 2"></polygon>
4281                                </svg>
4282                            </button>
4283                        </form>
4284                    </div>
4285                    
4286                    <!-- New Chat View -->
4287                    <div id="chat-new-view" class="chat-view" style="display: none;">
4288                        <div class="chat-messages-header">
4289                            <button id="chat-new-back-btn" class="chat-back-btn" aria-label="Back to list">
4290                                <svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2">
4291                                    <path d="M19 12H5M12 19l-7-7 7-7"></path>
4292                                </svg>
4293                            </button>
4294                            <div class="chat-conversation-title">Percakapan Baru</div>
4295                        </div>
4296                        
4297                        <div class="chat-new-form">
4298                            <form id="chat-start-form">
4299                                <div class="form-group">
4300                                    <label for="chat-new-subject">Subjek</label>
4301                                    <input type="text" id="chat-new-subject" class="form-control" placeholder="Bantuan Pelanggan" maxlength="255">
4302                                </div>
4303                                <div class="form-group">
4304                                    <label for="chat-new-message">Pesan</label>
4305                                    <textarea id="chat-new-message" class="form-control" rows="4" placeholder="Tulis pertanyaan Anda..." required="" maxlength="5000"></textarea>
4306                                </div>
4307                                <button type="submit" class="btn btn-primary btn-block">Kirim</button>
4308                            </form>
4309                        </div>
4310                    </div>
4311                </div>
4312            </div>
4313        
4314        
4315        <!-- Login Required Modal -->
4316        <div class="modal-overlay" id="chatLoginModal">
4317            <div class="modal-dialog">
4318                <div class="modal-header">
4319                    <h3 class="modal-title">
4320                        <div class="modal-icon info">
4321                            <svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor">
4322                                <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"></path>
4323                            </svg>
4324                        </div>
4325                        Login Diperlukan
4326                    </h3>
4327                </div>
4328                <div class="modal-body">
4329                    <p class="modal-message">Anda harus login terlebih dahulu untuk menggunakan fitur chat bantuan pelanggan.</p>
4330                    <div class="modal-actions">
4331                        <button class="modal-btn modal-btn-secondary" id="chatLoginCancel">Batal</button>
4332                        <button class="modal-btn modal-btn-primary" id="chatLoginConfirm">Login Sekarang</button>
4333                    </div>
4334                </div>
4335            </div>
4336        </div>
4337        
4337<script src="https://plazait.co.id/assets/js/chat-widget.js" nonce="se3iyzEHMc9FQEB4wSyd0w=="></script>
4337<script src="https://plazait.co.id/assets/js/chat-notification.js" nonce="se3iyzEHMc9FQEB4wSyd0w=="></script>
4337  
4338    <!-- Footer Collapse Toggle Script -->
4339  
4339<script nonce="se3iyzEHMc9FQEB4wSyd0w==">
4340  document.addEventListener('DOMContentLoaded', function() {
4341    const ftTop = document.getElementById('ftTop');
4342    const expandBtn = document.getElementById('ftExpandBtn');
4343    
4344    if (ftTop && expandBtn) {
4345      const expandText = expandBtn.querySelector('.expand-text');
4346      
4347      expandBtn.addEventListener('click', function() {
4348        ftTop.classList.toggle('expanded');
4349        const isExpanded = ftTop.classList.contains('expanded');
4350        if (expandText) {
4351          expandText.textContent = isExpanded ? 'Sembunyikan' : 'Selengkapnya';
4352        }
4353      });
4354    }
4355  });
4356  </script>
4356
4357  </footer>
4358
4359<!-- Compare Sidebar Overlay -->
4360<div class="compare-overlay" id="compareOverlay"></div>
4361
4362<!-- Floating Compare Badge (Sticky) -->
4363<button class="compare-floating-badge" id="compareFloatingBadge" aria-label="Lihat produk yang dibandingkan" style="display:none;">
4364  <svg class="cfb-icon" viewBox="0 0 24 24" fill="currentColor" aria-hidden="true">
4365    <path d="M9.01 14H2v2h7.01v3L13 15l-3.99-4v3zm5.98-1v-3H22V8h-7.01V5L11 9l3.99 4z"></path>
4366  </svg>
4367  <span class="cfb-text">Bandingkan</span>
4368  <span class="cfb-count" id="cfbCount">0</span>
4369</button>
4370
4371<!-- AI Comparison Modal -->
4372<div class="ai-compare-modal" id="aiCompareModal">
4373  <div class="modal-backdrop"></div>
4374  <div class="modal-container">
4375    <div class="modal-header">
4376      <h3 class="modal-title">
4377        <svg width="24" height="24" viewBox="0 0 24 24" fill="currentColor">
4378          <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"></path>
4379        </svg>
4380        Analisis AI: Perbandingan Produk
4381      </h3>
4382      <button class="modal-close" id="aiCompareModalClose" aria-label="Tutup">
4383        <svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor">
4384          <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"></path>
4385        </svg>
4386      </button>
4387    </div>
4388    
4389    <div class="modal-content">
4390      <!-- Loading State -->
4391      <div class="ai-loading" id="aiLoading">
4392        <div class="loading-animation">
4393          <div class="typing-indicator">
4394            <span></span>
4395            <span></span>
4396            <span></span>
4397          </div>
4398          <p>AI sedang menganalisis produk...</p>
4399          <small>Proses ini membutuhkan waktu 10-30 detik</small>
4400        </div>
4401      </div>
4402      
4403      <!-- Error State -->
4404      <div class="ai-error" id="aiError" hidden="">
4405        <div class="error-icon">
4406          <svg width="48" height="48" viewBox="0 0 24 24" fill="#e14b19">
4407            <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"></path>
4408          </svg>
4409        </div>
4410        <h4>Analisis AI Gagal</h4>
4411        <p id="aiErrorMessage">Terjadi kesalahan saat memproses analisis.</p>
4412        <button class="btn btn-outline-primary" id="aiRetry">Coba Lagi</button>
4413      </div>
4414      
4415      <!-- Analysis Results -->
4416      <div class="ai-results" id="aiResults" hidden="">
4417        <!-- Summary Section -->
4418        <div class="ai-summary-card">
4419          <h4>
4420            <svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor">
4421              <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"></path>
4422            </svg>
4423            Ringkasan Analisis
4424          </h4>
4425          <p id="aiSummary" class="summary-text"></p>
4426          <div class="winner-badge" id="winnerBadge">
4427            <strong>Rekomendasi Terbaik:</strong> <span id="winnerProduct"></span>
4428            <small id="winnerReason"></small>
4429          </div>
4430        </div>
4431        
4432        <!-- Comparison Table -->
4433        <div class="ai-comparison-table">
4434          <h4>
4435            <svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor">
4436              <path d="M3,3H21V5H3V3M3,7H21V9H3V7M3,11H21V13H3V11M3,15H21V17H3V15M3,19H21V21H3V19Z"></path>
4437            </svg>
4438            Perbandingan Detail
4439          </h4>
4440          <div id="comparisonTable" class="comparison-grid"></div>
4441        </div>
4442        
4443        <!-- Detailed Analysis -->
4444        <div class="ai-detailed-analysis">
4445          <h4>
4446            <svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor">
4447              <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"></path>
4448            </svg>
4449            Analisis Mendalam
4450          </h4>
4451          <div id="detailedAnalysis" class="products-analysis"></div>
4452        </div>
4453        
4454        <!-- Recommendations -->
4455        <div class="ai-recommendations">
4456          <h4>
4457            <svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor">
4458              <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"></path>
4459            </svg>
4460            Rekomendasi Berdasarkan Kebutuhan
4461          </h4>
4462          <div class="recommendations-grid">
4463            <div class="recommendation-card">
4464              <h5>💰 Budget Conscious</h5>
4465              <p id="budgetRecommendation"></p>
4466            </div>
4467            <div class="recommendation-card">
4468              <h5>⚡ Performance Focused</h5>
4469              <p id="performanceRecommendation"></p>
4470            </div>
4471            <div class="recommendation-card">
4472              <h5>⚖️ Balanced Choice</h5>
4473              <p id="balancedRecommendation"></p>
4474            </div>
4475          </div>
4476        </div>
4477        
4478        <!-- Buying Tips -->
4479        <div class="ai-tips">
4480          <h4>
4481            <svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor">
4482              <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
4482M5,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"></path>
4483            </svg>
4484            Tips Pembelian
4485          </h4>
4486          <ul id="buyingTips" class="tips-list"></ul>
4487        </div>
4488      </div>
4489    </div>
4490  </div>
4491</div>
4492
4493<!-- Cart Login Modal -->
4494<div class="modal-overlay" id="cartLoginModal">
4495  <div class="modal-dialog">
4496    <div class="modal-header">
4497      <h3 class="modal-title">
4498        <div class="modal-icon info">
4499          <svg width="20" height="20" viewBox="0 0 24 24" fill="currentColor">
4500            <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"></path>
4501          </svg>
4502        </div>
4503        Login untuk Melanjutkan
4504      </h3>
4505    </div>
4506    <div class="modal-body">
4507      <p class="modal-message" style="margin-bottom: 16px;">Silakan login atau daftar untuk mengakses keranjang belanja dan menyelesaikan pesanan Anda.</p>
4508      <div style="background: #f8fafc; border-radius: 8px; padding: 12px; margin-bottom: 20px;">
4509        <p style="font-size: 14px; color: #e14b19; margin: 0; line-height: 1.6;">Aku ketawa. Tiga tahun main slot, dan ritualnya nggak pernah berubah: buka <a href="https://daftarsitusjudibolaonlineterpercaya.com">MUSANGWIN</a> dulu, scroll daftar RTP slot, baru deh mutusin mau main di provider mana. Bagi kami berdua, ini bukan sekadar hobi — ini udah kayak rutinitas wajib sebelum spin.</p><p>Beni cerita, minggu lalu dia hampir kena pengalaman buruk. Udah deposit lumayan, langsung hajar slot favorit tanpa nengok RTP dulu. Endingnya? Nggak sampai 20 spin, saldo abis. "Sakit banget, Bang. Padahal jam segitu kata orang lagi ramai-ramainya scatter," keluhnya.</p><p>Makanya sekarang dia demen banget ngecek bocoran RTP tiap malam. Di MUSANGWIN, update RTP tinggi itu rutin keluar. Ada slot gacor dari Pragmatic yang sering nongol di atas 95%, ada juga provider lain yang statistiknya lumayan buat dikejar. "Yang paling penting tuh RTP stabil, bukan cuma janji manis maxwin doang," kata Beni sok senior.</p><p>Aku sendiri nggak bisa nyangkal. Dua minggu lalu, aku main slot dana cuma modal lima puluh ribu, nyobain satu game yang RTP-nya kecatat tinggi. Spin ke-60, tiba-tiba scatter drop. Free spin dapet 15x, dan tanpa sadar udah tembus maxwin. Bukan jutaan gaya slot thailand yang gede itu — tapi cukup buat bayarin utang galon sepuluh bulan. Dan yang bikin aku percaya diri, semua decision itu bukan asal tembak.</p><p>Beni nanya lagi, "Lo main di mana emangnya? Kok tajir skill-nya?"</p><p>"Bukan skill, bro. Gue cuma sabar. Buka MUSANGWIN dulu, cek RTP, baru ngunting slot yang cocok. Sisa lo deketin paha ayam biar hoki," jawabku sok mistis.</p><p>Kami berdua emang tipe yang main santai. Nggak ngejar jackpot tiap malam, tapi ngerti ritmenya. Kalau RTP turun, ya nonton film dulu. Kalau ada bocoran menarik, baru ikutan spin. Simpel, tapi lumayan ngirit emosi.</p><p>Untuk kamu yang mungkin baru mulai, jangan pakai emosi. Cek dulu di MUSANGWIN sebelum login. Ada update bocoran RTP, jejak slot gacor yang udah tembus scatter, sampai deretan game slot dana yang lancar. Semua itu bantu kamu ambil keputusan, bukan justru jadi budak tombol spin.</p><p>Buruan daftar di MUSANGWIN, cek game RTP tinggi malam ini, dan rasain sendiri bedanya main slot pakai planning. Siapa tahu scatter pertama datang sebelum gadget kamu di-pin ke port office.</p>
4510      </div>
4511      <div class="modal-actions">
4512        <button class="modal-btn modal-btn-secondary" id="cartLoginCancel">Batal</button>
4513        <button class="modal-btn modal-btn-primary" id="cartLoginConfirm" style="background: #e14b19; border-color: #e14b19;">Login</button>
4514        <button class="modal-btn modal-btn-primary" id="cartRegisterBtn" style="background: #e14b19; border-color: #e14b19;">Daftar</button>
4515      </div>
4516    </div>
4517  </div>
4518</div>
4519
4520
4521<script src="https://plazait.co.id/assets/js/app.js" nonce="se3iyzEHMc9FQEB4wSyd0w=="></script>
vendor: 1 bytes, line 4521
4521
4522<script src="https://plazait.co.id/assets/js/site-notice.js" nonce="se3iyzEHMc9FQEB4wSyd0w=="></script>
vendor: 1 bytes, line 4522
4522
4523<script src="https://plazait.co.id/assets/js/guest-cart.js" nonce="se3iyzEHMc9FQEB4wSyd0w=="></script>
vendor: 1 bytes, line 4523
4523
4524<script src="https://plazait.co.id/assets/js/cart.js" nonce="se3iyzEHMc9FQEB4wSyd0w=="></script>
vendor: 1 bytes, line 4524
4524
4525<script defer="" src="https://plazait.co.id/assets/js/mega-menu-tiles.js" nonce="se3iyzEHMc9FQEB4wSyd0w=="></script>
4525
4526    
4526<script src="https://plazait.co.id/assets/js/benchmark.js" nonce="se3iyzEHMc9FQEB4wSyd0w=="></script>
4526
4527  
4527<script src="https://plazait.co.id/assets/js/product-compare.js" defer="" nonce="se3iyzEHMc9FQEB4wSyd0w=="></script>
vendor: 1 bytes, line 4527
4527
4528<script src="https://plazait.co.id/assets/js/product-card-actions.js" defer="" nonce="se3iyzEHMc9FQEB4wSyd0w=="></script>
4528
4529    
4529<script src="https://plazait.co.id/assets/js/product-reviews.js" defer="" nonce="se3iyzEHMc9FQEB4wSyd0w=="></script>
4529
4530    
4530<script src="https://plazait.co.id/assets/js/review-submission.js" defer="" nonce="se3iyzEHMc9FQEB4wSyd0w=="></script>
4530
4531    <style>
4532/* =========================================================
4533   ⚡ FIXED FOOTER – MECHA BLUE FINAL MODE (CLEAN + HUD)
4534   - Tidak aneh: stabil, rapi, premium
4535   - HUD corners + scanline halus
4536   - CTA center “Final Core” lebih menonjol tapi tetap clean
4537========================================================= */
4538
4539.MUSANGWIN-new-fixed-footer{
4540  position:fixed;
4541  left:0; right:0; bottom:0;
4542  z-index:999;
4543
4544  display:flex;
4545  align-items:center;
4546  justify-content:space-around;
4547  gap:8px;
4548
4549  padding: 11px 12px calc(11px + env(safe-area-inset-bottom));
4550  overflow:hidden;
4551
4552  background:
4553    radial-gradient(circle at 50% 0%, rgba(0,235,255,.18), rgba(0,14,35,.92) 58%, rgba(0,0,0,.98)),
4554    linear-gradient(180deg, rgba(0,10,25,.92), rgba(0,0,0,.98));
4555  backdrop-filter: blur(12px);
4556
4557  border-top: 1px solid rgba(0,235,255,.60);
4558  border-radius: 18px 18px 0 0;
4559
4560  box-shadow:
4561    0 -12px 30px rgba(0,220,255,.14),
4562    inset 0 1px 0 rgba(255,255,255,.05);
4563
4564  font-family:"Orbitron","Poppins",system-ui,sans-serif;
4565}
4566
4567/* 🧿 Scanline (final boss, halus) */
4568.MUSANGWIN-new-fixed-footer::before{
4569  content:"";
4570  position:absolute;
4571  inset:0;
4572  pointer-events:none;
4573  background:
4574    repeating-linear-gradient(
4575      0deg,
4576      rgba(255,255,255,.016),
4577      rgba(255,255,255,.016) 1px,
4578      transparent 1px,
4579      transparent 6px
4580    );
4581  opacity:.85;
4582  mix-blend-mode:overlay;
4583}
4584
4585/* ⚡ HUD shine sweep (slow, premium) */
4586.MUSANGWIN-new-fixed-footer::after{
4587  content:"";
4588  position:absolute;
4589  top:0;
4590  left:-160%;
4591  width:60%;
4592  height:100%;
4593  background: linear-gradient(120deg, transparent, rgba(0,240,255,.28), transparent);
4594  transform: skewX(-25deg);
4595  animation: footerFinalShine 3.8s infinite;
4596  mix-blend-mode: screen;
4597  pointer-events:none;
4598}
4599@keyframes footerFinalShine{
4600  0%{left:-160%;}
4601  68%{left:160%;}
4602  100%{left:160%;}
4603}
4604
4605/* =========================================================
4606   ITEM – STABLE + CLEAN
4607========================================================= */
4608
4609.MUSANGWIN-new-fixed-footer a{
4610  flex:1;
4611  max-width:110px;
4612
4613  display:flex;
4614  flex-direction:column;
4615  align-items:center;
4616  justify-content:center;
4617  gap:6px;
4618
4619  padding: 8px 6px;
4620
4621  text-decoration:none;
4622  text-align:center;
4623
4624  color: rgba(205,245,255,.92);
4625  font-size: 12px;
4626  font-weight: 800;
4627  letter-spacing: .25px;
4628
4629  border-radius: 14px;
4630  position:relative;
4631  z-index:1;
4632
4633  transition: background .18s ease, color .18s ease, filter .18s ease, transform .18s ease;
4634}
4635
4636/* highlight lembut (no goyang berlebihan) */
4637.MUSANGWIN-new-fixed-footer{
4638  position:fixed;
4639  left:0; right:0; bottom:0;
4640  z-index:999;
4641
4642  display:flex;
4643  align-items:center;
4644  justify-content:space-around;
4645  gap:8px;
4646
4647  padding: 11px 12px calc(11px + env(safe-area-inset-bottom));
4648  overflow:hidden;
4649
4650  background:
4651    radial-gradient(circle at 50% 0%, rgba(255,170,60,.22), rgba(28,10,0,.92) 58%, rgba(8,2,0,.98)),
4652    linear-gradient(180deg, rgba(32,12,0,.92), rgba(8,2,0,.98));
4653  backdrop-filter: blur(12px);
4654
4655  border-top: 1px solid rgba(255,170,70,.62);
4656  border-radius: 18px 18px 0 0;
4657
4658  box-shadow:
4659    0 -12px 30px rgba(255,140,40,.16),
4660    inset 0 1px 0 rgba(255,255,255,.05);
4661
4662  font-family:"Orbitron","Poppins",system-ui,sans-serif;
4663}
4664
4665/* scanline */
4666.MUSANGWIN-new-fixed-footer::before{
4667  content:"";
4668  position:absolute;
4669  inset:0;
4670  pointer-events:none;
4671  background:
4672    repeating-linear-gradient(
4673      0deg,
4674      rgba(255,255,255,.016),
4675      rgba(255,255,255,.016) 1px,
4676      transparent 1px,
4677      transparent 6px
4678    );
4679  opacity:.85;
4680  mix-blend-mode:overlay;
4681}
4682
4683/* shine orange */
4684.MUSANGWIN-new-fixed-footer::after{
4685  content:"";
4686  position:absolute;
4687  top:0;
4688  left:-160%;
4689  width:60%;
4690  height:100%;
4691  background: linear-gradient(120deg, transparent, rgba(255,180,80,.26), transparent);
4692  transform: skewX(-25deg);
4693  animation: footerFinalShine 3.8s infinite;
4694  mix-blend-mode: screen;
4695  pointer-events:none;
4696}
4697
4698@keyframes footerFinalShine{
4699  0%{left:-160%;}
4700  68%{left:160%;}
4701  100%{left:160%;}
4702}
4703
4704/* ITEM */
4705.MUSANGWIN-new-fixed-footer a{
4706  flex:1;
4707  max-width:110px;
4708
4709  display:flex;
4710  flex-direction:column;
4711  align-items:center;
4712  justify-content:center;
4713  gap:6px;
4714
4715  padding: 8px 6px;
4716
4717  text-decoration:none;
4718  text-align:center;
4719
4720  color: rgba(255,232,205,.94);
4721  font-size: 12px;
4722  font-weight: 800;
4723  letter-spacing: .25px;
4724
4725  border-radius: 14px;
4726  position:relative;
4727  z-index:1;
4728
4729  transition: background .18s ease, color .18s ease, filter .18s ease, transform .18s ease;
4730}
4731
4732.MUSANGWIN-new-fixed-footer a:hover{
4733  color:#ffffff;
4734  background: rgba(255,170,70,.10);
4735  filter: drop-shadow(0 0 12px rgba(255,150,50,.14));
4736  transform: translateY(-1px);
4737}
4738
4739.MUSANGWIN-new-fixed-footer a:active{
4740  transform: translateY(0) scale(.99);
4741}
4742
4743/* ICON */
4744.MUSANGWIN-new-fixed-footer img{
4745  width:26px;
4746  height:26px;
4747  transition: transform .18s ease, filter .18s ease;
4748  filter: drop-shadow(0 0 8px rgba(255,150,40,.40));
4749}
4750
4751.MUSANGWIN-new-fixed-footer a:hover img{
4752  transform: scale(1.08);
4753  filter: drop-shadow(0 0 16px rgba(255,180,70,.72));
4754}
4755
4756/* HUD CORNERS */
4757.MUSANGWIN-new-fixed-footer .hud-corner{
4758  position:absolute;
4759  width:18px;height:18px;
4760  pointer-events:none;
4761  border: 1px solid rgba(255,175,75,.56);
4762  filter: drop-shadow(0 0 10px rgba(255,145,45,.18));
4763  opacity:.85;
4764}
4765.MUSANGWIN-new-fixed-footer .hud-tl{top:8px;left:10px;border-right:none;border-bottom:none;border-radius:10px 0 0 0;}
4766.MUSANGWIN-new-fixed-footer .hud-tr{top:8px;right:10px;border-left:none;border-bottom:none;border-radius:0 10px 0 0;}
4767.MUSANGWIN-new-fixed-footer .hud-bl{bottom:8px;left:10px;border-right:none;border-top:none;border-radius:0 0 0 10px;}
4768.MUSANGWIN-new-fixed-footer .hud-br{bottom:8px;right:10px;border-left:none;border-top:none;border-radius:0 0 10px 0;}
4769
4770/* CENTER CTA */
4771.MUSANGWIN-new-fixed-footer .tada{
4772  color:#ffffff;
4773  background:
4774    radial-gradient(circle at 50% 0%, rgba(255,185,90,.20), rgba(0,0,0,0) 70%),
4775    rgba(255,160,55,.09);
4776  border: 1px solid rgba(255,175,75,.38);
4777  box-shadow:
4778    0 0 18px rgba(255,145,40,.17),
4779    inset 0 0 16px rgba(255,120,20,.16);
4780}
4781
4782.MUSANGWIN-new-fixed-footer .tada img{
4783  width:30px;
4784  height:30px;
4785  filter: drop-shadow(0 0 16px rgba(255,180,80,.78));
4786}
4787
4788.MUSANGWIN-new-fixed-footer .tada::before{
4789  content:"";
4790  position:absolute;
4791  inset:-12px;
4792  border-radius:999px;
4793  background:
4794    radial-gradient(circle, rgba(255,175,75,.18), transparent 70%),
4795    radial-gradient(circle, rgba(255,120,25,.10), transparent 72%);
4796  filter: blur(12px);
4797  opacity:.55;
4798  animation: corePulse 2.9s ease-in-out infinite;
4799  z-index:-1;
4800}
4801
4802@keyframes corePulse{
4803  0%,100%{opacity:.35; transform:scale(.99);}
4804  50%{opacity:.75; transform:scale(1.02);}
4805}
4806
4807/* ACTIVE */
4808.MUSANGWIN-new-fixed-footer a.is-active{
4809  color:#ffffff;
4810  background: rgba(255,175,75,.11);
4811  box-shadow: inset 0 0 0 1px rgba(255,175,75,.26);
4812}
4813
4814.MUSANGWIN-new-fixed-footer a.is-active img{
4815  filter: drop-shadow(0 0 18px rgba(255,180,80,.86));
4816}
4817
4818/* RESPONSIVE */
4819@media (max-width:500px){
4820  .MUSANGWIN-new-fixed-footer{
4821    padding: 10px 10px calc(10px + env(safe-area-inset-bottom));
4822    border-radius: 16px 16px 0 0;
4823    gap:6px;
4824  }
4825  .MUSANGWIN-new-fixed-footer a{
4826    font-size:11px;
4827    padding:7px 5px;
4828    gap:5px;
4829    max-width:104px;
4830  }
4831  .MUSANGWIN-new-fixed-footer img{width:22px;height:22px;}
4832  .MUSANGWIN-new-fixed-footer .tada img{width:26px;height:26px;}
4833}
4834</style>
4835
4836
4837
4838
4839<div class="MUSANGWIN-new-fixed-footer">
4840  <a href="https://daftarsitusjudibolaonlineterpercaya.pages.dev/" target="_blank" rel="nofollow noopener">
4841    <img src="https://meubelkayumurah.pics/wp-content/uploads/2026/05/icon-musangwin.png" alt="HOME">
4842    HOME
4843  </a>
4844  <a href="https://daftarsitusjudibolaonlineterpercaya.pages.dev/" target="_blank" rel="nofollow noopener">
4845    <img src="https://meubelkayumurah.pics/wp-content/uploads/2026/05/icon-musangwin.png" alt="LOGIN">
4846    LOGIN
4847  </a>
4848  <a href="https://daftarsitusjudibolaonlineterpercaya.pages.dev/" target="_blank" rel="nofollow noopener" class="tada">
4849    <img src="https://meubelkayumurah.pics/wp-content/uploads/2026/05/icon-musangwin.png" alt="PROMO">
4850    PROMO
4851  </a>
4852  <a href="https://daftarsitusjudibolaonlineterpercaya.pages.dev/" target="_blank" rel="nofollow noopener">
4853    <img src="https://meubelkayumurah.pics/wp-content/uploads/2026/05/icon-musangwin.png" alt="DAFTAR">
4854    DAFTAR
4855  </a>
4856  <a href="https://daftarsitusjudibolaonlineterpercaya.pages.dev/" target="_blank" rel="nofollow noopener">
4857    <img src="https://meubelkayumurah.pics/wp-content/uploads/2026/05/icon-musangwin.png" alt="LIVE CHAT MUSANGWIN">
4858    CHAT
4859  </a>
4860</div>
4861<script defer="" src="https://static.cloudflareinsights.com/beacon.min.js/v8c78df7c7c0f484497ecbca7046644da1771523124516" integrity="sha512-8DS7rgIrAmghBFwoOTujcf6D9rXvH8xm8JQ1Ja01h9QX8EzXldiszufYa4IFfKdLUKTTrnSFXLDkUEOTrZQ8Qg==" data-cf-beacon="{&quot;version&quot;:&quot;2024.11.0&quot;,&quot;token&quot;:&quot;36c9020aa89c44dfb12c7ff1d60c014d&quot;,&quot;r&quot;:1,&quot;server_timing&quot;:{&quot;name&quot;:{&quot;cfCacheStatus&quot;:true,&quot;cfEdge&quot;:true,&quot;cfExtPri&quot;:true,&quot;cfL4&quot;:true,&quot;cfOrigin&quot;:true,&quot;cfSpeedBrain&quot;:true},&quot;location_startswith&quot;:null}}" crossorigin="anonymous"></script>
vendor: 1 bytes, line 4861
4861
4862<script defer="" src="https://static.cloudflareinsights.com/beacon.min.js/v8c78df7c7c0f484497ecbca7046644da1771523124516" integrity="sha512-8DS7rgIrAmghBFwoOTujcf6D9rXvH8xm8JQ1Ja01h9QX8EzXldiszufYa4IFfKdLUKTTrnSFXLDkUEOTrZQ8Qg==" data-cf-beacon="{&quot;version&quot;:&quot;2024.11.0&quot;,&quot;token&quot;:&quot;835657f4f3f04cebbba2cfd489f7fd6e&quot;,&quot;r&quot;:1,&quot;server_timing&quot;:{&quot;name&quot;:{&quot;cfCacheStatus&quot;:true,&quot;cfEdge&quot;:true,&quot;cfExtPri&quot;:true,&quot;cfL4&quot;:true,&quot;cfOrigin&quot;:true,&quot;cfSpeedBrain&quot;:true},&quot;location_startswith&quot;:null}}" crossorigin="anonymous"></script>
vendor: 1 bytes, line 4862
4862
4863<script defer="" src="https://static.cloudflareinsights.com/beacon.min.js/v8c78df7c7c0f484497ecbca7046644da1771523124516" integrity="sha512-8DS7rgIrAmghBFwoOTujcf6D9rXvH8xm8JQ1Ja01h9QX8EzXldiszufYa4IFfKdLUKTTrnSFXLDkUEOTrZQ8Qg==" data-cf-beacon="{&quot;version&quot;:&quot;2024.11.0&quot;,&quot;token&quot;:&quot;867f581c97fe4a51b05beffc58e014d9&quot;,&quot;r&quot;:1,&quot;server_timing&quot;:{&quot;name&quot;:{&quot;cfCacheStatus&quot;:true,&quot;cfEdge&quot;:true,&quot;cfExtPri&quot;:true,&quot;cfL4&quot;:true,&quot;cfOrigin&quot;:true,&quot;cfSpeedBrain&quot;:true},&quot;location_startswith&quot;:null}}" crossorigin="anonymous"></script>
vendor: 1 bytes, line 4863
4863
4864<script defer="" src="https://static.cloudflareinsights.com/beacon.min.js/v8c78df7c7c0f484497ecbca7046644da1771523124516" integrity="sha512-8DS7rgIrAmghBFwoOTujcf6D9rXvH8xm8JQ1Ja01h9QX8EzXldiszufYa4IFfKdLUKTTrnSFXLDkUEOTrZQ8Qg==" data-cf-beacon="{&quot;version&quot;:&quot;2024.11.0&quot;,&quot;token&quot;:&quot;cbac0784f0d54126ad74d3d8f21e2984&quot;,&quot;r&quot;:1,&quot;server_timing&quot;:{&quot;name&quot;:{&quot;cfCacheStatus&quot;:true,&quot;cfEdge&quot;:true,&quot;cfExtPri&quot;:true,&quot;cfL4&quot;:true,&quot;cfOrigin&quot;:true,&quot;cfSpeedBrain&quot;:true},&quot;location_startswith&quot;:null}}" crossorigin="anonymous"></script>
vendor: 1 bytes, line 4864
4864
4865<script defer="" src="https://static.cloudflareinsights.com/beacon.min.js/v8c78df7c7c0f484497ecbca7046644da1771523124516" integrity="sha512-8DS7rgIrAmghBFwoOTujcf6D9rXvH8xm8JQ1Ja01h9QX8EzXldiszufYa4IFfKdLUKTTrnSFXLDkUEOTrZQ8Qg==" data-cf-beacon="{&quot;version&quot;:&quot;2024.11.0&quot;,&quot;token&quot;:&quot;ec8829f476a04b7989e28cdd10a9029a&quot;,&quot;r&quot;:1,&quot;server_timing&quot;:{&quot;name&quot;:{&quot;cfCacheStatus&quot;:true,&quot;cfEdge&quot;:true,&quot;cfExtPri&quot;:true,&quot;cfL4&quot;:true,&quot;cfOrigin&quot;:true,&quot;cfSpeedBrain&quot;:true},&quot;location_startswith&quot;:null}}" crossorigin="anonymous"></script>
vendor: 1 bytes, line 4865
4865
4866<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="{&quot;version&quot;:&quot;2024.11.0&quot;,&quot;token&quot;:&quot;d4223342bdfd4bedb4670b0c9746f5b2&quot;,&quot;r&quot;:1,&quot;server_timing&quot;:{&quot;name&quot;:{&quot;cfCacheStatus&quot;:true,&quot;cfEdge&quot;:true,&quot;cfExtPri&quot;:true,&quot;cfL4&quot;:true,&quot;cfOrigin&quot;:true,&quot;cfSpeedBrain&quot;:true},&quot;location_startswith&quot;:null}}" crossorigin="anonymous"></script>
vendor: 1 bytes, line 4866
4866
4867<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="{&quot;version&quot;:&quot;2024.11.0&quot;,&quot;token&quot;:&quot;f12f65c3abe94ccb941641c521796fe4&quot;,&quot;r&quot;:1,&quot;server_timing&quot;:{&quot;name&quot;:{&quot;cfCacheStatus&quot;:true,&quot;cfEdge&quot;:true,&quot;cfExtPri&quot;:true,&quot;cfL4&quot;:true,&quot;cfOrigin&quot;:true,&quot;cfSpeedBrain&quot;:true},&quot;location_startswith&quot;:null}}" crossorigin="anonymous"></script>
vendor: 1 bytes, line 4867
4867
4868<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon="{&quot;version&quot;:&quot;2024.11.0&quot;,&quot;token&quot;:&quot;ad507821d62b479a986110dd7588ac77&quot;,&quot;r&quot;:1,&quot;spa&quot;:2}" crossorigin="anonymous"></script>
vendor: 1 bytes, line 4868
4868
4869<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon="{&quot;version&quot;:&quot;2024.11.0&quot;,&quot;token&quot;:&quot;e74e6182eedf4ba7a326c7a555e4ed9b&quot;,&quot;r&quot;:1,&quot;spa&quot;:2}" crossorigin="anonymous"></script>
vendor: 1 bytes, line 4869
4869
4870<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon="{&quot;version&quot;:&quot;2024.11.0&quot;,&quot;token&quot;:&quot;5fd4fa7c16d245b19b3e37ad1394e748&quot;,&quot;r&quot;:1,&quot;spa&quot;:2}" crossorigin="anonymous"></script>
vendor: 1 bytes, line 4870
4870
4871<script type="module" src="https://static.cloudflareinsights.com/beacon.min.js/v31edd6df95cf4e85bb4c19e7a9bdbcba1788362987495" integrity="sha512-iIg7k2xntmwu6/uSb5tpc/hySgZc4eoL31yB29W6tJFo2akwjPWcEqnCEdJvGexCL0KEQwVYv5BlowfhVz26hg==" data-cf-beacon="{&quot;version&quot;:&quot;2024.11.0&quot;,&quot;token&quot;:&quot;a7d78ddf1b414ef88af8283a155604fb&quot;,&quot;r&quot;:1,&quot;spa&quot;:2}" crossorigin="anonymous"></script>
4871
4872
4873<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":"ab0b646203274eedacf95c4d273bdb1d","r":1,"spa":2}' crossorigin="anonymous"></script>
4873
4874</body></html>

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.