ProjectGenesis commited on
Commit
0026c76
·
verified ·
1 Parent(s): 414850a

Promote version b1b47f7 to main

Browse files

Promoted commit b1b47f7ded4cde1cdcbb23480f4897d60b211a61 to main branch

Files changed (3) hide show
  1. index.html +53 -59
  2. script.js +32 -28
  3. style.css +49 -52
index.html CHANGED
@@ -92,71 +92,65 @@
92
  <span class="flex items-center group"><img src="https://cryptologos.cc/logos/bnb-bnb-logo.png" class="w-5 h-5 mr-2" alt="BNB"> BNB<span class="provider-tooltip">BNB</span></span>
93
  </p>
94
  </div>
95
- <!-- Featured Games Carousel -->
96
- <div class="featured-games-container relative mb-12 w-full max-w-5xl">
97
- <h2 class="text-3xl font-bold text-center mb-8 text-white">
98
- <span class="text-neonblue">Featured</span>
99
- <span class="text-neonmagenta">Games</span>
100
- </h2>
101
- <div class="featured-games-carousel relative overflow-hidden">
102
- <div class="featured-games-track flex gap-6">
103
- <!-- Game 1 -->
104
- <div class="featured-game-card">
105
- <div class="game-image" style="background-image: url('http://static.photos/gaming/640x360/1')"></div>
106
- <div class="game-info">
107
- <h3 class="game-title">Lucky Spin</h3>
108
- <div class="game-provider">FiveXBet Originals</div>
109
- </div>
110
- </div>
111
-
112
- <!-- Game 2 -->
113
- <div class="featured-game-card">
114
- <div class="game-image" style="background-image: url('http://static.photos/gaming/640x360/2')"></div>
115
- <div class="game-info">
116
- <h3 class="game-title">Crypto Fortune</h3>
117
- <div class="game-provider">FiveXBet Originals</div>
118
- </div>
119
  </div>
120
-
121
- <!-- Game 3 -->
122
- <div class="featured-game-card">
123
- <div class="game-image" style="background-image: url('http://static.photos/gaming/640x360/3')"></div>
124
- <div class="game-info">
125
- <h3 class="game-title">Diamond Rush</h3>
126
- <div class="game-provider">FiveXBet Originals</div>
127
- </div>
 
 
 
 
128
  </div>
129
-
130
- <!-- Game 4 -->
131
- <div class="featured-game-card">
132
- <div class="game-image" style="background-image: url('http://static.photos/gaming/640x360/4')"></div>
133
- <div class="game-info">
134
- <h3 class="game-title">Bitcoin Blast</h3>
135
- <div class="game-provider">FiveXBet Originals</div>
136
- </div>
 
 
 
 
137
  </div>
138
-
139
- <!-- Game 5 -->
140
- <div class="featured-game-card">
141
- <div class="game-image" style="background-image: url('http://static.photos/gaming/640x360/5')"></div>
142
- <div class="game-info">
143
- <h3 class="game-title">Neon Jackpot</h3>
144
- <div class="game-provider">FiveXBet Originals</div>
145
- </div>
 
 
 
 
146
  </div>
147
  </div>
148
  </div>
149
- <div class="carousel-controls flex justify-center gap-4 mt-6">
150
- <button class="carousel-prev w-10 h-10 rounded-full bg-black/30 border border-neonblue/50 flex items-center justify-center hover:bg-neonblue/20 transition">
151
- <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="text-neonblue">
152
- <polyline points="15 18 9 12 15 6"></polyline>
153
- </svg>
154
- </button>
155
- <button class="carousel-next w-10 h-10 rounded-full bg-black/30 border border-neonmagenta/50 flex items-center justify-center hover:bg-neonmagenta/20 transition">
156
- <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="text-neonmagenta">
157
- <polyline points="9 18 15 12 9 6"></polyline>
158
- </svg>
159
- </button>
160
  </div>
161
  </div>
162
  <!-- Pre-Registration CTA -->
 
92
  <span class="flex items-center group"><img src="https://cryptologos.cc/logos/bnb-bnb-logo.png" class="w-5 h-5 mr-2" alt="BNB"> BNB<span class="provider-tooltip">BNB</span></span>
