offerpk3 commited on
Commit
1320494
·
verified ·
1 Parent(s): 414b6fa

Add 1 files

Browse files
Files changed (1) hide show
  1. index.html +480 -443
index.html CHANGED
@@ -1,4 +1,5 @@
1
- <!DOCTYPE html>
 
2
  <html lang="en">
3
  <head>
4
  <meta charset="UTF-8">
@@ -6,6 +7,7 @@
6
  <title>FraudShield Pro Dashboard</title>
7
  <script src="https://cdn.tailwindcss.com"></script>
8
  <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
 
9
  <style>
10
  @keyframes pulse {
11
  0%, 100% { opacity: 1; }
@@ -47,519 +49,554 @@
47
  width: 30px;
48
  transition: height 0.5s ease;
49
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
50
  </style>
51
  </head>
52
  <body class="bg-gray-50">
53
- <div class="min-h-screen p-6">
54
- <!-- Header -->
55
- <div class="flex flex-col md:flex-row justify-between items-start md:items-center mb-8">
56
- <div>
57
- <h1 class="text-3xl font-bold text-gray-800">FraudShield Pro</h1>
58
- <p class="text-gray-500">Real-time fraud detection dashboard</p>
 
 
 
 
 
59
  </div>
60
- <div class="mt-4 md:mt-0 flex items-center space-x-4">
61
- <div class="relative">
62
- <i class="fas fa-bell absolute left-3 top-3 text-gray-400"></i>
63
- <div class="absolute -top-1 -right-1 h-4 w-4 bg-red-500 rounded-full flex items-center justify-center text-white text-xs">3</div>
64
- <button class="pl-10 pr-4 py-2 bg-white rounded shadow hover:bg-gray-50 focus:outline-none">
65
- Alerts
66
- </button>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
67
  </div>
68
- <div class="flex items-center space-x-2">
69
- <div class="h-8 w-8 rounded-full bg-blue-500 flex items-center justify-center text-white">
70
- <span>AD</span>
 
 
 
 
 
 
 
 
71
  </div>
72
- <span class="font-medium">Admin</span>
73
  </div>
74
  </div>
75
- </div>
76
-
77
- <!-- Stats Cards -->
78
- <div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-6 mb-8">
79
- <div class="bg-white p-6 rounded-xl shadow card-hover">
80
- <div class="flex justify-between items-start">
81
- <div>
82
- <p class="text-gray-500 font-medium">Fraud Attempts</p>
83
- <h2 class="text-3xl font-bold mt-2">87</h2>
84
- <p class="text-sm text-gray-500 mt-1">+12% from last week</p>
85
  </div>
86
- <div class="bg-red-100 p-3 rounded-full">
87
- <i class="fas fa-shield-alt text-red-500 text-xl"></i>
 
88
  </div>
89
  </div>
90
- <div class="mt-4 pt-4 border-t border-gray-100 flex justify-between items-center">
91
- <span class="text-sm text-gray-500">Last 24 hours</span>
92
- <a href="fraud-attempts.html" class="text-blue-600 hover:underline text-sm font-medium">View all</a>
93
- </div>
94
  </div>
 
95
 
96
- <div class="bg-white p-6 rounded-xl shadow card-hover">
97
- <div class="flex justify-between items-start">
98
- <div>
99
- <p class="text-gray-500 font-medium">Active Cards</p>
100
- <h2 class="text-3xl font-bold mt-2">3,542</h2>
101
- <p class="text-sm text-gray-500 mt-1">+5% from last month</p>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
102
  </div>
103
- <div class="bg-blue-100 p-3 rounded-full">
104
- <i class="far fa-credit-card text-blue-500 text-xl"></i>
 
 
 
 
105
  </div>
106
  </div>
107
- <div class="mt-4 pt-4 border-t border-gray-100 flex justify-between items-center">
108
- <span class="text-sm text-gray-500">Monitored</span>
109
- <a href="active-cards.html" class="text-blue-600 hover:underline text-sm font-medium">Manage</a>
110
- </div>
111
  </div>
112
 
113
- <div class="bg-white p-6 rounded-xl shadow card-hover">
114
- <div class="flex justify-between items-start">
115
- <div>
116
- <p class="text-gray-500 font-medium">Blocked IPs</p>
117
- <h2 class="text-3xl font-bold mt-2">42</h2>
118
- <p class="text-sm text-gray-500 mt-1">+8 new today</p>
 
 
 
 
 
 
119
  </div>
120
- <div class="bg-purple-100 p-3 rounded-full">
121
- <i class="fas fa-ban text-purple-500 text-xl"></i>
 
122
  </div>
123
  </div>
124
- <div class="mt-4 pt-4 border-t border-gray-100 flex justify-between items-center">
125
- <span class="text-sm text-gray-500">Current blacklist</span>
126
- <a href="blocked-ips.html" class="text-blue-600 hover:underline text-sm font-medium">View list</a>
127
- </div>
128
- </div>
129
 
130
- <div class="bg-white p-6 rounded-xl shadow card-hover">
131
- <div class="flex justify-between items-start">
132
- <div>
133
- <p class="text-gray-500 font-medium">Prevented Loss</p>
134
- <h2 class="text-3xl font-bold mt-2">$124K</h2>
135
- <p class="text-sm text-gray-500 mt-1">Potential fraud</p>
 
 
 
 
136
  </div>
137
- <div class="bg-green-100 p-3 rounded-full">
138
- <i class="fas fa-dollar-sign text-green-500 text-xl"></i>
 
139
  </div>
140
  </div>
141
- <div class="mt-4 pt-4 border-t border-gray-100 flex justify-between items-center">
142
- <span class="text-sm text-gray-500">This month</span>
143
- <a href="savings.html" class="text-blue-600 hover:underline text-sm font-medium">Details</a>
144
- </div>
145
- </div>
146
- </div>
147
 
148
- <!-- Main Content Area -->
149
- <div class="grid grid-cols-1 lg:grid-cols-3 gap-6 mb-8">
150
- <!-- Fraud Detection Trend -->
151
- <div class="lg:col-span-2 bg-white p-6 rounded-xl shadow">
152
- <div class="flex justify-between items-center mb-6">
153
- <div>
154
- <h2 class="text-xl font-bold">Fraud Detection Trend</h2>
155
- <p class="text-gray-500">Last 30 days activity</p>
 
 
156
  </div>
157
- <div class="space-x-2">
158
- <button class="trend-btn px-3 py-1 border rounded-lg text-sm hover:bg-gray-50" data-period="week">Week</button>
159
- <button class="trend-btn px-3 py-1 border rounded-lg text-sm hover:bg-gray-50" data-period="month">Month</button>
160
- <button class="trend-btn active px-3 py-1 border rounded-lg text-sm" data-period="year">Year</button>
161
  </div>
162
  </div>
163
-
164
- <div class="chart-container" id="trendChart">
165
- <!-- Chart will be generated by JavaScript -->
166
- </div>
167
-
168
- <div class="mt-6 flex justify-center space-x-6">
169
- <div class="flex items-center">
170
- <div class="h-3 w-3 rounded-full bg-red-500 mr-2"></div>
171
- <span class="text-sm text-gray-600">High Risk</span>
172
- </div>
173
- <div class="flex items-center">
174
- <div class="h-3 w-3 rounded-full bg-yellow-500 mr-2"></div>
175
- <span class="text-sm text-gray-600">Medium Risk</span>
176
  </div>
177
- <div class="flex items-center">
178
- <div class="h-3 w-3 rounded-full bg-green-500 mr-2"></div>
179
- <span class="text-sm text-gray-600">Low Risk</span>
180
  </div>
181
  </div>
182
  </div>
183
 
184
- <!-- System Status -->
185
- <div class="bg-white p-6 rounded-xl shadow">
186
- <h2 class="text-xl font-bold mb-6">System Status</h2>
187
-
188
- <div class="space-y-4">
189
- <div>
190
- <div class="flex justify-between items-center mb-1">
191
- <span class="font-medium">API Monitoring</span>
192
- <span class="text-green-500 text-sm font-medium">Active</span>
193
  </div>
194
- <div class="w-full bg-gray-200 rounded-full h-2">
195
- <div class="bg-green-500 h-2 rounded-full" style="width: 100%"></div>
 
 
196
  </div>
197
  </div>
198
 
199
- <div>
200
- <div class="flex justify-between items-center mb-1">
201
- <span class="font-medium">Database</span>
202
- <span class="text-green-500 text-sm font-medium">Stable</span>
203
- </div>
204
- <div class="w-full bg-gray-200 rounded-full h-2">
205
- <div class="bg-green-500 h-2 rounded-full" style="width: 95%"></div>
206
- </div>
207
  </div>
208
 
209
- <div>
210
- <div class="flex justify-between items-center mb-1">
211
- <span class="font-medium">Fraud Detection</span>
212
- <span class="text-green-500 text-sm font-medium">Running</span>
213
  </div>
214
- <div class="w-full bg-gray-200 rounded-full h-2">
215
- <div class="bg-green-500 h-2 rounded-full" style="width: 98%"></div>
 
 
 
 
 
216
  </div>
217
  </div>
 
 
 
 
 
218
 
219
- <div>
220
- <div class="flex justify-between items-center mb-1">
221
- <span class="font-medium">Storage</span>
222
- <span class="text-yellow-500 text-sm font-medium">65% used</span>
 
 
 
 
 
223
  </div>
224
- <div class="w-full bg-gray-200 rounded-full h-2">
225
- <div class="bg-yellow-500 h-2 rounded-full" style="width: 65%"></div>
 
 
 
 
 
 
 
226
  </div>
227
- </div>
228
- </div>
229
-
230
- <div class="mt-8">
231
- <h3 class="font-medium mb-3">Recent Alerts</h3>
232
- <div class="space-y-3">
233
- <div class="p-3 rounded-lg bg-red-50 flex items-start">
234
- <div class="mr-3 mt-1">
235
- <i class="fas fa-exclamation-circle text-red-500"></i>
236
  </div>
237
- <div>
238
- <p class="font-medium">High risk transaction</p>
239
- <p class="text-sm text-gray-600">Card ending 7890 from new IP</p>
240
- <p class="text-xs text-gray-500 mt-1">2 minutes ago</p>
241
  </div>
242
  </div>
243
 
244
- <div class="p-3 rounded-lg bg-yellow-50 flex items-start">
245
- <div class="mr-3 mt-1">
246
- <i class="fas fa-exclamation-triangle text-yellow-500"></i>
 
247
  </div>
248
- <div>
249
- <p class="font-medium">Multiple failed logins</p>
250
- <p class="text-sm text-gray-600">From IP 192.168.1.45</p>
251
- <p class="text-xs text-gray-500 mt-1">15 minutes ago</p>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
252
  </div>
253
  </div>
254
  </div>
255
  </div>
256
  </div>
257
- </div>
258
 
259
- <!-- Recent Activity Section -->
260
- <div class="grid grid-cols-1 lg:grid-cols-3 gap-6">
261
- <!-- Recent Fraud Attempts -->
262
- <div class="lg:col-span-2 bg-white p-6 rounded-xl shadow">
263
- <div class="flex justify-between items-center mb-6">
264
- <h2 class="text-xl font-bold">Recent Fraud Attempts</h2>
265
- <div class="flex space-x-2">
266
- <button class="px-3 py-1 border rounded-lg text-sm hover:bg-gray-50">Filter</button>
267
- <button class="px-3 py-1 bg-blue-600 text-white rounded-lg text-sm hover:bg-blue-700">Export</button>
 
 
 
 
 
 
 
 
 
 
268
  </div>
269
- </div>
270
-
271
- <div class="overflow-x-auto">
272
- <table class="min-w-full divide-y divide-gray-200">
273
- <thead class="bg-gray-50">
274
- <tr>
275
- <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">Type</th>
276
- <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">Details</th>
277
- <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">Risk</th>
278
- <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">Time</th>
279
- <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">Action</th>
280
- </tr>
281
- </thead>
282
- <tbody class="bg-white divide-y divide-gray-200">
283
- <tr class="risk-high hover:bg-gray-50">
284
- <td class="px-6 py-4 whitespace-nowrap">
285
- <div class="flex items-center">
286
- <div class="flex-shrink-0 h-10 w-10 bg-red-100 rounded-full flex items-center justify-center">
287
- <i class="fas fa-credit-card text-red-500"></i>
 
 
 
 
288
  </div>
289
- <div class="ml-4">
290
- <div class="text-sm font-medium text-gray-900">Card Fraud</div>
291
- <div class="text-sm text-gray-500">Visa •••• 7890</div>
 
 
 
 
 
 
 
 
 
 
 
292
  </div>
293
- </div>
294
- </td>
295
- <td class="px-6 py-4 whitespace-nowrap">
296
- <div class="text-sm text-gray-900">Multiple countries</div>
297
- <div class="text-sm text-gray-500">IP: 45.67.89.123</div>
298
- </td>
299
- <td class="px-6 py-4 whitespace-nowrap">
300
- <span class="px-2 inline-flex text-xs leading-5 font-semibold rounded-full bg-red-100 text-red-800">High</span>
301
- </td>
302
- <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-500">5 min ago</td>
303
- <td class="px-6 py-4 whitespace-nowrap text-sm font-medium">
304
- <a href="#" class="text-blue-600 hover:text-blue-900">Block</a>
305
- </td>
306
- </tr>
307
- <tr class="risk-medium hover:bg-gray-50">
308
- <td class="px-6 py-4 whitespace-nowrap">
309
- <div class="flex items-center">
310
- <div class="flex-shrink-0 h-10 w-10 bg-yellow-100 rounded-full flex items-center justify-center">
311
- <i class="fas fa-user text-yellow-500"></i>
312
  </div>
313
- <div class="ml-4">
314
- <div class="text-sm font-medium text-gray-900">Account Takeover</div>
315
- <div class="text-sm text-gray-500">User: johndoe</div>
 
 
 
 
 
 
 
 
 
 
 
316
  </div>
317
- </div>
318
- </td>
319
- <td class="px-6 py-4 whitespace-nowrap">
320
- <div class="text-sm text-gray-900">Multiple failed logins</div>
321
- <div class="text-sm text-gray-500">IP: 192.168.1.45</div>
322
- </td>
323
- <td class="px-6 py-4 whitespace-nowrap">
324
- <span class="px-2 inline-flex text-xs leading-5 font-semibold rounded-full bg-yellow-100 text-yellow-800">Medium</span>
325
- </td>
326
- <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-500">12 min ago</td>
327
- <td class="px-6 py-4 whitespace-nowrap text-sm font-medium">
328
- <a href="#" class="text-blue-600 hover:text-blue-900">Review</a>
329
- </td>
330
- </tr>
331
- <tr class="risk-low hover:bg-gray-50">
332
- <td class="px-6 py-4 whitespace-nowrap">
333
- <div class="flex items-center">
334
- <div class="flex-shrink-0 h-10 w-10 bg-green-100 rounded-full flex items-center justify-center">
335
- <i class="fas fa-globe text-green-500"></i>
336
  </div>
337
- <div class="ml-4">
338
- <div class="text-sm font-medium text-gray-900">Proxy Detected</div>
339
- <div class="text-sm text-gray-500">New IP location</div>
 
 
 
 
 
 
 
 
 
 
 
340
  </div>
341
- </div>
342
- </td>
343
- <td class="px-6 py-4 whitespace-nowrap">
344
- <div class="text-sm text-gray-900">VPN/proxy usage</div>
345
- <div class="text-sm text-gray-500">IP: 87.65.43.21</div>
346
- </td>
347
- <td class="px-6 py-4 whitespace-nowrap">
348
- <span class="px-2 inline-flex text-xs leading-5 font-semibold rounded-full bg-green-100 text-green-800">Low</span>
349
- </td>
350
- <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-500">25 min ago</td>
351
- <td class="px-6 py-4 whitespace-nowrap text-sm font-medium">
352
- <a href="#" class="text-blue-600 hover:text-blue-900">Monitor</a>
353
- </td>
354
- </tr>
355
- <tr class="risk-high hover:bg-gray-50">
356
- <td class="px-6 py-4 whitespace-nowrap">
357
- <div class="flex items-center">
358
- <div class="flex-shrink-0 h-10 w-10 bg-red-100 rounded-full flex items-center justify-center">
359
- <i class="fas fa-user-plus text-red-500"></i>
360
  </div>
361
- <div class="ml-4">
362
- <div class="text-sm font-medium text-gray-900">Fake Account</div>
363
- <div class="text-sm text-gray-500">Suspicious registration</div>
 
 
 
 
 
 
 
 
 
 
 
364
  </div>
365
- </div>
366
- </td>
367
- <td class="px-6 py-4 whitespace-nowrap">
368
- <div class="text-sm text-gray-900">Fake details detected</div>
369
- <div class="text-sm text-gray-500">IP: 123.45.67.89</div>
370
- </td>
371
- <td class="px-6 py-4 whitespace-nowrap">
372
- <span class="px-2 inline-flex text-xs leading-5 font-semibold rounded-full bg-red-100 text-red-800">High</span>
373
- </td>
374
- <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-500">42 min ago</td>
375
- <td class="px-6 py-4 whitespace-nowrap text-sm font-medium">
376
- <a href="#" class="text-blue-600 hover:text-blue-900">Block</a>
377
- </td>
378
- </tr>
379
- </tbody>
380
- </table>
381
- </div>
382
-
383
- <div class="mt-4 flex justify-between items-center">
384
- <span class="text-sm text-gray-500">Showing 4 of 87 attempts</span>
385
- <a href="all-attempts.html" class="inline-flex items-center px-4 py-2 border border-gray-300 rounded-md shadow-sm text-sm font-medium text-gray-700 bg-white hover:bg-gray-50 focus:outline-none">
386
- View All Attempts
387
- </a>
388
- </div>
389
- </div>
390
-
391
- <!-- Quick Actions & Recent Users -->
392
- <div class="bg-white p-6 rounded-xl shadow">
393
- <h2 class="text-xl font-bold mb-6">Quick Actions</h2>
394
-
395
- <div class="grid grid-cols-2 gap-4 mb-8">
396
- <button class="p-3 bg-blue-50 rounded-lg flex flex-col items-center justify-center hover:bg-blue-100 transition">
397
- <div class="h-10 w-10 bg-blue-100 rounded-full flex items-center justify-center mb-2">
398
- <i class="fas fa-ban text-blue-500"></i>
399
- </div>
400
- <span class="text-sm font-medium text-center">Block IP</span>
401
- </button>
402
- <button class="p-3 bg-purple-50 rounded-lg flex flex-col items-center justify-center hover:bg-purple-100 transition">
403
- <div class="h-10 w-10 bg-purple-100 rounded-full flex items-center justify-center mb-2">
404
- <i class="fas fa-user-shield text-purple-500"></i>
405
- </div>
406
- <span class="text-sm font-medium text-center">Add Rule</span>
407
- </button>
408
- <button class="p-3 bg-green-50 rounded-lg flex flex-col items-center justify-center hover:bg-green-100 transition">
409
- <div class="h-10 w-10 bg-green-100 rounded-full flex items-center justify-center mb-2">
410
- <i class="fas fa-file-export text-green-500"></i>
411
- </div>
412
- <span class="text-sm font-medium text-center">Export Data</span>
413
- </button>
414
- <button class="p-3 bg-yellow-50 rounded-lg flex flex-col items-center justify-center hover:bg-yellow-100 transition">
415
- <div class="h-10 w-10 bg-yellow-100 rounded-full flex items-center justify-center mb-2">
416
- <i class="fas fa-cog text-yellow-500"></i>
417
- </div>
418
- <span class="text-sm font-medium text-center">Settings</span>
419
- </button>
420
- </div>
421
-
422
- <h2 class="text-xl font-bold mb-6">Recent Users</h2>
423
-
424
- <div class="space-y-4">
425
- <div class="flex items-center p-3 hover:bg-gray-50 rounded-lg transition">
426
- <div class="h-10 w-10 rounded-full bg-blue-100 flex items-center justify-center mr-3">
427
- <span class="text-blue-600 font-medium">JD</span>
428
- </div>
429
- <div class="flex-1">
430
- <p class="font-medium">John Doe</p>
431
- <p class="text-sm text-gray-500">Admin</p>
432
- </div>
433
- <span class="text-green-500 text-sm font-medium">Active</span>
434
- </div>
435
-
436
- <div class="flex items-center p-3 hover:bg-gray-50 rounded-lg transition">
437
- <div class="h-10 w-10 rounded-full bg-purple-100 flex items-center justify-center mr-3">
438
- <span class="text-purple-600 font-medium">AS</span>
439
- </div>
440
- <div class="flex-1">
441
- <p class="font-medium">Alice Smith</p>
442
- <p class="text-sm text-gray-500">Analyst</p>
443
- </div>
444
- <span class="text-green-500 text-sm font-medium">Active</span>
445
- </div>
446
-
447
- <div class="flex items-center p-3 hover:bg-gray-50 rounded-lg transition">
448
- <div class="h-10 w-10 rounded-full bg-yellow-100 flex items-center justify-center mr-3">
449
- <span class="text-yellow-600 font-medium">RJ</span>
450
- </div>
451
- <div class="flex-1">
452
- <p class="font-medium">Robert Johnson</p>
453
- <p class="text-sm text-gray-500">Operator</p>
454
- </div>
455
- <span class="text-yellow-500 text-sm font-medium">Pending</span>
456
  </div>
457
 
458
- <div class="flex items-center p-3 hover:bg-gray-50 rounded-lg transition">
459
- <div class="h-10 w-10 rounded-full bg-red-100 flex items-center justify-center mr-3">
460
- <span class="text-red-600 font-medium">MB</span>
 
 
461
  </div>
462
- <div class="flex-1">
463
- <p class="font-medium">Maria Brown</p>
464
- <p class="text-sm text-gray-500">Operator</p>
465
- </div>
466
- <span class="text-red-500 text-sm font-medium">Blocked</span>
467
  </div>
468
  </div>
469
-
470
- <div class="mt-4">
471
- <a href="all-users.html" class="inline-flex items-center px-4 py-2 border border-gray-300 rounded-md shadow-sm text-sm font-medium text-gray-700 bg-white hover:bg-gray-50 focus:outline-none">
472
- View All Users
473
- </a>
474
- </div>
475
- </div>
476
- </div>
477
- </div>
478
 
479
- <script>
480
- // Trend buttons functionality
481
- const buttons = document.querySelectorAll('.trend-btn');
482
- const trendChart = document.getElementById('trendChart');
483
-
484
- // Generate random data for the chart
485
- function generateChartData(period) {
486
- let data = [];
487
- let count = period === 'week' ? 7 : period === 'month' ? 30 : 12;
488
-
489
- for (let i = 0; i < count; i++) {
490
- data.push({
491
- high: Math.floor(Math.random() * 20) + 5,
492
- medium: Math.floor(Math.random() * 30) + 10,
493
- low: Math.floor(Math.random() * 50) + 20,
494
- label: period === 'year' ? `Month ${i+1}` : `Day ${i+1}`
495
- });
496
- }
497
-
498
- return data;
499
- }
500
-
501
- // Render chart function
502
- function renderChart(period) {
503
- const data = generateChartData(period);
504
- const maxValue = Math.max(...data.map(d => d.high + d.medium + d.low));
505
- const barWidth = 100 / data.length;
506
-
507
- let chartHTML = '';
508
-
509
- // Create bars
510
- data.forEach((item, index) => {
511
- const total = item.high + item.medium + item.low;
512
- const barHeight = (total / maxValue) * 100;
513
-
514
- const highHeight = (item.high / total) * barHeight;
515
- const mediumHeight = (item.medium / total) * barHeight;
516
- const lowHeight = (item.low / total) * barHeight;
517
-
518
- chartHTML += `
519
- <div class="chart-bar" style="left: ${index * barWidth}%; width: ${barWidth - 2}%">
520
- <div class="absolute bottom-0 w-full bg-green-500" style="height: ${lowHeight}%"></div>
521
- <div class="absolute bottom-0 w-full bg-yellow-500" style="height: ${mediumHeight}%; bottom: ${lowHeight}%"></div>
522
- <div class="absolute bottom-0 w-full bg-red-500" style="height: ${highHeight}%; bottom: ${lowHeight + mediumHeight}%"></div>
523
- <div class="absolute -bottom-6 w-full text-center text-xs text-gray-500">${item.label}</div>
524
  </div>
525
- `;
526
- });
527
-
528
- trendChart.innerHTML = chartHTML;
529
- }
530
-
531
- // Initialize chart with month data
532
- renderChart('year');
533
-
534
- // Add event listeners to buttons
535
- buttons.forEach(btn => {
536
- btn.addEventListener('click', () => {
537
- const period = btn.getAttribute('data-period');
538
- buttons.forEach(b => b.classList.remove('bg-blue-600', 'text-white', 'shadow-md'));
539
- btn.classList.add('bg-blue-600', 'text-white', 'shadow-md');
540
- renderChart(period);
541
- });
542
- });
543
-
544
- // Simulate real-time updates
545
- setInterval(() => {
546
- // Find a random row in the table to update
547
- const rows = document.querySelectorAll('tbody tr');
548
- if (rows.length > 0) {
549
- const randomRow = rows[Math.floor(Math.random() * rows.length)];
550
- const timeCell = randomRow.querySelector('td:nth-child(4)');
551
- if (timeCell) {
552
- // Update the time to "just now" and add pulse animation
553
- timeCell.textContent = 'just now';
554
- timeCell.classList.add('pulse-animation');
555
 
556
- // Remove animation after 2 seconds
557
- setTimeout(() => {
558
- timeCell.classList.remove('pulse-animation');
559
- }, 2000);
560
- }
561
- }
562
- }, 5000);
563
- </script>
564
- <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=offerpk3/bigwhale" style="color: #fff;text-decoration: underline;" target="_blank" >Remix</a></p></body>
565
- </html>
 
1
+
2
+ </h<!DOCTYPE html>
3
  <html lang="en">
4
  <head>
5
  <meta charset="UTF-8">
 
7
  <title>FraudShield Pro Dashboard</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
+ <script src="https://cdn.jsdelivr.net/npm/chart.js"></script>
11
  <style>
12
  @keyframes pulse {
13
  0%, 100% { opacity: 1; }
 
49
  width: 30px;
50
  transition: height 0.5s ease;
51
  }
52
+ .glow-red {
53
+ box-shadow: 0 0 10px rgba(220, 38, 38, 0.7);
54
+ }
55
+ .glow-yellow {
56
+ box-shadow: 0 0 10px rgba(234, 179, 8, 0.7);
57
+ }
58
+ .glow-blue {
59
+ box-shadow: 0 0 10px rgba(59, 130, 246, 0.7);
60
+ }
61
+ .notification-badge {
62
+ position: absolute;
63
+ top: -5px;
64
+ right: -5px;
65
+ width: 18px;
66
+ height: 18px;
67
+ background-color: #ef4444;
68
+ color: white;
69
+ border-radius: 50%;
70
+ display: flex;
71
+ align-items: center;
72
+ justify-content: center;
73
+ font-size: 10px;
74
+ font-weight: bold;
75
+ }
76
+ .sidebar {
77
+ transition: all 0.3s ease;
78
+ }
79
+ .sidebar-collapsed {
80
+ width: 70px;
81
+ }
82
+ .sidebar-expanded {
83
+ width: 250px;
84
+ }
85
+ .main-content {
86
+ transition: margin-left 0.3s ease;
87
+ }
88
+ .dark-mode {
89
+ background-color: #1a202c;
90
+ color: #f7fafc;
91
+ }
92
+ .dark-card {
93
+ background-color: #2d3748;
94
+ color: #f7fafc;
95
+ border-color: #4a5568;
96
+ }
97
+ .dark-text {
98
+ color: #f7fafc;
99
+ }
100
+ .dark-border {
101
+ border-color: #4a5568;
102
+ }
103
+ .dark-hover:hover {
104
+ background-color: #4a5568;
105
+ }
106
  </style>
107
  </head>
108
  <body class="bg-gray-50">
109
+ <div class="flex min-h-screen">
110
+ <!-- Sidebar -->
111
+ <div class="sidebar sidebar-expanded bg-blue-800 text-white flex flex-col">
112
+ <div class="p-4 flex items-center justify-between border-b border-blue-700">
113
+ <div class="flex items-center">
114
+ <i class="fas fa-shield-alt text-2xl mr-3 text-blue-300"></i>
115
+ <span class="font-bold text-xl">FraudShield</span>
116
+ </div>
117
+ <button id="sidebarToggle" class="text-blue-200 hover:text-white">
118
+ <i class="fas fa-bars"></i>
119
+ </button>
120
  </div>
121
+ <div class="flex-1 overflow-y-auto py-4">
122
+ <div class="px-4 space-y-1">
123
+ <a href="#" class="flex items-center px-3 py-2 rounded-lg bg-blue-700 text-white">
124
+ <i class="fas fa-tachometer-alt mr-3"></i>
125
+ <span>Dashboard</span>
126
+ </a>
127
+ <a href="#" class="flex items-center px-3 py-2 rounded-lg hover:bg-blue-700 text-blue-100 hover:text-white">
128
+ <i class="fas fa-exclamation-triangle mr-3"></i>
129
+ <span>Alerts</span>
130
+ <div class="notification-badge">3</div>
131
+ </a>
132
+ <a href="#" class="flex items-center px-3 py-2 rounded-lg hover:bg-blue-700 text-blue-100 hover:text-white">
133
+ <i class="fas fa-credit-card mr-3"></i>
134
+ <span>Cards</span>
135
+ </a>
136
+ <a href="#" class="flex items-center px-3 py-2 rounded-lg hover:bg-blue-700 text-blue-100 hover:text-white">
137
+ <i class="fas fa-users mr-3"></i>
138
+ <span>Users</span>
139
+ </a>
140
+ <a href="#" class="flex items-center px-3 py-2 rounded-lg hover:bg-blue-700 text-blue-100 hover:text-white">
141
+ <i class="fas fa-ban mr-3"></i>
142
+ <span>Blocklist</span>
143
+ </a>
144
+ <a href="#" class="flex items-center px-3 py-2 rounded-lg hover:bg-blue-700 text-blue-100 hover:text-white">
145
+ <i class="fas fa-chart-line mr-3"></i>
146
+ <span>Analytics</span>
147
+ </a>
148
+ <a href="#" class="flex items-center px-3 py-2 rounded-lg hover:bg-blue-700 text-blue-100 hover:text-white">
149
+ <i class="fas fa-cog mr-3"></i>
150
+ <span>Settings</span>
151
+ </a>
152
  </div>
153
+ <div class="px-4 mt-8">
154
+ <div class="bg-blue-900 rounded-lg p-4">
155
+ <div class="flex items-center">
156
+ <div class="h-10 w-10 rounded-full bg-blue-700 flex items-center justify-center mr-3">
157
+ <i class="fas fa-lightbulb text-blue-300"></i>
158
+ </div>
159
+ <div>
160
+ <p class="font-medium">Pro Tip</p>
161
+ <p class="text-xs text-blue-200">Review high-risk alerts within 15 minutes</p>
162
+ </div>
163
+ </div>
164
  </div>
 
165
  </div>
166
  </div>
167
+ <div class="p-4 border-t border-blue-700">
168
+ <div class="flex items-center">
169
+ <div class="h-10 w-10 rounded-full bg-blue-600 flex items-center justify-center mr-3">
170
+ <span class="font-medium">AD</span>
 
 
 
 
 
 
171
  </div>
172
+ <div>
173
+ <p class="font-medium">Admin</p>
174
+ <p class="text-xs text-blue-200">Super Admin</p>
175
  </div>
176
  </div>
 
 
 
 
177
  </div>
178
+ </div>
179
 
180
+ <!-- Main Content -->
181
+ <div class="main-content flex-1 p-6 ml-0">
182
+ <!-- Header -->
183
+ <div class="flex flex-col md:flex-row justify-between items-start md:items-center mb-8">
184
+ <div>
185
+ <h1 class="text-3xl font-bold text-gray-800 dark:text-white">FraudShield Pro</h1>
186
+ <p class="text-gray-500 dark:text-gray-300">Real-time fraud detection dashboard</p>
187
+ </div>
188
+ <div class="mt-4 md:mt-0 flex items-center space-x-4">
189
+ <button id="darkModeToggle" class="p-2 rounded-full bg-white dark:bg-gray-700 shadow hover:bg-gray-100 dark:hover:bg-gray-600">
190
+ <i class="fas fa-moon dark:hidden"></i>
191
+ <i class="fas fa-sun hidden dark:block text-yellow-300"></i>
192
+ </button>
193
+ <div class="relative">
194
+ <div class="relative">
195
+ <i class="fas fa-bell absolute left-3 top-3 text-gray-400 dark:text-gray-300"></i>
196
+ <div class="absolute -top-1 -right-1 h-4 w-4 bg-red-500 rounded-full flex items-center justify-center text-white text-xs">3</div>
197
+ <button class="pl-10 pr-4 py-2 bg-white dark:bg-gray-700 rounded shadow hover:bg-gray-50 dark:hover:bg-gray-600 focus:outline-none">
198
+ Alerts
199
+ </button>
200
+ </div>
201
  </div>
202
+ <div class="flex items-center space-x-2">
203
+ <div class="h-8 w-8 rounded-full bg-blue-500 flex items-center justify-center text-white">
204
+ <span>AD</span>
205
+ </div>
206
+ <span class="font-medium dark:text-white">Admin</span>
207
+ <i class="fas fa-chevron-down text-gray-400 dark:text-gray-300"></i>
208
  </div>
209
  </div>
 
 
 
 
210
  </div>
211
 
212
+ <!-- Stats Cards -->
213
+ <div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-4 gap-6 mb-8">
214
+ <div class="bg-white dark:bg-gray-700 p-6 rounded-xl shadow card-hover glow-red">
215
+ <div class="flex justify-between items-start">
216
+ <div>
217
+ <p class="text-gray-500 dark:text-gray-300 font-medium">Fraud Attempts</p>
218
+ <h2 class="text-3xl font-bold mt-2 dark:text-white">87</h2>
219
+ <p class="text-sm text-gray-500 dark:text-gray-400 mt-1">+12% from last week</p>
220
+ </div>
221
+ <div class="bg-red-100 dark:bg-red-900 p-3 rounded-full">
222
+ <i class="fas fa-shield-alt text-red-500 dark:text-red-300 text-xl"></i>
223
+ </div>
224
  </div>
225
+ <div class="mt-4 pt-4 border-t border-gray-100 dark:border-gray-600 flex justify-between items-center">
226
+ <span class="text-sm text-gray-500 dark:text-gray-400">Last 24 hours</span>
227
+ <a href="fraud-attempts.html" class="text-blue-600 dark:text-blue-400 hover:underline text-sm font-medium">View all</a>
228
  </div>
229
  </div>
 
 
 
 
 
230
 
231
+ <div class="bg-white dark:bg-gray-700 p-6 rounded-xl shadow card-hover glow-blue">
232
+ <div class="flex justify-between items-start">
233
+ <div>
234
+ <p class="text-gray-500 dark:text-gray-300 font-medium">Active Cards</p>
235
+ <h2 class="text-3xl font-bold mt-2 dark:text-white">3,542</h2>
236
+ <p class="text-sm text-gray-500 dark:text-gray-400 mt-1">+5% from last month</p>
237
+ </div>
238
+ <div class="bg-blue-100 dark:bg-blue-900 p-3 rounded-full">
239
+ <i class="far fa-credit-card text-blue-500 dark:text-blue-300 text-xl"></i>
240
+ </div>
241
  </div>
242
+ <div class="mt-4 pt-4 border-t border-gray-100 dark:border-gray-600 flex justify-between items-center">
243
+ <span class="text-sm text-gray-500 dark:text-gray-400">Monitored</span>
244
+ <a href="active-cards.html" class="text-blue-600 dark:text-blue-400 hover:underline text-sm font-medium">Manage</a>
245
  </div>
246
  </div>
 
 
 
 
 
 
247
 
248
+ <div class="bg-white dark:bg-gray-700 p-6 rounded-xl shadow card-hover">
249
+ <div class="flex justify-between items-start">
250
+ <div>
251
+ <p class="text-gray-500 dark:text-gray-300 font-medium">Blocked IPs</p>
252
+ <h2 class="text-3xl font-bold mt-2 dark:text-white">42</h2>
253
+ <p class="text-sm text-gray-500 dark:text-gray-400 mt-1">+8 new today</p>
254
+ </div>
255
+ <div class="bg-purple-100 dark:bg-purple-900 p-3 rounded-full">
256
+ <i class="fas fa-ban text-purple-500 dark:text-purple-300 text-xl"></i>
257
+ </div>
258
  </div>
259
+ <div class="mt-4 pt-4 border-t border-gray-100 dark:border-gray-600 flex justify-between items-center">
260
+ <span class="text-sm text-gray-500 dark:text-gray-400">Current blacklist</span>
261
+ <a href="blocked-ips.html" class="text-blue-600 dark:text-blue-400 hover:underline text-sm font-medium">View list</a>
 
262
  </div>
263
  </div>
264
+
265
+ <div class="bg-white dark:bg-gray-700 p-6 rounded-xl shadow card-hover glow-yellow">
266
+ <div class="flex justify-between items-start">
267
+ <div>
268
+ <p class="text-gray-500 dark:text-gray-300 font-medium">Prevented Loss</p>
269
+ <h2 class="text-3xl font-bold mt-2 dark:text-white">$124K</h2>
270
+ <p class="text-sm text-gray-500 dark:text-gray-400 mt-1">Potential fraud</p>
271
+ </div>
272
+ <div class="bg-green-100 dark:bg-green-900 p-3 rounded-full">
273
+ <i class="fas fa-dollar-sign text-green-500 dark:text-green-300 text-xl"></i>
274
+ </div>
 
 
275
  </div>
276
+ <div class="mt-4 pt-4 border-t border-gray-100 dark:border-gray-600 flex justify-between items-center">
277
+ <span class="text-sm text-gray-500 dark:text-gray-400">This month</span>
278
+ <a href="savings.html" class="text-blue-600 dark:text-blue-400 hover:underline text-sm font-medium">Details</a>
279
  </div>
280
  </div>
281
  </div>
282
 
283
+ <!-- Main Content Area -->
284
+ <div class="grid grid-cols-1 lg:grid-cols-3 gap-6 mb-8">
285
+ <!-- Fraud Detection Trend -->
286
+ <div class="lg:col-span-2 bg-white dark:bg-gray-700 p-6 rounded-xl shadow">
287
+ <div class="flex justify-between items-center mb-6">
288
+ <div>
289
+ <h2 class="text-xl font-bold dark:text-white">Fraud Detection Trend</h2>
290
+ <p class="text-gray-500 dark:text-gray-300">Last 30 days activity</p>
 
291
  </div>
292
+ <div class="space-x-2">
293
+ <button class="trend-btn px-3 py-1 border rounded-lg text-sm hover:bg-gray-50 dark:hover:bg-gray-600" data-period="week">Week</button>
294
+ <button class="trend-btn px-3 py-1 border rounded-lg text-sm hover:bg-gray-50 dark:hover:bg-gray-600" data-period="month">Month</button>
295
+ <button class="trend-btn active px-3 py-1 border rounded-lg text-sm" data-period="year">Year</button>
296
  </div>
297
  </div>
298
 
299
+ <div class="chart-container">
300
+ <canvas id="fraudTrendChart"></canvas>
 
 
 
 
 
 
301
  </div>
302
 
303
+ <div class="mt-6 flex justify-center space-x-6">
304
+ <div class="flex items-center">
305
+ <div class="h-3 w-3 rounded-full bg-red-500 mr-2"></div>
306
+ <span class="text-sm text-gray-600 dark:text-gray-300">High Risk</span>
307
  </div>
308
+ <div class="flex items-center">
309
+ <div class="h-3 w-3 rounded-full bg-yellow-500 mr-2"></div>
310
+ <span class="text-sm text-gray-600 dark:text-gray-300">Medium Risk</span>
311
+ </div>
312
+ <div class="flex items-center">
313
+ <div class="h-3 w-3 rounded-full bg-green-500 mr-2"></div>
314
+ <span class="text-sm text-gray-600 dark:text-gray-300">Low Risk</span>
315
  </div>
316
  </div>
317
+ </div>
318
+
319
+ <!-- System Status -->
320
+ <div class="bg-white dark:bg-gray-700 p-6 rounded-xl shadow">
321
+ <h2 class="text-xl font-bold mb-6 dark:text-white">System Status</h2>
322
 
323
+ <div class="space-y-4">
324
+ <div>
325
+ <div class="flex justify-between items-center mb-1">
326
+ <span class="font-medium dark:text-gray-300">API Monitoring</span>
327
+ <span class="text-green-500 text-sm font-medium">Active</span>
328
+ </div>
329
+ <div class="w-full bg-gray-200 dark:bg-gray-600 rounded-full h-2">
330
+ <div class="bg-green-500 h-2 rounded-full" style="width: 100%"></div>
331
+ </div>
332
  </div>
333
+
334
+ <div>
335
+ <div class="flex justify-between items-center mb-1">
336
+ <span class="font-medium dark:text-gray-300">Database</span>
337
+ <span class="text-green-500 text-sm font-medium">Stable</span>
338
+ </div>
339
+ <div class="w-full bg-gray-200 dark:bg-gray-600 rounded-full h-2">
340
+ <div class="bg-green-500 h-2 rounded-full" style="width: 95%"></div>
341
+ </div>
342
  </div>
343
+
344
+ <div>
345
+ <div class="flex justify-between items-center mb-1">
346
+ <span class="font-medium dark:text-gray-300">Fraud Detection</span>
347
+ <span class="text-green-500 text-sm font-medium">Running</span>
 
 
 
 
348
  </div>
349
+ <div class="w-full bg-gray-200 dark:bg-gray-600 rounded-full h-2">
350
+ <div class="bg-green-500 h-2 rounded-full" style="width: 98%"></div>
 
 
351
  </div>
352
  </div>
353
 
354
+ <div>
355
+ <div class="flex justify-between items-center mb-1">
356
+ <span class="font-medium dark:text-gray-300">Storage</span>
357
+ <span class="text-yellow-500 text-sm font-medium">65% used</span>
358
  </div>
359
+ <div class="w-full bg-gray-200 dark:bg-gray-600 rounded-full h-2">
360
+ <div class="bg-yellow-500 h-2 rounded-full" style="width: 65%"></div>
361
+ </div>
362
+ </div>
363
+ </div>
364
+
365
+ <div class="mt-8">
366
+ <h3 class="font-medium mb-3 dark:text-white">Recent Alerts</h3>
367
+ <div class="space-y-3">
368
+ <div class="p-3 rounded-lg bg-red-50 dark:bg-red-900/30 flex items-start">
369
+ <div class="mr-3 mt-1">
370
+ <i class="fas fa-exclamation-circle text-red-500"></i>
371
+ </div>
372
+ <div>
373
+ <p class="font-medium dark:text-white">High risk transaction</p>
374
+ <p class="text-sm text-gray-600 dark:text-gray-300">Card ending 7890 from new IP</p>
375
+ <p class="text-xs text-gray-500 dark:text-gray-400 mt-1">2 minutes ago</p>
376
+ </div>
377
+ </div>
378
+
379
+ <div class="p-3 rounded-lg bg-yellow-50 dark:bg-yellow-900/30 flex items-start">
380
+ <div class="mr-3 mt-1">
381
+ <i class="fas fa-exclamation-triangle text-yellow-500"></i>
382
+ </div>
383
+ <div>
384
+ <p class="font-medium dark:text-white">Multiple failed logins</p>
385
+ <p class="text-sm text-gray-600 dark:text-gray-300">From IP 192.168.1.45</p>
386
+ <p class="text-xs text-gray-500 dark:text-gray-400 mt-1">15 minutes ago</p>
387
+ </div>
388
+ </div>
389
+
390
+ <div class="p-3 rounded-lg bg-blue-50 dark:bg-blue-900/30 flex items-start">
391
+ <div class="mr-3 mt-1">
392
+ <i class="fas fa-info-circle text-blue-500"></i>
393
+ </div>
394
+ <div>
395
+ <p class="font-medium dark:text-white">New rule triggered</p>
396
+ <p class="text-sm text-gray-600 dark:text-gray-300">Unusual purchase pattern</p>
397
+ <p class="text-xs text-gray-500 dark:text-gray-400 mt-1">28 minutes ago</p>
398
+ </div>
399
  </div>
400
  </div>
401
  </div>
402
  </div>
403
  </div>
 
404
 
405
+ <!-- Recent Activity Section -->
406
+ <div class="grid grid-cols-1 lg:grid-cols-3 gap-6">
407
+ <!-- Recent Fraud Attempts -->
408
+ <div class="lg:col-span-2 bg-white dark:bg-gray-700 p-6 rounded-xl shadow">
409
+ <div class="flex justify-between items-center mb-6">
410
+ <h2 class="text-xl font-bold dark:text-white">Recent Fraud Attempts</h2>
411
+ <div class="flex space-x-2">
412
+ <div class="relative">
413
+ <select class="appearance-none pl-3 pr-8 py-1 border rounded-lg text-sm bg-white dark:bg-gray-600 dark:border-gray-500 dark:text-white">
414
+ <option>All Types</option>
415
+ <option>Card Fraud</option>
416
+ <option>Account Takeover</option>
417
+ <option>Proxy Detected</option>
418
+ </select>
419
+ <i class="fas fa-chevron-down absolute right-3 top-2 text-gray-400 dark:text-gray-300 text-xs"></i>
420
+ </div>
421
+ <button class="px-3 py-1 border rounded-lg text-sm hover:bg-gray-50 dark:hover:bg-gray-600">Filter</button>
422
+ <button class="px-3 py-1 bg-blue-600 text-white rounded-lg text-sm hover:bg-blue-700">Export</button>
423
+ </div>
424
  </div>
425
+
426
+ <div class="overflow-x-auto">
427
+ <table class="min-w-full divide-y divide-gray-200 dark:divide-gray-600">
428
+ <thead class="bg-gray-50 dark:bg-gray-600">
429
+ <tr>
430
+ <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 dark:text-gray-300 uppercase tracking-wider">Type</th>
431
+ <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 dark:text-gray-300 uppercase tracking-wider">Details</th>
432
+ <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 dark:text-gray-300 uppercase tracking-wider">Risk</th>
433
+ <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 dark:text-gray-300 uppercase tracking-wider">Time</th>
434
+ <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 dark:text-gray-300 uppercase tracking-wider">Action</th>
435
+ </tr>
436
+ </thead>
437
+ <tbody class="bg-white dark:bg-gray-700 divide-y divide-gray-200 dark:divide-gray-600">
438
+ <tr class="risk-high hover:bg-gray-50 dark:hover:bg-gray-600">
439
+ <td class="px-6 py-4 whitespace-nowrap">
440
+ <div class="flex items-center">
441
+ <div class="flex-shrink-0 h-10 w-10 bg-red-100 dark:bg-red-900/30 rounded-full flex items-center justify-center">
442
+ <i class="fas fa-credit-card text-red-500"></i>
443
+ </div>
444
+ <div class="ml-4">
445
+ <div class="text-sm font-medium text-gray-900 dark:text-white">Card Fraud</div>
446
+ <div class="text-sm text-gray-500 dark:text-gray-300">Visa •••• 7890</div>
447
+ </div>
448
  </div>
449
+ </td>
450
+ <td class="px-6 py-4 whitespace-nowrap">
451
+ <div class="text-sm text-gray-900 dark:text-white">Multiple countries</div>
452
+ <div class="text-sm text-gray-500 dark:text-gray-300">IP: 45.67.89.123</div>
453
+ </td>
454
+ <td class="px-6 py-4 whitespace-nowrap">
455
+ <span class="px-2 inline-flex text-xs leading-5 font-semibold rounded-full bg-red-100 text-red-800 dark:bg-red-900/30 dark:text-red-300">High</span>
456
+ </td>
457
+ <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-500 dark:text-gray-400">5 min ago</td>
458
+ <td class="px-6 py-4 whitespace-nowrap text-sm font-medium">
459
+ <div class="flex space-x-2">
460
+ <a href="#" class="text-blue-600 hover:text-blue-900 dark:text-blue-400 dark:hover:text-blue-300">Block</a>
461
+ <span class="text-gray-400">|</span>
462
+ <a href="#" class="text-gray-600 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300">Details</a>
463
  </div>
464
+ </td>
465
+ </tr>
466
+ <tr class="risk-medium hover:bg-gray-50 dark:hover:bg-gray-600">
467
+ <td class="px-6 py-4 whitespace-nowrap">
468
+ <div class="flex items-center">
469
+ <div class="flex-shrink-0 h-10 w-10 bg-yellow-100 dark:bg-yellow-900/30 rounded-full flex items-center justify-center">
470
+ <i class="fas fa-user text-yellow-500"></i>
471
+ </div>
472
+ <div class="ml-4">
473
+ <div class="text-sm font-medium text-gray-900 dark:text-white">Account Takeover</div>
474
+ <div class="text-sm text-gray-500 dark:text-gray-300">User: johndoe</div>
475
+ </div>
 
 
 
 
 
 
 
476
  </div>
477
+ </td>
478
+ <td class="px-6 py-4 whitespace-nowrap">
479
+ <div class="text-sm text-gray-900 dark:text-white">Multiple failed logins</div>
480
+ <div class="text-sm text-gray-500 dark:text-gray-300">IP: 192.168.1.45</div>
481
+ </td>
482
+ <td class="px-6 py-4 whitespace-nowrap">
483
+ <span class="px-2 inline-flex text-xs leading-5 font-semibold rounded-full bg-yellow-100 text-yellow-800 dark:bg-yellow-900/30 dark:text-yellow-300">Medium</span>
484
+ </td>
485
+ <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-500 dark:text-gray-400">12 min ago</td>
486
+ <td class="px-6 py-4 whitespace-nowrap text-sm font-medium">
487
+ <div class="flex space-x-2">
488
+ <a href="#" class="text-blue-600 hover:text-blue-900 dark:text-blue-400 dark:hover:text-blue-300">Review</a>
489
+ <span class="text-gray-400">|</span>
490
+ <a href="#" class="text-gray-600 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300">Details</a>
491
  </div>
492
+ </td>
493
+ </tr>
494
+ <tr class="risk-low hover:bg-gray-50 dark:hover:bg-gray-600">
495
+ <td class="px-6 py-4 whitespace-nowrap">
496
+ <div class="flex items-center">
497
+ <div class="flex-shrink-0 h-10 w-10 bg-green-100 dark:bg-green-900/30 rounded-full flex items-center justify-center">
498
+ <i class="fas fa-globe text-green-500"></i>
499
+ </div>
500
+ <div class="ml-4">
501
+ <div class="text-sm font-medium text-gray-900 dark:text-white">Proxy Detected</div>
502
+ <div class="text-sm text-gray-500 dark:text-gray-300">New IP location</div>
503
+ </div>
 
 
 
 
 
 
 
504
  </div>
505
+ </td>
506
+ <td class="px-6 py-4 whitespace-nowrap">
507
+ <div class="text-sm text-gray-900 dark:text-white">VPN/proxy usage</div>
508
+ <div class="text-sm text-gray-500 dark:text-gray-300">IP: 87.65.43.21</div>
509
+ </td>
510
+ <td class="px-6 py-4 whitespace-nowrap">
511
+ <span class="px-2 inline-flex text-xs leading-5 font-semibold rounded-full bg-green-100 text-green-800 dark:bg-green-900/30 dark:text-green-300">Low</span>
512
+ </td>
513
+ <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-500 dark:text-gray-400">25 min ago</td>
514
+ <td class="px-6 py-4 whitespace-nowrap text-sm font-medium">
515
+ <div class="flex space-x-2">
516
+ <a href="#" class="text-blue-600 hover:text-blue-900 dark:text-blue-400 dark:hover:text-blue-300">Monitor</a>
517
+ <span class="text-gray-400">|</span>
518
+ <a href="#" class="text-gray-600 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300">Details</a>
519
  </div>
520
+ </td>
521
+ </tr>
522
+ <tr class="risk-high hover:bg-gray-50 dark:hover:bg-gray-600">
523
+ <td class="px-6 py-4 whitespace-nowrap">
524
+ <div class="flex items-center">
525
+ <div class="flex-shrink-0 h-10 w-10 bg-red-100 dark:bg-red-900/30 rounded-full flex items-center justify-center">
526
+ <i class="fas fa-user-plus text-red-500"></i>
527
+ </div>
528
+ <div class="ml-4">
529
+ <div class="text-sm font-medium text-gray-900 dark:text-white">Fake Account</div>
530
+ <div class="text-sm text-gray-500 dark:text-gray-300">Suspicious registration</div>
531
+ </div>
 
 
 
 
 
 
 
532
  </div>
533
+ </td>
534
+ <td class="px-6 py-4 whitespace-nowrap">
535
+ <div class="text-sm text-gray-900 dark:text-white">Fake details detected</div>
536
+ <div class="text-sm text-gray-500 dark:text-gray-300">IP: 123.45.67.89</div>
537
+ </td>
538
+ <td class="px-6 py-4 whitespace-nowrap">
539
+ <span class="px-2 inline-flex text-xs leading-5 font-semibold rounded-full bg-red-100 text-red-800 dark:bg-red-900/30 dark:text-red-300">High</span>
540
+ </td>
541
+ <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-500 dark:text-gray-400">42 min ago</td>
542
+ <td class="px-6 py-4 whitespace-nowrap text-sm font-medium">
543
+ <div class="flex space-x-2">
544
+ <a href="#" class="text-blue-600 hover:text-blue-900 dark:text-blue-400 dark:hover:text-blue-300">Block</a>
545
+ <span class="text-gray-400">|</span>
546
+ <a href="#" class="text-gray-600 hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-300">Details</a>
547
  </div>
548
+ </td>
549
+ </tr>
550
+ </tbody>
551
+ </table>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
552
  </div>
553
 
554
+ <div class="mt-4 flex justify-between items-center">
555
+ <span class="text-sm text-gray-500 dark:text-gray-400">Showing 4 of 87 attempts</span>
556
+ <div class="flex space-x-2">
557
+ <button class="px-3 py-1 border rounded-lg text-sm hover:bg-gray-50 dark:hover:bg-gray-600">Previous</button>
558
+ <button class="px-3 py-1 bg-blue-600 text-white rounded-lg text-sm hover:bg-blue-700">Next</button>
559
  </div>
 
 
 
 
 
560
  </div>
561
  </div>
 
 
 
 
 
 
 
 
 
562
 
563
+ <!-- Quick Actions & Recent Users -->
564
+ <div class="bg-white dark:bg-gray-700 p-6 rounded-xl shadow">
565
+ <h2 class="text-xl font-bold mb-6 dark:text-white">Quick Actions</h2>
566
+
567
+ <div class="grid grid-cols-2 gap-4 mb-8">
568
+ <button class="p-3 bg-blue-50 dark:bg-blue-900/30 rounded-lg flex flex-col items-center justify-center hover:bg-blue-100 dark:hover:bg-blue-800 transition">
569
+ <div class="h-10 w-10 bg-blue-100 dark:bg-blue-800 rounded-full flex items-center justify-center mb-2">
570
+ <i class="fas fa-ban text-blue-500 dark:text-blue-300"></i>
571
+ </div>
572
+ <span class="text-sm font-medium text-center dark:text-white">Block IP</span>
573
+ </button>
574
+ <button class="p-3 bg-purple-50 dark:bg-purple-900/30 rounded-lg flex flex-col items-center justify-center hover:bg-purple-100 dark:hover:bg-purple-800 transition">
575
+ <div class="h-10 w-10 bg-purple-100 dark:bg-purple-800 rounded-full flex items-center justify-center mb-2">
576
+ <i class="fas fa-user-shield text-purple-500 dark:text-purple-300"></i>
577
+ </div>
578
+ <span class="text-sm font-medium text-center dark:text-white">Add Rule</span>
579
+ </button>
580
+ <button class="p-3 bg-green-50 dark:bg-green-900/30 rounded-lg flex flex-col items-center justify-center hover:bg-green-100 dark:hover:bg-green-800 transition">
581
+ <div class="h-10 w-10 bg-green-100 dark:bg-green-800 rounded-full flex items-center justify-center mb-2">
582
+ <i class="fas fa-file-export text-green-500 dark:text-green-300"></i>
583
+ </div>
584
+ <span class="text-sm font-medium text-center dark:text-white">Export Data</span>
585
+ </button>
586
+ <button class="p-3 bg-yellow-50 dark:bg-yellow-900/30 rounded-lg flex flex-col items-center justify-center hover:bg-yellow-100 dark:hover:bg-yellow-800 transition">
587
+ <div class="h-10 w-10 bg-yellow-100 dark:bg-yellow-800 rounded-full flex items-center justify-center mb-2">
588
+ <i class="fas fa-cog text-yellow-500 dark:text-yellow-300"></i>
589
+ </div>
590
+ <span class="text-sm font-medium text-center dark:text-white">Settings</span>
591
+ </button>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
592
  </div>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
593
 
594
+ <h2 class="text-xl font-bold mb-6 dark:text-white">Recent Users</h2>
595
+
596
+ <div class="space-y-4">
597
+ <div class="flex items-center p-3 hover:bg-gray-50 dark:hover:bg-gray-600 rounded-lg transition">
598
+ <div class="h-10 w-10 rounded-full bg-blue-100 dark:bg-blue-800 flex items-center justify-center mr-3">
599
+ <span class="text-blue-600 dark:text-blue-300 font-medium">JD</span>
600
+ </div>
601
+ <div class="flex-1">
602
+ <p class="font-medium dark:text-white">Johntml>