XBotz commited on
Commit
9e18143
·
verified ·
1 Parent(s): f2e1195

Add 3 files

Browse files
Files changed (3) hide show
  1. README.md +7 -5
  2. index.html +918 -19
  3. prompts.txt +0 -0
README.md CHANGED
@@ -1,10 +1,12 @@
1
  ---
2
- title: E Commerce
3
- emoji: 🌍
4
- colorFrom: gray
5
- colorTo: blue
6
  sdk: static
7
  pinned: false
 
 
8
  ---
9
 
10
- Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
 
1
  ---
2
+ title: e-commerce
3
+ emoji: 🐳
4
+ colorFrom: blue
5
+ colorTo: pink
6
  sdk: static
7
  pinned: false
8
+ tags:
9
+ - deepsite
10
  ---
11
 
12
+ Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
index.html CHANGED
@@ -1,19 +1,918 @@
1
- <!doctype html>
2
- <html>
3
- <head>
4
- <meta charset="utf-8" />
5
- <meta name="viewport" content="width=device-width" />
6
- <title>My static Space</title>
7
- <link rel="stylesheet" href="style.css" />
8
- </head>
9
- <body>
10
- <div class="card">
11
- <h1>Welcome to your static Space!</h1>
12
- <p>You can modify this app directly by editing <i>index.html</i> in the Files and versions tab.</p>
13
- <p>
14
- Also don't forget to check the
15
- <a href="https://huggingface.co/docs/hub/spaces" target="_blank">Spaces documentation</a>.
16
- </p>
17
- </div>
18
- </body>
19
- </html>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+
4
+ <head>
5
+ <meta charset="UTF-8">
6
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
7
+ <title>ShopNest - Premium E-Commerce</title>
8
+ <script src="https://cdn.tailwindcss.com"></script>
9
+ <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
10
+ <style>
11
+ /* Custom CSS for animations and effects */
12
+ .product-card:hover {
13
+ transform: translateY(-5px);
14
+ box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
15
+ }
16
+
17
+ .cart-item-enter {
18
+ opacity: 0;
19
+ transform: translateX(-20px);
20
+ }
21
+
22
+ .cart-item-enter-active {
23
+ opacity: 1;
24
+ transform: translateX(0);
25
+ transition: all 300ms ease-in;
26
+ }
27
+
28
+ .cart-item-exit {
29
+ opacity: 1;
30
+ }
31
+
32
+ .cart-item-exit-active {
33
+ opacity: 0;
34
+ transform: translateX(20px);
35
+ transition: all 300ms ease-in;
36
+ }
37
+
38
+ @keyframes pulse {
39
+
40
+ 0%,
41
+ 100% {
42
+ opacity: 1;
43
+ }
44
+
45
+ 50% {
46
+ opacity: 0.5;
47
+ }
48
+ }
49
+
50
+ .animate-pulse {
51
+ animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
52
+ }
53
+
54
+ .hero-gradient {
55
+ background: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%);
56
+ }
57
+ </style>
58
+ </head>
59
+
60
+ <body class="bg-gray-50 font-sans">
61
+ <!-- Header/Navigation -->
62
+ <header class="bg-white shadow-sm sticky top-0 z-50">
63
+ <div class="container mx-auto px-4 py-3 flex justify-between items-center">
64
+ <div class="flex items-center space-x-2">
65
+ <i class="fas fa-shopping-bag text-2xl text-indigo-600"></i>
66
+ <h1 class="text-xl font-bold text-gray-800">Shop<span class="text-indigo-600">Nest</span></h1>
67
+ </div>
68
+
69
+ <div class="hidden md:flex items-center space-x-8">
70
+ <a href="#" class="text-gray-700 hover:text-indigo-600 transition">Home</a>
71
+ <a href="#" class="text-gray-700 hover:text-indigo-600 transition">Shop</a>
72
+ <a href="#" class="text-gray-700 hover:text-indigo-600 transition">Categories</a>
73
+ <a href="#" class="text-gray-700 hover:text-indigo-600 transition">About</a>
74
+ <a href="#" class="text-gray-700 hover:text-indigo-600 transition">Contact</a>
75
+ </div>
76
+
77
+ <div class="flex items-center space-x-4">
78
+ <button class="p-2 text-gray-600 hover:text-indigo-600 relative">
79
+ <i class="fas fa-search"></i>
80
+ </button>
81
+ <button class="p-2 text-gray-600 hover:text-indigo-600 relative">
82
+ <i class="far fa-heart"></i>
83
+ <span class="absolute -top-1 -right-1 bg-indigo-600 text-white text-xs rounded-full h-5 w-5 flex items-center justify-center">3</span>
84
+ </button>
85
+ <button id="cart-btn" class="p-2 text-gray-600 hover:text-indigo-600 relative">
86
+ <i class="fas fa-shopping-cart"></i>
87
+ <span id="cart-count" class="absolute -top-1 -right-1 bg-indigo-600 text-white text-xs rounded-full h-5 w-5 flex items-center justify-center">0</span>
88
+ </button>
89
+ <button class="md:hidden p-2 text-gray-600 hover:text-indigo-600">
90
+ <i class="fas fa-bars"></i>
91
+ </button>
92
+ </div>
93
+ </div>
94
+ </header>
95
+
96
+ <!-- Hero Section -->
97
+ <section class="hero-gradient py-16">
98
+ <div class="container mx-auto px-4 flex flex-col md:flex-row items-center">
99
+ <div class="md:w-1/2 mb-8 md:mb-0">
100
+ <h1 class="text-4xl md:text-5xl font-bold text-gray-800 mb-4">Summer Collection 2023</h1>
101
+ <p class="text-lg text-gray-600 mb-6">Discover our premium selection of products designed to elevate your
102
+ lifestyle.</p>
103
+ <div class="flex space-x-4">
104
+ <button class="bg-indigo-600 hover:bg-indigo-700 text-white px-6 py-3 rounded-lg font-medium transition">Shop Now</button>
105
+ <button class="border border-indigo-600 text-indigo-600 hover:bg-indigo-50 px-6 py-3 rounded-lg font-medium transition">Learn More</button>
106
+ </div>
107
+ </div>
108
+ <div class="md:w-1/2 flex justify-center">
109
+ <img src="https://images.unsplash.com/photo-1483985988355-763728e1935b?ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&auto=format&fit=crop&w=1470&q=80" alt="Fashion Model" class="rounded-lg shadow-xl max-w-full h-auto">
110
+ </div>
111
+ </div>
112
+ </section>
113
+
114
+ <!-- Categories -->
115
+ <section class="py-12 bg-white">
116
+ <div class="container mx-auto px-4">
117
+ <h2 class="text-3xl font-bold text-center text-gray-800 mb-12">Shop by Category</h2>
118
+ <div class="grid grid-cols-2 md:grid-cols-4 gap-6">
119
+ <div class="bg-gray-100 rounded-lg overflow-hidden hover:shadow-md transition cursor-pointer">
120
+ <div class="h-40 bg-indigo-50 flex items-center justify-center">
121
+ <i class="fas fa-tshirt text-5xl text-indigo-600"></i>
122
+ </div>
123
+ <div class="p-4">
124
+ <h3 class="font-medium text-gray-800">Clothing</h3>
125
+ <p class="text-sm text-gray-500 mt-1">200+ items</p>
126
+ </div>
127
+ </div>
128
+ <div class="bg-gray-100 rounded-lg overflow-hidden hover:shadow-md transition cursor-pointer">
129
+ <div class="h-40 bg-blue-50 flex items-center justify-center">
130
+ <i class="fas fa-laptop text-5xl text-blue-600"></i>
131
+ </div>
132
+ <div class="p-4">
133
+ <h3 class="font-medium text-gray-800">Electronics</h3>
134
+ <p class="text-sm text-gray-500 mt-1">150+ items</p>
135
+ </div>
136
+ </div>
137
+ <div class="bg-gray-100 rounded-lg overflow-hidden hover:shadow-md transition cursor-pointer">
138
+ <div class="h-40 bg-green-50 flex items-center justify-center">
139
+ <i class="fas fa-home text-5xl text-green-600"></i>
140
+ </div>
141
+ <div class="p-4">
142
+ <h3 class="font-medium text-gray-800">Home</h3>
143
+ <p class="text-sm text-gray-500 mt-1">300+ items</p>
144
+ </div>
145
+ </div>
146
+ <div class="bg-gray-100 rounded-lg overflow-hidden hover:shadow-md transition cursor-pointer">
147
+ <div class="h-40 bg-yellow-50 flex items-center justify-center">
148
+ <i class="fas fa-gamepad text-5xl text-yellow-600"></i>
149
+ </div>
150
+ <div class="p-4">
151
+ <h3 class="font-medium text-gray-800">Gaming</h3>
152
+ <p class="text-sm text-gray-500 mt-1">120+ items</p>
153
+ </div>
154
+ </div>
155
+ </div>
156
+ </div>
157
+ </section>
158
+
159
+ <!-- Featured Products -->
160
+ <section class="py-12 bg-gray-50">
161
+ <div class="container mx-auto px-4">
162
+ <div class="flex justify-between items-center mb-8">
163
+ <h2 class="text-3xl font-bold text-gray-800">Featured Products</h2>
164
+ <a href="#" class="text-indigo-600 hover:text-indigo-800 font-medium">View All</a>
165
+ </div>
166
+
167
+ <div class="grid grid-cols-1 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-4 gap-6" id="products-container">
168
+ <!-- Products will be loaded here by JavaScript -->
169
+ </div>
170
+ </div>
171
+ </section>
172
+
173
+ <!-- Special Offer -->
174
+ <section class="py-16 bg-indigo-600 text-white">
175
+ <div class="container mx-auto px-4 text-center">
176
+ <h2 class="text-3xl md:text-4xl font-bold mb-4">Limited Time Offer</h2>
177
+ <p class="text-xl mb-8 max-w-2xl mx-auto">Get 30% off on all summer collection. Use code
178
+ <span class="font-bold">SUMMER30</span> at checkout.</p>
179
+ <div class="flex justify-center space-x-4 mb-8">
180
+ <div class="bg-white bg-opacity-20 rounded-lg p-4 text-center">
181
+ <div class="text-3xl font-bold" id="days">00</div>
182
+ <div class="text-sm">Days</div>
183
+ </div>
184
+ <div class="bg-white bg-opacity-20 rounded-lg p-4 text-center">
185
+ <div class="text-3xl font-bold" id="hours">00</div>
186
+ <div class="text-sm">Hours</div>
187
+ </div>
188
+ <div class="bg-white bg-opacity-20 rounded-lg p-4 text-center">
189
+ <div class="text-3xl font-bold" id="minutes">00</div>
190
+ <div class="text-sm">Minutes</div>
191
+ </div>
192
+ <div class="bg-white bg-opacity-20 rounded-lg p-4 text-center">
193
+ <div class="text-3xl font-bold" id="seconds">00</div>
194
+ <div class="text-sm">Seconds</div>
195
+ </div>
196
+ </div>
197
+ <button class="bg-white text-indigo-600 hover:bg-gray-100 px-8 py-3 rounded-lg font-bold transition">Shop Now</button>
198
+ </div>
199
+ </section>
200
+
201
+ <!-- Testimonials -->
202
+ <section class="py-12 bg-white">
203
+ <div class="container mx-auto px-4">
204
+ <h2 class="text-3xl font-bold text-center text-gray-800 mb-12">What Our Customers Say</h2>
205
+ <div class="grid grid-cols-1 md:grid-cols-3 gap-8">
206
+ <div class="bg-gray-50 p-6 rounded-lg shadow-sm">
207
+ <div class="flex items-center mb-4">
208
+ <div class="text-yellow-400">
209
+ <i class="fas fa-star"></i>
210
+ <i class="fas fa-star"></i>
211
+ <i class="fas fa-star"></i>
212
+ <i class="fas fa-star"></i>
213
+ <i class="fas fa-star"></i>
214
+ </div>
215
+ </div>
216
+ <p class="text-gray-600 mb-4">"The quality of products is outstanding and the delivery was super fast. Will
217
+ definitely shop here again!"</p>
218
+ <div class="flex items-center">
219
+ <img src="https://randomuser.me/api/portraits/women/43.jpg" alt="Customer" class="w-10 h-10 rounded-full mr-3">
220
+ <div>
221
+ <h4 class="font-medium text-gray-800">Sarah Johnson</h4>
222
+ <p class="text-sm text-gray-500">Verified Customer</p>
223
+ </div>
224
+ </div>
225
+ </div>
226
+ <div class="bg-gray-50 p-6 rounded-lg shadow-sm">
227
+ <div class="flex items-center mb-4">
228
+ <div class="text-yellow-400">
229
+ <i class="fas fa-star"></i>
230
+ <i class="fas fa-star"></i>
231
+ <i class="fas fa-star"></i>
232
+ <i class="fas fa-star"></i>
233
+ <i class="fas fa-star"></i>
234
+ </div>
235
+ </div>
236
+ <p class="text-gray-600 mb-4">"Excellent customer service! They helped me choose the perfect gift for my
237
+ wife's birthday. Highly recommended!"</p>
238
+ <div class="flex items-center">
239
+ <img src="https://randomuser.me/api/portraits/men/32.jpg" alt="Customer" class="w-10 h-10 rounded-full mr-3">
240
+ <div>
241
+ <h4 class="font-medium text-gray-800">Michael Chen</h4>
242
+ <p class="text-sm text-gray-500">Verified Customer</p>
243
+ </div>
244
+ </div>
245
+ </div>
246
+ <div class="bg-gray-50 p-6 rounded-lg shadow-sm">
247
+ <div class="flex items-center mb-4">
248
+ <div class="text-yellow-400">
249
+ <i class="fas fa-star"></i>
250
+ <i class="fas fa-star"></i>
251
+ <i class="fas fa-star"></i>
252
+ <i class="fas fa-star"></i>
253
+ <i class="fas fa-star-half-alt"></i>
254
+ </div>
255
+ </div>
256
+ <p class="text-gray-600 mb-4">"I've ordered multiple times and never been disappointed. The packaging is
257
+ eco-friendly which I really appreciate."</p>
258
+ <div class="flex items-center">
259
+ <img src="https://randomuser.me/api/portraits/women/65.jpg" alt="Customer" class="w-10 h-10 rounded-full mr-3">
260
+ <div>
261
+ <h4 class="font-medium text-gray-800">Emma Rodriguez</h4>
262
+ <p class="text-sm text-gray-500">Verified Customer</p>
263
+ </div>
264
+ </div>
265
+ </div>
266
+ </div>
267
+ </div>
268
+ </section>
269
+
270
+ <!-- Newsletter -->
271
+ <section class="py-12 bg-gray-100">
272
+ <div class="container mx-auto px-4 text-center">
273
+ <h2 class="text-3xl font-bold text-gray-800 mb-4">Stay Updated</h2>
274
+ <p class="text-gray-600 mb-8 max-w-2xl mx-auto">Subscribe to our newsletter to receive updates on new products,
275
+ special offers, and more.</p>
276
+ <div class="max-w-md mx-auto flex">
277
+ <input type="email" placeholder="Your email address" class="flex-grow px-4 py-3 rounded-l-lg border border-gray-300 focus:outline-none focus:ring-2 focus:ring-indigo-500 focus:border-transparent">
278
+ <button class="bg-indigo-600 hover:bg-indigo-700 text-white px-6 py-3 rounded-r-lg font-medium transition">Subscribe</button>
279
+ </div>
280
+ </div>
281
+ </section>
282
+
283
+ <!-- Footer -->
284
+ <footer class="bg-gray-800 text-white pt-12 pb-6">
285
+ <div class="container mx-auto px-4">
286
+ <div class="grid grid-cols-1 md:grid-cols-4 gap-8 mb-8">
287
+ <div>
288
+ <div class="flex items-center space-x-2 mb-4">
289
+ <i class="fas fa-shopping-bag text-2xl text-indigo-400"></i>
290
+ <h3 class="text-xl font-bold">Shop<span class="text-indigo-400">Nest</span></h3>
291
+ </div>
292
+ <p class="text-gray-400 mb-4">Premium e-commerce platform offering the best products at competitive prices.
293
+ </p>
294
+ <div class="flex space-x-4">
295
+ <a href="#" class="text-gray-400 hover:text-white transition"><i class="fab fa-facebook-f"></i></a>
296
+ <a href="#" class="text-gray-400 hover:text-white transition"><i class="fab fa-twitter"></i></a>
297
+ <a href="#" class="text-gray-400 hover:text-white transition"><i class="fab fa-instagram"></i></a>
298
+ <a href="#" class="text-gray-400 hover:text-white transition"><i class="fab fa-linkedin-in"></i></a>
299
+ </div>
300
+ </div>
301
+ <div>
302
+ <h4 class="text-lg font-semibold mb-4">Shop</h4>
303
+ <ul class="space-y-2">
304
+ <li><a href="#" class="text-gray-400 hover:text-white transition">All Products</a></li>
305
+ <li><a href="#" class="text-gray-400 hover:text-white transition">Featured</a></li>
306
+ <li><a href="#" class="text-gray-400 hover:text-white transition">New Arrivals</a></li>
307
+ <li><a href="#" class="text-gray-400 hover:text-white transition">Sale Items</a></li>
308
+ <li><a href="#" class="text-gray-400 hover:text-white transition">Gift Cards</a></li>
309
+ </ul>
310
+ </div>
311
+ <div>
312
+ <h4 class="text-lg font-semibold mb-4">Customer Service</h4>
313
+ <ul class="space-y-2">
314
+ <li><a href="#" class="text-gray-400 hover:text-white transition">Contact Us</a></li>
315
+ <li><a href="#" class="text-gray-400 hover:text-white transition">FAQs</a></li>
316
+ <li><a href="#" class="text-gray-400 hover:text-white transition">Shipping Policy</a></li>
317
+ <li><a href="#" class="text-gray-400 hover:text-white transition">Returns & Refunds</a></li>
318
+ <li><a href="#" class="text-gray-400 hover:text-white transition">Track Order</a></li>
319
+ </ul>
320
+ </div>
321
+ <div>
322
+ <h4 class="text-lg font-semibold mb-4">Company</h4>
323
+ <ul class="space-y-2">
324
+ <li><a href="#" class="text-gray-400 hover:text-white transition">About Us</a></li>
325
+ <li><a href="#" class="text-gray-400 hover:text-white transition">Careers</a></li>
326
+ <li><a href="#" class="text-gray-400 hover:text-white transition">Privacy Policy</a></li>
327
+ <li><a href="#" class="text-gray-400 hover:text-white transition">Terms of Service</a></li>
328
+ <li><a href="#" class="text-gray-400 hover:text-white transition">Blog</a></li>
329
+ </ul>
330
+ </div>
331
+ </div>
332
+ <div class="border-t border-gray-700 pt-6 flex flex-col md:flex-row justify-between items-center">
333
+ <p class="text-gray-400 mb-4 md:mb-0">© 2023 ShopNest. All rights reserved.</p>
334
+ <div class="flex space-x-6">
335
+ <img src="https://via.placeholder.com/40x25?text=VISA" alt="Visa" class="h-6">
336
+ <img src="https://via.placeholder.com/40x25?text=MC" alt="Mastercard" class="h-6">
337
+ <img src="https://via.placeholder.com/40x25?text=AMEX" alt="American Express" class="h-6">
338
+ <img src="https://via.placeholder.com/40x25?text=PP" alt="PayPal" class="h-6">
339
+ </div>
340
+ </div>
341
+ </div>
342
+ </footer>
343
+
344
+ <!-- Shopping Cart Sidebar -->
345
+ <div id="cart-sidebar"
346
+ class="fixed top-0 right-0 h-full w-full md:w-96 bg-white shadow-xl transform translate-x-full transition-transform duration-300 ease-in-out z-50 overflow-y-auto">
347
+ <div class="p-6">
348
+ <div class="flex justify-between items-center mb-6">
349
+ <h3 class="text-xl font-bold text-gray-800">Your Cart (<span id="sidebar-cart-count">0</span>)</h3>
350
+ <button id="close-cart" class="text-gray-500 hover:text-gray-700">
351
+ <i class="fas fa-times"></i>
352
+ </button>
353
+ </div>
354
+
355
+ <div id="cart-items" class="space-y-4 mb-6">
356
+ <!-- Cart items will be loaded here -->
357
+ <div class="text-center py-8 text-gray-500" id="empty-cart-message">
358
+ <i class="fas fa-shopping-cart text-4xl mb-4 text-gray-300"></i>
359
+ <p>Your cart is empty</p>
360
+ </div>
361
+ </div>
362
+
363
+ <div class="border-t border-gray-200 pt-4 mb-4">
364
+ <div class="flex justify-between mb-2">
365
+ <span class="text-gray-600">Subtotal</span>
366
+ <span class="font-medium" id="cart-subtotal">$0.00</span>
367
+ </div>
368
+ <div class="flex justify-between mb-2">
369
+ <span class="text-gray-600">Shipping</span>
370
+ <span class="font-medium">Free</span>
371
+ </div>
372
+ <div class="flex justify-between mb-2">
373
+ <span class="text-gray-600">Tax</span>
374
+ <span class="font-medium" id="cart-tax">$0.00</span>
375
+ </div>
376
+ <div class="flex justify-between text-lg font-bold mt-4">
377
+ <span>Total</span>
378
+ <span id="cart-total">$0.00</span>
379
+ </div>
380
+ </div>
381
+
382
+ <button id="checkout-btn" class="w-full bg-indigo-600 hover:bg-indigo-700 text-white py-3 rounded-lg font-medium transition mb-4">Proceed to Checkout</button>
383
+ <button class="w-full border border-indigo-600 text-indigo-600 hover:bg-indigo-50 py-3 rounded-lg font-medium transition">Continue Shopping</button>
384
+ </div>
385
+ </div>
386
+ <div id="cart-overlay" class="hidden fixed inset-0 bg-black bg-opacity-50 z-40"></div>
387
+
388
+ <!-- Product Quick View Modal -->
389
+ <div id="quickview-modal"
390
+ class="hidden fixed inset-0 bg-black bg-opacity-50 z-50 flex items-center justify-center p-4">
391
+ <div class="bg-white rounded-lg shadow-xl max-w-4xl w-full max-h-[90vh] overflow-y-auto">
392
+ <div class="p-6">
393
+ <div class="flex justify-between items-start mb-6">
394
+ <h3 class="text-2xl font-bold text-gray-800" id="quickview-title">Product Name</h3>
395
+ <button id="close-quickview" class="text-gray-500 hover:text-gray-700">
396
+ <i class="fas fa-times"></i>
397
+ </button>
398
+ </div>
399
+
400
+ <div class="flex flex-col md:flex-row gap-8">
401
+ <div class="md:w-1/2">
402
+ <img id="quickview-image" src="" alt="Product" class="w-full rounded-lg mb-4">
403
+ <div class="grid grid-cols-4 gap-2">
404
+ <div class="border rounded cursor-pointer">
405
+ <img src="" class="w-full h-16 object-cover">
406
+ </div>
407
+ <div class="border rounded cursor-pointer">
408
+ <img src="" class="w-full h-16 object-cover">
409
+ </div>
410
+ <div class="border rounded cursor-pointer">
411
+ <img src="" class="w-full h-16 object-cover">
412
+ </div>
413
+ <div class="border rounded cursor-pointer">
414
+ <img src="" class="w-full h-16 object-cover">
415
+ </div>
416
+ </div>
417
+ </div>
418
+
419
+ <div class="md:w-1/2">
420
+ <div class="flex items-center mb-4">
421
+ <div class="text-yellow-400 mr-2">
422
+ <i class="fas fa-star"></i>
423
+ <i class="fas fa-star"></i>
424
+ <i class="fas fa-star"></i>
425
+ <i class="fas fa-star"></i>
426
+ <i class="fas fa-star-half-alt"></i>
427
+ </div>
428
+ <span class="text-gray-600 text-sm">(42 reviews)</span>
429
+ </div>
430
+
431
+ <div class="text-2xl font-bold text-gray-800 mb-4" id="quickview-price">$99.99</div>
432
+
433
+ <p class="text-gray-600 mb-6" id="quickview-description">Product description goes here...</p>
434
+
435
+ <div class="mb-6">
436
+ <div class="flex items-center mb-2">
437
+ <span class="text-gray-700 font-medium mr-4">Color:</span>
438
+ <div class="flex space-x-2">
439
+ <button class="w-6 h-6 rounded-full bg-blue-500 border-2 border-white shadow-md"></button>
440
+ <button class="w-6 h-6 rounded-full bg-red-500 border-2 border-transparent hover:border-gray-200"></button>
441
+ <button class="w-6 h-6 rounded-full bg-green-500 border-2 border-transparent hover:border-gray-200"></button>
442
+ <button class="w-6 h-6 rounded-full bg-yellow-500 border-2 border-transparent hover:border-gray-200"></button>
443
+ </div>
444
+ </div>
445
+ <div class="flex items-center">
446
+ <span class="text-gray-700 font-medium mr-4">Size:</span>
447
+ <div class="flex space-x-2">
448
+ <button class="px-3 py-1 border rounded hover:bg-gray-100">S</button>
449
+ <button class="px-3 py-1 border rounded hover:bg-gray-100">M</button>
450
+ <button class="px-3 py-1 border bg-gray-800 text-white rounded">L</button>
451
+ <button class="px-3 py-1 border rounded hover:bg-gray-100">XL</button>
452
+ </div>
453
+ </div>
454
+ </div>
455
+
456
+ <div class="flex items-center mb-6">
457
+ <div class="flex items-center border rounded">
458
+ <button class="px-3 py-2 text-gray-600 hover:bg-gray-100">
459
+ <i class="fas fa-minus"></i>
460
+ </button>
461
+ <span class="px-4 py-2">1</span>
462
+ <button class="px-3 py-2 text-gray-600 hover:bg-gray-100">
463
+ <i class="fas fa-plus"></i>
464
+ </button>
465
+ </div>
466
+ <button id="add-to-cart-quickview" class="ml-4 bg-indigo-600 hover:bg-indigo-700 text-white px-6 py-2 rounded font-medium transition flex items-center">
467
+ <i class="fas fa-shopping-cart mr-2"></i> Add to Cart
468
+ </button>
469
+ </div>
470
+
471
+ <div class="border-t border-gray-200 pt-4">
472
+ <div class="flex items-center text-gray-600 mb-2">
473
+ <i class="fas fa-truck mr-2"></i>
474
+ <span>Free shipping on orders over $50</span>
475
+ </div>
476
+ <div class="flex items-center text-gray-600 mb-2">
477
+ <i class="fas fa-undo mr-2"></i>
478
+ <span>30-day return policy</span>
479
+ </div>
480
+ <div class="flex items-center text-gray-600">
481
+ <i class="fas fa-shield-alt mr-2"></i>
482
+ <span>Secure payment</span>
483
+ </div>
484
+ </div>
485
+ </div>
486
+ </div>
487
+ </div>
488
+ </div>
489
+ </div>
490
+
491
+ <script>
492
+ // Sample product data
493
+ const products = [
494
+ {
495
+ id: 1,
496
+ name: "Premium Wireless Headphones",
497
+ price: 199.99,
498
+ image: "https://images.unsplash.com/photo-1505740420928-5e560c06d30e?ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&auto=format&fit=crop&w=1470&q=80",
499
+ description: "Noise-cancelling wireless headphones with premium sound quality and 30-hour battery life.",
500
+ rating: 4.5
501
+ },
502
+ {
503
+ id: 2,
504
+ name: "Smart Watch Pro",
505
+ price: 249.99,
506
+ image: "https://images.unsplash.com/photo-1523275335684-37898b6baf30?ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&auto=format&fit=crop&w=1399&q=80",
507
+ description: "Advanced smartwatch with health monitoring, GPS, and customizable watch faces.",
508
+ rating: 4.7
509
+ },
510
+ {
511
+ id: 3,
512
+ name: "Organic Cotton T-Shirt",
513
+ price: 29.99,
514
+ image: "https://images.unsplash.com/photo-1521572163474-6864f9cf17a6?ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&auto=format&fit=crop&w=1480&q=80",
515
+ description: "Comfortable 100% organic cotton t-shirt available in multiple colors.",
516
+ rating: 4.3
517
+ },
518
+ {
519
+ id: 4,
520
+ name: "Leather Wallet",
521
+ price: 49.99,
522
+ image: "https://images.unsplash.com/photo-1600857544200-b2f666a9a1ec?ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&auto=format&fit=crop&w=1470&q=80",
523
+ description: "Genuine leather wallet with multiple card slots and RFID protection.",
524
+ rating: 4.6
525
+ },
526
+ {
527
+ id: 5,
528
+ name: "Ceramic Coffee Mug",
529
+ price: 19.99,
530
+ image: "https://images.unsplash.com/photo-1517256064527-09c73fc73e38?ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&auto=format&fit=crop&w=1470&q=80",
531
+ description: "Handcrafted ceramic mug with ergonomic handle and heat-resistant design.",
532
+ rating: 4.8
533
+ },
534
+ {
535
+ id: 6,
536
+ name: "Wireless Charging Pad",
537
+ price: 39.99,
538
+ image: "https://images.unsplash.com/photo-1583394838336-acd977736f90?ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&auto=format&fit=crop&w=1470&q=80",
539
+ description: "Fast-charging wireless pad compatible with all Qi-enabled devices.",
540
+ rating: 4.2
541
+ },
542
+ {
543
+ id: 7,
544
+ name: "Stainless Steel Water Bottle",
545
+ price: 24.99,
546
+ image: "https://images.unsplash.com/photo-1602143407151-7111541de5c8?ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&auto=format&fit=crop&w=1374&q=80",
547
+ description: "Insulated stainless steel water bottle that keeps drinks cold for 24 hours.",
548
+ rating: 4.9
549
+ },
550
+ {
551
+ id: 8,
552
+ name: "Bluetooth Speaker",
553
+ price: 89.99,
554
+ image: "https://images.unsplash.com/photo-1572569511254-d8f925fe2cbb?ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&auto=format&fit=crop&w=1374&q=80",
555
+ description: "Portable Bluetooth speaker with 20W output and 15-hour playtime.",
556
+ rating: 4.4
557
+ }
558
+ ];
559
+
560
+ // Shopping cart functionality
561
+ let cart = [];
562
+
563
+ // DOM elements
564
+ const productsContainer = document.getElementById('products-container');
565
+ const cartBtn = document.getElementById('cart-btn');
566
+ const closeCartBtn = document.getElementById('close-cart');
567
+ const cartSidebar = document.getElementById('cart-sidebar');
568
+ const cartOverlay = document.getElementById('cart-overlay');
569
+ const cartItemsContainer = document.getElementById('cart-items');
570
+ const emptyCartMessage = document.getElementById('empty-cart-message');
571
+ const cartCount = document.getElementById('cart-count');
572
+ const sidebarCartCount = document.getElementById('sidebar-cart-count');
573
+ const cartSubtotal = document.getElementById('cart-subtotal');
574
+ const cartTax = document.getElementById('cart-tax');
575
+ const cartTotal = document.getElementById('cart-total');
576
+ const checkoutBtn = document.getElementById('checkout-btn');
577
+
578
+ // Quick view modal elements
579
+ const quickviewModal = document.getElementById('quickview-modal');
580
+ const closeQuickview = document.getElementById('close-quickview');
581
+ const quickviewTitle = document.getElementById('quickview-title');
582
+ const quickviewImage = document.getElementById('quickview-image');
583
+ const quickviewPrice = document.getElementById('quickview-price');
584
+ const quickviewDescription = document.getElementById('quickview-description');
585
+ const addToCartQuickview = document.getElementById('add-to-cart-quickview');
586
+ let currentQuickviewProduct = null;
587
+
588
+ // Initialize the page
589
+ document.addEventListener('DOMContentLoaded', () => {
590
+ renderProducts();
591
+ setupEventListeners();
592
+ startCountdown();
593
+ });
594
+
595
+ // Render products to the page
596
+ function renderProducts() {
597
+ productsContainer.innerHTML = '';
598
+
599
+ products.forEach(product => {
600
+ const productCard = document.createElement('div');
601
+ productCard.className = 'bg-white rounded-lg shadow-md overflow-hidden product-card transition duration-300';
602
+ productCard.innerHTML = `
603
+ <div class="relative">
604
+ <img src="${product.image}" alt="${product.name}" class="w-full h-48 object-cover">
605
+ <div class="absolute top-2 right-2 bg-white rounded-full p-2 shadow-md">
606
+ <i class="far fa-heart text-gray-400 hover:text-red-500 cursor-pointer"></i>
607
+ </div>
608
+ </div>
609
+ <div class="p-4">
610
+ <div class="flex justify-between items-start mb-2">
611
+ <h3 class="font-semibold text-gray-800">${product.name}</h3>
612
+ <span class="text-indigo-600 font-bold">$${product.price.toFixed(2)}</span>
613
+ </div>
614
+ <div class="flex items-center mb-3">
615
+ <div class="text-yellow-400 text-sm">
616
+ ${renderStars(product.rating)}
617
+ </div>
618
+ <span class="text-gray-500 text-xs ml-1">(${Math.floor(Math.random() * 100) + 20})</span>
619
+ </div>
620
+ <div class="flex space-x-2">
621
+ <button class="flex-grow bg-indigo-600 hover:bg-indigo-700 text-white py-2 rounded font-medium transition text-sm add-to-cart" data-id="${product.id}">
622
+ Add to Cart
623
+ </button>
624
+ <button class="w-10 h-10 flex items-center justify-center border border-gray-300 rounded hover:bg-gray-100 quick-view" data-id="${product.id}">
625
+ <i class="fas fa-eye text-gray-600"></i>
626
+ </button>
627
+ </div>
628
+ </div>
629
+ `;
630
+ productsContainer.appendChild(productCard);
631
+ });
632
+ }
633
+
634
+ // Render star rating
635
+ function renderStars(rating) {
636
+ let stars = '';
637
+ const fullStars = Math.floor(rating);
638
+ const hasHalfStar = rating % 1 >= 0.5;
639
+
640
+ for (let i = 0; i < fullStars; i++) {
641
+ stars += '<i class="fas fa-star"></i>';
642
+ }
643
+
644
+ if (hasHalfStar) {
645
+ stars += '<i class="fas fa-star-half-alt"></i>';
646
+ }
647
+
648
+ const emptyStars = 5 - Math.ceil(rating);
649
+ for (let i = 0; i < emptyStars; i++) {
650
+ stars += '<i class="far fa-star"></i>';
651
+ }
652
+
653
+ return stars;
654
+ }
655
+
656
+ // Setup event listeners
657
+ function setupEventListeners() {
658
+ // Cart toggle
659
+ cartBtn.addEventListener('click', toggleCart);
660
+ closeCartBtn.addEventListener('click', toggleCart);
661
+ cartOverlay.addEventListener('click', toggleCart);
662
+
663
+ // Quick view modal
664
+ closeQuickview.addEventListener('click', () => {
665
+ quickviewModal.classList.add('hidden');
666
+ });
667
+
668
+ // Add to cart buttons
669
+ document.addEventListener('click', (e) => {
670
+ if (e.target.classList.contains('add-to-cart') || e.target.closest('.add-to-cart')) {
671
+ const button = e.target.classList.contains('add-to-cart') ? e.target : e.target.closest('.add-to-cart');
672
+ const productId = parseInt(button.getAttribute('data-id'));
673
+ addToCart(productId);
674
+
675
+ // Show added animation
676
+ button.innerHTML = '<i class="fas fa-check mr-1"></i> Added';
677
+ button.classList.remove('bg-indigo-600');
678
+ button.classList.add('bg-green-500');
679
+
680
+ setTimeout(() => {
681
+ button.innerHTML = 'Add to Cart';
682
+ button.classList.remove('bg-green-500');
683
+ button.classList.add('bg-indigo-600');
684
+ }, 1500);
685
+ }
686
+
687
+ // Quick view buttons
688
+ if (e.target.classList.contains('quick-view') || e.target.closest('.quick-view')) {
689
+ const button = e.target.classList.contains('quick-view') ? e.target : e.target.closest('.quick-view');
690
+ const productId = parseInt(button.getAttribute('data-id'));
691
+ showQuickView(productId);
692
+ }
693
+ });
694
+
695
+ // Add to cart from quick view
696
+ addToCartQuickview.addEventListener('click', () => {
697
+ if (currentQuickviewProduct) {
698
+ addToCart(currentQuickviewProduct.id);
699
+
700
+ // Show added animation
701
+ addToCartQuickview.innerHTML = '<i class="fas fa-check mr-2"></i> Added to Cart';
702
+ addToCartQuickview.classList.remove('bg-indigo-600');
703
+ addToCartQuickview.classList.add('bg-green-500');
704
+
705
+ setTimeout(() => {
706
+ addToCartQuickview.innerHTML = '<i class="fas fa-shopping-cart mr-2"></i> Add to Cart';
707
+ addToCartQuickview.classList.remove('bg-green-500');
708
+ addToCartQuickview.classList.add('bg-indigo-600');
709
+ }, 1500);
710
+ }
711
+ });
712
+
713
+ // Checkout button
714
+ checkoutBtn.addEventListener('click', () => {
715
+ alert('Proceeding to checkout! In a real application, this would redirect to the checkout page.');
716
+ toggleCart();
717
+ });
718
+ }
719
+
720
+ // Toggle cart sidebar
721
+ function toggleCart() {
722
+ cartSidebar.classList.toggle('translate-x-full');
723
+ cartOverlay.classList.toggle('hidden');
724
+ document.body.classList.toggle('overflow-hidden');
725
+
726
+ if (!cartSidebar.classList.contains('translate-x-full')) {
727
+ renderCartItems();
728
+ }
729
+ }
730
+
731
+ // Add product to cart
732
+ function addToCart(productId) {
733
+ const product = products.find(p => p.id === productId);
734
+
735
+ if (product) {
736
+ const existingItem = cart.find(item => item.id === productId);
737
+
738
+ if (existingItem) {
739
+ existingItem.quantity += 1;
740
+ } else {
741
+ cart.push({
742
+ ...product,
743
+ quantity: 1
744
+ });
745
+ }
746
+
747
+ updateCartCount();
748
+
749
+ // If cart is open, update the display
750
+ if (!cartSidebar.classList.contains('translate-x-full')) {
751
+ renderCartItems();
752
+ }
753
+ }
754
+ }
755
+
756
+ // Update cart count in header
757
+ function updateCartCount() {
758
+ const count = cart.reduce((total, item) => total + item.quantity, 0);
759
+ cartCount.textContent = count;
760
+ sidebarCartCount.textContent = count;
761
+ }
762
+
763
+ // Render cart items in sidebar
764
+ function renderCartItems() {
765
+ if (cart.length === 0) {
766
+ emptyCartMessage.classList.remove('hidden');
767
+ cartItemsContainer.innerHTML = '';
768
+ cartItemsContainer.appendChild(emptyCartMessage);
769
+
770
+ cartSubtotal.textContent = '$0.00';
771
+ cartTax.textContent = '$0.00';
772
+ cartTotal.textContent = '$0.00';
773
+
774
+ return;
775
+ }
776
+
777
+ emptyCartMessage.classList.add('hidden');
778
+ cartItemsContainer.innerHTML = '';
779
+
780
+ let subtotal = 0;
781
+
782
+ cart.forEach(item => {
783
+ const itemTotal = item.price * item.quantity;
784
+ subtotal += itemTotal;
785
+
786
+ const cartItem = document.createElement('div');
787
+ cartItem.className = 'flex items-center border-b border-gray-100 pb-4';
788
+ cartItem.innerHTML = `
789
+ <div class="w-20 h-20 flex-shrink-0 overflow-hidden rounded-md border border-gray-200">
790
+ <img src="${item.image}" alt="${item.name}" class="w-full h-full object-cover">
791
+ </div>
792
+ <div class="ml-4 flex-grow">
793
+ <div class="flex justify-between">
794
+ <h3 class="text-sm font-medium text-gray-900">${item.name}</h3>
795
+ <p class="ml-4 text-sm font-medium text-gray-900">$${item.price.toFixed(2)}</p>
796
+ </div>
797
+ <div class="flex justify-between mt-1 text-sm text-gray-500">
798
+ <div class="flex items-center space-x-2">
799
+ <button class="text-gray-500 hover:text-indigo-600 quantity-btn" data-action="decrease" data-id="${item.id}">
800
+ <i class="fas fa-minus text-xs"></i>
801
+ </button>
802
+ <span class="quantity">${item.quantity}</span>
803
+ <button class="text-gray-500 hover:text-indigo-600 quantity-btn" data-action="increase" data-id="${item.id}">
804
+ <i class="fas fa-plus text-xs"></i>
805
+ </button>
806
+ </div>
807
+ <button class="text-red-500 hover:text-red-700 remove-btn" data-id="${item.id}">
808
+ <i class="fas fa-trash"></i>
809
+ </button>
810
+ </div>
811
+ </div>
812
+ `;
813
+ cartItemsContainer.appendChild(cartItem);
814
+ });
815
+
816
+ // Calculate totals
817
+ const tax = subtotal * 0.1; // 10% tax
818
+ const total = subtotal + tax;
819
+
820
+ cartSubtotal.textContent = `$${subtotal.toFixed(2)}`;
821
+ cartTax.textContent = `$${tax.toFixed(2)}`;
822
+ cartTotal.textContent = `$${total.toFixed(2)}`;
823
+
824
+ // Add event listeners for quantity buttons and remove buttons
825
+ document.querySelectorAll('.quantity-btn').forEach(button => {
826
+ button.addEventListener('click', (e) => {
827
+ const action = button.getAttribute('data-action');
828
+ const productId = parseInt(button.getAttribute('data-id'));
829
+ updateCartItemQuantity(productId, action);
830
+ });
831
+ });
832
+
833
+ document.querySelectorAll('.remove-btn').forEach(button => {
834
+ button.addEventListener('click', (e) => {
835
+ const productId = parseInt(button.getAttribute('data-id'));
836
+ removeFromCart(productId);
837
+ });
838
+ });
839
+ }
840
+
841
+ // Update cart item quantity
842
+ function updateCartItemQuantity(productId, action) {
843
+ const item = cart.find(item => item.id === productId);
844
+
845
+ if (item) {
846
+ if (action === 'increase') {
847
+ item.quantity += 1;
848
+ } else if (action === 'decrease' && item.quantity > 1) {
849
+ item.quantity -= 1;
850
+ }
851
+
852
+ updateCartCount();
853
+ renderCartItems();
854
+ }
855
+ }
856
+
857
+ // Remove item from cart
858
+ function removeFromCart(productId) {
859
+ cart = cart.filter(item => item.id !== productId);
860
+ updateCartCount();
861
+ renderCartItems();
862
+ }
863
+
864
+ // Show quick view modal
865
+ function showQuickView(productId) {
866
+ const product = products.find(p => p.id === productId);
867
+
868
+ if (product) {
869
+ currentQuickviewProduct = product;
870
+ quickviewTitle.textContent = product.name;
871
+ quickviewImage.src = product.image;
872
+ quickviewPrice.textContent = `$${product.price.toFixed(2)}`;
873
+ quickviewDescription.textContent = product.description;
874
+
875
+ quickviewModal.classList.remove('hidden');
876
+ document.body.classList.add('overflow-hidden');
877
+ }
878
+ }
879
+
880
+ // Countdown timer for special offer
881
+ function startCountdown() {
882
+ // Set the date we're counting down to (3 days from now)
883
+ const countDownDate = new Date();
884
+ countDownDate.setDate(countDownDate.getDate() + 3);
885
+
886
+ // Update the count down every 1 second
887
+ const x = setInterval(function() {
888
+ // Get today's date and time
889
+ const now = new Date().getTime();
890
+
891
+ // Find the distance between now and the count down date
892
+ const distance = countDownDate - now;
893
+
894
+ // Time calculations for days, hours, minutes and seconds
895
+ const days = Math.floor(distance / (1000 * 60 * 60 * 24));
896
+ const hours = Math.floor((distance % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));
897
+ const minutes = Math.floor((distance % (1000 * 60 * 60)) / (1000 * 60));
898
+ const seconds = Math.floor((distance % (1000 * 60)) / 1000);
899
+
900
+ // Display the result
901
+ document.getElementById("days").textContent = days.toString().padStart(2, '0');
902
+ document.getElementById("hours").textContent = hours.toString().padStart(2, '0');
903
+ document.getElementById("minutes").textContent = minutes.toString().padStart(2, '0');
904
+ document.getElementById("seconds").textContent = seconds.toString().padStart(2, '0');
905
+
906
+ // If the count down is finished, clear interval
907
+ if (distance < 0) {
908
+ clearInterval(x);
909
+ document.getElementById("days").textContent = "00";
910
+ document.getElementById("hours").textContent = "00";
911
+ document.getElementById("minutes").textContent = "00";
912
+ document.getElementById("seconds").textContent = "00";
913
+ }
914
+ }, 1000);
915
+ }
916
+ </script>
917
+ <p style="border-radius: 8px; text-align: center; font-size: 12px; color: #fff; margin-top: 16px;position: fixed; left: 8px; bottom: 8px; z-index: 10; background: rgba(0, 0, 0, 0.8); padding: 4px 8px;">Made with <img src="https://enzostvs-deepsite.hf.space/logo.svg" alt="DeepSite Logo" style="width: 16px; height: 16px; vertical-align: middle;display:inline-block;margin-right:3px;filter:brightness(0) invert(1);"><a href="https://enzostvs-deepsite.hf.space" style="color: #fff;text-decoration: underline;" target="_blank" >DeepSite</a> - 🧬 <a href="https://enzostvs-deepsite.hf.space?remix=XBotz/e-commerce" style="color: #fff;text-decoration: underline;" target="_blank" >Remix</a></p></body>
918
+ </html>
prompts.txt ADDED
File without changes