93
  </p>
94
  </div>
95
+ <!-- Countdown Timer -->
96
+ <div class="countdown-container relative mb-12">
97
+ <div class="countdown-grid">
98
+ <!-- Days -->
99
+ <div class="countdown-item">
100
+ <svg class="countdown-svg" viewBox="0 0 100 100">
101
+ <circle class="countdown-track" cx="50" cy="50" r="45"></circle>
102
+ <circle class="countdown-progress days-progress" cx="50" cy="50" r="45"
103
+ stroke-dasharray="283" stroke-dashoffset="0"></circle>
104
+ </svg>
105
+ <div class="countdown-content">
106
+ <div class="text-4xl md:text-5xl font-bold text-white" id="days">00</div>
107
+ <div class="text-neonblue text-sm uppercase tracking-wider">Days</div>
 
 
 
 
 
 
 
 
 
 
 
108
  </div>
109
+ </div>
110
+
111
+ <!-- Hours -->
112
+ <div class="countdown-item">
113
+ <svg class="countdown-svg" viewBox="0 0 100 100">
114
+ <circle class="countdown-track" cx="50" cy="50" r="45"></circle>
115
+ <circle class="countdown-progress hours-progress" cx="50" cy="50" r="45"
116
+ stroke-dasharray="283" stroke-dashoffset="0"></circle>
117
+ </svg>
118
+ <div class="countdown-content">
119
+ <div class="text-4xl md:text-5xl font-bold text-white" id="hours">00</div>
120
+ <div class="text-neonmagenta text-sm uppercase tracking-wider">Hours</div>
121
  </div>
122
+ </div>
123
+
124
+ <!-- Minutes -->
125
+ <div class="countdown-item">
126
+ <svg class="countdown-svg" viewBox="0 0 100 100">
127
+ <circle class="countdown-track" cx="50" cy="50" r="45"></circle>
128
+ <circle class="countdown-progress minutes-progress" cx="50" cy="50" r="45"
129
+ stroke-dasharray="283" stroke-dashoffset="0"></circle>
130
+ </svg>
131
+ <div class="countdown-content">
132
+ <div class="text-4xl md:text-5xl font-bold text-white" id="minutes">00</div>
133
+ <div class="text-neonblue text-sm uppercase tracking-wider">Minutes</div>
134
  </div>
135
+ </div>
136
+
137
+ <!-- Seconds -->
138
+ <div class="countdown-item">
139
+ <svg class="countdown-svg" viewBox="0 0 100 100">
140
+ <circle class="countdown-track" cx="50" cy="50" r="45"></circle>
141
+ <circle class="countdown-progress seconds-progress" cx="50" cy="50" r="45"
142
+ stroke-dasharray="283" stroke-dashoffset="0"></circle>
143
+ </svg>
144
+ <div class="countdown-content">
145
+ <div class="text-4xl md:text-5xl font-bold text-white" id="seconds">00</div>
146
+ <div class="text-neonmagenta text-sm uppercase tracking-wider">Seconds</div>
147
  </div>
148
  </div>
149
  </div>
150
+ <div class="text-center mt-6">
151
+ <div class="inline-block px-4 py-2 bg-black/30 backdrop-blur-sm border border-neonblue/30 rounded-full">
152
+ <p class="text-neonblue text-sm tracking-wider">Launch Window: Q1 2026</p>
153
+ </div>
 
 
 
 
 
 
 
154
  </div>
155
  </div>
156
  <!-- Pre-Registration CTA -->
script.js CHANGED
@@ -22,34 +22,38 @@ const cosmicWeb = document.querySelector('.cosmic-web');
22
  while (cosmicWeb.firstChild) {
23
  cosmicWeb.removeChild(cosmicWeb.firstChild);
24
  }
