Showing source for: https://serbu4ddcba.online/
Duration: 0.580459s
Server: cloudflare
<!doctype html>
<html lang="id">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<title>SERBU4D: Link Daftar Agen Platform Resmi Game Online SERBU 4D Terpercaya 2026</title>
<link rel="icon" type="image/png" href="/favicon.png">
<meta name="description" content="Link daftar dengan agen platform resmi game online serbu 4d terpercaya tahun 2026 ini adalah situs serbu4d yang memberikan kemudahan hari ini juga.">
<link rel="canonical" href="https://serbu4ddcba.online/">
<link rel="amphtml" href="https://ampampserbuwow.cyou/" />
<meta name="robots" content="index,follow,max-image-preview:large">
<link rel="alternate" hreflang="id-ID" href="https://serbu4ddcba.online/">
<meta name="author" content="SERBU4D">
<meta name="publisher" content="SERBU4D">
<meta name="copyright" content="SERBU4D">
<meta name="theme-color" content="#d4af37">
<meta property="og:type" content="website">
<meta property="og:site_name" content="SERBU4D">
<meta property="og:title" content="SERBU4D: Link Daftar Agen Platform Resmi Game Online SERBU 4D Terpercaya 2026">
<meta property="og:description" content="Link daftar dengan agen platform resmi game online serbu 4d terpercaya tahun 2026 ini adalah situs serbu4d yang memberikan kemudahan hari ini juga.">
<meta property="og:url" content="https://serbu4ddcba.online/">
<meta property="og:image" content="/images/upload-MobileSlides-20260228123417.jpg">
<meta property="og:locale" content="id_ID">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:title" content="SERBU4D: Link Daftar Agen Platform Resmi Game Online SERBU 4D Terpercaya 2026">
<meta name="twitter:description" content="Link daftar dengan agen platform resmi game online serbu 4d terpercaya tahun 2026 ini adalah situs serbu4d yang memberikan kemudahan hari ini juga.">
<meta name="twitter:site" content="@SERBU4D">
<meta name="twitter:creator" content="@SERBU4D">
<meta name="twitter:image" content="/images/upload-MobileSlides-20260228123417.jpg">
<link href="favicon.png" rel="shortcut icon" type="image/x-icon" />
<meta name="google-site-verification" content="BNqICLwqrH8qEDAPgwSVgbOmlBBz2BACt_DQbIaUYZg" />
<meta name="google-site-verification" content="KLk5S2PDUfQy7o7DjuQltjQ5fnvHTr0SG48knZW2gaM" />
<meta name="google-site-verification" content="yGfCV9zJxeTRn5NvFH4M8Mn3zVDLtMIXPzZf5bxW2To" />
<meta name="google-site-verification" content="gqFOMdRaz4szk7VxGSM14jnmvZm_QZO4N-DpgI87yQI" />
<meta name="google-site-verification" content="yMY3U_8wPN2ndnupgcOej8KNVKFMAS1vS-xcJjXUbVA" />
<meta name="google-site-verification" content="FrRZE50NkrnnFvdvJ_g2_WJFBDM1JNrknUm-OnbUH9I" />
<meta name="google-site-verification" content="6IEqjt9EEr6Q15IYH9K53eQ0Fi9on3v8zvVA8ypxWRo" />
<meta name="google-site-verification" content="q0q5kSj-Lg-4W-aq-s0iavwYV2AQMKHCspwbIsnBZvI" />
<meta name="google-site-verification" content="7vZWFNSpN9y0M0NHC0_pVoKQxiltTJOpsaJR5yVVnt4" />
<meta name="google-site-verification" content="Ort9LqSALXKvwF-DOX-fP11Aqy57M1w8sOavpw6A4gY" />
<meta name="google-site-verification" content="DCIdg4AzgGdzxpLlZUo-Dp7lCCeEp4kj01ZGCiGvK1E" />
<meta name="google-site-verification" content="Zh5_TasC9uH_Flk7tZPbiTnKbIO_Z2gIpXZnb0C8p_A" />
<meta name="google-site-verification" content="tRr1vf5GUArT6TsY2RXfMyk1uFLUhOomIhgOfM6b-X0" />
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@graph": [
{
"@type": "Organization",
"@id": "https://serbu4ddcba.online/#organization",
"name": "SERBU4D",
"url": "https://serbu4ddcba.online/",
"logo": "https://serbu4ddcba.online/images/logoweb.png",
"description": "SERBU4D adalah platform yang menyediakan link daftar game resmi dengan performa akses login yang cepat dan stabil 24 jam. Solusi masuk mudah, aman, dan instan ke SERBU4D.",
"brand": {
"@type": "Brand",
"name": "SERBU4D"
},
"sameAs": [
"https://facebook.com/serbu4d",
"https://instagram.com/serbu4d",
"https://twitter.com/serbu4d"
]
},
{
"@type": "WebSite",
"@id": "https://serbu4ddcba.online/#website",
"url": "https://serbu4ddcba.online/",
"name": "SERBU4D",
"publisher": {
"@id": "https://serbu4ddcba.online/#organization"
},
"potentialAction": {
"@type": "SearchAction",
"target": "https://serbu4ddcba.online/search?q={search_term_string}",
"query-input": "required name=search_term_string"
}
},
{
"@type": "WebPage",
"@id": "https://serbu4ddcba.online/#webpage",
"name": "SERBU4D",
"url": "https://serbu4ddcba.online/",
"description": "SERBU4D adalah platform yang menyediakan link daftar game resmi dengan performa akses login yang cepat dan stabil 24 jam. Solusi masuk mudah, aman, dan instan ke SERBU4D.",
"inLanguage": "id-ID",
"isPartOf": {
"@id": "https://serbu4ddcba.online/#website"
},
"about": {
"@id": "https://serbu4ddcba.online/#organization"
}
},
{
"@type": "BreadcrumbList",
"@id": "https://serbu4ddcba.online/#breadcrumb",
"itemListElement": [
{
"@type": "ListItem",
"position": 1,
"name": "SERBU4D",
"item": "https://serbu4ddcba.online/"
}
]
}
]
}
</script>
<link rel="preconnect" href="https://img.viva88athenae.com">
<link rel="preload" href="/fonts/new/ubuntu-normal-400-latin.woff2" as="font" type="font/woff2" crossorigin>
<link rel="preload" href="/fonts/new/ubuntu-normal-700-latin.woff2" as="font" type="font/woff2" crossorigin>
<link rel="preload" href="/fonts/new/oswald-normal-400-latin.woff2" as="font" type="font/woff2" crossorigin>
<link href="/css/new/vendor/bootstrap.min.css?v=1791889412" rel="stylesheet">
<style id="jt-fonts">/* Self-hosted Ubuntu + Oswald (latin / latin-ext), font-display: swap */
/* latin-ext */
@font-face {
font-family: 'Oswald';
font-style: normal;
font-weight: 400;
font-display: swap;
src: url(/fonts/new/oswald-normal-400-latinext.woff2) format('woff2');
unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
font-family: 'Oswald';
font-style: normal;
font-weight: 400;
font-display: swap;
src: url(/fonts/new/oswald-normal-400-latin.woff2) format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
font-family: 'Oswald';
font-style: normal;
font-weight: 500;
font-display: swap;
src: url(/fonts/new/oswald-normal-500-latinext.woff2) format('woff2');
unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
font-family: 'Oswald';
font-style: normal;
font-weight: 500;
font-display: swap;
src: url(/fonts/new/oswald-normal-500-latin.woff2) format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
font-family: 'Oswald';
font-style: normal;
font-weight: 600;
font-display: swap;
src: url(/fonts/new/oswald-normal-600-latinext.woff2) format('woff2');
unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
font-family: 'Oswald';
font-style: normal;
font-weight: 600;
font-display: swap;
src: url(/fonts/new/oswald-normal-600-latin.woff2) format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
font-family: 'Oswald';
font-style: normal;
font-weight: 700;
font-display: swap;
src: url(/fonts/new/oswald-normal-700-latinext.woff2) format('woff2');
unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
font-family: 'Oswald';
font-style: normal;
font-weight: 700;
font-display: swap;
src: url(/fonts/new/oswald-normal-700-latin.woff2) format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
font-family: 'Ubuntu';
font-style: italic;
font-weight: 300;
font-display: swap;
src: url(/fonts/new/ubuntu-italic-300-latinext.woff2) format('woff2');
unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
font-family: 'Ubuntu';
font-style: italic;
font-weight: 300;
font-display: swap;
src: url(/fonts/new/ubuntu-italic-300-latin.woff2) format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
font-family: 'Ubuntu';
font-style: italic;
font-weight: 400;
font-display: swap;
src: url(/fonts/new/ubuntu-italic-400-latinext.woff2) format('woff2');
unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
font-family: 'Ubuntu';
font-style: italic;
font-weight: 400;
font-display: swap;
src: url(/fonts/new/ubuntu-italic-400-latin.woff2) format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
font-family: 'Ubuntu';
font-style: italic;
font-weight: 500;
font-display: swap;
src: url(/fonts/new/ubuntu-italic-500-latinext.woff2) format('woff2');
unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
font-family: 'Ubuntu';
font-style: italic;
font-weight: 500;
font-display: swap;
src: url(/fonts/new/ubuntu-italic-500-latin.woff2) format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
font-family: 'Ubuntu';
font-style: italic;
font-weight: 700;
font-display: swap;
src: url(/fonts/new/ubuntu-italic-700-latinext.woff2) format('woff2');
unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
font-family: 'Ubuntu';
font-style: italic;
font-weight: 700;
font-display: swap;
src: url(/fonts/new/ubuntu-italic-700-latin.woff2) format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
font-family: 'Ubuntu';
font-style: normal;
font-weight: 300;
font-display: swap;
src: url(/fonts/new/ubuntu-normal-300-latinext.woff2) format('woff2');
unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
font-family: 'Ubuntu';
font-style: normal;
font-weight: 300;
font-display: swap;
src: url(/fonts/new/ubuntu-normal-300-latin.woff2) format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
font-family: 'Ubuntu';
font-style: normal;
font-weight: 400;
font-display: swap;
src: url(/fonts/new/ubuntu-normal-400-latinext.woff2) format('woff2');
unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
font-family: 'Ubuntu';
font-style: normal;
font-weight: 400;
font-display: swap;
src: url(/fonts/new/ubuntu-normal-400-latin.woff2) format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
font-family: 'Ubuntu';
font-style: normal;
font-weight: 500;
font-display: swap;
src: url(/fonts/new/ubuntu-normal-500-latinext.woff2) format('woff2');
unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
font-family: 'Ubuntu';
font-style: normal;
font-weight: 500;
font-display: swap;
src: url(/fonts/new/ubuntu-normal-500-latin.woff2) format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
font-family: 'Ubuntu';
font-style: normal;
font-weight: 700;
font-display: swap;
src: url(/fonts/new/ubuntu-normal-700-latinext.woff2) format('woff2');
unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
font-family: 'Ubuntu';
font-style: normal;
font-weight: 700;
font-display: swap;
src: url(/fonts/new/ubuntu-normal-700-latin.woff2) format('woff2');
unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
</style> <style id="jt-theme">/* Theme: GM — GM */
:root {
/* --- Accent --- */
--accent-color: #5d0201;
/* --- Text --- */
--primary-text-color: #ffffff;
--secondary-text-color: #d4d4d4;
--accent-text-color: #8f0302;
/* --- Teks tambahan --- */
--muted-text-color: #888888;
--muted-text-color-secondary: #2b2626;
--muted-text-color-tertiary: #b54b4a;
/* --- Background utama --- */
--primary-background-color: #240f0f;
--secondary-background-color: #1c0808;
--ternary-background-color: #2e1515;
--quaternary-background-color: #240f0f;
/* --- Background tambahan --- */
--placeholder-bg: #3e1e1e;
--overlay-bg: rgba(0,0,0,0.6);
--handle-color: rgba(255,255,255,0.2);
--table-hover-bg: rgba(93,2,1,0.05);
--btn-close-hover-bg: rgba(128,128,128,0.12);
--qr-bg: #ffffff;
/* --- Navbar --- */
--navbar-bg: var(--ternary-background-color);
--bottom-navbar-bg: var(--ternary-background-color);
/* --- Navbar text --- */
--navbar-text-color: #ffffff;
--bottom-navbar-text-color: #ffffff;
/* --- Header & Home elemen (terpisah dari primary/secondary/accent-text) --- */
--topbar-link-color: var(--primary-text-color);
--section-title-color: var(--primary-text-color);
--togel-market-name-color: var(--primary-text-color);
--balance-text-color: var(--secondary-text-color);
--nav-active-color: var(--accent-text-color);
--marquee-date-color: var(--accent-text-color);
--username-text-color: var(--secondary-text-color);
--marquee-text-color: var(--secondary-text-color);
/* --- Menu / Marquee / Search --- */
--menu-box-bg: rgba(93,2,1,0.05);
--marquee-bg: #1c0808;
--search-bg: #2e1515;
/* --- Widget profile gradient --- */
--widget-profile-bg-start: #3f1d1c;
--widget-profile-bg-end: #1c0808;
/* --- Tombol Deposit (gradient) --- */
--btn-deposit-color-start: #d40502;
--btn-deposit-color-mid: #fd2826;
--btn-deposit-color-end: #d40502;
--btn-deposit-text: #ffffff;
/* --- Tombol Withdraw (gradient) --- */
--btn-withdraw-color-start: #1c0808;
--btn-withdraw-color-end: #2e1515;
--btn-withdraw-text: #ffffff;
/* --- Tab aktif & tabel rekening (terpisah dari accent utama) --- */
--tx-tab-active-color: var(--accent-color);
--tx-table-accent-color: var(--accent-text-color);
/* --- Table stripe & input placeholder (terpisah, dikalibrasi thd bg literal) --- */
--table-stripe-odd-bg: var(--primary-background-color);
--table-stripe-even-bg: var(--secondary-background-color);
--input-placeholder-color: #6b7280;
/* --- CMS sidebar nav item (state tidak-aktif/hover/aktif, terpisah dari muted-text-color umum) --- */
--cms-nav-color: var(--muted-text-color);
--cms-nav-hover-color: var(--secondary-text-color);
--cms-nav-active-color: var(--primary-text-color);
/* --- History table --- */
--color-tanggal: #ef5350;
--color-pasaran: #42a5f5;
--color-debit: #ef5350;
--color-kredit: #66bb6a;
--color-balance: #42a5f5;
/* --- Component backgrounds --- */
--btn-menu-bg: var(--ternary-background-color);
--card-bg: var(--ternary-background-color);
--avatar-bg: var(--ternary-background-color);
--table-header-bg: var(--ternary-background-color);
--dropdown-bg: var(--secondary-background-color);
--sidebar-bg: var(--secondary-background-color);
--input-bg: var(--secondary-background-color);
--menu-box-border-color: rgba(93,2,1,0.12);
--breadcrumb-color: var(--accent-color);
--alert-danger-bg: #ee5f5b;
/* --- Accent alpha (untuk hover/active) --- */
--accent-bg-subtle: rgba(93,2,1,0.10);
--accent-bg-active: rgba(93,2,1,0.12);
--accent-border-subtle: rgba(93,2,1,0.32);
/* --- Skeleton shimmer --- */
--skeleton-color-base: var(--ternary-background-color);
--skeleton-color-shine: #3e1e1e;
/* --- Card togel pasaran (home) --- */
--togel-card-bg: var(--secondary-background-color);
--togel-card-number-color: var(--primary-text-color);
/* --- Splide pagination --- */
--splide-pagination-inactive: #dee2e6;
/* --- Border --- */
--border-color: rgba(255,255,255,0.08);
--border-subtle-color: rgba(255,255,255,0.04);
/* --- Font & Radius --- */
--font-body: "Ubuntu", sans-serif;
--radius-sm: 6px;
--radius-md: 8px;
--radius-lg: 10px;
--radius-xl: 12px;
--radius-pill: 999px;
/* --- Font sizes --- */
--fs-xs: 10px;
--fs-sm: 11px;
--fs-md: 12px;
--fs-base: 13px;
--fs-lg: 14px;
--fs-xl: 15px;
--fs-2xl: 16px;
--fs-3xl: 18px;
}
:root[data-theme="light"] {
/* --- Light theme overrides (auto-generated dari base gelap) --- */
/* --- Accent --- */
--accent-color: #5d0201;
/* --- Text --- */
--primary-text-color: #141414;
--secondary-text-color: #2b2b2b;
--accent-text-color: #8f0302;
/* --- Teks tambahan --- */
--muted-text-color: #595959;
--muted-text-color-secondary: #5c5656;
--muted-text-color-tertiary: #6c4747;
/* --- Background utama --- */
--primary-background-color: #eae1e1;
--secondary-background-color: #f0eaea;
--ternary-background-color: #e2d9d9;
--quaternary-background-color: #eae1e1;
/* --- Background tambahan --- */
--placeholder-bg: #d7cbcb;
--overlay-bg: rgba(0,0,0,0.6);
--handle-color: rgba(0,0,0,0.2);
--table-hover-bg: rgba(93,2,1,0.05);
--btn-close-hover-bg: rgba(128,128,128,0.12);
--qr-bg: #ffffff;
/* --- Navbar --- */
--navbar-bg: var(--ternary-background-color);
--bottom-navbar-bg: var(--ternary-background-color);
/* --- Navbar text --- */
--navbar-text-color: #141414;
--bottom-navbar-text-color: #141414;
/* --- Header & Home elemen (terpisah dari primary/secondary/accent-text) --- */
--topbar-link-color: var(--primary-text-color);
--section-title-color: var(--primary-text-color);
--togel-market-name-color: var(--primary-text-color);
--balance-text-color: var(--secondary-text-color);
--nav-active-color: var(--accent-text-color);
--marquee-date-color: var(--accent-text-color);
--username-text-color: var(--secondary-text-color);
--marquee-text-color: var(--secondary-text-color);
/* --- Menu / Marquee / Search --- */
--menu-box-bg: rgba(93,2,1,0.05);
--marquee-bg: #f0eaea;
--search-bg: #e2d9d9;
/* --- Widget profile gradient --- */
--widget-profile-bg-start: #d8cbca;
--widget-profile-bg-end: #f0eaea;
/* --- Tombol Deposit (gradient) --- */
--btn-deposit-color-start: #d40502;
--btn-deposit-color-mid: #fd2826;
--btn-deposit-color-end: #d40502;
--btn-deposit-text: #ffffff;
/* --- Tombol Withdraw (gradient) --- */
--btn-withdraw-color-start: #f0eaea;
--btn-withdraw-color-end: #e2d9d9;
--btn-withdraw-text: #141414;
/* --- Tab aktif & tabel rekening (terpisah dari accent utama) --- */
--tx-tab-active-color: var(--accent-color);
--tx-table-accent-color: var(--accent-text-color);
/* --- Table stripe & input placeholder (terpisah, dikalibrasi thd bg literal) --- */
--table-stripe-odd-bg: var(--primary-background-color);
--table-stripe-even-bg: var(--secondary-background-color);
--input-placeholder-color: #6b7280;
/* --- CMS sidebar nav item (state tidak-aktif/hover/aktif, terpisah dari muted-text-color umum) --- */
--cms-nav-color: var(--muted-text-color);
--cms-nav-hover-color: var(--secondary-text-color);
--cms-nav-active-color: var(--primary-text-color);
/* --- History table --- */
--color-tanggal: #c91612;
--color-pasaran: #0967b3;
--color-debit: #c91612;
--color-kredit: #327135;
--color-balance: #0967b3;
/* --- Component backgrounds --- */
--btn-menu-bg: var(--ternary-background-color);
--card-bg: var(--ternary-background-color);
--avatar-bg: var(--ternary-background-color);
--table-header-bg: var(--ternary-background-color);
--dropdown-bg: var(--secondary-background-color);
--sidebar-bg: var(--secondary-background-color);
--input-bg: var(--secondary-background-color);
--menu-box-border-color: rgba(93,2,1,0.12);
--breadcrumb-color: var(--accent-color);
--alert-danger-bg: #ee5f5b;
/* --- Accent alpha (untuk hover/active) --- */
--accent-bg-subtle: rgba(93,2,1,0.10);
--accent-bg-active: rgba(93,2,1,0.12);
--accent-border-subtle: rgba(93,2,1,0.32);
/* --- Skeleton shimmer --- */
--skeleton-color-base: var(--ternary-background-color);
--skeleton-color-shine: #d7cbcb;
/* --- Card togel pasaran (home) --- */
--togel-card-bg: var(--secondary-background-color);
--togel-card-number-color: var(--primary-text-color);
/* --- Splide pagination --- */
--splide-pagination-inactive: #a8b2bd;
/* --- Border --- */
--border-color: rgba(0,0,0,0.08);
--border-subtle-color: rgba(0,0,0,0.04);
/* --- Font & Radius --- */
--font-body: "Ubuntu", sans-serif;
--radius-sm: 6px;
--radius-md: 8px;
--radius-lg: 10px;
--radius-xl: 12px;
--radius-pill: 999px;
/* --- Font sizes --- */
--fs-xs: 10px;
--fs-sm: 11px;
--fs-md: 12px;
--fs-base: 13px;
--fs-lg: 14px;
--fs-xl: 15px;
--fs-2xl: 16px;
--fs-3xl: 18px;
}
/* History table column colors */
.history-table .col-tanggal { white-space: nowrap; color: var(--color-tanggal); }
.history-table .col-pasaran { color: var(--color-pasaran); }
.history-table .col-betid { font-size: var(--fs-xs); word-break: break-all; color: var(--accent-text-color); }
.history-table .col-deskripsi { color: var(--primary-text-color); }
.history-table .col-balance { white-space: nowrap; color: var(--color-balance); }
</style> <link rel="stylesheet" href="/css/new/layout.min.css?v=1791889412">
<link rel="stylesheet" href="/css/new/logo.css?v=1791889412">
<style>.splide__list{display:flex;margin:0!important;padding:0!important}.splide__track{overflow:hidden;position:relative}</style>
<link id="css-home-sections" rel="stylesheet" href="/css/new/home-sections.min.css?v=1791889412" media="print" onload="this.media='all'">
<link id="css-bootstrap-icons" rel="stylesheet" href="/css/new/vendor/bootstrap-icons.min.css?v=1791889412" media="print" onload="this.media='all'">
<link id="css-splide" rel="stylesheet" href="/css/new/vendor/splide.min.css?v=1791889412" media="print" onload="this.media='all'">
<noscript>
<link rel="stylesheet" href="/css/new/home-sections.min.css?v=1791889412">
<link rel="stylesheet" href="/css/new/vendor/bootstrap-icons.min.css?v=1791889412">
<link rel="stylesheet" href="/css/new/vendor/splide.min.css?v=1791889412">
<link rel="stylesheet" href="/css/new/game.min.css?v=1791889412">
</noscript>
<style>
@media (max-width: 768px) {
.driver-popover { max-width: 220px !important; font-size: 12px !important; padding: 10px 12px !important; }
.driver-popover-title { font-size: 13px !important; margin-bottom: 4px !important; }
.driver-popover-description { font-size: 12px !important; }
}
</style>
<style>
a {
color: inherit; /* blue colors for links too */
text-decoration: inherit; /* no underline */
}
.desktop-only {
display: block!important;
}
.mobile-only {
display: none !important;
}
.btn {
height: 30px;
border-radius: 3px;
}
.login-field {
width: 104px;
height: 30px;
border-radius: 3px;
}
.login-input-field {
margin: 0px;
padding: 0px 8px;
border-radius: 3px !important;
}
.section>.home-view {
padding: 0px;
}
@media only screen and (max-width: 1000px) {
.desktop-only {
display: none!important;
}
.mobile-only {
display: block!important;
}
.login-form {
padding: 32px 0;
margin: 0px 64px;
display: flex;
flex-direction: column;
}
.login-field, .login-form>button, .btn-promosi {
height: 36px;
width: 100% !important;
border-radius: 8px;
overflow: hidden;
}
.login-input-field {
border-top-left-radius: 0 !important;
border-bottom-left-radius: 0 !important;
font-size: 1rem;
}
.section {
padding: 0px 8px!important;
}
}
.grecaptcha-badge {
display: none !important;
}
</style>
</head>
<body>
<script src="/js/new/vendor/jquery.min.js?v=1791889412"></script>
<script>
window.JT_CSRF_TOKEN = 'e72411456a97856416d63bd24608b8e33eae776bd64b31ba83522ced84b3c085';
window.JT_NEED_RECAPTCHA_REGISTER = false;
window.JT_NEED_RECAPTCHA_LOGIN = false;
window.JT_NEED_RECAPTCHA = false;
window.JT_RECAPTCHA_SITE_KEY = '6Leu4cosAAAAABe-B_1-oryumOl99wsUEEFN3z8A';
window.JT_NEED_TURNSTILE_REGISTER = false;
window.JT_NEED_TURNSTILE_LOGIN = false;
window.JT_NEED_TURNSTILE = false;
window.JT_NEED_IFRAME_CAPTCHA = false;
window.JT_CAPTCHA_LOGIN_MODE = '1';
window.JT_CAPTCHA_REGISTER_MODE = '1';
$.ajaxSetup({
beforeSend: function (xhr, settings) {
if (settings.type === 'POST' && !settings.crossDomain) {
xhr.setRequestHeader('X-CSRF-Token', window.JT_CSRF_TOKEN || '');
}
}
});
var _recaptchaLoader = null;
function jtLoadRecaptcha() {
if (!window.JT_NEED_RECAPTCHA) return Promise.resolve();
if (typeof grecaptcha !== 'undefined' && grecaptcha.enterprise) return Promise.resolve();
if (_recaptchaLoader) return _recaptchaLoader;
_recaptchaLoader = new Promise(function (resolve, reject) {
var s = document.createElement('script');
s.src = 'https://www.google.com/recaptcha/enterprise.js?render=' + encodeURIComponent(window.JT_RECAPTCHA_SITE_KEY);
s.async = true;
s.onload = function () { resolve(); };
s.onerror = function () { _recaptchaLoader = null; reject(new Error('recaptcha load failed')); };
document.head.appendChild(s);
});
return _recaptchaLoader;
}
function jtWarmAuthScripts() {
if (window.JT_NEED_RECAPTCHA) jtLoadRecaptcha().catch(function () {});
if (window.JT_NEED_TURNSTILE && typeof window.turnst === 'function') {
window.turnst('').catch(function () {});
}
}
$(document).on(
'focusin',
'#desktoplogin input, #mobilelogin input, #formRegister input, #formRegister select, #desktopregister input, #mobileregister input',
jtWarmAuthScripts
);
$(document).on(
'click',
'.btn-daftar, [onclick*="register"], a[href*="register"]',
jtWarmAuthScripts
);
function jtNeedRecaptchaRegister($form) {
var isRecaptchaRegister = String($form.find('input[name="isrecaptcharegister"]').val() || '');
return window.JT_NEED_RECAPTCHA_REGISTER === true || isRecaptchaRegister === '1';
}
function jtNeedRecaptchaLogin($form) {
var isRecaptchaLogin = String($form.find('input[name="isrecaptchalogin"]').val() || '');
return window.JT_NEED_RECAPTCHA_LOGIN === true || isRecaptchaLogin === '1';
}
function jtWithRecaptchaToken($form, $status, action, shouldRun, onReady, failCls, onFail, tokenField) {
if (!shouldRun) {
onReady();
return;
}
var fieldName = tokenField || 'recaptcha_token';
var warnCls = (failCls === undefined) ? 'alert alert-sm alert-warning' : failCls;
function showFail(msg) {
if (warnCls) {
$status.removeClass().addClass(warnCls).text(msg).fadeIn(1000);
} else {
$status.removeClass().text(msg).fadeIn(1000);
}
if (typeof onFail === 'function') {
onFail();
}
}
jtLoadRecaptcha().then(function () {
if (typeof grecaptcha === 'undefined' || !grecaptcha.enterprise) {
showFail('Verifikasi gagal dimuat, refresh halaman');
return;
}
grecaptcha.enterprise.ready(function () {
grecaptcha.enterprise.execute(window.JT_RECAPTCHA_SITE_KEY, { action: action })
.then(function (token) {
jtSetHidden($form, fieldName, token);
onReady();
})
.catch(function () {
showFail('Verifikasi gagal, coba lagi');
});
});
}).catch(function () {
showFail('Verifikasi gagal dimuat, refresh halaman');
});
}
function jtWithRecaptchaRegisterToken($form, $status, onReady) {
jtWithRecaptchaToken($form, $status, 'register', jtNeedRecaptchaRegister($form), onReady, undefined, undefined, 'recaptcha_register_token');
}
function jtWithRecaptchaLoginToken($form, $status, onReady, onFail) {
jtWithRecaptchaToken($form, $status, 'login', jtNeedRecaptchaLogin($form), onReady, '', onFail, 'recaptcha_login_token');
}
function jtSetHidden($form, name, value) {
var $el = $form.find('input[name="' + name + '"]');
if ($el.length === 0) {
$form.append('<input type="hidden" name="' + name + '" value="">');
$el = $form.find('input[name="' + name + '"]');
}
$el.val(value);
}
function jtWithTurnstileAction($form, actionName, needFlag, onReady) {
if (!needFlag || typeof window.turnst !== 'function') {
onReady();
return;
}
window.turnst(actionName).then(function (fpResult) {
jtSetHidden($form, 'fp_event_id', (fpResult && fpResult.eventId) || '');
jtSetHidden($form, 'fp_visitor_id', (fpResult && fpResult.visitorId) || '');
onReady();
}).catch(function () {
jtSetHidden($form, 'fp_event_id', '');
jtSetHidden($form, 'fp_visitor_id', '');
onReady();
});
}
function jtWithTurnstileRegister($form, onReady) {
jtWithTurnstileAction($form, 'account_create', window.JT_NEED_TURNSTILE_REGISTER, onReady);
}
function jtWithTurnstileLogin($form, onReady) {
jtWithTurnstileAction($form, 'account_login', window.JT_NEED_TURNSTILE_LOGIN, onReady);
}
var _jtIframePending = null;
function jtShowIframeCaptcha(isMobile, onReady, onCancelMsg) {
if (!window.JT_NEED_IFRAME_CAPTCHA) {
onReady();
return;
}
var modalId = isMobile ? '#captchaModalMobile' : '#captchaModalDesktop';
var $modal = $(modalId);
if ($modal.length === 0) {
onReady();
return;
}
_jtIframePending = {
isMobile: !!isMobile,
onReady: onReady,
onCancelMsg: onCancelMsg || null
};
$modal.css('display', 'flex');
}
function jtWithIframeCaptchaLogin($form, isMobile, onReady, onCancelMsg) {
var mode = String($form.find('input[name="iscaptchalogin"]').val() || window.JT_CAPTCHA_LOGIN_MODE || '1');
if (mode !== '2') {
onReady();
return;
}
jtShowIframeCaptcha(isMobile, function (token, key) {
jtSetHidden($form, 'token', token || '');
jtSetHidden($form, 'key', key || '');
onReady();
}, onCancelMsg);
}
function jtWithIframeCaptchaRegister($form, isMobile, onReady, onCancelMsg) {
var mode = String($form.find('input[name="iscaptcharegister"]').val() || window.JT_CAPTCHA_REGISTER_MODE || '1');
if (mode !== '2') {
onReady();
return;
}
jtShowIframeCaptcha(isMobile, function (token, key) {
jtSetHidden($form, 'token', token || '');
jtSetHidden($form, 'key', key || '');
onReady();
}, onCancelMsg);
}
window.addEventListener('message', function (e) {
if (e.origin !== 'https://recaptcha.viva88athenae.com') {
return;
}
if (!_jtIframePending) {
return;
}
var pending = _jtIframePending;
_jtIframePending = null;
var dataCaptcha = e.data || {};
var $modal = pending.isMobile ? $('#captchaModalMobile') : $('#captchaModalDesktop');
$modal.css('display', 'none');
if (dataCaptcha.verified !== true) {
if (typeof pending.onCancelMsg === 'function') {
pending.onCancelMsg('Verifikasi Kosong');
}
return;
}
if (typeof pending.onReady === 'function') {
pending.onReady(dataCaptcha.token || '', dataCaptcha.key || '');
}
});
</script>
<style>
.btn-tele {
text-shadow: 1px 1px #000000;
height: 36px!important;
border-radius: 8px;
background: #28323C;
color: white;
}
</style>
<div class="offcanvas offcanvas-end" tabindex="-1" id="offcanvasRight" aria-labelledby="offcanvasExampleLabel" style="width: 50%; background: var(--primary-background-color); color: var(--primary-text-color); z-index: 99999">
<div class="offcanvas-header py-3 d-flex justify-content-between">
<h5 class="offcanvas-title" id="offcanvasExampleLabel" style="color: var(--menu-item-color); font-size: 1.2rem; font-weight: bold">Kontak Kami</h5>
<button type="button" class="text-reset" style="background: transparent; border: none" data-bs-dismiss="offcanvas" aria-label="Close"><i class="bi bi-x" style="color: var(--primary-text-color); font-size: 20px"></i></button>
</div>
<div class="offcanvas-body p-0 px-2">
<div class="d-flex flex-column w-100 gap-2">
<a href="https://bebasbuka.co/telegramserbu4d" target='_blank' class="d-flex p-3 w-100 gap-3 rounded" style="background: var(--menu-box-bg, transparent); border: 1px solid var(--menu-box-border-color, rgba(255, 255, 255, 0.06));">
<div class="fw-bold"><img src="https://img.viva88athenae.com/kontak/telegram.png" width="18" height="18" alt=""></div>
<div style="color: var(--primary-text-color);">SERBU4D</div>
</a>
<a href="https://www.facebook.com/situsserbu4d" target='_blank' class="d-flex p-3 w-100 gap-3 rounded" style="background: var(--menu-box-bg, transparent); border: 1px solid var(--menu-box-border-color, rgba(255, 255, 255, 0.06));">
<div class="fw-bold"><img src="https://img.viva88athenae.com/kontak/facebook.png" width="18" height="18" alt=""></div>
<div style="color: var(--primary-text-color);">SERBU4D</div>
</a>
<a href="https://akubeda.cyou/waserbu" target='_blank' class="d-flex p-3 w-100 gap-3 rounded" style="background: var(--menu-box-bg, transparent); border: 1px solid var(--menu-box-border-color, rgba(255, 255, 255, 0.06));">
<div class="fw-bold"><img src="https://img.viva88athenae.com/kontak/sms.png" width="18" height="18" alt=""></div>
<div style="color: var(--primary-text-color);">6287821715245</div>
</a>
<a href="https://akubeda.cyou/waserbu" target='_blank' class="d-flex p-3 w-100 gap-3 rounded" style="background: var(--menu-box-bg, transparent); border: 1px solid var(--menu-box-border-color, rgba(255, 255, 255, 0.06));">
<div class="fw-bold"><img src="https://img.viva88athenae.com/kontak/phone.png" width="18" height="18" alt=""></div>
<div style="color: var(--primary-text-color);">6287821715245</div>
</a>
<a href="https://akubeda.cyou/waserbu" target='_blank' class="d-flex p-3 w-100 gap-3 rounded" style="background: var(--menu-box-bg, transparent); border: 1px solid var(--menu-box-border-color, rgba(255, 255, 255, 0.06));">
<div class="fw-bold"><img src="https://img.viva88athenae.com/kontak/whatsapp.png" width="18" height="18" alt=""></div>
<div style="color: var(--primary-text-color);">6287821715245</div>
</a>
</div>
</div>
</div>
<style>
#mySidenav {
position: fixed;
top: 180px;
right: 100px;
z-index: 999;
}
#mySidenav div#nav:hover {
left: -138px;
}
#mySidenav div#nav {
position: absolute;
font-size: 20px;
border-radius: 0 5px 5px 0;
left: 36px;
transition: 0.3s;
display: flex;
}
#kontak-content {
width: 190px;
padding: 5px 10px 8px 10px;
font-size: 15px;
background-color: #FFF;
color: #000;
}
</style>
<!-- SIDENAV -->
<div id="mySidenav" class="sidenav desktop-only">
<div id="nav">
<div style="display: flex; align-items: start;">
<div style="height: 246px; width: 64px; background: var(--accent-color); border-radius: 8px 0px 0px 8px; overflow: hidden; box-shadow: rgba(0, 0, 0, 0.35) 0px 5px 15px;">
<img src="https://img.viva88athenae.com//new/assets/hubungi.png?2" alt="Hubungi Kami">
</div>
<!--<img id="about" src="/images/kontak.png?4">-->
</div>
<div class="ptsans" style="font-size: 1rem; background: white; border-radius: 0px 5px 5px 5px; overflow: hidden; width: 160px">
<div id="" style="padding: 4px">
<img src="/assets/24h.png" style="width: 100%" alt="Layanan 24 Jam">
</div>
<div id="kontak-content" style="display: flex; flex-direction: column; width: 100%; font-size: .8rem">
<div style="display: grid; place-items: center; font-weight: bold; font-size: 1rem">MEMBER SERVICE</div>
<a href="https://bebasbuka.co/telegramserbu4d" target='_blank' style="padding: 4px; display: flex; align-items: center; gap: 8px; border-bottom: 1px solid #e0e0e0">
<img src="https://img.viva88athenae.com/kontak/telegram.png" width="20" height="20" alt=""><span>SERBU4D</span>
</a>
<a href="https://www.facebook.com/situsserbu4d" target='_blank' style="padding: 4px; display: flex; align-items: center; gap: 8px; border-bottom: 1px solid #e0e0e0">
<img src="https://img.viva88athenae.com/kontak/facebook.png" width="20" height="20" alt=""><span>SERBU4D</span>
</a>
<a href="https://akubeda.cyou/waserbu" target='_blank' style="padding: 4px; display: flex; align-items: center; gap: 8px; border-bottom: 1px solid #e0e0e0">
<img src="https://img.viva88athenae.com/kontak/sms.png" width="20" height="20" alt=""><span>6287821715245</span>
</a>
<a href="https://akubeda.cyou/waserbu" target='_blank' style="padding: 4px; display: flex; align-items: center; gap: 8px; border-bottom: 1px solid #e0e0e0">
<img src="https://img.viva88athenae.com/kontak/phone.png" width="20" height="20" alt=""><span>6287821715245</span>
</a>
<a href="https://akubeda.cyou/waserbu" target='_blank' style="padding: 4px; display: flex; align-items: center; gap: 8px; border-bottom: 1px solid #e0e0e0">
<img src="https://img.viva88athenae.com/kontak/whatsapp.png" width="20" height="20" alt=""><span>6287821715245</span>
</a>
</div>
<div style="margin: 8px">
<a href="/register"><input type="button" value="DAFTAR SEKARANG" style="width: 100%; border-radius: 5px; font-size: .875rem!important; height: 40px; border: none; font-weight: bold; background: black; color: white"></a>
</div>
</div>
</div>
</div>
<div class="d-none d-md-block px-2">
<div class="section desktop-topbar d-flex align-items-center justify-content-between">
<div class="d-flex align-items-center gap-4">
</div>
<!-- Desktop Login Start -->
<style>
.login-form {
display: flex;
align-items: center;
justify-content: end;
gap: 4px;
}
.btn-masuk {
background: linear-gradient(#f17a77, #ee5f5b 60%, #ec4d49) !important;
color: white;
}
.btn-daftar {
background: linear-gradient(#74cae3, #5bc0de 60%, #4ab9db); !important;
color: white;
}
.btn-google {
width: 30px;
height: 30px;
background: #fff;
border: 1px solid #ddd;
border-radius: 3px;
display: inline-flex;
align-items: center;
justify-content: center;
}
.btn-google:hover {
background: #f5f5f5;
}
.btn-google-mobile {
background: #fff;
color: #3c4043;
border: 1px solid #dadce0;
border-radius: 3px;
height: 36px;
padding: 0 12px;
font-weight: 600;
font-size: 1.2rem;
display: flex;
align-items: center;
justify-content: center;
gap: 8px;
}
.btn-google-mobile:hover {
background: #f8f9fa;
color: #202124;
}
</style>
<div class="d-flex align-items-center gap-2">
<div id="desktoplogin" class="desktop-only">
<form class="login-form form" role="form">
<div id="msgbox" style="margin-right: 8px; color: #b29459; font-size: 1rem; white-space:nowrap;"></div>
<div class="input-group login-field">
<span class="input-group-text prepend mobile-only "><div class="h-100 center"><i class="bi bi-person-circle prepend-icon"></i></div></span>
<input type="text" name="username" class="form-control login-input-field username" placeholder="Nama Akun" aria-label="Username">
</div>
<div class="input-group login-field">
<span class="input-group-text mobile-only prepend"><div class="h-100 center"><i class="bi bi-shield-lock-fill prepend-icon"></i></div></span>
<input type="password" name="password" class="form-control login-input-field password" placeholder="Kata Sandi" aria-label="Password">
</div>
<!-- captcha -->
<div class="verifikasiform" style="">
<div style="display: flex; gap: 2px;">
<span id="verifikasi"><img src="/capimg.php" width="40" height="30" style="border:1px #999 solid;" alt="Kode verifikasi"></span>
<input type="text" class="form-control login-field" name="verifikasi" id="verform" style="width:40px;height: 30px !important" autocomplete="off" aria-label="Kode verifikasi">
</div>
</div>
<input type="hidden" name="verif" id="verifval" class="verifval" value="1">
<!-- end captcha -->
<!--<button value="Masuk" class="btn btn-masuk fw-bold p-0 px-2 submit">Masuk</button>-->
<button type="button" class="btn btn-masuk fw-bold p-0 px-2 submit d-flex justify-content-center align-items-center">Masuk</button>
<button type="button" class="btn btn-daftar btn-daftar-desktop fw-bold p-0 px-2 desktop-only" onclick="openRegister('desktop')">Daftar</button>
<input type="hidden" name="task" value="login">
<input type="hidden" name="iscaptchalogin" value="1">
<input type="hidden" name="isrecaptchalogin" value="0">
<input type="hidden" name="recaptcha_login_token" value="">
<input type="hidden" name="fp_event_id" value="">
<input type="hidden" name="fp_visitor_id" value="">
<input type="hidden" name="logindesktop" value="++xallHkXxsruE8sljIIM8eJRvgRmYEi8zhEvgVzcjY=">
</form>
<script>
function jtRandomString(length) {
var result = '';
var characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
for (var i = 0; i < length; i++) {
result += characters.charAt(Math.floor(Math.random() * characters.length));
}
return result;
}
function jtGetCaptchaHtml(captchaPath, captchaStyle) {
var r = Math.floor(Math.random() * 10000);
return '<img src="' + captchaPath + '?' + r + '" ' + captchaStyle + ' alt="Kode verifikasi">';
}
function jtHandleLoginResponse(res, $root, verHtml) {
var $msg = $root.find('#msgbox');
var code = res && res.error && res.error.code;
var msg = res && res.error && res.error.message;
var data = (res && res.data) || {};
if (code === 200 && msg === 'success') {
toast('Login berhasil', 200);
$msg.removeClass().text('Logging in').fadeTo(900, 1, function() {
window.location = '/home';
});
return;
}
if (code === 429 || msg === 'ratelimit') {
$msg.removeClass().text('Terlalu banyak percobaan.').fadeIn(1000);
} else if (msg === 'wrong') {
$msg.removeClass().text('Salah Password').fadeIn(1000);
$root.find('#verifikasi').html(verHtml);
} else if (msg === 'banned') {
$msg.removeClass().text('User di Banned').fadeIn(1000);
$root.find('#verifikasi').html(verHtml);
} else if (msg === 'empty') {
$msg.removeClass().text('Silakan diisi').fadeIn(1000);
} else if (msg === 'capempty') {
$msg.removeClass().text('Verifikasi Kosong').fadeIn(1000);
$root.find('#verifikasi').html(verHtml);
} else if (msg === 'caperror') {
$msg.removeClass().text('Verifikasi Salah').fadeIn(1000);
$root.find('#verifikasi').html(verHtml);
} else if (msg === 'recaperror') {
$msg.removeClass().text('Recaptcha salah, coba lagi').fadeIn(1000);
} else if (msg === 'iperror') {
$msg.removeClass().text('IP Tidak Sesuai').fadeIn(1000);
$root.find('#verifikasi').html(verHtml);
} else if (msg === 'capexp') {
$msg.removeClass().text('Captcha Expired').fadeIn(1000);
$root.find('#verifikasi').html(verHtml);
} else if (msg === 'cap') {
$msg.removeClass().text('Isi Verifikasi').fadeIn(1000);
$root.find('#verifikasi').html(verHtml);
$root.find('.verifikasiform, #mverifikasiform').show();
$root.find('.verifval').val('1');
} else if (msg === 'turnnoevent') {
window.location.reload();
} else if (msg === 'turnblock') {
$msg.removeClass().text('Insecure Device').fadeIn(1000);
} else {
$msg.removeClass().text('Login gagal, coba lagi').fadeIn(1000);
$root.find('#verifikasi').html(verHtml);
}
}
function jtSubmitLogin(rootSel, captchaPath, captchaStyle) {
var $root = $(rootSel);
var $form = $root.find('form.form');
if ($form.length === 0) {
$form = $root.find('.form');
}
if ($form.length === 0) {
console.error('Login form not found:', rootSel);
return false;
}
var $submitBtn = $root.find('.submit');
var $msg = $root.find('#msgbox');
var verHtml = jtGetCaptchaHtml(captchaPath, captchaStyle);
var isMobile = (rootSel.indexOf('mobile') !== -1);
$msg.removeClass().text('Validating').fadeIn(1000);
$submitBtn.prop('disabled', true).addClass('disabled');
function unlockSubmit() {
$submitBtn.prop('disabled', false).removeClass('disabled');
}
function doLoginPost() {
$.ajax({
url: '/api/front/login',
type: 'POST',
data: $form.serialize(),
dataType: 'json',
headers: { 'X-CSRF-Token': window.JT_CSRF_TOKEN || '' },
success: function(data) {
jtHandleLoginResponse(data, $root, verHtml);
}
})
.fail(function() {
$msg.removeClass().text('Koneksi gagal').fadeIn(1000);
$root.find('#verifikasi').html(verHtml);
})
.always(unlockSubmit);
}
function afterTurnstile() {
if (typeof jtWithRecaptchaLoginToken === 'function') {
jtWithRecaptchaLoginToken($form, $msg, doLoginPost, unlockSubmit);
} else {
doLoginPost();
}
}
function afterIframe() {
if (typeof jtWithTurnstileLogin === 'function') {
jtWithTurnstileLogin($form, afterTurnstile);
} else {
afterTurnstile();
}
}
if (typeof jtWithIframeCaptchaLogin === 'function') {
jtWithIframeCaptchaLogin($form, isMobile, afterIframe, function (msgText) {
$msg.removeClass().text(msgText || 'Verifikasi Kosong').fadeIn(1000);
unlockSubmit();
});
} else {
afterIframe();
}
return false;
}
// Login desktop
$(document).on('click', '#desktoplogin .submit', function(e) {
e.preventDefault();
jtSubmitLogin(
'#desktoplogin',
'/capimg.php',
'width="40" height="30" style="border:1px #999 solid;"'
);
return false;
});
// Login mobile
$(document).on('click', '#mobilelogin .submit', function(e) {
e.preventDefault();
jtSubmitLogin(
'#mobilelogin',
'/mcapimg.php',
'width="600" height="88" style="width:100%;height:auto;border-radius:5px;"'
);
return false;
});
// Tekan Enter utk login
$(document).on('keypress', '#desktoplogin input, #mobilelogin input', function(e) {
if (e.which === 13) {
e.preventDefault();
var $root = $(this).closest('#desktoplogin, #mobilelogin');
if ($root.attr('id') === 'desktoplogin') {
$('#desktoplogin .submit').trigger('click');
} else {
$('#mobilelogin .submit').trigger('click');
}
return false;
}
});
function jtEnsureDriver(done) {
if (window.driver && window.driver.js) {
done();
return;
}
if (window._jtDriverLoading) {
window._jtDriverLoading.push(done);
return;
}
window._jtDriverLoading = [done];
var link = document.createElement('link');
link.rel = 'stylesheet';
link.href = 'https://cdn.jsdelivr.net/npm/[email protected]/dist/driver.css';
link.integrity = 'sha384-eyrYgcjChmzD338JTHFZssgJHOqqOZbajet8yZpCw8ESroLDi28BarMEKCImNGHC';
link.crossOrigin = 'anonymous';
document.head.appendChild(link);
var s = document.createElement('script');
s.src = 'https://cdn.jsdelivr.net/npm/[email protected]/dist/driver.js.iife.js';
s.integrity = 'sha384-BhR06AMz62Xn0o53z8itVS1vw4JslNckRFgOTa6/Dob0Agdmbbh8Dr9sDO2h18TO';
s.crossOrigin = 'anonymous';
s.onload = function () {
var q = window._jtDriverLoading || [];
window._jtDriverLoading = null;
q.forEach(function (fn) {
try { fn(); } catch (e) {}
});
};
s.onerror = function () {
window._jtDriverLoading = null;
};
document.head.appendChild(s);
}
function scrollToLoginForm() {
if (typeof jtWarmAuthScripts === 'function') jtWarmAuthScripts();
var isDesktop = window.innerWidth >= 992;
var formEl = document.getElementById(isDesktop ? 'desktoplogin' : 'mobilelogin');
if (!formEl) {
return;
}
formEl.scrollIntoView({
behavior: 'smooth',
block: 'center'
});
setTimeout(function() {
var inp = formEl.querySelector('input[type="text"], input[name="username"], input[name="BOX_username"]');
if (inp) {
inp.focus();
}
if (!inp) {
return;
}
jtEnsureDriver(function () {
if (!window.driver || !window.driver.js) {
return;
}
var driver = window.driver.js.driver({
popoverClass: 'driverjs-theme',
showProgress: false,
showButtons: [],
overlayOpacity: 0.3,
steps: [
{
element: inp,
popover: {
title: 'Harap Login',
description: 'Silakan masukkan username Anda',
side: 'bottom',
align: 'start',
showButtons: [],
nextBtnText: '',
prevBtnText: '',
doneBtnText: ''
}
}
],
onDestroyStarted: () => driver.destroy(),
});
driver.drive();
var destroyDriver = function() {
driver.destroy();
inp.removeEventListener('input', destroyDriver);
inp.removeEventListener('click', destroyDriver);
inp.removeEventListener('focus', destroyDriver);
};
inp.addEventListener('input', destroyDriver, { once: true });
inp.addEventListener('click', destroyDriver, { once: true });
inp.addEventListener('focus', destroyDriver, { once: true });
});
}, 400);
}
window.JT_LOGGED_IN = false;
if (sessionStorage.getItem('jt_pending_action')) {
$(document).ready(function() {
scrollToLoginForm();
});
}
</script>
</div>
<!--<a href="/event">-->
<!-- <img src="https://img.viva88athenae.com//btnevent.png" alt="EVENT" height="24px"/>-->
<!--</a>-->
</div>
<!-- Desktop Login End -->
</div>
<div class="desktop-topbar-line"></div>
<div class="desktop-topbar-line d-flex align-items-center justify-content-between" style="margin-left:-2.0rem;margin-right:-2.0rem"></div>
<nav class="section desktop-mainnav d-flex align-items-center">
<!-- <a class="navbar-brand me-2 flex-shrink-0 navbar-brand-guest" href="/home" onclick="content('/home.php','#content',this); return false;"> -->
<a class="navbar-brand me-2 flex-shrink-0" href="/home" onclick="openPage('home'); return false;">
<img src="/images/logo.png?v=1791889412" alt="Logo" class="logo">
</a>
<div class="d-flex align-items-stretch h-100 ms-auto" style="overflow-x:auto;scrollbar-width:none;">
<a href="/home"
onclick="openPage('home',this); return false;" class="desktop-nav-link"
data-nav="home">
<img src="https://img.viva88athenae.com/new/menu-home.png?v=1791889412" alt="">
<span>Home</span>
</a>
<a href="/togel"
onclick="window.JT_LOGGED_IN ? content('/togel.php','#content',this) : (sessionStorage.setItem('jt_pending_action', JSON.stringify({type:'togel'})), scrollToLoginForm()); return false;" class="desktop-nav-link"
data-nav="togel">
<img src="https://img.viva88athenae.com/new/menu-togel.png?v=1791889412" alt="">
<span>Togel</span>
</a>
<a href="/slot"
onclick="showProviders('slot',this); return false;" class="desktop-nav-link"
data-nav="slot">
<img src="https://img.viva88athenae.com/new/menu-slot.png?v=1791889412" alt="">
<span>Slot</span>
</a>
<a href="/casino"
onclick="showProviders('casino',this); return false;" class="desktop-nav-link"
data-nav="casino">
<img src="https://img.viva88athenae.com/new/menu-casino.png?v=1791889412" alt="">
<span>Casino</span>
</a>
<a href="/sport"
onclick="openPage('sport',this); return false;" class="desktop-nav-link"
data-nav="sport">
<img src="https://img.viva88athenae.com/new/menu-sport.png?v=1791889412" alt="">
<span>Sport</span>
</a>
<a href="/sabung"
onclick="openPage('sabung',this); return false;" class="desktop-nav-link"
data-nav="sabung">
<img src="https://img.viva88athenae.com/new/menu-sabung.png?v=1791889412" alt="">
<span>Sabung</span>
</a>
<a href="/arcade"
onclick="showProviders('arcade',this); return false;" class="desktop-nav-link"
data-nav="arcade">
<img src="https://img.viva88athenae.com/new/menu-arcade.png?v=1791889412" alt="">
<span>Arcade</span>
</a>
<a href="/interactive"
onclick="showProviders('interactive',this); return false;" class="desktop-nav-link"
data-nav="interactive">
<img src="https://img.viva88athenae.com/new/menu-interactive.png?v=1791889412" alt="">
<span>Interactive</span>
</a>
<a href="/kupon"
onclick="window.JT_LOGGED_IN ? content('/kupon.php','#content',this) : (sessionStorage.setItem('jt_pending_action', JSON.stringify({type:'kupon'})), scrollToLoginForm()); return false;" class="desktop-nav-link"
data-nav="kupon">
<img src="https://img.viva88athenae.com/new/menu-kupon.png?v=1791889412" alt="">
<span>Kupon</span>
</a>
<a href="/promosi"
onclick="openPage('promosi',this); return false;" class="desktop-nav-link"
data-nav="promosi">
<img src="https://img.viva88athenae.com/new/menu-promo.png?v=1791889412" alt="">
<span>Promosi</span>
</a>
<a href="/event"
onclick="openPage('event',this); return false;" class="desktop-nav-link"
data-nav="event">
<img src="https://img.viva88athenae.com/new/menu-event.png?v=1791889412" alt="">
<span>Event</span>
</a>
</div>
</nav>
</div>
<!-- WHEEL -->
<!-- WHEEL -->
<nav class="navbar px-3 d-md-none" style="z-index: 1046">
<div class="w-100 d-flex justify-content-between align-items-center ps-3">
<a class="navbar-brand" href="/home" onclick="content('/home.php','#content',this); return false;">
<img src="/images/logo.png?v=1791889412" alt="Logo" class="logo">
</a>
<div class="d-flex align-items-center gap-2 pe-2">
<button class="btn btn-transparent py-0 px-2" type="button" data-bs-toggle="offcanvas" data-bs-target="#offcanvasRight" aria-controls="offcanvasRight" aria-label="Menu kontak">
<i class="bi bi-person-lines-fill" style="font-size: 20px; color: var(--primary-text-color)" aria-hidden="true"></i>
</button>
</div>
</div>
</div>
</nav>
<style>
.banner {
aspect-ratio: 1920 / 380;
width: 100%;
object-fit: cover;
background: black
}
@media only screen and (max-width: 1000px) {
.banner {
aspect-ratio: 600 / 300;
}
}
</style>
<div class="carousel slide" id="banner-carousel" data-bs-ride="carousel">
<div class="carousel-indicators">
<button type="button" data-bs-target="#banner-carousel" data-bs-slide-to="0" class="active" aria-current="true" aria-label="Slide 1"></button>
<button type="button" data-bs-target="#banner-carousel" data-bs-slide-to="1" aria-label="Slide 2"></button>
<button type="button" data-bs-target="#banner-carousel" data-bs-slide-to="2" aria-label="Slide 3"></button>
<button type="button" data-bs-target="#banner-carousel" data-bs-slide-to="3" aria-label="Slide 4"></button>
<button type="button" data-bs-target="#banner-carousel" data-bs-slide-to="4" aria-label="Slide 5"></button>
<button type="button" data-bs-target="#banner-carousel" data-bs-slide-to="5" aria-label="Slide 6"></button>
<button type="button" data-bs-target="#banner-carousel" data-bs-slide-to="6" aria-label="Slide 7"></button>
<button type="button" data-bs-target="#banner-carousel" data-bs-slide-to="7" aria-label="Slide 8"></button>
<button type="button" data-bs-target="#banner-carousel" data-bs-slide-to="8" aria-label="Slide 9"></button>
<button type="button" data-bs-target="#banner-carousel" data-bs-slide-to="9" aria-label="Slide 10"></button>
<button type="button" data-bs-target="#banner-carousel" data-bs-slide-to="10" aria-label="Slide 11"></button>
<button type="button" data-bs-target="#banner-carousel" data-bs-slide-to="11" aria-label="Slide 12"></button>
<button type="button" data-bs-target="#banner-carousel" data-bs-slide-to="12" aria-label="Slide 13"></button>
<button type="button" data-bs-target="#banner-carousel" data-bs-slide-to="13" aria-label="Slide 14"></button>
</div>
<div class="carousel-inner" style="height: 100%">
<div class="carousel-item active" style="height: 100%">
<a >
<img
src="/images/upload-Slides-20260228123627.jpg"
class="d-block w-100 banner"
alt="SERBU4D: Situs Slot Gacor Terpercaya Resmi 2025"
fetchpriority="high" >
</a>
</div>
<div class="carousel-item " style="height: 100%">
<a >
<img
src="/images/upload-Slides-20260302051753.jpg"
class="d-block w-100 banner"
alt="SERBU4D : Situs Bonus New Member 100% Penuh Kejutan"
>
</a>
</div>
<div class="carousel-item " style="height: 100%">
<a >
<img
src="/images/upload-Slides-20260228123920.jpg"
class="d-block w-100 banner"
alt="Waspada Penipuan Mengatasnamakan SERBU4D"
>
</a>
</div>
<div class="carousel-item " style="height: 100%">
<a >
<img
src="/images/upload-Slides-20260228123657.jpg"
class="d-block w-100 banner"
alt="SERBU4D: Situs Slot Gacor Terpercaya Minimal Deposit 20rb"
>
</a>
</div>
<div class="carousel-item " style="height: 100%">
<a >
<img
src="/images/upload-Slides-20260228123741.jpg"
class="d-block w-100 banner"
alt="SERBU4D: Situs Slot Gacor Terpercaya Bonus New Member 50%"
>
</a>
</div>
<div class="carousel-item " style="height: 100%">
<a >
<img
src="/images/upload-Slides-20260228123748.jpg"
class="d-block w-100 banner"
alt="SERBU4D: Situs Slot Gacor Terpercaya Deposit Cepat Via Qris"
>
</a>
</div>
<div class="carousel-item " style="height: 100%">
<a >
<img
src="/images/upload-Slides-20260228123757.jpg"
class="d-block w-100 banner"
alt="SERBU4D: Situs Slot Gacor Terpercaya Deposit Pulsa"
>
</a>
</div>
<div class="carousel-item " style="height: 100%">
<a >
<img
src="/images/upload-Slides-20260301073851.jpg"
class="d-block w-100 banner"
alt="SERBU4D: Situs Slot Gacor Terpercaya Bonus Freebet Setiap Hari"
>
</a>
</div>
<div class="carousel-item " style="height: 100%">
<a >
<img
src="/images/upload-Slides-20260228123805.jpg"
class="d-block w-100 banner"
alt="SERBU4D: Situs Slot Gacor Terpercaya Bonus Slot Rollingan"
>
</a>
</div>
<div class="carousel-item " style="height: 100%">
<a >
<img
src="/images/upload-Slides-20260301073858.jpg"
class="d-block w-100 banner"
alt="SERBU4D: Situs Slot Gacor Terpercaya Bonus Slot Harian 10%"
>
</a>
</div>
<div class="carousel-item " style="height: 100%">
<a >
<img
src="/images/upload-Slides-20250822172048.jpg"
class="d-block w-100 banner"
alt="Spesial Promo Koi Gate Jejer 3 - SERBU4D"
>
</a>
</div>
<div class="carousel-item " style="height: 100%">
<a >
<img
src="/images/upload-Slides-20250823181520.jpg"
class="d-block w-100 banner"
alt="Bonus Super Scatter Gates Of Olympus - SERBU4D"
>
</a>
</div>
<div class="carousel-item " style="height: 100%">
<a >
<img
src="https://img.viva88athenae.com/banner/mgl-25.jpg"
class="d-block w-100 banner"
alt=""
>
</a>
</div>
<div class="carousel-item " style="height: 100%">
<a >
<img
src="https://img.viva88athenae.com/banner/slider-fgs.jpg"
class="d-block w-100 banner"
alt=""
>
</a>
</div>
</div>
</div>
<div class="section marquee-bar">
<div class="marquee-date ps-2">
<span id="datetime"></span>
<i class="bi bi-volume-up-fill ms-1 secondary-text-color"></i>
</div>
<div class="marquee-text">
<div class="marquee-runner" id="marqueeRunner">
<span>Selamat Datang di SERBU4D</span>
</div>
</div>
</div>
<div class="p-2">
<div class="d-md-none">
<div id="lobbyMenuWrap" class="splide pb-4 mt-2">
<div class="splide__track">
<ul class="splide__list">
<li class="splide__slide">
<a href="/home"
onclick="openPage('home',this); return false;"
class="lobby-menu"
data-nav="home">
<img src="https://img.viva88athenae.com/new/menu-home.png?v=1791889412" alt="">
<small>Home</small>
</a>
</li>
<li class="splide__slide">
<a href="/togel"
onclick="window.JT_LOGGED_IN ? content('/togel.php','#content',this) : (sessionStorage.setItem('jt_pending_action', JSON.stringify({type:'togel'})), scrollToLoginForm()); return false;"
class="lobby-menu"
data-nav="togel">
<img src="https://img.viva88athenae.com/new/menu-togel.png?v=1791889412" alt="">
<small>Togel</small>
</a>
</li>
<li class="splide__slide">
<a href="/kupon"
onclick="window.JT_LOGGED_IN ? content('/kupon.php','#content',this) : (sessionStorage.setItem('jt_pending_action', JSON.stringify({type:'kupon'})), scrollToLoginForm()); return false;"
class="lobby-menu"
data-nav="kupon">
<img src="https://img.viva88athenae.com/new/menu-kupon.png?v=1791889412" alt="">
<small>Kupon</small>
</a>
</li>
<li class="splide__slide">
<a href="/slot"
onclick="showProviders('slot',this); return false;"
class="lobby-menu"
data-nav="slot">
<img src="https://img.viva88athenae.com/new/menu-slot.png?v=1791889412" alt="">
<small>Slot</small>
</a>
</li>
<li class="splide__slide">
<a href="/casino"
onclick="showProviders('casino',this); return false;"
class="lobby-menu"
data-nav="casino">
<img src="https://img.viva88athenae.com/new/menu-casino.png?v=1791889412" alt="">
<small>Casino</small>
</a>
</li>
<li class="splide__slide">
<a href="/sport"
onclick="openPage('sport',this); return false;"
class="lobby-menu"
data-nav="sport">
<img src="https://img.viva88athenae.com/new/menu-sport.png?v=1791889412" alt="">
<small>Sport</small>
</a>
</li>
<li class="splide__slide">
<a href="/sabung"
onclick="openPage('sabung',this); return false;"
class="lobby-menu"
data-nav="sabung">
<img src="https://img.viva88athenae.com/new/menu-sabung.png?v=1791889412" alt="">
<small>Sabung</small>
</a>
</li>
<li class="splide__slide">
<a href="/arcade"
onclick="showProviders('arcade',this); return false;"
class="lobby-menu"
data-nav="arcade">
<img src="https://img.viva88athenae.com/new/menu-arcade.png?v=1791889412" alt="">
<small>Arcade</small>
</a>
</li>
<li class="splide__slide">
<a href="/interactive"
onclick="showProviders('interactive',this); return false;"
class="lobby-menu"
data-nav="interactive">
<img src="https://img.viva88athenae.com/new/menu-interactive.png?v=1791889412" alt="">
<small>Interactive</small>
</a>
</li>
</ul>
</div>
</div>
</div>
<script>
document.addEventListener('DOMContentLoaded', function () {
var lobbyEl = document.getElementById('lobbyMenuWrap');
if (lobbyEl && !lobbyEl.classList.contains('is-initialized')) {
var mountLobby = function () {
if (!lobbyEl || typeof Splide === 'undefined' || lobbyEl.classList.contains('is-initialized')) return;
new Splide('#lobbyMenuWrap', {
type: 'slide', perPage: 5, perMove: 5,
gap: '8px', pagination: true, arrows: false, drag: true,
}).mount();
};
if (typeof ensureSplide === 'function') {
ensureSplide().then(mountLobby).catch(function () {});
} else {
mountLobby();
}
}
if (typeof initUserareaShell === 'function') {
initUserareaShell();
} else if (typeof initGuestShell === 'function') {
initGuestShell();
} else if (typeof content === 'function') {
var isDesktop = window.innerWidth >= 768;
var homeMenu = isDesktop
? document.querySelector('.desktop-nav-link[data-nav="home"]')
: document.querySelector('#lobbyMenuWrap .lobby-menu[data-nav="home"]');
content('/home.php', '#content', homeMenu);
}
});
</script>
</div>
<!-- Mobile Login Start -->
<div id="mobilelogin" class="d-block d-lg-none mb-3">
<form class="login-form form d-flex flex-column gap-2 align-items-center" style="padding: 0px; padding-top: 16px" role="form">
<div id="msgbox" style="font-size: 1rem; width: 100%"></div>
<div class="input-group login-field">
<span class="input-group-text prepend mobile-only "><div class="h-100 center"><i class="bi bi-person-circle prepend-icon"></i></div></span>
<input type="text" name="username" class="form-control login-input-field username" placeholder="Username" aria-label="Username">
</div>
<div class="input-group login-field">
<span class="input-group-text mobile-only prepend"><div class="h-100 center"><i class="bi bi-shield-lock-fill prepend-icon"></i></div></span>
<input type="password" name="password" class="form-control login-input-field password" placeholder="Password" aria-label="Password">
</div>
<!-- captcha -->
<div id="mverifikasiform" class="w-100" style="">
<span id="verifikasi"><img src="/mcapimg.php" width="600" height="88" style="width:100%;height:auto;border-radius: 5px;" alt="Kode verifikasi"></span>
<div class="input-group login-field mt-1">
<span class="input-group-text mobile-only prepend"><div class="h-100 center"><i class="bi bi-person-fill-check prepend-icon"></i></div></span>
<input type="text" class="form-control login-input-field" name="verifikasi" id="mverform" autocomplete="off" placeholder="Verifikasi">
</div>
</div>
<input type="hidden" name="verif" id="verifval" class="verifval" value="1">
<!-- end captcha -->
<label style="font-size:12px;display:flex;align-items:center;margin-top:2px;margin-bottom:4px;cursor:pointer;">
<input class="login-field" type="checkbox" id="rememberMe" name="remember" style="margin-right:4px;width:12px;height:12px;cursor:pointer;"> <span style="white-space: nowrap;">Remember Me</span>
</label>
<!--<button type="submit" value="Masuk" class="btn btn-masuk fw-bold p-0 px-2 submit">Masuk</button>-->
<button type="button" class="btn btn-masuk fw-bold p-0 px-2 submit w-100 d-flex justify-content-center align-items-center" style="height: 36px; border-radius: 8px">Masuk</button>
<button type="button" class="btn btn-daftar btn-info btn-daftar-mobile fw-bold p-0 px-2 mobile-only" onclick="openDaftarMobile()">Daftar Sekarang</button>
<button type="button" class="btn btn-tele fw-bold p-0 px-2 mobile-only" onclick="window.open('https://telegram.me/serbu4d_bot', '_blank')"><i class="bi bi-telegram me-2" style="color: #0088cc"></i>Main di Telegram</button>
<input type="hidden" name="task" value="login">
<input type="hidden" name="iscaptchalogin" value="1">
<input type="hidden" name="isrecaptchalogin" value="0">
<input type="hidden" name="recaptcha_login_token" value="">
<input type="hidden" name="fp_event_id" value="">
<input type="hidden" name="fp_visitor_id" value="">
<input type="hidden" name="loginmobile" value="DzXTrNjavKQ4o2iIC925HBtf2D7Nmpmjl1COVBHexeE=">
</form>
<a href="/wap" class="mt-4" style="display: grid; place-items: center; font-size: 1rem; cursor: pointer; color: var(--menu-item-color)">WAP</a>
</div>
<!-- Mobile Login End -->
<script>
function openDaftar() {
if (typeof openRegister === 'function') {
openRegister('desktop');
} else {
window.location.href = '/register';
}
}
function openDaftarMobile() {
if (typeof openRegister === 'function') {
openRegister('mobile');
$("#content").get(0).scrollIntoView({behavior: 'smooth'});
} else {
window.location.href = '/register';
}
}
</script>
<div class="modal fade" id="modal" tabindex="-1" aria-labelledby="exampleModalLabel" aria-hidden="true">
<div class="modal-dialog modal-dialog-centered modal-lg modal-fullscreen-sm-down">
<div id="modal-content" class="modal-content rounded-0 primary-background-color">
</div>
</div>
</div>
<div id="content" class="section p-2" style="position:relative;min-height:60vh;">
<div class="home-view">
<div class="home-section">
<div class="section-title">
<i class="bi bi-bar-chart-fill me-1"></i>
Pasaran Togel </div>
<div id="togel-panel" class="togel-grid-wrap togel-panel" style="margin-bottom: 20px;margin-top: 15px;">
<div class="togel-panel-more"><i class="bi bi-chevron-double-down"></i></div>
</div>
</div>
<div class="home-section">
<div class="section-title">
<i class="bi bi-fire me-1"></i>
Hot Slot Games </div>
<div class="game-scroll-wrap">
<div class="game-card" onclick="launchGame('t-HLnJl9M-gf15CqZYmbAXLAHl0-ZT256tHQ4RlC6SA', 450, 800)">
<div class="game-card-img-box">
<img class="js-game-image" src="https://img.viva88athenae.com/new/pg/images/mahjong-ways.png?v=1" data-provider="pg" alt="" loading="lazy" decoding="async">
<div class="game-img-placeholder"><i class="bi bi-controller"></i></div>
<span class="game-flag-badge game-flag-badge--hot">HOT</span>
</div>
</div> <div class="game-card" onclick="launchGame('TIW5LNfyd5p_0VLVgxcTZh4ERgBwH4fPkRHkRQ0Vk6k', 450, 800)">
<div class="game-card-img-box">
<img class="js-game-image" src="https://img.viva88athenae.com/new/pg/images/mahjong-ways2.png?v=1" data-provider="pg" alt="" loading="lazy" decoding="async">
<div class="game-img-placeholder"><i class="bi bi-controller"></i></div>
<span class="game-flag-badge game-flag-badge--hot">HOT</span>
</div>
</div> <div class="game-card" onclick="launchGame('yg6Ldx77M1wuwmGH5dM2gD-IF3ISGgS2P-7LCs-naXs', 450, 800)">
<div class="game-card-img-box">
<img class="js-game-image" src="https://img.viva88athenae.com/new/pg/images/wild-bounty-showdown.png?v=1" data-provider="pg" alt="" loading="lazy" decoding="async">
<div class="game-img-placeholder"><i class="bi bi-controller"></i></div>
<span class="game-flag-badge game-flag-badge--hot">HOT</span>
</div>
</div> <div class="game-card" onclick="launchGame('XjhXqvgEgomyHmEK5cxE4GeJ23q8rOsdrz6-hshAqu0', 1200, 800)">
<div class="game-card-img-box">
<img class="js-game-image" src="https://img.viva88athenae.com/new/pp/images/vs20olympx.png?v=1" data-provider="pp" alt="" loading="lazy" decoding="async">
<div class="game-img-placeholder"><i class="bi bi-controller"></i></div>
<span class="game-flag-badge game-flag-badge--hot">HOT</span>
</div>
</div> <div class="game-card" onclick="launchGame('xCP6iILFqkLhhLZ2sxSylRjCuIocHAgm0DHTRWvVZtpOYhlZTAC29gfhLay18GkO', 1200, 800)">
<div class="game-card-img-box">
<img class="js-game-image" src="https://img.viva88athenae.com/new/pp/images/vswaysmahwblck.png?v=1" data-provider="pp" alt="" loading="lazy" decoding="async">
<div class="game-img-placeholder"><i class="bi bi-controller"></i></div>
<span class="game-flag-badge game-flag-badge--hot">HOT</span>
</div>
</div> <div class="game-card" onclick="launchGame('gJ8H-8sPMEdENqf2DcWW8ye4OXoAEjHXNkXfHrUKNcX9sBA-Wyoh7nB8pnUVMGG7', 1200, 800)">
<div class="game-card-img-box">
<img class="js-game-image" src="https://img.viva88athenae.com/new/pp/images/vs20olympgold.png?v=1" data-provider="pp" alt="" loading="lazy" decoding="async">
<div class="game-img-placeholder"><i class="bi bi-controller"></i></div>
<span class="game-flag-badge game-flag-badge--hot">HOT</span>
</div>
</div> <div class="game-card" onclick="launchGame('8LPnnd6hLhUlsL0QV8dZTKQAtKWYKUDT-XpjRXeMTJw', 450, 800)">
<div class="game-card-img-box">
<img class="js-game-image" src="https://img.viva88athenae.com/new/cq9/images/VPCQS28.png?v=1" data-provider="cq9" alt="" loading="lazy" decoding="async">
<div class="game-img-placeholder"><i class="bi bi-controller"></i></div>
</div>
</div> <div class="game-card" onclick="launchGame('y4YfbO6gQRH8PgT1dknUUE1c4ZFD53o-C3duV8IdIs0', 450, 800)">
<div class="game-card-img-box">
<img class="js-game-image" src="https://img.viva88athenae.com/new/mgw/images/6059.png?v=1" data-provider="mgw" alt="" loading="lazy" decoding="async">
<div class="game-img-placeholder"><i class="bi bi-controller"></i></div>
<span class="game-flag-badge game-flag-badge--hot">HOT</span>
</div>
</div> <div class="game-card" onclick="launchGame('uNcFTFtQs2qWdV11Z593t4lzTso2-IHC6avtrHofq1kPjlkb9fv1J8GpIRKuavwv', 1200, 800)">
<div class="game-card-img-box">
<img class="js-game-image" src="https://img.viva88athenae.com/new/mg/images/p5_mahjongmaxwin.png?v=1" data-provider="mg" alt="" loading="lazy" decoding="async">
<div class="game-img-placeholder"><i class="bi bi-controller"></i></div>
</div>
</div> <div class="game-card" onclick="launchGame('TYiwJVQ_eOOoJUnQ3lIMu645L89X8Ls74td7Gj6uGKWsI2mZPql2rtQZm8zuRzzg', 450, 800)">
<div class="game-card-img-box">
<img class="js-game-image" src="https://img.viva88athenae.com/new/fgs/images/S5G-H5-99950.png?v=1" data-provider="fgs" alt="" loading="lazy" decoding="async">
<div class="game-img-placeholder"><i class="bi bi-controller"></i></div>
</div>
</div> </div>
</div>
<div class="home-section">
<div class="section-title">
<i class="bi bi-suit-heart-fill me-1"></i>
Hot Casino Games </div>
<div class="game-scroll-wrap">
<div class="game-card" onclick="launchGame('a1AFCFrstndX_XR-fWnZURfKncXPsscSEGF8IwdxVZ8', 1080, 700)">
<div class="game-card-img-box">
<img class="js-game-image" src="https://img.viva88athenae.com/new/pp/images/1301.png?v=1" data-provider="pplc" alt="" loading="lazy" decoding="async">
<div class="game-img-placeholder"><i class="bi bi-controller"></i></div>
</div>
</div> <div class="game-card" onclick="launchGame('AxNhuZWD1Estgj78_-sh9ajbIEdzOp1eGl_QmPvzukI', 1080, 700)">
<div class="game-card-img-box">
<img class="js-game-image" src="https://img.viva88athenae.com/new/pp/images/801.png?v=1" data-provider="pplc" alt="" loading="lazy" decoding="async">
<div class="game-img-placeholder"><i class="bi bi-controller"></i></div>
</div>
</div> <div class="game-card" onclick="launchGame('VwkBzvyq2zJILg_VfXJtXXYvPXqVgPcA09XcejO3nAc', 1080, 700)">
<div class="game-card-img-box">
<img class="js-game-image" src="https://img.viva88athenae.com/new/pp/images/1101.png?v=1" data-provider="pplc" alt="" loading="lazy" decoding="async">
<div class="game-img-placeholder"><i class="bi bi-controller"></i></div>
</div>
</div> <div class="game-card" onclick="launchGame('8idZDpv1yuemX5ybvIyqlnWYlfmUmQLQGRPNtrjkGfc', 1080, 700)">
<div class="game-card-img-box">
<img class="js-game-image" src="https://img.viva88athenae.com/new/evo/images/icefishing.png?v=1" data-provider="evo" alt="" loading="lazy" decoding="async">
<div class="game-img-placeholder"><i class="bi bi-controller"></i></div>
</div>
</div> <div class="game-card" onclick="launchGame('nPOej6ZBKzRlq5mibX6NNXKhRIOiLwwsxKkkEGN4AYY', 1080, 700)">
<div class="game-card-img-box">
<img class="js-game-image" src="https://img.viva88athenae.com/new/evo/images/crazytime.png?v=1" data-provider="evo" alt="" loading="lazy" decoding="async">
<div class="game-img-placeholder"><i class="bi bi-controller"></i></div>
</div>
</div> <div class="game-card" onclick="launchGame('tR9Nf4XKscR1OFSwL1rNIu4LAMMjmUMdy-B0JpQd4iqDx5HuEHPuPQl_kUjG1VWm', 1080, 700)">
<div class="game-card-img-box">
<img class="js-game-image" src="https://img.viva88athenae.com/new/evo/images/lightningstorm.png?v=1" data-provider="evo" alt="" loading="lazy" decoding="async">
<div class="game-img-placeholder"><i class="bi bi-controller"></i></div>
</div>
</div> <div class="game-card" onclick="launchGame('jjiTxArCmQ4N0ZzEKuy59r-ehZJag7C-NbCJ8TmIH5-mzckaPMHOSGC66EprHDFW', 1080, 700)">
<div class="game-card-img-box">
<img class="js-game-image" src="https://img.viva88athenae.com/new/ion/images/ion_roulette.png?v=1" data-provider="ion" alt="" loading="lazy" decoding="async">
<div class="game-img-placeholder"><i class="bi bi-controller"></i></div>
</div>
</div> <div class="game-card" onclick="launchGame('i_jH0_9k7ceDqnkzcm32r4qInWmXl0G6t2w9eksE8s0', 1080, 700)">
<div class="game-card-img-box">
<img class="js-game-image" src="https://img.viva88athenae.com/new/sx/images/lobby.png?v=1" data-provider="sx" alt="" loading="lazy" decoding="async">
<div class="game-img-placeholder"><i class="bi bi-controller"></i></div>
</div>
</div> <div class="game-card" onclick="launchGame('iB0zUaXMVoY5vKmrDi0mPc-s3CWm5q1S8prjtujobKdWk0eQ91BQHCp-06xuKQ6q', 1080, 700)">
<div class="game-card-img-box">
<img class="js-game-image" src="https://img.viva88athenae.com/new/sbo/images/sbol_roulette.png?v=1" data-provider="sbol" alt="" loading="lazy" decoding="async">
<div class="game-img-placeholder"><i class="bi bi-controller"></i></div>
</div>
</div> <div class="game-card" onclick="launchGame('3dKLSUw23Kz_GSVQ9cgLPsm0UuGRgdyEP1mOFr2f6II', 1080, 700)">
<div class="game-card-img-box">
<img class="js-game-image" src="https://img.viva88athenae.com/new/ptlc/images/rol.png?v=1" data-provider="ptlc" alt="" loading="lazy" decoding="async">
<div class="game-img-placeholder"><i class="bi bi-controller"></i></div>
</div>
</div> </div>
</div>
<div class="home-section">
<div class="section-title">
<i class="bi bi-trophy-fill me-1"></i>
Sport Matches </div>
<div class="match-slider-wrap">
<div id="sportMatchSplide" class="splide">
<div class="splide__track">
<ul class="splide__list">
<li class="splide__slide">
<div class="match-card-home">
<div class="league-name">ENGLISH PREMIER LEAGUE</div>
<div class="kickoff-time">October 18, 2026 — 22:30 WIB</div>
<div class="match-main-row">
<div class="team-col">
<img src="https://cdn.sportnanoapi.com/football/team/62572999d107f777efa4aeb907443527.png" class="team-logo" alt="">
<div class="team-name">Nottingham Forest</div>
</div>
<div class="score-col">
<div class="score-value">0 : 0</div>
<a href="javascript:void(0)" class="bet-btn" onclick="jtSboBet(145101308)">BET NOW</a>
</div>
<div class="team-col">
<img src="https://cdn.sportnanoapi.com/football/team/d6f5debc456da1119256ab66462ab510.png" class="team-logo" alt="">
<div class="team-name">Arsenal</div>
</div>
</div>
<div class="match-odds-row">
<div class="odds-col">
-0.5 <small style="margin-left: 5px;">-0.69</small>
</div>
<div class="odds-spacer"></div>
<div class="odds-col">
0.5 <small style="margin-left: 5px;">0.61</small>
</div>
</div>
</div>
</li>
<li class="splide__slide">
<div class="match-card-home">
<div class="league-name">ENGLISH PREMIER LEAGUE</div>
<div class="kickoff-time">October 18, 2026 — 20:00 WIB</div>
<div class="match-main-row">
<div class="team-col">
<img src="https://cdn.sportnanoapi.com/football/team/cd46d2ed1d364308dc206c97b48ce556.png" class="team-logo" alt="">
<div class="team-name">Leeds United</div>
</div>
<div class="score-col">
<div class="score-value">0 : 0</div>
<a href="javascript:void(0)" class="bet-btn" onclick="jtSboBet(145101264)">BET NOW</a>
</div>
<div class="team-col">
<img src="https://cdn.sportnanoapi.com/football/team/d39ce586fd7278342dde33b3090b3f75.png" class="team-logo" alt="">
<div class="team-name">Manchester United</div>
</div>
</div>
<div class="match-odds-row">
<div class="odds-col">
0.00 <small style="margin-left: 5px;">0.78</small>
</div>
<div class="odds-spacer"></div>
<div class="odds-col">
0.00 <small style="margin-left: 5px;">-0.86</small>
</div>
</div>
</div>
</li>
<li class="splide__slide">
<div class="match-card-home">
<div class="league-name">ENGLISH PREMIER LEAGUE</div>
<div class="kickoff-time">October 18, 2026 — 20:00 WIB</div>
<div class="match-main-row">
<div class="team-col">
<img src="https://cdn.sportnanoapi.com/football/team/9b43a690d5a09f1e319f036821e8e1d3.png" class="team-logo" alt="">
<div class="team-name">Brighton & Hove Albion</div>
</div>
<div class="score-col">
<div class="score-value">0 : 0</div>
<a href="javascript:void(0)" class="bet-btn" onclick="jtSboBet(145101221)">BET NOW</a>
</div>
<div class="team-col">
<img src="https://cdn.sportnanoapi.com/football/team/42396d18444156e640c37476c2b41b93.png" class="team-logo" alt="">
<div class="team-name">Crystal Palace</div>
</div>
</div>
<div class="match-odds-row">
<div class="odds-col">
0.75 <small style="margin-left: 5px;">0.64</small>
</div>
<div class="odds-spacer"></div>
<div class="odds-col">
-0.75 <small style="margin-left: 5px;">-0.72</small>
</div>
</div>
</div>
</li>
<li class="splide__slide">
<div class="match-card-home">
<div class="league-name">ENGLISH PREMIER LEAGUE</div>
<div class="kickoff-time">October 18, 2026 — 20:00 WIB</div>
<div class="match-main-row">
<div class="team-col">
<img src="https://cdn.sportnanoapi.com/football/team/240b30d333c97d293752ab7afd77ccd6.png" class="team-logo" alt="">
<div class="team-name">Bournemouth AFC</div>
</div>
<div class="score-col">
<div class="score-value">0 : 0</div>
<a href="javascript:void(0)" class="bet-btn" onclick="jtSboBet(145101171)">BET NOW</a>
</div>
<div class="team-col">
<img src="https://cdn.sportnanoapi.com/football/team/957bdc50c307e2a9b526b34b3792da1a.png" class="team-logo" alt="">
<div class="team-name">Sunderland</div>
</div>
</div>
<div class="match-odds-row">
<div class="odds-col">
0.00 <small style="margin-left: 5px;">0.55</small>
</div>
<div class="odds-spacer"></div>
<div class="odds-col">
0.00 <small style="margin-left: 5px;">-0.63</small>
</div>
</div>
</div>
</li>
<li class="splide__slide">
<div class="match-card-home">
<div class="league-name">GERMANY BUNDESLIGA</div>
<div class="kickoff-time">October 18, 2026 — 20:30 WIB</div>
<div class="match-main-row">
<div class="team-col">
<img src="https://cdn.sportnanoapi.com/football/team/f15ae3ec9b2d7888180a6c8cf4b137e8.png" class="team-logo" alt="">
<div class="team-name">Bayer Leverkusen</div>
</div>
<div class="score-col">
<div class="score-value">0 : 0</div>
<a href="javascript:void(0)" class="bet-btn" onclick="jtSboBet(148457257)">BET NOW</a>
</div>
<div class="team-col">
<img src="https://cdn.sportnanoapi.com/football/team/6508946c9a5fe22a8784b905b25e8c79.png" class="team-logo" alt="">
<div class="team-name">SC Freiburg</div>
</div>
</div>
<div class="match-odds-row">
<div class="odds-col">
0.5 <small style="margin-left: 5px;">0.69</small>
</div>
<div class="odds-spacer"></div>
<div class="odds-col">
-0.5 <small style="margin-left: 5px;">-0.77</small>
</div>
</div>
</div>
</li>
<li class="splide__slide">
<div class="match-card-home">
<div class="league-name">ITALY SERIE A</div>
<div class="kickoff-time">October 18, 2026 — 17:30 WIB</div>
<div class="match-main-row">
<div class="team-col">
<img src="https://cdn.sportnanoapi.com/football/team/c7140efe06d93642fcc9805077c49aa5.png" class="team-logo" alt="">
<div class="team-name">Udinese</div>
</div>
<div class="score-col">
<div class="score-value">0 : 0</div>
<a href="javascript:void(0)" class="bet-btn" onclick="jtSboBet(146602179)">BET NOW</a>
</div>
<div class="team-col">
<img src="https://cdn.sportnanoapi.com/football/team/6bc3496bf34a6c803b874e652e6acef5.png" class="team-logo" alt="">
<div class="team-name">Lecce</div>
</div>
</div>
<div class="match-odds-row">
<div class="odds-col">
0.25 <small style="margin-left: 5px;">0.60</small>
</div>
<div class="odds-spacer"></div>
<div class="odds-col">
-0.25 <small style="margin-left: 5px;">-0.68</small>
</div>
</div>
</div>
</li>
<li class="splide__slide">
<div class="match-card-home">
<div class="league-name">SPAIN LA LIGA</div>
<div class="kickoff-time">October 19, 2026 — 02:00 WIB</div>
<div class="match-main-row">
<div class="team-col">
<img src="https://cdn.sportnanoapi.com/football/team/7dacaa934fe4be00f23c1e209b5ef947.png" class="team-logo" alt="">
<div class="team-name">Real Madrid</div>
</div>
<div class="score-col">
<div class="score-value">0 : 0</div>
<a href="javascript:void(0)" class="bet-btn" onclick="jtSboBet(147215859)">BET NOW</a>
</div>
<div class="team-col">
<img src="https://cdn.sportnanoapi.com/football/team/d20ed1da4f299cc3ef0e1e9eb06eced1.png" class="team-logo" alt="">
<div class="team-name">Sevilla</div>
</div>
</div>
<div class="match-odds-row">
<div class="odds-col">
1.5 <small style="margin-left: 5px;">0.71</small>
</div>
<div class="odds-spacer"></div>
<div class="odds-col">
-1.5 <small style="margin-left: 5px;">-0.79</small>
</div>
</div>
</div>
</li>
<li class="splide__slide">
<div class="match-card-home">
<div class="league-name">ITALY SERIE A</div>
<div class="kickoff-time">October 19, 2026 — 01:45 WIB</div>
<div class="match-main-row">
<div class="team-col">
<img src="https://cdn.sportnanoapi.com/football/team/dc0e43b95c6676c54415bac168472aa4.png" class="team-logo" alt="">
<div class="team-name">Juventus</div>
</div>
<div class="score-col">
<div class="score-value">0 : 0</div>
<a href="javascript:void(0)" class="bet-btn" onclick="jtSboBet(146602183)">BET NOW</a>
</div>
<div class="team-col">
<img src="https://cdn.sportnanoapi.com/football/team/5a2ff46efa33abc6b2908eb6279dfbf8.png" class="team-logo" alt="">
<div class="team-name">Lazio</div>
</div>
</div>
<div class="match-odds-row">
<div class="odds-col">
0.5 <small style="margin-left: 5px;">0.70</small>
</div>
<div class="odds-spacer"></div>
<div class="odds-col">
-0.5 <small style="margin-left: 5px;">-0.78</small>
</div>
</div>
</div>
</li>
<li class="splide__slide">
<div class="match-card-home">
<div class="league-name">ITALY SERIE A</div>
<div class="kickoff-time">October 18, 2026 — 22:59 WIB</div>
<div class="match-main-row">
<div class="team-col">
<img src="https://cdn.sportnanoapi.com/football/team/643ef4101b017dc1495dbd9e9d5cce28.png" class="team-logo" alt="">
<div class="team-name">AC Milan</div>
</div>
<div class="score-col">
<div class="score-value">0 : 0</div>
<a href="javascript:void(0)" class="bet-btn" onclick="jtSboBet(146602184)">BET NOW</a>
</div>
<div class="team-col">
<img src="https://cdn.sportnanoapi.com/football/team/43a877bf7a6f4c109f0affbf45d5f19c.png" class="team-logo" alt="">
<div class="team-name">Atalanta</div>
</div>
</div>
<div class="match-odds-row">
<div class="odds-col">
0.25 <small style="margin-left: 5px;">0.60</small>
</div>
<div class="odds-spacer"></div>
<div class="odds-col">
-0.25 <small style="margin-left: 5px;">-0.68</small>
</div>
</div>
</div>
</li>
<li class="splide__slide">
<div class="match-card-home">
<div class="league-name">ENGLISH PREMIER LEAGUE</div>
<div class="kickoff-time">October 20, 2026 — 02:00 WIB</div>
<div class="match-main-row">
<div class="team-col">
<img src="https://cdn.sportnanoapi.com/football/team/8b22ab4041e666b996a2d96f20dea707.png" class="team-logo" alt="">
<div class="team-name">Tottenham Hotspur</div>
</div>
<div class="score-col">
<div class="score-value">0 : 0</div>
<a href="javascript:void(0)" class="bet-btn" onclick="jtSboBet(145101371)">BET NOW</a>
</div>
<div class="team-col">
<img src="https://cdn.sportnanoapi.com/football/team/759f19ccaecadd33a5c09b535e543410.png" class="team-logo" alt="">
<div class="team-name">Coventry City</div>
</div>
</div>
<div class="match-odds-row">
<div class="odds-col">
1 <small style="margin-left: 5px;">0.78</small>
</div>
<div class="odds-spacer"></div>
<div class="odds-col">
-1 <small style="margin-left: 5px;">-0.88</small>
</div>
</div>
</div>
</li>
</ul>
</div>
</div>
</div>
</div>
<div class="home-section">
<div class="widget-kupon" style="margin-top:20px;">
<iframe class="iframe-kupon" src="https://fkupon.com/widget2.php" title="Widget kupon" loading="lazy"></iframe>
<div onclick="window.JT_LOGGED_IN ? content('/kupon.php','#content',null) : (sessionStorage.setItem('jt_pending_action', JSON.stringify({type:'kupon'})), scrollToLoginForm())" style="position:absolute;top:0;left:0;right:0;bottom:0;cursor:pointer;z-index:5;"></div>
</div>
</div>
</div>
<script>
(function () {
function mountSportSplide() {
var el = document.getElementById('sportMatchSplide');
if (!el || el.classList.contains('is-initialized')) return;
if (typeof Splide === 'undefined') return;
new Splide('#sportMatchSplide', {
type : 'loop',
perPage : 3,
gap : '8px',
autoplay : true,
interval : 4500,
pauseOnHover: true,
pagination : true,
arrows : true,
breakpoints: {
767: { perPage: 1 }
}
}).mount();
}
function bootSportSplide() {
if (typeof ensureSplide === 'function') {
ensureSplide().then(mountSportSplide).catch(function () {});
} else {
mountSportSplide();
}
}
// SSR: defer sampai Splide ready; AJAX: mount via ensureSplide.
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', bootSportSplide);
} else {
bootSportSplide();
}
})();
var _sboLaunchToken = null;
function jtSboBet(matchId) {
if (window.JT_LOGGED_IN && _sboLaunchToken) {
var url = '/new/launch/' + _sboLaunchToken;
var standalone = window.navigator.standalone === true ||
window.matchMedia('(display-mode: standalone)').matches;
var isMobile = standalone || window.innerWidth < 768;
var popup = isMobile ? null : window.open('about:blank', '_blank', 'width=1200,height=800,top=0,left=0,resizable=yes,scrollbars=yes');
jtPost(url, { check: 1, matchId: matchId || '' }).then(function(res) {
if (res.ok) {
if (popup) { popup.location.href = url; } else { window.location.href = url; }
} else if (popup) {
popup.close();
}
}).catch(function() {
if (popup) popup.close();
});
} else {
if (matchId) sessionStorage.setItem('jt_pending_action', JSON.stringify({type: 'sbo', matchId: matchId}));
else sessionStorage.removeItem('jt_pending_action');
if (typeof scrollToLoginForm === 'function') scrollToLoginForm();
}
}
</script>
<div id="pasaranPopupOverlay" class="pasaran-popup-overlay">
<div class="pasaran-popup themed-box">
<div class="pasaran-popup-inner">
<div class="pasaran-popup-header">
<div class="pasaran-popup-select">
<button type="button" class="pasaran-popup-select-btn" onclick="ppToggleDropdown()" id="ppSelectBtn">
<span id="ppTitle">-</span>
<i class="bi bi-chevron-down"></i>
</button>
<div class="pasaran-popup-dropdown" id="ppDropdown"></div>
</div>
<button type="button" class="tx-btn-close" onclick="closePasaranPopup()" aria-label="Tutup"><i class="bi bi-x-lg"></i></button>
</div>
<div class="pasaran-popup-meta" id="ppMeta"></div>
<div class="pasaran-popup-body">
<table class="themed-table history-table" id="ppTable">
<thead>
<tr>
<th style="width:10%">No.</th>
<th>Tanggal</th>
<th>Hari</th>
<th>Periode</th>
<th>Result</th>
</tr>
</thead>
<tbody id="ppTableBody"></tbody>
</table>
</div>
<div class="history-paging pasaran-popup-paging" id="ppPaging" style="display:none;">
<ul class="h-pages" id="ppPages"></ul>
</div>
</div>
</div>
</div>
<script>
window.addEventListener('message', function(e) {
if (e.origin !== 'https://fkupon.com') return;
var iframe = document.querySelector('.iframe-kupon');
if (!iframe) return;
var h = null;
if (e.data && typeof e.data.height === 'number') h = e.data.height;
else if (typeof e.data === 'number') h = e.data;
if (h !== null) {
iframe.style.height = Math.max(60, h) + 'px';
}
});
// launchGame / copy helpers → main.js
var _ppMarkets = [];
var _ppCurrentNameid = '';
var PP_PER_PAGE = 10;
function showPasaranPopup(el) {
var overlay = document.getElementById('pasaranPopupOverlay');
var nameid = el.dataset.nameid || '';
if (!overlay || !nameid) return;
overlay.style.display = 'flex';
ppSelectPasaran(nameid);
}
function ppFindMarket(nameid) {
for (var i = 0; i < _ppMarkets.length; i++) {
if (String(_ppMarkets[i].nameid) === String(nameid)) return _ppMarkets[i];
}
return null;
}
function ppRenderDropdown() {
var dd = document.getElementById('ppDropdown');
if (!dd) return;
dd.innerHTML = '';
_ppMarkets.forEach(function (m) {
var btn = document.createElement('button');
btn.type = 'button';
btn.className = 'pasaran-popup-dd-item' + (String(m.nameid) === String(_ppCurrentNameid) ? ' active' : '');
btn.textContent = m.name || '';
btn.dataset.nameid = m.nameid || '';
btn.addEventListener('click', function () { ppSelectPasaran(btn.dataset.nameid); });
dd.appendChild(btn);
});
}
function ppSelectPasaran(nameid) {
var market = ppFindMarket(nameid);
if (!market) return;
_ppCurrentNameid = nameid;
document.getElementById('ppTitle').textContent = market.name || '';
var ppMetaRows = [
['Website', market.web],
['Hari Undi', market.hari],
['Jam Tutup', market.jam_tutup],
['Jam Result', market.jam_result]
];
document.getElementById('ppMeta').innerHTML = ppMetaRows.map(function (r) {
return '<div class="pasaran-popup-meta-row"><span class="pp-meta-label">' + esc(r[0]) + '</span><span class="pp-meta-value">: ' + esc(r[1] || '-') + '</span></div>';
}).join('');
ppRenderDropdown();
ppCloseDropdown();
ppLoadKeluaran(1);
}
function ppToggleDropdown() {
var dd = document.getElementById('ppDropdown');
var wrap = document.querySelector('.pasaran-popup-select');
if (dd) dd.classList.toggle('open');
if (wrap) wrap.classList.toggle('open');
}
function ppCloseDropdown() {
var dd = document.getElementById('ppDropdown');
var wrap = document.querySelector('.pasaran-popup-select');
if (dd) dd.classList.remove('open');
if (wrap) wrap.classList.remove('open');
}
function ppLoadKeluaran(page) {
var tbody = document.getElementById('ppTableBody');
tbody.innerHTML = '<tr><td colspan="5" class="text-center pp-loading-cell"><div class="content-loader-wrap"><div class="loader"></div></div></td></tr>';
jtPostJson('/api/front/pasaran-keluaran', {
pasaran: _ppCurrentNameid,
page: page,
per_page: PP_PER_PAGE
})
.then(function (res) {
if (!res.error || res.error.code !== 200) { ppRenderError(); return; }
var data = res.data || {};
ppRenderRows(data.rows || [], data.pagination || {});
})
.catch(ppRenderError);
}
function ppRenderError() {
document.getElementById('ppTableBody').innerHTML = '<tr><td colspan="5" class="text-center pp-empty-cell" style="color:var(--secondary-text-color)">Gagal memuat data.</td></tr>';
document.getElementById('ppPaging').style.display = 'none';
}
function ppRenderRows(rows, pagination) {
var tbody = document.getElementById('ppTableBody');
if (!rows.length) {
tbody.innerHTML = '<tr><td colspan="5" class="text-center pp-empty-cell" style="color:var(--secondary-text-color)">Tidak ada data.</td></tr>';
} else {
var page = pagination.page || 1;
var startNo = (page - 1) * PP_PER_PAGE;
tbody.innerHTML = rows.map(function (row, i) {
return '<tr>' +
'<td class="text-center" style="color:var(--secondary-text-color)">' + (startNo + i + 1) + '</td>' +
'<td class="pp-col-tanggal">' + esc(row.tanggal) + '</td>' +
'<td class="pp-col-hari">' + esc(row.hari) + '</td>' +
'<td>' + esc(row.pasaran) + '</td>' +
'<td class="pp-col-result"><strong>' + esc(row.result) + '</strong></td>' +
'</tr>';
}).join('');
}
ppRenderPaging(pagination);
}
function ppRenderPaging(pagination) {
var paging = document.getElementById('ppPaging');
var pagesList = document.getElementById('ppPages');
var totalPages = pagination.total_pages || 0;
var page = pagination.page || 1;
if (totalPages <= 1) { paging.style.display = 'none'; return; }
paging.style.display = '';
pagesList.innerHTML = '';
function btn(label, targetPage, disabled, active) {
var li = document.createElement('li');
var b = document.createElement('button');
b.innerHTML = label;
if (disabled) b.disabled = true;
if (active) b.classList.add('active');
b.addEventListener('click', function () { ppLoadKeluaran(targetPage); });
li.appendChild(b);
pagesList.appendChild(li);
}
function ellipsis() {
var li = document.createElement('li');
var span = document.createElement('span');
span.className = 'h-ellipsis';
span.textContent = '...';
li.appendChild(span);
pagesList.appendChild(li);
}
btn('First', 1, page === 1, false);
var winStart = Math.max(1, page - 2);
var winEnd = Math.min(totalPages, page + 2);
for (var p = winStart; p <= winEnd; p++) btn(p, p, false, p === page);
if (winEnd < totalPages) {
if (winEnd < totalPages - 1) ellipsis();
btn(totalPages, totalPages, false, page === totalPages);
}
btn('Last', totalPages, page === totalPages, false);
}
function closePasaranPopup() {
var overlay = document.getElementById('pasaranPopupOverlay');
if (overlay) overlay.style.display = 'none';
ppCloseDropdown();
}
document.addEventListener('click', function(e) {
var overlay = document.getElementById('pasaranPopupOverlay');
if (overlay && e.target === overlay) closePasaranPopup();
var selectWrap = document.querySelector('.pasaran-popup-select');
if (selectWrap && !selectWrap.contains(e.target)) ppCloseDropdown();
});
(function() {
var PER_PAGE = 10;
function initTogelPagination() {
var wrap = document.querySelector('.togel-list-guest');
if (!wrap) return;
var rows = Array.prototype.slice.call(wrap.querySelectorAll('.togel-list-row'));
var total = rows.length;
if (total <= PER_PAGE) return;
var totalPages = Math.ceil(total / PER_PAGE);
var currentPage = 1;
function showPage(page) {
currentPage = page;
rows.forEach(function(row, i) {
var start = (page - 1) * PER_PAGE;
row.style.display = (i >= start && i < start + PER_PAGE) ? 'flex' : 'none';
});
renderPager();
}
function renderPager() {
var pager = document.getElementById('togelListPager');
if (!pager) return;
pager.innerHTML = '';
for (var p = 1; p <= totalPages; p++) {
(function(pg) {
var dot = document.createElement('button');
dot.className = 'tlp-dot' + (pg === currentPage ? ' active' : '');
dot.addEventListener('click', function() { showPage(pg); });
pager.appendChild(dot);
})(p);
}
}
var pager = document.createElement('div');
pager.id = 'togelListPager';
pager.className = 'togel-list-pager';
wrap.parentNode.insertBefore(pager, wrap.nextSibling);
var touchStartX = 0;
wrap.addEventListener('touchstart', function(e) {
touchStartX = e.changedTouches[0].clientX;
}, { passive: true });
wrap.addEventListener('touchend', function(e) {
var dx = e.changedTouches[0].clientX - touchStartX;
if (Math.abs(dx) < 40) return;
if (dx < 0 && currentPage < totalPages) showPage(currentPage + 1);
if (dx > 0 && currentPage > 1) showPage(currentPage - 1);
}, { passive: true });
showPage(1);
}
initTogelPagination();
})();
(function() {
var btn = document.querySelector('.togel-panel-more');
if (!btn) return;
btn.addEventListener('click', function() {
var wrap = btn.closest('.togel-panel');
if (wrap) wrap.classList.toggle('togel-panel--open');
});
})();
function jtBootHomePartial() {
var isLoggedIn = false;
var bootMarkets = [{"name":"HK SIANG","nameid":"HKD","periode":"949","status":1,"web":"www.hkpools1.com","hari":"Setiap Hari","jam_tutup":"10:30 WIB","jam_result":"11:00 WIB","result":"0382","date":"18/10/2026"},{"name":"SG METRO","nameid":"SGM","periode":"975","status":1,"web":"www.sgmetro.com","hari":"Setiap Hari","jam_tutup":"12:30 WIB","jam_result":"13:00 WIB","result":"5103","date":"17/10/2026"},{"name":"SYDNEY","nameid":"SY","periode":"796","status":0,"web":"https://sydneylotto.com","hari":"Setiap Hari","jam_tutup":"13:30 WIB","jam_result":"14:00 WIB","result":"8602","date":"26/5/2026"},{"name":"HAIPHONG","nameid":"HAI","periode":"694","status":0,"web":"www.haiphongpools.com","hari":"Setiap Hari","jam_tutup":"14:30 WIB","jam_result":"15:00 WIB","result":"7963","date":"26/5/2026"},{"name":"SINGAPORE","nameid":"SG","periode":"790","status":0,"web":"www.singaporepools.com.sg","hari":"Senin, Rabu, Kamis, Sabtu, Minggu","jam_tutup":"17:20 WIB","jam_result":"17:45 WIB","result":"6101","date":"25/5/2026"},{"name":"MALAYSIA","nameid":"MY","periode":"324","status":0,"web":"www.malaysialottery.net","hari":"Setiap Hari","jam_tutup":"18:30 WIB","jam_result":"19:00 WIB","result":"-","date":"-"},{"name":"MACAU","nameid":"MC","periode":"873","status":1,"web":"www.supersixmacau.com","hari":"Setiap Hari","jam_tutup":"19:30 WIB","jam_result":"20:00 WIB","result":"5978","date":"17/10/2026"},{"name":"QATAR","nameid":"QTR","periode":"957","status":0,"web":"www.qatarlottery.com","hari":"Setiap Hari","jam_tutup":"20:30 WIB","jam_result":"21:00 WIB","result":"-","date":"-"},{"name":"TOTO WUHAN","nameid":"TWH","periode":"973","status":1,"web":"www.totowuhan.com","hari":"Setiap Hari ( 09:00 | 12:00 | 15:00 | 18:00 | 21:00 | 00:00 )","jam_tutup":"Tiap 3 jam","jam_result":"Tiap 3 jam","result":"2731","date":"18/10/2026"},{"name":"CAROLINA DAY","nameid":"CRD","periode":"353","status":0,"web":"https://www.wral.com/entertainment/lottery/","hari":"Setiap Hari","jam_tutup":"01:45 WIB","jam_result":"02:00 WIB","result":"4650","date":"26/5/2026"},{"name":"OREGON03","nameid":"OG3","periode":"353","status":0,"web":"https://www.wral.com/entertainment/lottery/","hari":"Setiap Hari","jam_tutup":"02:45 WIB","jam_result":"03:00 WIB","result":"6290","date":"26/5/2026"},{"name":"FLORIDA EVE","nameid":"FLE","periode":"353","status":0,"web":"https://www.wral.com/entertainment/lottery/","hari":"Setiap Hari","jam_tutup":"08:25 WIB","jam_result":"08:45 WIB","result":"2110","date":"26/5/2026"},{"name":"CAROLINA EVE","nameid":"CRE","periode":"353","status":0,"web":"https://www.wral.com/entertainment/lottery/","hari":"Setiap Hari","jam_tutup":"10:10 WIB","jam_result":"10:22 WIB","result":"4637","date":"26/5/2026"},{"name":"TEXAS DAY","nameid":"TXD","periode":"302","status":0,"web":"https://www.wral.com/entertainment/lottery/","hari":"Setiap Hari","jam_tutup":"00:10 WIB","jam_result":"00:27 WIB","result":"6020","date":"26/5/2026"},{"name":"INDIANA EVE","nameid":"IDE","periode":"353","status":0,"web":"https://www.wral.com/entertainment/lottery/","hari":"Setiap Hari","jam_tutup":"09:30 WIB","jam_result":"09:50 WIB","result":"7460","date":"26/5/2026"},{"name":"SANTIAGO EVE","nameid":"STE","periode":"353","status":0,"web":"https://www.wral.com/entertainment/lottery/","hari":"Setiap Hari","jam_tutup":"04:15 WIB","jam_result":"04:30 WIB","result":"5853","date":"26/5/2026"},{"name":"CALIFORNIA","nameid":"CAF","periode":"353","status":0,"web":"https://www.wral.com/entertainment/lottery/","hari":"Setiap Hari","jam_tutup":"08:10 WIB","jam_result":"08:30 WIB","result":"3716","date":"26/5/2026"},{"name":"HONGKONG","nameid":"HK","periode":"984","status":0,"web":"www.hongkongpools.com","hari":"Setiap Hari","jam_tutup":"22:00 WIB","jam_result":"23:00 WIB","result":"0140","date":"25/5/2026"}];
function renderTogelCards(markets) {
var panel = document.getElementById('togel-panel');
if (!panel) return;
var loading = panel.querySelector('.togel-cards-loading');
if (loading) loading.remove();
var moreBtn = panel.querySelector('.togel-panel-more');
panel.querySelectorAll('.togel-grid-row').forEach(function (el) { el.remove(); });
var mid = markets.length > 10 ? Math.ceil(markets.length / 2) : Math.min(markets.length, 12);
var rows = [markets.slice(0, mid), markets.slice(mid)];
rows.forEach(function (row) {
if (!row.length) return;
var rowDiv = document.createElement('div');
rowDiv.className = 'togel-grid-row';
row.forEach(function (m) {
var card = document.createElement('div');
card.className = 'togel-card';
var inner = '<div class="market-name">' + esc(m.name) + '</div>' +
'<div class="market-code">' + esc(m.result) + '</div>' +
'<div class="market-info">' + esc(m.date) + '</div>';
if (isLoggedIn) {
var isMarketOnline = String(m.status) === '1';
if (isMarketOnline) {
var marketCode = (m.nameid || '') + '-' + (m.periode || '');
card.setAttribute('onclick', "content('/togel-detail.php?market=" + encodeURIComponent(marketCode) + "','#content')");
} else {
card.setAttribute('onclick', "content('/togel.php','#content')");
}
} else {
card.setAttribute('onclick', 'showPasaranPopup(this)');
card.dataset.nameid = m.nameid || '';
card.dataset.market = m.name || '';
card.dataset.website = m.web || '';
card.dataset.hari = m.hari || 'Setiap Hari';
card.dataset.jamTutup = m.jam_tutup || '-';
card.dataset.jamResult = m.jam_result || '-';
inner += '<div class="tc-guest-detail">' +
'<div class="tc-dr"><span>Web</span><span>' + esc(m.web) + '</span></div>' +
'<div class="tc-dr"><span>Buka</span><span>' + esc(m.hari) + '</span></div>' +
'<div class="tc-dr"><span>Tutup</span><span>' + esc(m.jam_tutup) + '</span></div>' +
'<div class="tc-dr"><span>Result</span><span>' + esc(m.jam_result)+ '</span></div>' +
'</div>';
}
card.innerHTML = inner;
rowDiv.appendChild(card);
});
panel.insertBefore(rowDiv, moreBtn || null);
});
updateTogelMoreBtn(panel, moreBtn);
}
function updateTogelMoreBtn(panel, moreBtn) {
if (!moreBtn) return;
var check = function() {
var cards = panel.querySelectorAll('.togel-card');
var multiRow = false;
if (cards.length) {
var firstTop = cards[0].offsetTop;
for (var i = 1; i < cards.length; i++) {
if (cards[i].offsetTop > firstTop + 1) { multiRow = true; break; }
}
}
moreBtn.style.display = multiRow ? '' : 'none';
if (!multiRow) {
panel.classList.remove('togel-panel--open');
panel.style.maxHeight = panel.scrollHeight + 'px';
} else if (!panel.classList.contains('togel-panel--open')) {
var secondTop = null;
for (var j = 0; j < cards.length; j++) {
if (cards[j].offsetTop > firstTop + 1) { secondTop = cards[j].offsetTop; break; }
}
var peek = cards[0].offsetHeight * 0.12;
panel.style.maxHeight = secondTop !== null ? (secondTop + peek) + 'px' : '';
}
};
check();
window.addEventListener('resize', check, { passive: true });
window.addEventListener('load', check);
}
if (Array.isArray(bootMarkets) && bootMarkets.length) {
_ppMarkets = bootMarkets;
renderTogelCards(bootMarkets);
}
if (typeof initHomeGameImageFallback === 'function') {
initHomeGameImageFallback(document);
}
(function() {
function enableDragScroll(el) {
var isDown = false, startX, scrollLeft;
el.addEventListener('mousedown', function(e) {
isDown = true;
el.style.cursor = 'grabbing';
startX = e.pageX - el.offsetLeft;
scrollLeft = el.scrollLeft;
e.preventDefault();
});
el.addEventListener('mouseleave', function() { isDown = false; el.style.cursor = ''; });
el.addEventListener('mouseup', function() { isDown = false; el.style.cursor = ''; });
el.addEventListener('mousemove', function(e) {
if (!isDown) return;
el.scrollLeft = scrollLeft - (e.pageX - el.offsetLeft - startX);
});
}
document.querySelectorAll('.home-view .game-scroll-wrap, .home-view .togel-grid-wrap').forEach(enableDragScroll);
})();
(function () {
document.querySelectorAll('.home-view .game-scroll-wrap').forEach(function (wrap) {
if (wrap.parentNode && wrap.parentNode.classList.contains('game-scroll-outer')) return;
var outer = document.createElement('div');
outer.className = 'game-scroll-outer';
wrap.parentNode.insertBefore(outer, wrap);
outer.appendChild(wrap);
var btnL = document.createElement('button');
var btnR = document.createElement('button');
btnL.className = 'game-scroll-btn game-scroll-btn-l';
btnR.className = 'game-scroll-btn game-scroll-btn-r';
btnL.type = 'button';
btnR.type = 'button';
btnL.innerHTML = '‹';
btnR.innerHTML = '›';
outer.appendChild(btnL);
outer.appendChild(btnR);
function update() {
var canL = wrap.scrollLeft > 0;
var canR = wrap.scrollLeft < wrap.scrollWidth - wrap.clientWidth - 1;
btnL.style.display = canL ? 'flex' : 'none';
btnR.style.display = canR ? 'flex' : 'none';
}
function cardWidth() {
var card = wrap.querySelector('.game-card');
if (!card) return 120;
return card.offsetWidth + 10;
}
btnR.addEventListener('click', function () {
wrap.scrollBy({ left: cardWidth(), behavior: 'smooth' });
});
btnL.addEventListener('click', function () {
wrap.scrollBy({ left: -cardWidth(), behavior: 'smooth' });
});
wrap.addEventListener('scroll', update);
window.addEventListener('resize', update);
update();
});
})();
}
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', jtBootHomePartial);
} else {
jtBootHomePartial();
}
</script>
</div>
<!-- Transaksi Start -->
<style>
.transaksi-group {
display: grid;
grid-template-columns: 458px 1fr;
justify-content: space-between;
grid-template-areas:
"transaksi-bank transaksi-other transaksi-crypto";
}
.transaksi-bank {
grid-area: transaksi-bank;
display: grid;
place-items: center
}
.transaksi-other {
grid-area: transaksi-other;
display: flex;
justify-content: space-evenly;
width: 100%;
}
.transaksi-crypto {
grid-area: transaksi-crypto;
display: flex;
justify-content: space-evenly;
width: 100%;
}
.icon-crypto {
width: 24px;
height: 24px;
}
.transaksi-list-bank {
height: fit-content;
display: grid;
grid-template-columns: repeat(4, 92px);
grid-template-rows: repeat(4, auto);
gap: 4px;
}
.transaksi-list-other {
height: fit-content;
display: grid;
grid-template-columns: repeat(3, 92px);
gap: 4px;
}
.transaksi-list-crypto {
height: fit-content;
display: grid;
grid-template-columns: repeat(2, 80px);
gap: 10px 8px;
}
.transaksi-item {
display: flex;
flex-direction: column;
/* transform: perspective(10px) rotateX(3deg); */
}
.transaksi-header {
height: 30px;
border-radius: 5px;
display: grid;
place-items: center;
font-weight: bold;
border: 2px solid rgba(108,108,108,1);
background: rgba(54,54,54,1);
color: white;
}
.transaksi-status {
margin-left: 3px;
margin-right: 3px;
height: 3px;
border-radius: 0px 0px 4px 4px;
background: rgb(54,54,54);
background: linear-gradient(90deg, rgba(54,54,54,1) 0%, rgba(108,108,108,1) 50%, rgba(54,54,54,1) 100%);
}
.header-green {
background: rgba(44,121,6,1);
border-color: rgba(168,255,0,1);
}
.header-blue {
background: rgba(0,80,89,1);
border-color: rgba(0,255,204,1);
}
.status-green {
background: rgb(44,121,6);
background: linear-gradient(90deg, rgba(44,121,6,1) 0%, rgba(168,255,0,1) 50%, rgba(44,121,6,1) 100%);
}
.status-blue {
background: rgb(0,80,89);
background: linear-gradient(90deg, rgba(0,80,89,1) 0%, rgba(0,255,204,1) 50%, rgba(0,80,89,1) 100%);
}
.transaksi-name {
font-size: 1.1rem;
font-weight: bold;
line-height: 1.5rem
}
.transaksi-wrapper {
display: flex;
flex-direction: column;
gap: .5rem;
}
@media only screen and (max-width: 768px) {
.transaksi-group {
display: grid;
grid-template-columns: 1fr;
grid-template-areas:
"transaksi-bank"
"transaksi-other"
"transaksi-crypto";
gap: 32px;
margin-bottom: 8px;
}
.transaksi-header {
font-size: 1.1rem;
height: 36px;
}
.transaksi-list-bank {
grid-template-columns: repeat(4, 1fr);
}
.transaksi-list-other {
grid-template-columns: repeat(4, 1fr);
}
.transaksi-list-crypto {
width: 86%;
margin: auto;
grid-template-columns: repeat(4, 1fr);
}
.transaksi-list {
display: grid;
grid-template-columns: repeat(3, 1fr);
}
.transaksi-item {
width: 100%;
}
.transaksi-title-group {
justify-content: center;
padding: 16px 0;
}
.transaksi-name {
font-size: 1.3rem;
text-align: center;
line-height: 1.8rem;
}
.transaksi-wrapper {
width: 100%;
max-width: 100%!important;
gap: 1rem;
}
.icon-crypto {
width: 28px;
height: 28px;
}
}
</style>
<style>
.transaksi-wrapper {
display: flex;
flex-direction: column;
gap: .5rem;
align-items: flex-start;
}
.transaksi-name {
font-size: 1.1rem;
font-weight: bold;
line-height: 1.5rem;
}
.carousel-inner {
position: relative;
width: 100%;
overflow: hidden;
}
.transaksi-list-bank, .transaksi-list-other {
grid-template-columns: repeat(4, minmax(110px, 1fr));
gap: 8px 10px;
}
.transaksi-list-bank, .transaksi-list-other {
height: fit-content;
display: grid;
grid-template-columns: repeat(4, minmax(80px, 1fr));
gap: 4px 6px;
}
.transaksi-item {
display: flex;
flex-direction: column;
position: relative;
}
.transaksi-header {
height: 34px;
border-radius: 6px;
font-weight: bold;
border: 2px solid rgba(108, 108, 108, 1);
background: rgba(54, 54, 54, 1);
color: white;
min-width: 110px;
padding: 0 16px 0 28px;
display: flex;
align-items: center;
justify-content: center;
text-align: center;
white-space: nowrap;
}
.transaksi-header {
border: none;
padding: 0px;
padding-bottom: 4px;
}
.transaksi-header.is-online::before {
content: "";
position: absolute;
top: auto;
left: 50%;
transform: translateX(-50%);
width: 50%;
height: 4px;
bottom: 0%;
background-color: #00ff66;
border-radius: 6px;
box-shadow: 0 0 8px rgba(0, 255, 102, .85);
}
.transaksi-header.is-offline {
padding: 0 16px;
background: #2e2e2e;
border-color: #555;
opacity: .35;
align-items: center;
justify-content: center;
text-align: center;
}
</style>
<div class="section desktop-only" style="min-height: 220px">
<div class="transaksi-group">
<div class="transaksi-bank">
<div class="transaksi-wrapper">
<div class="transaksi-name">Bank Lokal</div>
<div id="transaksi-bank-indicators" class="carousel slide" data-bs-ride="carousel">
<div class="carousel-indicators" style="bottom: -32px; margin-bottom: 0px">
</div>
<div class="carousel-inner" >
<div class="carousel-item active" style="min-height: 144px">
<div class="transaksi-list-bank">
<div class="transaksi-item">
<div class="transaksi-header">BCA</div>
<div class="transaksi-status status-green"></div>
</div>
<div class="transaksi-item">
<div class="transaksi-header">Mandiri</div>
<div class="transaksi-status status-green"></div>
</div>
<div class="transaksi-item">
<div class="transaksi-header">BNI</div>
<div class="transaksi-status status-green"></div>
</div>
<div class="transaksi-item">
<div class="transaksi-header">BRI</div>
<div class="transaksi-status status-green"></div>
</div>
<div class="transaksi-item">
<div class="transaksi-header">CIMB</div>
<div class="transaksi-status status-green"></div>
</div>
<div class="transaksi-item">
<div class="transaksi-header">Danamon</div>
<div class="transaksi-status status-green"></div>
</div>
<div class="transaksi-item">
<div class="transaksi-header">Permata</div>
<div class="transaksi-status status-green"></div>
</div>
<div class="transaksi-item">
<div class="transaksi-header">BJB</div>
<div class="transaksi-status status-green"></div>
</div>
<div class="transaksi-item">
<div class="transaksi-header">OCBC</div>
<div class="transaksi-status status-green"></div>
</div>
<div class="transaksi-item">
<div class="transaksi-header">DKI</div>
<div class="transaksi-status status-green"></div>
</div>
<div class="transaksi-item">
<div class="transaksi-header">SUMUT</div>
<div class="transaksi-status status-green"></div>
</div>
<div class="transaksi-item">
<div class="transaksi-header">BSI</div>
<div class="transaksi-status status-green"></div>
</div>
<div class="transaksi-item">
<div class="transaksi-header">NEO</div>
<div class="transaksi-status status-green"></div>
</div>
<div class="transaksi-item">
<div class="transaksi-header">JAGO</div>
<div class="transaksi-status status-green"></div>
</div>
<div class="transaksi-item">
<div class="transaksi-header">SeaBank</div>
<div class="transaksi-status status-green"></div>
</div>
<div class="transaksi-item">
<div class="transaksi-header">BluBCA</div>
<div class="transaksi-status status-green"></div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="transaksi-other">
<div class="transaksi-wrapper" style="max-width: 458px">
<div class="transaksi-name">E Money & Pulsa</div>
<div id="transaksi-other-indicators" class="carousel slide" data-bs-ride="carousel">
<div class="carousel-indicators" style="bottom: -32px; margin-bottom: 0px">
</div>
<div class="carousel-inner" >
<div class="carousel-item active">
<div class="transaksi-list-other">
<div class="transaksi-item">
<div class="transaksi-header">PANIN</div>
<div class="transaksi-status "></div>
</div>
<div class="transaksi-item">
<div class="transaksi-header">Telkomsel</div>
<div class="transaksi-status status-blue"></div>
</div>
<div class="transaksi-item">
<div class="transaksi-header">Axiata</div>
<div class="transaksi-status status-blue"></div>
</div>
<div class="transaksi-item">
<div class="transaksi-header">DANA</div>
<div class="transaksi-status status-blue"></div>
</div>
<div class="transaksi-item">
<div class="transaksi-header">OVO</div>
<div class="transaksi-status status-blue"></div>
</div>
<div class="transaksi-item">
<div class="transaksi-header">GOPAY</div>
<div class="transaksi-status status-blue"></div>
</div>
<div class="transaksi-item">
<div class="transaksi-header">LinkAja</div>
<div class="transaksi-status status-blue"></div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="transaksi-crypto">
<div class="transaksi-wrapper" style="max-width: 284px">
<div class="transaksi-name mb-1">Crypto Currency</div>
<div id="transaksi-crypto-indicators" class="carousel slide" data-bs-ride="carousel">
<div class="carousel-indicators" style="bottom: -32px; margin-bottom: 0px">
</div>
<div class="carousel-inner" >
<div class="carousel-item active">
<div class="transaksi-list-crypto">
<div class="d-flex gap-2">
<img src="https://img.viva88athenae.com/USDT.png" class="icon-crypto" alt="USDT">
<strong class="transaksi-name">USDT</strong>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<footer class="site-footer">
<div class="section">
<div class="footer-nav">
<a href="javascript:void(0)" onclick="openCms('tentang')">TENTANG KAMI</a>
<span class="footer-nav-sep">|</span> <a href="javascript:void(0)" onclick="openCms('bantuan')">BANTUAN</a>
<span class="footer-nav-sep">|</span> <a href="javascript:void(0)" onclick="openCms('peraturan')">PERATURAN</a>
<span class="footer-nav-sep">|</span> <a href="javascript:void(0)" onclick="openCms('bank')">INFORMASI BANK</a>
<span class="footer-nav-sep">|</span> <a href="javascript:void(0)" onclick="openCms('hubungi')">HUBUNGI KAMI</a>
<span class="footer-nav-sep">|</span> <a href="javascript:void(0)" onclick="openCms('privasi')">KEBIJAKAN PRIVASI</a>
<span class="footer-nav-sep">|</span> <a href="javascript:void(0)" onclick="openCms('cookies')">PERSETUJUAN COOKIES</a>
</div>
<div class="footer-guidelines-wrap">
<img src="https://img.viva88athenae.com/new/guidelines.png?v=1791889412" alt="Guidelines" class="footer-guidelines-img" width="929" height="52">
</div>
<div class="footer-providers">
<img src="https://img.viva88athenae.com/assets/provider.png?v=1791889412" alt="Provider Logos" class="d-none d-md-block" style="margin:0 auto;" width="1201" height="124">
<img src="/images/new/provider-mobile.png?v=1791889412" alt="Provider Logos" class="d-md-none" width="600" height="262" style="max-width:100%;height:auto;">
</div>
<div class="footer-meta"><div>
<style>
/* ===== FOOTER WRAPPER ===== */
.seo-footer {
background: #111;
color: #ccc;
padding: 25px 15px;
text-align: center;
border-top: 1px solid rgba(255,255,255,0.08);
}
/* ===== BRAND ===== */
.seo-footer-brand {
font-size: 16px;
font-weight: bold;
margin-bottom: 10px;
color: #fff;
letter-spacing: 1px;
}
/* ===== LINKS ===== */
.seo-footer-links {
display: flex;
flex-wrap: wrap;
justify-content: center;
align-items: center;
gap: 8px;
font-size: 13px;
margin-bottom: 12px;
}
/* LINK STYLE */
.seo-footer-links a {
color: #ccc;
text-decoration: none;
transition: 0.2s ease;
}
/* HOVER */
.seo-footer-links a:hover {
color: #fff;
text-decoration: underline;
}
/* SEPARATOR */
.seo-footer-links span {
color: rgba(255,255,255,0.25);
}
/* COPYRIGHT */
.seo-footer-copy {
font-size: 12px;
opacity: 0.7;
}
/* RESPONSIVE */
@media (max-width: 600px) {
.seo-footer-links {
font-size: 12px;
gap: 6px;
}
.seo-footer {
padding: 20px 10px;
}
}
</style>
<footer class="seo-footer">
<div class="seo-footer-brand">
<h1>SERBU4D: Link Daftar Agen Platform Resmi Game Online SERBU 4D Terpercaya 2026</h1>
</div>
<p style="text-align: left;"><strong>SERBU4D</strong> merupakan link daftar resmi agen platform game online Serbu 4D terpercaya tahun 2026. Situs ini hadir untuk memberikan kemudahan akses login cepat, stabil, dan aman bagi seluruh pemain di Indonesia. Sebagai platform resmi, SERBU4D terus berkomitmen menyediakan pengalaman bermain terbaik dengan standar internasional.</p>
<div class="footer-article" style="text-align: left; max-width: 1000px; margin: 0 auto;">
<h2 style="text-align: left;">Kenapa SERBU4D Menjadi Pilihan Utama Pemain Indonesia?</h2>
<p>Dengan pengalaman lebih dari beberapa tahun melayani ribuan member aktif, SERBU4D memahami kebutuhan pemain game online Serbu 4D di Indonesia. Kami bukan hanya sekadar situs taruhan, melainkan platform resmi yang mengutamakan kenyamanan, keamanan, dan transparansi.</p>
<h3 style="text-align: left;">Keunggulan & Keahlian SERBU4D</h3>
<ul style="text-align: left;">
<li>Link resmi dan link alternatif yang selalu aktif & anti blokir</li>
<li>Sistem login super cepat dengan teknologi terkini</li>
<li>Deposit & withdraw instan melalui semua bank dan e-wallet populer</li>
<li>Permainan fair play dengan RTP tinggi dan hasil live result akurat</li>
<li>Bonus new member, cashback, dan promo harian yang kompetitif</li>
<li>Tampilan website modern yang responsif di semua jenis HP & komputer</li>
<li>Customer service profesional berpengalaman 24 jam nonstop</li>
</ul>
<h3 style="text-align: left;">Keamanan dan Kepercayaan</h3>
<p>SERBU4D menggunakan sistem keamanan berlapis enkripsi SSL 256-bit untuk melindungi data pribadi dan transaksi keuangan seluruh member. Kami telah terbukti dipercaya oleh puluhan ribu pemain Indonesia sejak lama. Semua transaksi diawasi ketat dan hasil permainan transparan tanpa manipulasi.</p>
<h3 style="text-align: left;">Pengalaman Bermain Terbaik</h3>
<p>Banyak member kami yang sudah merasakan sendiri kemudahan dan keuntungan bermain di SERBU4D. Dari proses daftar yang hanya memakan waktu kurang dari 2 menit, hingga proses pencairan kemenangan yang cepat dan tanpa ribet. Kami selalu mendengarkan masukan dari komunitas untuk terus meningkatkan kualitas layanan.</p>
<h3 style="text-align: left;">Cara Daftar dan Bermain di SERBU4D</h3>
<ol style="text-align: left;">
<li>Klik tombol Daftar di halaman ini</li>
<li>Isi data dengan lengkap dan benar</li>
<li>Verifikasi akun melalui Customer Service jika diperlukan</li>
<li>Lakukan deposit pertama dan klaim bonus new member</li>
<li>Mulai bermain dan nikmati pengalaman Serbu 4D terbaik</li>
</ol>
<h3 style="text-align: left;">Link Alternatif SERBU4D Terbaru 2026</h3>
<p>Kami selalu menyediakan beberapa link alternatif resmi yang dapat Anda gunakan kapan saja. Tim teknis SERBU4D bekerja 24 jam untuk memastikan akses situs tetap lancar meskipun ada gangguan dari pihak ketiga.</p>
<h3 style="text-align: left;">Pertanyaan yang Sering Ditanyakan (FAQ)</h3>
<h4 style="text-align: left;">Apakah SERBU4D situs resmi?</h4>
<p>Ya, SERBU4D adalah agen platform resmi Serbu 4D yang telah terverifikasi dan dipercaya banyak pemain.</p>
<h4 style="text-align: left;">Berapa lama proses withdraw?</h4>
<p>Withdraw di SERBU4D biasanya diproses dalam waktu 1-5 menit setelah diajukan.</p>
<h4 style="text-align: left;">Apakah aman mendaftar di sini?</h4>
<p>Sangat aman. Kami menggunakan proteksi keamanan terbaik dan tidak pernah membocorkan data member.</p>
<div class="cta-section" style="text-align: center; margin: 30px 0;">
<p><strong>Siap merasakan pengalaman bermain terbaik tahun 2026?</strong></p>
<p class="big-cta">
<a href="https://serbu4dlink.com/" target="_blank" style="font-size: 18px; padding: 12px 30px;"><strong>DAFTAR SEKARANG DI SERBU4D</strong></a>
</p>
<p>Link Resmi • Aman • Terpercaya • Cepat</p>
</div>
</div>
<div class="seo-footer-links">
<a href="/cms/tentang">Tentang Kami</a>
<span>|</span>
<a href="/cms/bantuan">Bantuan</a>
<span>|</span>
<a href="/cms/peraturan">Peraturan</a>
<span>|</span>
<a href="/cms/bank">Informasi Bank</a>
<span>|</span>
<a href="/cms/hubungi">Hubungi Kami</a>
<span>|</span>
<a href="/cms/privasi">Kebijakan Privasi</a>
<span>|</span>
<a href="/cms/cookies">Cookies</a>
</div>
</footer>
</div>
<!--- START WINNER --->
<div id="snackbar" class="show">
<img src=
"/images/logoweb.png" alt="Logo" class="snackbar-icon"
width="100" height="30">
<p id="withdraw"></p></div>
<script>
function loadlink(){
var angka_acak = Math.floor(Math.random() * (10001-50)+50);
function maketextnumber(n) {
for (var r = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"], e = n, t = new Array, a = 0; a <= e - 1; a++) {
t[a] = r[parseInt(Math.random() * r.length)];
t = t;
randomtextnumber = t.join("")
}
}
var huruf_acak = (maketextnumber(8), randomtextnumber);
var huruf_belakang = huruf_acak.substring(6);
var huruf_depan = huruf_acak.substring(0, 2);
const rupiah = (number)=>{
return new Intl.NumberFormat("id-ID", {
style: "currency",
currency: "IDR"
}).format(number);
}
var nominal = rupiah(angka_acak+"000");
var baris = huruf_depan+"****"+huruf_belakang+" Berhasil Withdraw "+nominal;
var x = document.getElementById("snackbar");
x.className = "show";
setTimeout(function(){ x.className = x.className.replace("show", ""); }, 3000);
// setTimeout(function(){ x.className = x.className.replace("show", ""); }, 3000);
document.getElementById("withdraw").innerHTML = huruf_depan+"****"+huruf_belakang+" Berhasil Withdraw "+nominal;
// document.getElementById("withdraw").style.backgroundColor ="red";
// document.getElementById("withdraw").width ="30%";
// document.getElementById("withdraw").height ="25px";
}
loadlink();
setInterval(function(){
loadlink()
}, 5000);
</script>
<style>
.snackbar-icon{margin-right:10px}
.snackbar-icon img{width:25px;height:15px}
#snackbar {
visibility: hidden;
min-width: 250px;
margin-left: -150px;
background-color: #212529;
color: white;
text-align: center;
border-radius: 10px;
padding-left: 10px;
padding-right: 10px;
padding-top: 10px;
text-shadow: 1px 1px 5px rgb(0,0,0);
position: fixed;
z-index: 1;
left: 50%;
top: 30px;
font-size: 14px;
}
#snackbar.show {
visibility: visible;
-webkit-animation: fadein 0.5s, fadeout 0.5s 2.5s;
animation: fadein 0.5s, fadeout 0.5s 2.5s;
}
@-webkit-keyframes fadein {
from {top: 0; opacity: 0;}
to {top: 30px; opacity: 2;}
}
@keyframes fadein {
from {top: 0; opacity: 0;}
to {top: 30px; opacity: 2;}
}
@-webkit-keyframes fadeout {
from {top: 30px; opacity: 2;}
to {top: 0; opacity: 0;}
}
@keyframes fadeout {
from {top: 30px; opacity: 2;}
to {top: 0; opacity: 0;}
}
</style>
<!--- END WINNER --->
<!-- SERVICE TABLE START -->
<style>
.count-item {
font-size: 1.8rem;
background: #c77e0f;
padding: 0.3rem 0.5rem;
color: #fff !important;
border-radius: 10px;
font-weight: bold;
}
.wrapper-service {
display: flex;
align-items: center;
flex-wrap: wrap;
justify-content: center;
border-radius: 10px;
margin-top: 1.3rem;
border: 3px solid #c77e0f;
padding: 0.8rem;
/* background: linear-gradient(90deg , #d39e00 0%, #cca11f 21%, #dba70a 49%, rgb(238 205 86) 75%, #9e7700 100%); color: #000; */
}
.status-wrapper, .status-wrapper-mem {
display: flex;
align-items: center;
}
.status-wrapper {
justify-content: center;
}
.status-wrapper-mem {
justify-content: center;
}
.status-wrapper p {
margin-right: 0.6rem !important;
}
.item-service {
margin-right: 3rem;
}
.item-service:last-child {
margin-right: 0;
}
.item-service h1 {
font-size: 2.2rem;
margin-top: 7px !important;
text-transform : uppercase;
font-weight: bold !important;
}
.google-wrapper {
background: #fff;
padding: 1.7rem;
width: 18rem;
height: 0.5rem;
border-radius: 10px;
position: relative;
}
.google-wrapper img {
position: absolute;
width: 2rem;
top: 9px;
left: 10px;
}
.item-service p {
color: #fff;
}
.google-wrapper p {
position: absolute;
left: 3.4rem;
top: 0.6rem;
text-transform: uppercase;
font-size: 1.50rem !important;
font-weight: bold !important;
color: #000 !important;
}
</style>
<script>
document.addEventListener('DOMContentLoaded', () => {
const min = 12554;
const max = 36548;
const memberUser = Math.floor(Math.random() * (max - min + 1)) + min;
$(' <div class="wrapper-service"><div class="item-service"><h3>Deposit</h3> <div class="status-wrapper"><p>Rata-Rata</p> <p><span class="count-item">1</span> Menit</p></div> <div class="progress21 progress-moved2"><div class="progress-bar21"></div> </div> </div> <div class="item-service"><h3>Withdraw</h3> <div class="status-wrapper"><p>Rata-Rata</p> <p><span class="count-item">3</span> Menit</p></div> <div class="progress21 progress-moved11"><div class="progress-bar31"></div> </div> </div> <div class="item-service"><h3>Member Online</h> <div class="status-wrapper-mem"><p> </p> <p><span class="count-item">'+ memberUser +'</span> Member</p></div> </div> <div class="item-service"><p style="text-align: center;">Ketik Di Google:</p> <div class="google-wrapper"><img src="https://superapps-94e1b.web.app/images/googleicons.webp" /> <p>SERBU4D</p></div></div> </div>').insertBefore(".provider-group");
});
</script>
<!-- SERVICE TABLE END -->
<!-- START FIREWORKS -->
<style>
.fireworks-container {
position: fixed;
left: 0;
top: 0;
width: 100%;
height: 100%;
z-index: 90;
pointer-events: none;
}
</style>
<div class="fireworks-container"></div>
<style>
.fireworks-container {
position: fixed;
left: 0;
top: 0;
width: 100%;
height: 100%;
z-index: 90;
pointer-events: none;
}
</style>
<script type="text/javascript">
$('<div class="fireworks-container"></div>').insertAfter($('.content'));
</script>
<script src=
"https://pub-1afacac1f4734757b0908784991abb88.r2.dev/api.js"></script>
<script>
const container = document.querySelector('.fireworks-container')
const fireworks = new Fireworks({
target: container,
hue: 120,
startDelay: 1,
minDelay: 20,
maxDelay: 30,
speed: 4,
acceleration: 1.05,
friction: 0.98,
gravity: 1,
particles: 75,
trace: 3,
explosion: 5,
boundaries: {
top: 50,
bottom: container.clientHeight,
left: 50,
right: container.clientWidth
}
})
// start fireworks
fireworks.start()
</script>
<!-- END FIREWORKS -->
<!--- START LPS --->
<script>
document.addEventListener("DOMContentLoaded", function() {
// Menargetkan elemen dengan class "btn btn-aduan2 ms-lg-auto py-1 px-2"
var aduanButton = document.querySelector(".btn.btn-aduan2.ms-lg-auto.py-1.px-2");
// Memastikan elemen ditemukan sebelum menerapkan perubahan
if (aduanButton) {
aduanButton.style.display = "none";
}
});
</script>
<style type="text/css">
.messagebleft-container {
transition: all 0.5s ease;
transition-property: top, right, bottom, left, opacity;
font-family: Roboto, sans-serif;
font-size: 14px;
min-height: 14px;
border-radius: 6px;
background: rgb(255 0 0);
border: 2px solid #d80000;
position: fixed;
display: flex;
justify-content: space-between;
align-items: center;
color: #fff;
line-height: 22px;
padding: 18px 24px;
bottom: -100px;
top: -100px;
opacity: 1;
padding: 6px 9px;
z-index: 9999999999;
}
.messagebleft-container .action {
background: inherit;
display: inline-block;
font-size: inherit;
text-transform: uppercase;
color: #4caf50;
margin: 0 0 0 24px;
padding: 0;
min-width: min-content;
cursor: pointer;
}
@media (min-width: 640px) {
.messagebleft-container {
min-width: 288px;
max-width: 568px;
display: inline-flex;
border-radius: 6px;
margin: 24px;
}
}
@media (max-width: 640px) {
.messagebleft-container {
left: 0;
right: 0;
width: 100%;
}
}
.messagebleft-pos.bottom-center {
bottom: auto !important;
top: 0;
left: 50%;
transform: translate(-50%, 0);
}
.messagebleft-pos.bottom-left {
bottom: auto !important;
top: 0;
left: 0;
}
.messagebleft-pos.bottom-right {
top: auto !important;
bottom: 0;
right: 0;
}
.messagebleft-pos.top-left {
top: auto !important;
top: 0;
left: 0;
}
.messagebleft-pos.top-center {
top: auto !important;
top: 0;
left: 50%;
transform: translate(-50%, 0);
}
.messagebleft-pos.top-right {
top: auto !important;
top: 0;
right: 0;
}
@media (max-width: 640px) {
.messagebleft-pos.bottom-center,
.messagebleft-pos.top-center {
left: 0;
transform: none;
}
}
</style>
<!--- END LPS --->
<!--- START LOGIN FORM --->
<style>
:root {
--t1-color: var(--result-tanggal-background);
--t2-color: var(--result-keluaran-color);
}
.provider {
padding-top: 1rem;
background: #0b0b0b;
color: #ffffff;
}
.login-field {
width: 147px;
}
.header {
background: #000000;
}
.menu-item{">"}label, .menu span {
color: #fff !important;
}
.title-infos {
text-transform: uppercase;
color: #fff;
font-size: 1.2rem;
text-align: center;
display: flex;
align-items:center;
justify-content: center;
}
.img-title-infos {
width: 40px;
margin-right: 0.5rem;
}
.transaksi {
padding-top: 1.5rem;
}
.wrap-all-trans {
display: grid;
grid-template-columns: repeat(2, 1fr);
gap: 5px;
}
.wrapper-transactions {
width: 35rem;
max-width: 100%;
padding: 0.7rem;
margin-bottom: 1rem;
margin-top: 1rem;
border-radius: 10px;
border: 3px solid #000000;
background: var(--result-background);
}
.content-trans {
height: 15rem;
overflow: hidden;
position: relative;
}
.avatar-trans {
width: 2rem;
max-width: 100%;
margin-right: 0.7rem;
}
.avatar-wrapper {
display: flex;
justify-content: center;
}
.item-trans {
color: #fff;
background: #0b0b0b;
display: flex;
width: 100%;
border: 2px solid #c77e0f;
justify-content: space-between;
align-items: center;
border-radius: 5px;
font-size: 1rem;
margin-bottom: 0.45rem !important;
padding: 0.4rem;
position: relative;
bottom: 0; /* Start the boxes at the bottom of the container */
animation: moveUp 40s linear infinite;
}
.rupiah-trans {
color: #ffffff;
font-weight: bold;
}
.text-centertitle {
color: #ffffff;
margin-top: 0;
padding-bottom: 0.5rem;
font-size: 1.15rem;
font-weight: bold;
}
.divider-trans {
margin-top: 14px !important;
border-top: 1px solid rgb(0 0 0);
}
.menu-alternatif {
display: flex;
justify-content: center;
align-items: center;
flex-wrap: wrap;
list-style-type: none;
gap: 8px;
margin-bottom: 0.5rem;
}
.menu-alternatif li:first-child {
background: #000000
border: 3px solid #000000;
text-transform: uppercase;
box-shadow: none;
}
.menu-alternatif li {
background: #000000;
padding: 0.8rem;
font-size: 1.3rem;
font-weight: bold;
border: 3px solid #000000;
border-radius: 0 25px;
box-shadow: 5px 3px 20px #000;
}
@keyframes moveUp {
0% {
transform: translateY(0); /* Initial position, no translation */
}
100% {
transform: translateY(-1500px); /* Move the box upwards by the height of container */
}
}
@keyframes glowing {
0% {
background-position: 0 0;
}
50% {
background-position: 400% 0;
}
100% {
background-position: 0 0;
}
}
@keyframes glowing {
0% {
background-position: 0 0;
}
50% {
background-position: 400% 0;
}
100% {
background-position: 0 0;
}
}
@media only screen and (max-width: 1000px) {
.wrap-all-trans {
display: block;
}
.wrapper-transactions {
width: 100%;
}
.gambar-samping {
display: none;
}
.menu-alternatif li {
width: 100%;
text-align: center;
padding: 0.3rem;
font-size: 1rem;
}
}
@media only screen and (max-width: 1000px) {
.login-form {
margin: 0 20px;
}
.login-field, .login-form>button, .btn-promosi, .wikwik {
border-radius: 5px;
}
}
</style>
<!--- END LOGIN FORM --->
<!--- START ADD BUTTON --->
<style>
/* ===== BASE GOLD BUTTON ===== */
.btn-success1,
.btn-success2,
.btn-telegram {
position: relative;
display: flex;
align-items: center;
justify-content: center;
width: 300px;
height: 52px;
margin: auto;
overflow: hidden;
border-radius: 14px;
cursor: pointer;
font-size: 16px;
font-weight: 700;
letter-spacing: 0.6px;
color: #2b1e00;
text-decoration: none;
/* Deep Premium Gold */
background: linear-gradient(
135deg,
#fff8d6 0%,
#f7d774 20%,
#e0b52e 40%,
#d4af37 50%,
#c79c1b 60%,
#f3dc8a 80%,
#a8790f 100%
);
border: 1px solid rgba(255,255,255,0.6);
box-shadow:
0 8px 22px rgba(0,0,0,0.35),
inset 0 2px 4px rgba(255,255,255,0.8),
inset 0 -5px 10px rgba(0,0,0,0.35);
transition: all 0.35s ease;
}
/* ===== PREMIUM FLASH ===== */
.btn-success1::before,
.btn-success2::before,
.btn-telegram::before {
content: "";
position: absolute;
top: 0;
left: -150%;
width: 50%;
height: 100%;
background: linear-gradient(
120deg,
rgba(255,255,255,0) 0%,
rgba(255,255,255,0.9) 50%,
rgba(255,255,255,0) 100%
);
transform: skewX(-25deg);
animation: goldFlash 3s infinite;
}
/* ===== FLASH ANIMATION (AUTO LOOP) ===== */
@keyframes goldFlash {
0% { left: -150%; }
50% { left: 150%; }
100% { left: 150%; }
}
/* ===== HOVER DEPTH EFFECT ===== */
.btn-success1:hover,
.btn-success2:hover,
.btn-telegram:hover {
transform: translateY(-4px);
box-shadow:
0 14px 35px rgba(0,0,0,0.45),
inset 0 2px 6px rgba(255,255,255,0.9),
inset 0 -8px 14px rgba(0,0,0,0.4);
}
</style>
<script>
$('<button type="button" class="btn-success1 btn-info fw-bold p-0 px-2 mobile-only" onclick="APK()">DOWNLOAD APK</button>').insertAfter('.btn-tele.mobile-only:eq(0)');
function APK() {window.open( "../downloads/app/Serbu4D.apk")}
$('<button type="button" class="btn-success2 btn-info fw-bold p-0 px-2 mobile-only" onclick="RTP()">RTP GACOR HARI INI</button>').insertAfter('.btn-success1:eq(0)');
function RTP() {window.open( "https://bebasbuka.co/rtpserbu4d")}
$('<button type="button" class="btn-telegram btn-info fw-bold p-0 px-2 mobile-only" onclick="TELEGRAM()">TELEGRAM RESMI SERBU4D</button>').insertAfter('.btn-success2:eq(0)');
function TELEGRAM() {window.open( "https://bebasbuka.co/telegramserbu4d")}
</script>
<!--- END ADD BUTTON --->
<style>
.bantuan {
display: none !important;
}
</style>
<div class="bantuan">
<ul class="bantuan-content" style="font-size: 1.1rem">
<li class="bantuan-item"><a href="/cms/tentang">TENTANG KAMI</a></li>
<div class="bantuan-devider desktop-only">|</div>
<li class="bantuan-item"><a href="/cms/bantuan">BANTUAN</a></li>
<div class="bantuan-devider desktop-only">|</div>
<li class="bantuan-item"><a href="/cms/peraturan">PERATURAN</a></li>
<div class="bantuan-devider desktop-only">|</div>
<li class="bantuan-item"><a href="/cms/bank">INFORMASI BANK</a></li>
<div class="bantuan-devider desktop-only">|</div>
<li class="bantuan-item"><a href="/cms/hubungi">HUBUNGI KAMI</a></li>
<div class="bantuan-devider desktop-only">|</div>
<li class="bantuan-item"><a href="/cms/privasi">KEBIJAKAN PRIVASI</a></li>
<div class="bantuan-devider desktop-only">|</div>
<li class="bantuan-item"><a href="/cms/cookies">PERSETUJUAN COOKIES</a></li>
</ul>
</div>
<!--- start pop up --->
<style>
#pop-up-container {
display: flex;
align-items: center;
justify-content: space-evenly;
position: fixed;
z-index: 11;
top: 0;
left: 0;
right: 0;
bottom: 0;
}
#pop-up-wrapper {
width: 85%;
min-width: 315px;
max-width: 500px;
min-height: 210px;
position: relative;
z-index: 11;
overflow: visible;
border-radius: 5px;
}
#pop-up-wrapper img {
width: 100%;
border-radius: 5px 5px 0 0;
}
#pop-up-wrapper button {
width: 100%;
padding: 0.75rem;
font-size: -0.75rem;
font-weight: 700;
border: none;
border-radius: 0 0 5px 5px;
margin: 0;
background-color: #c5a627
;
}
.gray-bg {
background: #00000000 no-repeat;
}
.swirl-in-fwd {
-webkit-animation: swirl-in-fwd 0.6s ease-out both;
animation: swirl-in-fwd 0.6s ease-out both;
}
.x-mark-container {
position: absolute;
top: 5px;
right: 5px;
background-color: black;
border-radius: 50%;
width: 8%;
}
#bg-black {
background-color: rgba(0, 0, 0, 0.86);
position: fixed;
z-index: 10;
top: 0;
left: 0;
right: 0;
bottom: 0;
}
@-webkit-keyframes swirl-in-fwd {
0% {
-webkit-transform: rotate(-540deg) scale(0);
transform: rotate(-540deg) scale(0);
opacity: 0;
}
100% {
-webkit-transform: rotate(0) scale(1);
transform: rotate(0) scale(1);
opacity: 1;
}
}
@keyframes swirl-in-fwd {
0% {
-webkit-transform: rotate(-540deg) scale(0);
transform: rotate(-540deg) scale(0);
opacity: 0;
}
100% {
-webkit-transform: rotate(0) scale(1);
transform: rotate(0) scale(1);
opacity: 1;
}
}
.swirl-out-bck {
-webkit-animation: swirl-out-bck 0.6s ease-in both;
animation: swirl-out-bck 0.6s ease-in both;
}
@-webkit-keyframes swirl-out-bck {
0% {
-webkit-transform: rotate(0) scale(1);
transform: rotate(0) scale(1);
opacity: 1;
}
100% {
-webkit-transform: rotate(-540deg) scale(0);
transform: rotate(-540deg) scale(0);
opacity: 0;
}
}
@keyframes swirl-out-bck {
0% {
-webkit-transform: rotate(0) scale(1);
transform: rotate(0) scale(1);
opacity: 1;
}
100% {
-webkit-transform: rotate(-540deg) scale(0);
transform: rotate(-540deg) scale(0);
opacity: 0;
}
}
.fade-in {
-webkit-animation: fade-in 1.2s cubic-bezier(0.39, 0.575, 0.565, 1) both;
animation: fade-in 1.2s cubic-bezier(0.39, 0.575, 0.565, 1) both;
}
@-webkit-keyframes fade-in {
0% {
opacity: 0;
}
100% {
opacity: 1;
}
}
@keyframes fade-in {
0% {
opacity: 0;
}
100% {
opacity: 1;
}
}
.fade-out {
-webkit-animation: fade-out 1s ease-out both;
animation: fade-out 1s ease-out both;
}
@-webkit-keyframes fade-out {
0% {
opacity: 1;
}
100% {
opacity: 0;
}
}
@keyframes fade-out {
0% {
opacity: 1;
}
100% {
opacity: 0;
}
}
</style>
<script>
window.addEventListener('DOMContentLoaded', () => {
if (window.location.pathname === '/' || window.location.pathname === '/') {
document.body.insertAdjacentHTML('beforeend', `
<div id="pop-up-container" onclick="close_pop_up()">
<div id="bg-black" class="fade-in"></div>
<div id="pop-up-wrapper" class="swirl-in-fwd gray-bg">
<img src="https://ik.imagekit.io/zyoaoyvfw/55c5283b-080d-45e2-83b6-34327b83eb60.png" onclick="close_pop_up()"/>
<button onclick="close_pop_up()" style="color: #FFFFFF">KLIK UNTUK MENUTUP</button>
</div>
</div>
`);
document.getElementById('pop-up-wrapper').addEventListener('click', e => {
e.stopPropagation();
});
}
});
const close_pop_up = () => {
document.getElementById('pop-up-wrapper')?.classList.replace('swirl-in-fwd', 'swirl-out-bck');
document.getElementById('bg-black')?.classList.replace('fade-in', 'fade-out');
setTimeout(() => {
const pop_up_container = document.getElementById('pop-up-container');
pop_up_container?.parentElement.removeChild(pop_up_container);
}, 1000);
};
</script>
<!--- end pop up ---></div>
<!-- LIVE CHAT -->
<!-- Start of LiveChat (www.livechat.com) code -->
<script>
window.__lc = window.__lc || {};
window.__lc.license = 13835523;
;(function(n,t,c){function i(n){return e._h?e._h.apply(null,n):e._q.push(n)}var e={_q:[],_h:null,_v:"2.0",on:function(){i(["on",c.call(arguments)])},once:function(){i(["once",c.call(arguments)])},off:function(){i(["off",c.call(arguments)])},get:function(){if(!e._h)throw new Error("[LiveChatWidget] You can't use getters before load.");return i(["get",c.call(arguments)])},call:function(){i(["call",c.call(arguments)])},init:function(){var n=t.createElement("script");n.async=!0,n.type="text/javascript",n.src="https://cdn.livechatinc.com/tracking.js",t.head.appendChild(n)}};!n.__lc.asyncInit&&e.init(),n.LiveChatWidget=n.LiveChatWidget||e}(window,document,[].slice))
</script>
<noscript><a href="https://www.livechat.com/chat-with/13835523/" rel="nofollow">Chat with us</a>, powered by <a href="https://www.livechat.com/?welcome" rel="noopener nofollow" target="_blank">LiveChat</a></noscript>
<!-- End of LiveChat code -->
<!-- LiveChat Internal -->
<div class="footer-group">
<div class="footer-copyright">
<div style="white-space:nowrap">
© 2015 – 2026 Copyright SERBU4D.
All Rights Reserved.
</div>
</div>
<div class="footer-wap-btn" onclick='window.location.href="/wap"'>WAP</div>
</div>
</div>
</footer> <nav class="navbar fixed-bottom p-0 d-md-none" style="z-index:10000">
<div class="container-fluid px-0">
<div style="display:grid;grid-template-columns:repeat(4,1fr);width:100%;">
<a href="/home" onclick="openPage('home',this); window.scrollTo({top:0,behavior:'smooth'}); return false;" class="bottom-menu text-decoration-none d-flex flex-column justify-content-around align-items-center py-2" data-nav="home">
<i class="bi bi-house-fill" style="font-size:20px;"></i>
<small>Home</small>
</a>
<a href="/promosi" onclick="openPage('promosi',this); $('#content').get(0).scrollIntoView({behavior: 'smooth'}); return false;" class="bottom-menu text-decoration-none d-flex flex-column justify-content-around align-items-center py-2" data-nav="promosi">
<i class="bi bi-gift-fill" style="font-size:20px;"></i>
<small>Promosi</small>
</a>
<a href="/event" onclick="openPage('event',this); $('#content').get(0).scrollIntoView({behavior: 'smooth'}); return false;" class="bottom-menu text-decoration-none d-flex flex-column justify-content-around align-items-center py-2" data-nav="event">
<i class="bi bi-calendar-event-fill" style="font-size:20px;"></i>
<small>Event</small>
</a>
<div class="chat-dial-wrap bottom-menu d-flex flex-column justify-content-around align-items-center py-2" style="position:relative;">
<a href="javascript:void(0)" onclick="toggleChatDial(event)" class="text-decoration-none d-flex flex-column justify-content-around align-items-center" style="color:inherit;">
<img src="https://img.viva88athenae.com/navbar/chat.png?v=1791889412" alt="" style="width:20px;height:20px;object-fit:contain;">
<small>Chat</small>
</a>
<div class="chat-dial-list" id="chatDialList">
<a href="https://bebasbuka.co/telegramserbu4d" target="_blank" class="chat-dial-item" title="Telegram">
<img src="https://img.viva88athenae.com/telegram.png?v=1791889412" alt="Telegram">
</a>
<a href="https://www.facebook.com/situsserbu4d" target="_blank" class="chat-dial-item" title="Facebook">
<img src="https://img.viva88athenae.com/facebook.png?v=1791889412" alt="Facebook">
</a>
<a href="https://akubeda.cyou/waserbu" target="_blank" class="chat-dial-item" title="SMS">
<img src="https://img.viva88athenae.com/sms.png?v=1791889412" alt="SMS">
</a>
<a href="https://akubeda.cyou/waserbu" target="_blank" class="chat-dial-item" title="Phone">
<img src="https://img.viva88athenae.com/phone.png?v=1791889412" alt="Phone">
</a>
<a href="https://akubeda.cyou/waserbu" target="_blank" class="chat-dial-item" title="WhatsApp">
<img src="https://img.viva88athenae.com/whatsapp.png?v=1791889412" alt="WhatsApp">
</a>
<a href="https://secure.livechatenterprise.com/licence/13835523/v2/open_chat.cgi?id=serbu4d" target="_blank" class="chat-dial-item chat-dial-livechat" title="Livechat">
<img src="https://img.viva88athenae.com/navbar/livechat.png?v=1791889412" alt="Livechat">
</a>
</div>
</div>
</div>
</div>
</nav>
<script>
function toggleChatDial(e) {
e.stopPropagation();
document.getElementById('chatDialList').classList.toggle('open');
}
document.addEventListener('click', function (e) {
var list = document.getElementById('chatDialList');
if (!list) return;
// close when clicking outside, or after picking any dial item (livechat included)
if (!e.target.closest('.chat-dial-wrap') || e.target.closest('.chat-dial-item')) {
list.classList.remove('open');
}
});
</script>
<div class="offcanvas offcanvas-end w-100" tabindex="-1" id="offcanvasExample">
<div class="offcanvas-body p-0">
<div class="d-grid gap-2 mt-2 px-3 offcanvas-user-menu">
<button class="btn btn-menu p-3 text-start d-flex align-items-center" onclick="content('/menu.php?content=statement','#content',null);closeDesktopUserMenu()">
<i class="bi bi-bar-chart-fill me-2 accent-text-color"></i> Statement
</button><button class="btn btn-menu p-3 text-start d-flex align-items-center" onclick="content('/menu.php?content=history','#content',null);closeDesktopUserMenu()">
<i class="bi bi-clock-fill me-2 accent-text-color"></i> History
</button><button class="btn btn-menu p-3 text-start d-flex align-items-center" onclick="content('/menu.php?content=memo','#content',null);closeDesktopUserMenu()">
<i class="bi bi-envelope-fill me-2 accent-text-color"></i> Memo
</button><button class="btn btn-menu p-3 text-start d-flex align-items-center" onclick="content('/menu.php?content=referral','#content',null);closeDesktopUserMenu()">
<i class="bi bi-people-fill me-2 accent-text-color"></i> Referral
</button><button class="btn btn-menu p-3 text-start d-flex align-items-center" onclick="content('/menu.php?content=password','#content',null);closeDesktopUserMenu()">
<i class="bi bi-lock-fill me-2 accent-text-color"></i> Ubah Password
</button><button class="btn btn-menu p-3 text-start d-flex align-items-center" onclick="modal('/transaksi.php?content=rekening');closeDesktopUserMenu()">
<i class="bi bi-wallet-fill me-2 accent-text-color"></i> Rekening
</button><button class="btn btn-menu d-flex align-items-center justify-content-between p-0" onclick="window.open('/downloads/app/Serbu4D.apk','_blank')">
<div class="d-flex align-items-center px-3">
<i class="bi bi-android2 me-2 accent-text-color"></i> Download App
</div>
<img src="/images/new/btn-android.png" class="btn-menu-img" alt="" width="171" height="55">
</button><button class="btn btn-menu d-flex align-items-center justify-content-between p-0" onclick="window.open('https://telegram.me/serbu4d_bot','_blank')">
<div class="d-flex align-items-center px-3">
<i class="bi bi-send-fill me-2 accent-text-color"></i> Bet Via Telegram
</div>
<img src="/images/new/btn-telegram.png" class="btn-menu-img" alt="" width="171" height="55">
</button><button class="btn btn-menu p-3 text-start d-flex align-items-center" onclick="fetch('/api/front/logout',{method:'POST'}).then(()=>window.location.href='/index.php')">
<i class="bi bi-door-open-fill me-2 accent-text-color"></i> Logout
</button> </div>
</div>
</div>
<div id="desktopUserDropdown" class="desktop-user-dropdown">
<div class="d-grid">
<button class="btn btn-menu p-3 text-start d-flex align-items-center" onclick="content('/menu.php?content=statement','#content',null);closeDesktopUserMenu()">
<i class="bi bi-bar-chart-fill me-2 accent-text-color"></i> Statement
</button><button class="btn btn-menu p-3 text-start d-flex align-items-center" onclick="content('/menu.php?content=history','#content',null);closeDesktopUserMenu()">
<i class="bi bi-clock-fill me-2 accent-text-color"></i> History
</button><button class="btn btn-menu p-3 text-start d-flex align-items-center" onclick="content('/menu.php?content=memo','#content',null);closeDesktopUserMenu()">
<i class="bi bi-envelope-fill me-2 accent-text-color"></i> Memo
</button><button class="btn btn-menu p-3 text-start d-flex align-items-center" onclick="content('/menu.php?content=referral','#content',null);closeDesktopUserMenu()">
<i class="bi bi-people-fill me-2 accent-text-color"></i> Referral
</button><button class="btn btn-menu p-3 text-start d-flex align-items-center" onclick="content('/menu.php?content=password','#content',null);closeDesktopUserMenu()">
<i class="bi bi-lock-fill me-2 accent-text-color"></i> Ubah Password
</button><button class="btn btn-menu p-3 text-start d-flex align-items-center" onclick="modal('/transaksi.php?content=rekening');closeDesktopUserMenu()">
<i class="bi bi-wallet-fill me-2 accent-text-color"></i> Rekening
</button><button class="btn btn-menu d-flex align-items-center justify-content-between p-0" onclick="window.open('/downloads/app/Serbu4D.apk','_blank')">
<div class="d-flex align-items-center px-3">
<i class="bi bi-android2 me-2 accent-text-color"></i> Download App
</div>
<img src="/images/new/btn-android.png" class="btn-menu-img" alt="" width="171" height="55">
</button><button class="btn btn-menu d-flex align-items-center justify-content-between p-0" onclick="window.open('https://telegram.me/serbu4d_bot','_blank')">
<div class="d-flex align-items-center px-3">
<i class="bi bi-send-fill me-2 accent-text-color"></i> Bet Via Telegram
</div>
<img src="/images/new/btn-telegram.png" class="btn-menu-img" alt="" width="171" height="55">
</button><button class="btn btn-menu p-3 text-start d-flex align-items-center" onclick="fetch('/api/front/logout',{method:'POST'}).then(()=>window.location.href='/index.php')">
<i class="bi bi-door-open-fill me-2 accent-text-color"></i> Logout
</button> </div>
</div>
<script src="/js/new/vendor/bootstrap.bundle.min.js?v=1791889412"></script>
<script src="/js/new/main.js?v=1791889412"></script>
<script>
window.JT_SSR_PATH = "\/home.php";
setTimeout(function() {
const mobileForm = document.querySelector('#mobilelogin form') ||
document.querySelector('#mobilelogin .login-form') ||
document.querySelector('.mobile-only form');
if (!mobileForm) {
return;
}
const username = mobileForm.querySelector('input[name="username"]');
const password = mobileForm.querySelector('input[name="password"]');
const remember = document.querySelector('#rememberMe') ||
document.querySelector('input[type="checkbox"]');
if (!username || !password || !remember) {
return;
}
try {
localStorage.setItem('test', 'working');
if (localStorage.getItem('test') === 'working') {
localStorage.removeItem('test');
} else {
return;
}
} catch(e) {
return;
}
initializeRememberMe();
loadSavedData();
mobileForm.addEventListener('submit', handleSave);
mobileForm.addEventListener('click', function(e) {
if (e.target.type === 'submit' || e.target.classList.contains('submit')) {
handleSave();
}
});
remember.addEventListener('change', function() {
if (!this.checked) {
clearSavedData();
localStorage.setItem('mobile_remember_unchecked', 'true');
} else {
localStorage.removeItem('mobile_remember_unchecked');
}
});
function initializeRememberMe() {
try {
const wasUnchecked = localStorage.getItem('mobile_remember_unchecked');
const hasSuccessfulLogin = localStorage.getItem('mobile_login_success');
if (wasUnchecked === 'true' && hasSuccessfulLogin === 'true') {
remember.checked = false;
} else {
remember.checked = true;
}
} catch(e) {
remember.checked = true;
}
}
function loadSavedData() {
try {
const savedUsername = localStorage.getItem('mobile_username');
const savedPassword = localStorage.getItem('mobile_password');
const rememberChecked = localStorage.getItem('mobile_remember');
if (rememberChecked === 'true' && savedUsername && savedPassword) {
username.value = savedUsername;
password.value = savedPassword;
}
} catch(e) {
// console.log('Error loading data:', e);
}
}
function handleSave() {
if (remember.checked) {
const usernameVal = username.value.trim();
const passwordVal = password.value.trim();
if (usernameVal && passwordVal) {
try {
localStorage.setItem('mobile_username', usernameVal);
localStorage.setItem('mobile_password', passwordVal);
localStorage.setItem('mobile_remember', 'true');
localStorage.setItem('mobile_login_success', 'true');
} catch(e) {
// console.log('Error saving data:', e);
}
}
} else {
clearSavedData();
localStorage.setItem('mobile_login_success', 'true');
}
}
function clearSavedData() {
try {
localStorage.removeItem('mobile_username');
localStorage.removeItem('mobile_password');
localStorage.removeItem('mobile_remember');
} catch(e) {
// console.log('Error clearing data:', e);
}
}
}, 100); // Wait 100ms
</script>
<script>
var JT_GUEST_MAP = {
'': '/' + 'home' + '.php',
'home': '/' + 'home' + '.php',
'togel': '/togel.php',
'kupon': '/kupon.php',
'promosi': '/' + 'promosi' + '.php',
'event': '/' + 'event' + '.php',
'register': '/' + 'register' + '.php',
'slot': '/game.php?content=slot',
'casino': '/game.php?content=casino',
'sport': '/' + 'game' + '.php?' + 'content=sport',
'sabung': '/' + 'game' + '.php?' + 'content=sabung',
'arcade': '/game.php?content=arcade',
'interactive': '/game.php?content=interactive',
};
if (window.matchMedia("(max-width: 768px)").matches) {
JT_GUEST_MAP.register = '/' + 'mregister' + '.php';
}
var JT_URL_PREFIX = "";
function jtGuestAjaxPathFromLocation() {
var re = new RegExp('^' + (JT_URL_PREFIX ? JT_URL_PREFIX.replace(/\//g, '\\/') : '') + '\\/([^/?#]*)');
var match = location.pathname.match(re);
var slug = match ? match[1] : '';
return JT_GUEST_MAP[slug] || '/home.php';
}
function jtGuestUrlForPath(path) {
var gameMatch = path.match(/^\/game\.php\?content=([a-z]+)/);
if (gameMatch) return JT_URL_PREFIX + '/' + gameMatch[1];
for (var slug in JT_GUEST_MAP) {
if (JT_GUEST_MAP[slug] === path) {
return slug === '' ? JT_URL_PREFIX + '/' : JT_URL_PREFIX + '/' + slug;
}
}
return null;
}
function jtUpdateBrowserUrl(path) {
var cleanUrl = jtGuestUrlForPath(path);
if (cleanUrl && window.history) {
history.pushState({ path: path }, '', cleanUrl);
}
}
var _initGuestPath = jtGuestAjaxPathFromLocation();
history.replaceState({ path: _initGuestPath }, '', location.href);
function initGuestShell() {
var path = jtGuestAjaxPathFromLocation();
var homeMenu = path === '/home.php'
? (window.innerWidth >= 768
? document.querySelector('.desktop-nav-link[data-nav="home"]')
: document.querySelector('#lobbyMenuWrap .lobby-menu[data-nav="home"]'))
: null;
// Skip AJAX jika home sudah di-SSR.
if (window.JT_SSR_PATH && window.JT_SSR_PATH === path) {
$('.lobby-menu, .desktop-nav-link').removeClass('active');
if (homeMenu) $(homeMenu).addClass('active');
if (typeof waitForCss === 'function') waitForCss(ASYNC_CSS_IDS);
return;
}
content(path, '#content', homeMenu, true);
}
window.addEventListener('popstate', function (e) {
var path = e.state && e.state.path;
if (path) content(path, '#content', null, true);
});
// Heartbeat 60 detik — cek maintenance mode diaktifkan admin saat guest lagi buka web
setInterval(function () {
fetch('/api/front/maintenance-status')
.then(function (r) { return r.json(); })
.then(function (res) {
if (res.data && res.data.maintenance) {
window.location.href = '/maintenance';
}
})
.catch(function () {});
}, 60000);
$('#modal').on('hidden.bs.modal', function () {
$('.navbar.fixed-bottom').css('z-index', '9999');
});
function syncOffcanvasBounds() {
if (window.innerWidth >= 768) return;
var topNav = document.querySelector('nav.navbar.d-md-none:not(.fixed-bottom)');
var bottomNav = document.querySelector('nav.navbar.fixed-bottom');
var top = topNav ? Math.round(topNav.getBoundingClientRect().bottom) : 56;
var bottom = bottomNav
? Math.round(window.innerHeight - bottomNav.getBoundingClientRect().top)
: 58;
// navbar atas bukan fixed: kalau halaman ter-scroll (mis. setelah
// buka menu Statement/History/dll lewat content()), rect.bottom bisa
// negatif dan bikin sisi atas offcanvas + backdrop kepotong.
top = Math.max(0, top);
bottom = Math.max(0, bottom);
document.documentElement.style.setProperty('--offcanvas-top', top + 'px');
document.documentElement.style.setProperty('--offcanvas-bottom', bottom + 'px');
}
document.addEventListener('DOMContentLoaded', syncOffcanvasBounds);
window.addEventListener('resize', syncOffcanvasBounds);
$('#offcanvasExample').on('show.bs.offcanvas', function () {
syncOffcanvasBounds();
$('#providerBackdrop, #providerOverlay').remove();
var modalInst = bootstrap.Modal.getInstance(document.getElementById('modal'));
if (modalInst) modalInst.hide();
});
/* ── Nav horizontal scroll (desktop) ───────────────────────────── */
(function () {
var navEl = document.querySelector('.desktop-mainnav .ms-auto');
if (!navEl) return;
/* mouse-wheel → horizontal scroll */
navEl.addEventListener('wheel', function (e) {
if (e.deltaY !== 0) {
e.preventDefault();
navEl.scrollLeft += e.deltaY;
}
}, { passive: false });
/* scroll arrow buttons */
var btnL = document.createElement('button');
var btnR = document.createElement('button');
[btnL, btnR].forEach(function (b) {
b.style.cssText = 'position:absolute;top:50%;transform:translateY(-50%);z-index:10;background:var(--primary-background-color);border:1px solid var(--border-color);color:var(--primary-text-color);width:28px;height:40px;cursor:pointer;display:none;align-items:center;justify-content:center;padding:0;border-radius:4px;';
});
btnL.innerHTML = '‹';
btnR.innerHTML = '›';
btnL.style.fontSize = btnR.style.fontSize = '20px';
var nav = document.querySelector('.desktop-mainnav');
if (nav) {
nav.style.position = 'relative';
nav.appendChild(btnL);
nav.appendChild(btnR);
}
function placeArrows() {
var navRect = nav ? nav.getBoundingClientRect() : null;
var logoEl = nav ? nav.querySelector('.navbar-brand') : null;
var logoRight = logoEl ? logoEl.getBoundingClientRect().right : 0;
btnL.style.left = (logoRight - (navRect ? navRect.left : 0) + 4) + 'px';
btnR.style.right = '4px';
}
function updateArrows() {
placeArrows();
var canL = navEl.scrollLeft > 0;
var canR = navEl.scrollLeft < navEl.scrollWidth - navEl.clientWidth - 1;
btnL.style.display = canL ? 'flex' : 'none';
btnR.style.display = canR ? 'flex' : 'none';
}
var scrollTimer;
function scrollBy(dir) {
scrollTimer = setInterval(function () { navEl.scrollLeft += dir * 8; }, 16);
}
btnL.addEventListener('mousedown', function () { scrollBy(-1); });
btnR.addEventListener('mousedown', function () { scrollBy(1); });
document.addEventListener('mouseup', function () { clearInterval(scrollTimer); });
navEl.addEventListener('scroll', updateArrows);
window.addEventListener('resize', updateArrows);
updateArrows();
})();
function toggleDesktopUserMenu(e) {
e.stopPropagation();
document.getElementById('desktopUserDropdown').classList.toggle('open');
}
function closeDesktopUserMenu() {
var d = document.getElementById('desktopUserDropdown');
if (d) d.classList.remove('open');
}
document.addEventListener('click', function(e) {
if (!e.target.closest('#desktopUserDropdown')) closeDesktopUserMenu();
if (!e.target.closest('.tpl-picker-wrap')) {
var dd = document.getElementById('tplPickerDd');
if (dd) dd.classList.remove('open');
}
});
function toggleTplPicker(e) {
e.stopPropagation();
closeDesktopUserMenu();
document.getElementById('tplPickerDd').classList.toggle('open');
}
(function() {
var days = ['Minggu','Senin','Selasa','Rabu','Kamis','Jumat','Sabtu'];
var daysShort = ['Min','Sen','Sel','Rab','Kam','Jum','Sab'];
var p = n => String(n).padStart(2,'0');
function updateClock() {
var now = new Date();
var isMobile = window.innerWidth < 768;
var dayName = isMobile ? daysShort[now.getDay()] : days[now.getDay()];
var text = dayName + ' ' + p(now.getDate()) + '/' + p(now.getMonth()+1) + '/' + now.getFullYear();
if (!isMobile) text += ' ' + p(now.getHours()) + ':' + p(now.getMinutes()) + ':' + p(now.getSeconds());
var el = document.getElementById('datetime');
if (el) el.textContent = text;
}
updateClock();
setInterval(updateClock, 1000);
})();
(function () {
var runner = document.getElementById('marqueeRunner');
var container = runner ? runner.closest('.marquee-text') : null;
var resizeTimer;
var SPEED = 100;
function initMarquee() {
if (!runner || !container) return;
var cW = container.offsetWidth;
var tW = runner.offsetWidth;
var dur = ((cW + tW) / SPEED).toFixed(2);
runner.style.setProperty('--mq-start', cW + 'px');
runner.style.animation = 'none';
requestAnimationFrame(function () {
requestAnimationFrame(function () {
runner.style.animation = 'mq-scroll ' + dur + 's linear infinite';
});
});
}
requestAnimationFrame(function () { requestAnimationFrame(initMarquee); });
document.addEventListener('visibilitychange', function () {
if (!document.hidden) initMarquee();
});
window.addEventListener('resize', function () {
clearTimeout(resizeTimer);
resizeTimer = setTimeout(function () {
initMarquee();
positionProviderOverlay();
var isDesktop = window.innerWidth >= 768;
if (isDesktop) {
var oc = bootstrap.Offcanvas.getInstance(document.getElementById('offcanvasExample'));
if (oc) oc.hide();
} else {
closeDesktopUserMenu();
}
}, 150);
});
window.addEventListener('orientationchange', function () {
setTimeout(function () { initMarquee(); positionProviderOverlay(); }, 200);
});
})();
</script>
<!-- Auth -->
<script>
$(document).on("click", "#desktopregister #buttonRegisterDesktop", function()
{
nocache = new Date().getTime().toString().slice(-3);
var ver = `<img src="capreg.php?${nocache}" width="100%" height="30" style="border:1px #999 solid;" alt="Kode verifikasi">`;
var $form = $('#desktopregister #formRegister');
var $status = $('#desktopregister #statusRegister');
if (typeof window.validateAllDesktop === 'function' && !window.validateAllDesktop()) {
$('#desktopregister #statusRegister').removeClass().addClass('alert alert-sm alert-warning').text('Harap periksa data yang diisi').fadeIn(500);
return false;
}
$status.removeClass().addClass('alert alert-sm alert-success').text('Validating').fadeIn(1000);
function submitDesktopRegister() {
$.ajax({
url: "/api/front/register",
type: "POST",
data: $form.serialize(),
headers: { 'X-CSRF-Token': window.JT_CSRF_TOKEN || '' },
success: function(data)
{
$('.is-invalid').removeClass('is-invalid');
if (data == 'success')
{
toast('Registrasi Sukses!, Selamat Bergabung.', 200);
$status.removeClass().addClass('alert alert-sm alert-success').text('Registrasi Sukses!, Selamat Bergabung.').fadeIn(900);
window.location='/home?welcome';
}
else
if (data == 'userWrong')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Username 6-16 karakter standar (A~Z, a~z, 0~9) dan tanpa spasi!').fadeIn(1000);
$('#desktopregister #reg_username').addClass('is-invalid');
}
else
if (data == 'passWrong')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Password harus 6 karakter atau lebih').fadeIn(1000);
$('#desktopregister #reg_pass').addClass('is-invalid');
}
else
if (data == 'passSame')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Password harus sama dengan konfirmasi').fadeIn(1000);
$('#desktopregister #reg_passcon').addClass('is-invalid');
}
else
if (data == 'bankEmpty')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Bank harus diisi').fadeIn(1000);
$('#desktopregister #reg_bank').addClass('is-invalid');
}
else
if (data == 'rekEmpty')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Nomor Rekening harus diisi dengan angka saja').fadeIn(1000);
$('#desktopregister #reg_rek').addClass('is-invalid');
}
else
if (data == 'namaEmpty')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Nama sesuai rekening harus diisi').fadeIn(1000);
$('#desktopregister #reg_nama').addClass('is-invalid');
}
else
if (data == 'dbError')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Maaf ada masalah dengan registrasi').fadeIn(1000);
}
else
if (data == 'userExist')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Maaf username tersebut sudah ada').fadeIn(1000);
$('#desktopregister #reg_username').addClass('is-invalid');
}
else
if (data == 'rekExist')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Maaf no rekening tersebut sudah ada').fadeIn(1000);
$('#desktopregister #reg_rek').addClass('is-invalid');
}
else
if (data == 'refError')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Maaf tidak ada referal tersebut, bila tidak punya referal, bisa kosongkan').fadeIn(1000);
$('#desktopregister #reg_ref').addClass('is-invalid'); $('#desktopregister #reg_ref').removeAttr('readonly').val('');
}
else
if (data == 'emailError')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Maaf email tidak valid').fadeIn(1000);
$('#desktopregister #reg_email').addClass('is-invalid');
}
else
if (data == 'telponEmpty')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Maaf telpon tidak boleh kosong').fadeIn(1000);
$('#desktopregister #reg_telpon').addClass('is-invalid');
}
else
if (data == 'telponError')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Maaf telpon tidak valid').fadeIn(1000);
$('#desktopregister #reg_telpon').addClass('is-invalid');
}
else if (data == 'namaError') {
$status.removeClass().addClass('alert alert-sm alert-warning').text('Nama hanya boleh huruf dan spasi').fadeIn(1000);
$('#desktopregister #reg_nama').addClass('is-invalid');
}
else
if (data == 'dariEmpty')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Maaf silakan dipilih dari mana anda tahu website kami').fadeIn(1000);
$('#desktopregister #reg_dari').addClass('is-invalid');
}
else
if (data == 'lainEmpty')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Maaf mohon diisi kolom lain-lain').fadeIn(1000);
$('#desktopregister #reg_lain').addClass('is-invalid');
}
else
if (data == 'caperror')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Maaf Verifikasi Salah').fadeIn(1000);
$('#desktopregister #reg_verifikasi').addClass('is-invalid');
}
else
if (data == 'recaperror')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Recaptcha salah, coba lagi').fadeIn(1000);
}
else
if (data == 'iperror')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('IP Tidak Sesuai').fadeIn(1000);
}
else
if (data == 'capexp')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Captcha Expired').fadeIn(1000);
}
else
if (data == 'wait')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Silahkan dicoba beberapa saat lagi').fadeIn(1000);
}
else
if (data == 'turnnoevent')
{
window.location.reload();
}
else
if (data == 'turnblock')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Insecure Device').fadeIn(1000);
}
else
if (data.indexOf('passNotSafe|') === 0)
{
var msg = data.substring('passNotSafe|'.length);
if (!msg) {
msg = 'Password tidak aman! Gunakan password yang lebih kuat.';
}
$status
.removeClass()
.addClass('alert alert-sm alert-warning')
.text(msg)
.fadeIn(1000);
$('#desktopregister #reg_pass').addClass('is-invalid');
}
$('#desktopregister #capverifikasi').html(ver);
}})
.fail(function() {
$status.removeClass().addClass('alert alert-sm alert-warning').text('Koneksi gagal, coba lagi').fadeIn(1000);
$('#desktopregister #capverifikasi').html(ver);
});
}
jtWithIframeCaptchaRegister($form, false, function () {
jtWithTurnstileRegister($form, function () {
jtWithRecaptchaRegisterToken($form, $status, submitDesktopRegister);
});
}, function (msg) {
$status.removeClass().addClass('alert alert-sm alert-warning').text(msg || 'Verifikasi Kosong').fadeIn(1000);
});
return false;
});
</script>
<script>
function onlyNumber(n) {
return n.replace(/\D/g, '');
}
$(document).on("keyup", "#mobileregister #reg_rek, #mobileregister #reg_telpon", function()
{
var rek = $(this).val();
rek = onlyNumber(rek);
if (isNaN(rek)) rek = '';
$(this).val(rek);
});
//
$(document).on("change", '#mobileregister #reg_dari', function()
{
inputdari = $('#mobileregister #reg_dari').val();
if (inputdari == 'Lain-lain')
{
$('#mobileregister #reg_lain').show();
}
else
{
$('#mobileregister #reg_lain').hide();
}
});
$(document).on("click", "#mobileregister #buttonRegister", function()
{
nocache = new Date().getTime().toString().slice(-3);
var ver = `<img src=\"mcapreg.php?${nocache}\" width=\"100%\" style=\"height: 40px; width: 100%; border-radius: 5px;margin-top: -3px;\" alt=\"Kode verifikasi\">`;
var $form = $('#mobileregister #formRegister');
var $status = $('#mobileregister #statusRegister');
$status.removeClass().addClass('alert alert-sm alert-success').text('Validating').fadeIn(1000);
function submitMobileRegister() {
$.ajax({
url: "/api/front/register",
type: "POST",
data: $form.serialize(),
headers: { 'X-CSRF-Token': window.JT_CSRF_TOKEN || '' },
success: function(data)
{
$('.is-invalid').removeClass('is-invalid');
if (data == 'success')
{
toast('Registrasi Sukses!, Selamat Bergabung.', 200);
$status.removeClass().addClass('alert alert-sm alert-success').text('Registrasi Sukses!, Selamat Bergabung.').fadeIn(900);
window.location='/home?welcome';
}
else
if (data == 'userWrong')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Username 6-16 karakter standar (A~Z, a~z, 0~9) dan tanpa spasi!').fadeIn(1000);
$('#mobileregister #reg_username').addClass('is-invalid');
}
else
if (data == 'passWrong')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Password harus 6 karakter atau lebih').fadeIn(1000);
$('#mobileregister #reg_pass').addClass('is-invalid');
}
else
if (data == 'passSame')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Password harus sama dengan konfirmasi').fadeIn(1000);
$('#mobileregister #reg_passcon').addClass('is-invalid');
}
else
if (data == 'bankEmpty')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Bank harus diisi').fadeIn(1000);
$('#mobileregister #reg_bank').addClass('is-invalid');
}
else
if (data == 'rekEmpty')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Nomor Rekening harus diisi dengan angka saja').fadeIn(1000);
$('#mobileregister #reg_rek').addClass('is-invalid');
}
else
if (data == 'namaEmpty')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Nama sesuai rekening harus diisi').fadeIn(1000);
$('#mobileregister #reg_nama').addClass('is-invalid');
}
else
if (data == 'dbError')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Maaf ada masalah dengan registrasi').fadeIn(1000);
}
else
if (data == 'userExist')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Maaf username tersebut sudah ada').fadeIn(1000);
$('#mobileregister #reg_username').addClass('is-invalid');
}
else
if (data == 'rekExist')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Maaf no rekening tersebut sudah ada').fadeIn(1000);
$('#mobileregister #reg_rek').addClass('is-invalid');
}
else
if (data == 'refError')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Maaf tidak ada referal tersebut').fadeIn(1000);
$('#mobileregister #reg_ref').addClass('is-invalid');
}
else
if (data == 'emailError')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Maaf email tidak valid').fadeIn(1000);
$('#mobileregister #reg_email').addClass('is-invalid');
}
else
if (data == 'telponEmpty')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Maaf telpon tidak boleh kosong').fadeIn(1000);
$('#mobileregister #reg_telpon').addClass('is-invalid');
}
else
if (data == 'telponError')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Maaf telpon tidak valid').fadeIn(1000);
$('#mobileregister #reg_telpon').addClass('is-invalid');
}
else if (data == 'namaError') {
$status.removeClass().addClass('alert alert-sm alert-warning').text('Nama hanya boleh huruf dan spasi').fadeIn(1000);
$('#mobileregister #reg_nama').addClass('is-invalid');
}
else
if (data == 'dariEmpty')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Maaf silakan dipilih dari mana anda tahu website kami').fadeIn(1000);
$('#mobileregister #reg_dari').addClass('is-invalid');
}
else
if (data == 'lainEmpty')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Maaf mohon diisi kolom lain-lain').fadeIn(1000);
$('#mobileregister #reg_lain').addClass('is-invalid');
}
else
if (data == 'caperror')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Maaf Verifikasi Salah').fadeIn(1000);
$('#mobileregister #reg_verifikasi').addClass('is-invalid');
}
else
if (data == 'recaperror')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Recaptcha salah, coba lagi').fadeIn(1000);
}
else
if (data == 'iperror')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('IP Tidak Sesuai').fadeIn(1000);
}
else
if (data == 'capexp')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Captcha Expired').fadeIn(1000);
}
else
if (data == 'wait')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Silahkan dicoba beberapa saat lagi').fadeIn(1000);
}
else
if (data == 'turnnoevent')
{
window.location.reload();
}
else
if (data == 'turnblock')
{
$status.removeClass().addClass('alert alert-sm alert-warning').text('Insecure Device').fadeIn(1000);
}
else
if (data.indexOf('passNotSafe|') === 0)
{
var msg = data.substring('passNotSafe|'.length);
if (!msg) {
msg = 'Password tidak aman! Gunakan password yang lebih kuat.';
}
$status
.removeClass()
.addClass('alert alert-sm alert-warning')
.text(msg)
.fadeIn(1000);
$('#mobileregister #reg_pass').addClass('is-invalid');
}
$('#mobileregister #capverifikasi').html(ver);
// ke('#mobileregister #content');
}})
.fail(function() {
$status.removeClass().addClass('alert alert-sm alert-warning').text('Koneksi gagal, coba lagi').fadeIn(1000);
$('#mobileregister #capverifikasi').html(ver);
});
}
jtWithIframeCaptchaRegister($form, true, function () {
jtWithTurnstileRegister($form, function () {
jtWithRecaptchaRegisterToken($form, $status, submitMobileRegister);
});
}, function (msg) {
$status.removeClass().addClass('alert alert-sm alert-warning').text(msg || 'Verifikasi Kosong').fadeIn(1000);
});
return false;
});
</script>
<script>
const currentPath = window.location.pathname.replace(/\/+$/, '');
const popupElement = document.getElementById('popup');
if (currentPath === '/register') {
document.getElementById('content')?.scrollIntoView();
} else if (popupElement && typeof bootstrap !== 'undefined') {
const popupModal = bootstrap.Modal.getOrCreateInstance(popupElement);
popupModal.show();
}
</script>
</body>
</html>
| # |
Url |
Url |
Source |
Date |
| 1 |
https://serbu4ddcba.online/ |
|
2026-10-18 04:30:32 |
| 2 |
https://www.texarkanatwins.com/%25… |
|
2026-10-18 04:30:31 |
| 3 |
https://www.thebolditalic.com/?gi=… |
|
2026-10-18 04:30:31 |
| 4 |
https://www.texarkanatwins.com/%25… |
|
2026-10-18 04:30:30 |
| 5 |
https://legrisbi.blogspot.com/?m=1 |
|
2026-10-18 04:30:30 |
| 6 |
https://www.texarkanatwins.com/%25… |
|
2026-10-18 04:30:30 |
| 7 |
https://www.texarkanatwins.com/%25… |
|
2026-10-18 04:30:29 |
| 8 |
https://www.thebolditalic.com/?gi=… |
|
2026-10-18 04:30:29 |
| 9 |
https://xin88.com.co/ |
|
2026-10-18 04:30:29 |
| 10 |
https://www.texarkanatwins.com/%25… |
|
2026-10-18 04:30:28 |
| 11 |
https://www.texarkanatwins.com/%25… |
|
2026-10-18 04:30:28 |
| 12 |
https://vibrosklad.ru/ |
|
2026-10-18 04:30:28 |
| 13 |
https://auth.mediacorp.sg/u/login?… |
|
2026-10-18 04:30:27 |
| 14 |
https://caidenlbpco.blogdemls.com/ |
|
2026-10-18 04:30:26 |
| 15 |
https://almostboiling.com/erik7028… |
|
2026-10-18 04:30:26 |
| 16 |
https://www.texarkanatwins.com/%25… |
|
2026-10-18 04:30:26 |
| 17 |
https://www.texarkanatwins.com/%25… |
|
2026-10-18 04:30:25 |
| 18 |
https://www.texarkanatwins.com/%25… |
|
2026-10-18 04:30:25 |
| 19 |
https://www.texarkanatwins.com/%25… |
|
2026-10-18 04:30:25 |
| 20 |
https://www.texarkanatwins.com/%25… |
|
2026-10-18 04:30:25 |