25
- // Initialize featured games carousel
26
- const track = document.querySelector('.featured-games-track');
27
- const cards = document.querySelectorAll('.featured-game-card');
28
- const prevBtn = document.querySelector('.carousel-prev');
29
- const nextBtn = document.querySelector('.carousel-next');
30
-
31
- let currentIndex = 0;
32
- const cardWidth = cards[0].offsetWidth;
33
- const gap = 20; // Gap between cards in px
34
-
35
- function updateCarousel() {
36
- const offset = -currentIndex * (cardWidth + gap);
37
- track.style.transform = `translateX(${offset}px)`;
38
- }
39
-
40
- prevBtn.addEventListener('click', () => {
41
- if (currentIndex > 0) {
42
- currentIndex--;
43
- updateCarousel();
44
- }
45
- });
46
-
47
- nextBtn.addEventListener('click', () => {
48
- if (currentIndex < cards.length - 3) { // Show 3 at a time
49
- currentIndex++;
50
- updateCarousel();
51
- }
52
- });
 
 
 
 
53
  // If the countdown is finished, clear it
54
  if (distance < 0) {
55
  clearInterval(countdownFunction);
 
22
  while (cosmicWeb.firstChild) {
23
  cosmicWeb.removeChild(cosmicWeb.firstChild);
24
  }
25
+ // Set the date we're counting down to (Q1 2026)
26
+ const countDownDate = new Date("Jan 1, 2026 00:00:00").getTime();
27
+
28
+ // Update the countdown every 1 second
29
+ const countdownFunction = setInterval(function() {
30
+ // Get today's date and time
31
+ const now = new Date().getTime();
32
+
33
+ // Find the distance between now and the countdown date
34
+ const distance = countDownDate - now;
35
+
36
+ // Time calculations for days, hours, minutes and seconds
37
+ const days = Math.floor(distance / (1000 * 60 * 60 * 24));
38
+ const hours = Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));
39
+ const minutes = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60));
40
+ const seconds = Math.floor((distance % (1000 * 60)) / 1000);
41
+ // Display the result
42
+ document.getElementById("days").innerHTML = days.toString().padStart(2, '0');
43
+ document.getElementById("hours").innerHTML = hours.toString().padStart(2, '0');
44
+ document.getElementById("minutes").innerHTML = minutes.toString().padStart(2, '0');
45
+ document.getElementById("seconds").innerHTML = seconds.toString().padStart(2, '0');
46
+
47
+ // Update circle progress
48
+ const dayProgress = 283 - (283 * (days / 365));
49
+ const hourProgress = 283 - (283 * (hours / 24));
50
+ const minuteProgress = 283 - (283 * (minutes / 60));
51
+ const secondProgress = 283 - (283 * (seconds / 60));
52
+
53
+ document.querySelector('.days-progress').style.strokeDashoffset = dayProgress;
54
+ document.querySelector('.hours-progress').style.strokeDashoffset = hourProgress;
55
+ document.querySelector('.minutes-progress').style.strokeDashoffset = minuteProgress;
56
+ document.querySelector('.seconds-progress').style.strokeDashoffset = secondProgress;
57
  // If the countdown is finished, clear it
58
  if (distance < 0) {
59
  clearInterval(countdownFunction);
style.css CHANGED
@@ -250,81 +250,78 @@ header {
250
  filter: drop-shadow(0 0 15px rgba(255, 255, 255, 0.7));
251
  }
252
  }
253
- /* Featured Games Carousel */
254
- .featured-games-container {
255
- max-width: 100%;
256
- overflow: hidden;
 
257
  }
258
 
259
- .featured-games-carousel {
260
- position: relative;
261
- padding: 1rem 0;
 
 
262
  }
263
 
264
- .featured-games-track {
 
 
 
265
  display: flex;
266
- transition: transform 0.5s ease;
 
267
  }
268
 
269
- .featured-game-card {
270
- flex: 0 0 280px;
271
- background: rgba(10, 10, 10, 0.5);
272
- backdrop-filter: blur(10px);
273
- border-radius: 12px;
274
- overflow: hidden;
275
- border: 1px solid rgba(15, 240, 252, 0.2);
276
- box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
277
- transition: all 0.3s ease;
278
- margin: 0 10px;
279
  }
280
 
281
- .featured-game-card:hover {
282
- transform: translateY(-5px);
283
- border-color: rgba(255, 0, 255, 0.5);
284
- box-shadow: 0 10px 25px rgba(15, 240, 252, 0.4),
285
- 0 0 20px rgba(255, 0, 255, 0.3);
286
  }
287
 
288
- .game-image {
289
- height: 160px;
290
- background-size: cover;
291
- background-position: center;
292
- position: relative;
 
293
  }
294
 
295
- .game-image::after {
296
- content: '';
297
- position: absolute;
298
- inset: 0;
299
- background: linear-gradient(to bottom, transparent 60%, rgba(0,0,0,0.8) 100%);
300
  }
301
 
302
- .game-info {
303
- padding: 1rem;
304
- text-align: center;
305
  }
306
 
307
- .game-title {
308
- font-size: 1.25rem;
309
- font-weight: 600;
310
- margin-bottom: 0.25rem;
311
- color: white;
312
- font-family: 'Orbitron', sans-serif;
313
  }
314
 
315
- .game-provider {
316
- font-size: 0.85rem;
317
- color: rgba(255, 255, 255, 0.7);
318
  }
319
 
320
- .carousel-controls button {
321
- transition: all 0.3s ease;
 
 
 
 
 
322
  }
323
 
324
- .carousel-controls button:hover {
325
- transform: scale(1.1);
326
- box-shadow: 0 0 10px currentColor;
327
- }
328
  /* Glass Panel Effect */
329
  .glass-panel {
330
  background: rgba(10, 10, 10, 0.5);
 
250
  filter: drop-shadow(0 0 15px rgba(255, 255, 255, 0.7));
251
  }
252
  }
253
+ /* Countdown Timer Styles */
254
+ .countdown-container {
255
+ width: 100%;
256
+ max-width: 800px;
257
+ margin: 0 auto;
258
  }
259
 
260
+ .countdown-grid {
261
+ display: grid;
262
+ grid-template-columns: repeat(4, 1fr);
263
+ gap: 1rem;
264
+ justify-items: center;
265
  }
266
 
267
+ .countdown-item {
268
+ position: relative;
269
+ width: 120px;
270
+ height: 120px;
271
  display: flex;
272
+ justify-content: center;
273
+ align-items: center;
274
  }
275
 
276
+ .countdown-svg {
277
+ width: 100%;
278
+ height: 100%;
279
+ transform: rotate(-90deg);
 
 
 
 
 
 
280
  }
281
 
282
+ .countdown-track {
283
+ fill: transparent;
284
+ stroke: rgba(255, 255, 255, 0.1);
285
+ stroke-width: 5px;
 
286
  }
287
 
288
+ .countdown-progress {
289
+ fill: transparent;
290
+ stroke-width: 5px;
291
+ stroke-linecap: round;
292
+ stroke-dashoffset: 283;
293
+ transition: stroke-dashoffset 0.5s ease;
294
  }
295
 
296
+ .days-progress {
297
+ stroke: url(#days-gradient);
298
+ filter: drop-shadow(0 0 5px rgba(15, 240, 252, 0.7));
 
 
299
  }
300
 
301
+ .hours-progress {
302
+ stroke: url(#hours-gradient);
303
+ filter: drop-shadow(0 0 5px rgba(255, 0, 255, 0.7));
304
  }
305
 
306
+ .minutes-progress {
307
+ stroke: url(#days-gradient);
308
+ filter: drop-shadow(0 0 5px rgba(15, 240, 252, 0.5));
 
 
 
309
  }
310
 
311
+ .seconds-progress {
312
+ stroke: url(#hours-gradient);
313
+ filter: drop-shadow(0 0 5px rgba(255, 0, 255, 0.5));
314
  }
315
 
316
+ .countdown-content {
317
+ position: absolute;
318
+ top: 50%;
319
+ left: 50%;
320
+ transform: translate(-50%, -50%);
321
+ text-align: center;
322
+ z-index: 2;
323
  }
324
 
 
 
 
 
325
  /* Glass Panel Effect */
326
  .glass-panel {
327
  background: rgba(10, 10, 10, 0.5);