djs-builder 0.6.401 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,576 @@
1
+ <!DOCTYPE html>
2
+ <html lang="ar" dir="rtl">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title><%= guild.name %> - DJS-Builder</title>
7
+ <link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Noto+Color+Emoji&display=swap" rel="stylesheet">
8
+ <link href="https://cdn.jsdelivr.net/npm/remixicon@3.5.0/fonts/remixicon.css" rel="stylesheet">
9
+ <style>
10
+ :root {
11
+ --bg-primary: #030305;
12
+ --bg-secondary: #0a0a0f;
13
+ --bg-card: #12121a;
14
+ --bg-card-hover: #1a1a25;
15
+ --accent: #5865F2;
16
+ --accent-light: #7289DA;
17
+ --accent-glow: rgba(88, 101, 242, 0.3);
18
+ --purple: #9b59b6;
19
+ --pink: #e91e63;
20
+ --success: #10b981;
21
+ --warning: #f59e0b;
22
+ --danger: #ef4444;
23
+ --text-primary: #ffffff;
24
+ --text-secondary: #94a3b8;
25
+ --text-muted: #64748b;
26
+ --border: rgba(255,255,255,0.06);
27
+ --radius: 16px;
28
+ --radius-sm: 10px;
29
+ }
30
+
31
+ * { margin: 0; padding: 0; box-sizing: border-box; }
32
+ body { font-family: 'Inter', sans-serif; background: var(--bg-primary); color: var(--text-primary); min-height: 100vh; overflow-x: hidden; }
33
+ a { color: inherit; text-decoration: none; }
34
+ ::-webkit-scrollbar { width: 6px; }
35
+ ::-webkit-scrollbar-track { background: transparent; }
36
+ ::-webkit-scrollbar-thumb { background: rgba(255,255,255,0.1); border-radius: 6px; }
37
+ ::-webkit-scrollbar-thumb:hover { background: rgba(255,255,255,0.2); }
38
+
39
+ /* Background Effects */
40
+ .bg-effects { position: fixed; inset: 0; pointer-events: none; overflow: hidden; z-index: 0; }
41
+ .bg-gradient-1 { position: absolute; top: -20%; right: -15%; width: 50%; height: 50%; background: radial-gradient(circle, rgba(88,101,242,0.12) 0%, transparent 60%); filter: blur(80px); }
42
+ .bg-gradient-2 { position: absolute; bottom: -20%; left: -15%; width: 40%; height: 40%; background: radial-gradient(circle, rgba(155,89,182,0.08) 0%, transparent 60%); filter: blur(80px); }
43
+ .bg-grid { position: absolute; inset: 0; background-image: linear-gradient(rgba(255,255,255,0.015) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.015) 1px, transparent 1px); background-size: 50px 50px; }
44
+
45
+ /* Sidebar */
46
+ .sidebar {
47
+ width: 280px;
48
+ height: 100vh;
49
+ position: fixed;
50
+ right: 0;
51
+ top: 0;
52
+ background: rgba(10,10,15,0.95);
53
+ backdrop-filter: blur(20px);
54
+ border-left: 1px solid var(--border);
55
+ display: flex;
56
+ flex-direction: column;
57
+ z-index: 100;
58
+ }
59
+
60
+ .sidebar-header {
61
+ padding: 24px;
62
+ border-bottom: 1px solid var(--border);
63
+ background: rgba(0,0,0,0.2);
64
+ }
65
+ .guild-card {
66
+ display: flex;
67
+ align-items: center;
68
+ gap: 14px;
69
+ }
70
+ .guild-icon-wrapper { position: relative; }
71
+ .guild-icon {
72
+ width: 52px;
73
+ height: 52px;
74
+ border-radius: var(--radius-sm);
75
+ border: 2px solid transparent;
76
+ background: linear-gradient(var(--bg-card), var(--bg-card)) padding-box,
77
+ linear-gradient(135deg, var(--accent), var(--purple)) border-box;
78
+ }
79
+ .guild-icon-placeholder {
80
+ width: 52px;
81
+ height: 52px;
82
+ border-radius: var(--radius-sm);
83
+ background: linear-gradient(135deg, var(--bg-card-hover), var(--bg-secondary));
84
+ display: flex;
85
+ align-items: center;
86
+ justify-content: center;
87
+ font-size: 22px;
88
+ font-weight: 700;
89
+ color: var(--accent);
90
+ border: 2px solid transparent;
91
+ background: linear-gradient(var(--bg-card), var(--bg-card)) padding-box,
92
+ linear-gradient(135deg, var(--accent), var(--purple)) border-box;
93
+ }
94
+ .guild-status {
95
+ position: absolute;
96
+ bottom: -2px;
97
+ left: -2px;
98
+ width: 16px;
99
+ height: 16px;
100
+ background: var(--success);
101
+ border-radius: 50%;
102
+ border: 3px solid var(--bg-secondary);
103
+ }
104
+ .guild-info { flex: 1; min-width: 0; }
105
+ .guild-name {
106
+ font-size: 16px;
107
+ font-weight: 600;
108
+ white-space: nowrap;
109
+ overflow: hidden;
110
+ text-overflow: ellipsis;
111
+ margin-bottom: 4px;
112
+ }
113
+ .guild-meta { font-size: 12px; color: var(--text-muted); display: flex; align-items: center; gap: 6px; }
114
+ .guild-meta i { font-size: 14px; }
115
+
116
+ /* Navigation */
117
+ .sidebar-nav { flex: 1; padding: 16px; overflow-y: auto; }
118
+ .nav-section { margin-bottom: 24px; }
119
+ .nav-section-title {
120
+ font-size: 10px;
121
+ font-weight: 700;
122
+ color: var(--text-muted);
123
+ text-transform: uppercase;
124
+ letter-spacing: 1px;
125
+ padding: 8px 14px;
126
+ }
127
+ .nav-link {
128
+ display: flex;
129
+ align-items: center;
130
+ gap: 12px;
131
+ padding: 12px 14px;
132
+ border-radius: var(--radius-sm);
133
+ color: var(--text-secondary);
134
+ font-size: 14px;
135
+ font-weight: 500;
136
+ margin-bottom: 4px;
137
+ transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
138
+ position: relative;
139
+ overflow: hidden;
140
+ }
141
+ .nav-link::before {
142
+ content: '';
143
+ position: absolute;
144
+ right: 0;
145
+ top: 50%;
146
+ transform: translateY(-50%);
147
+ width: 3px;
148
+ height: 0;
149
+ background: var(--accent);
150
+ border-radius: 3px;
151
+ transition: height 0.3s;
152
+ }
153
+ .nav-link:hover { background: rgba(255,255,255,0.03); color: var(--text-primary); }
154
+ .nav-link.active { background: rgba(88,101,242,0.15); color: var(--accent); }
155
+ .nav-link.active::before { height: 60%; }
156
+ .nav-link i { font-size: 20px; }
157
+
158
+ /* Footer */
159
+ .sidebar-footer {
160
+ padding: 16px;
161
+ border-top: 1px solid var(--border);
162
+ background: rgba(0,0,0,0.2);
163
+ }
164
+ .back-btn {
165
+ display: flex;
166
+ align-items: center;
167
+ justify-content: center;
168
+ gap: 8px;
169
+ padding: 12px;
170
+ background: rgba(255,255,255,0.02);
171
+ border: 1px solid var(--border);
172
+ border-radius: var(--radius-sm);
173
+ color: var(--text-secondary);
174
+ font-size: 13px;
175
+ font-weight: 500;
176
+ transition: all 0.3s;
177
+ }
178
+ .back-btn:hover { background: rgba(255,255,255,0.05); color: var(--text-primary); border-color: var(--accent); }
179
+ .back-btn i { font-size: 18px; }
180
+
181
+ /* Main Content */
182
+ .main {
183
+ margin-right: 280px;
184
+ padding: 40px;
185
+ min-height: 100vh;
186
+ position: relative;
187
+ z-index: 1;
188
+ }
189
+
190
+ .page-header { margin-bottom: 40px; }
191
+ .page-header h1 {
192
+ font-size: 36px;
193
+ font-weight: 800;
194
+ margin-bottom: 8px;
195
+ background: linear-gradient(135deg, #fff, var(--text-secondary));
196
+ -webkit-background-clip: text;
197
+ -webkit-text-fill-color: transparent;
198
+ }
199
+ .page-header p { color: var(--text-secondary); font-size: 16px; }
200
+
201
+ /* Stats Grid */
202
+ .stats-grid {
203
+ display: grid;
204
+ grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
205
+ gap: 20px;
206
+ margin-bottom: 40px;
207
+ }
208
+
209
+ .stat-card {
210
+ background: linear-gradient(145deg, var(--bg-card), rgba(18,18,26,0.6));
211
+ border: 1px solid var(--border);
212
+ border-radius: var(--radius);
213
+ padding: 28px;
214
+ position: relative;
215
+ overflow: hidden;
216
+ transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
217
+ }
218
+ .stat-card::before {
219
+ content: '';
220
+ position: absolute;
221
+ top: 0;
222
+ right: 0;
223
+ width: 100px;
224
+ height: 100px;
225
+ border-radius: 50%;
226
+ filter: blur(40px);
227
+ opacity: 0.15;
228
+ transition: opacity 0.4s;
229
+ }
230
+ .stat-card:hover { transform: translateY(-6px); border-color: rgba(88,101,242,0.3); box-shadow: 0 20px 50px rgba(0,0,0,0.3); }
231
+ .stat-card:hover::before { opacity: 0.25; }
232
+
233
+ .stat-card.members::before { background: var(--success); }
234
+ .stat-card.levels::before { background: var(--accent); }
235
+ .stat-card.giveaways::before { background: var(--warning); }
236
+
237
+ .stat-icon {
238
+ width: 56px;
239
+ height: 56px;
240
+ border-radius: var(--radius-sm);
241
+ display: flex;
242
+ align-items: center;
243
+ justify-content: center;
244
+ font-size: 26px;
245
+ margin-bottom: 20px;
246
+ }
247
+ .stat-card.members .stat-icon { background: rgba(16,185,129,0.15); color: var(--success); }
248
+ .stat-card.levels .stat-icon { background: rgba(88,101,242,0.15); color: var(--accent); }
249
+ .stat-card.giveaways .stat-icon { background: rgba(245,158,11,0.15); color: var(--warning); }
250
+
251
+ .stat-value {
252
+ font-size: 42px;
253
+ font-weight: 800;
254
+ margin-bottom: 6px;
255
+ background: linear-gradient(135deg, #fff, var(--text-secondary));
256
+ -webkit-background-clip: text;
257
+ -webkit-text-fill-color: transparent;
258
+ }
259
+ .stat-label { font-size: 14px; color: var(--text-muted); }
260
+
261
+ /* Quick Links */
262
+ .section-title {
263
+ font-size: 22px;
264
+ font-weight: 700;
265
+ margin-bottom: 24px;
266
+ display: flex;
267
+ align-items: center;
268
+ gap: 12px;
269
+ }
270
+ .section-title i { color: var(--accent); }
271
+
272
+ .quick-links { display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); gap: 20px; }
273
+
274
+ .quick-link {
275
+ background: linear-gradient(145deg, var(--bg-card), rgba(18,18,26,0.6));
276
+ border: 1px solid var(--border);
277
+ border-radius: var(--radius);
278
+ padding: 28px;
279
+ display: flex;
280
+ align-items: center;
281
+ gap: 20px;
282
+ transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
283
+ position: relative;
284
+ overflow: hidden;
285
+ }
286
+ .quick-link::before {
287
+ content: '';
288
+ position: absolute;
289
+ top: 0;
290
+ left: 0;
291
+ right: 0;
292
+ height: 3px;
293
+ background: linear-gradient(90deg, var(--accent), var(--purple));
294
+ transform: scaleX(0);
295
+ transform-origin: right;
296
+ transition: transform 0.4s;
297
+ }
298
+ .quick-link:hover {
299
+ transform: translateX(-8px);
300
+ border-color: rgba(88,101,242,0.3);
301
+ box-shadow: 0 20px 50px rgba(0,0,0,0.3);
302
+ }
303
+ .quick-link:hover::before { transform: scaleX(1); }
304
+
305
+ .quick-link-icon {
306
+ width: 64px;
307
+ height: 64px;
308
+ border-radius: var(--radius);
309
+ background: linear-gradient(135deg, var(--accent), var(--accent-light));
310
+ display: flex;
311
+ align-items: center;
312
+ justify-content: center;
313
+ font-size: 28px;
314
+ color: white;
315
+ flex-shrink: 0;
316
+ box-shadow: 0 8px 25px var(--accent-glow);
317
+ }
318
+ .quick-link-icon.giveaway { background: linear-gradient(135deg, var(--warning), #d97706); box-shadow: 0 8px 25px rgba(245,158,11,0.3); }
319
+
320
+ .quick-link-content { flex: 1; }
321
+ .quick-link-content h3 { font-size: 18px; font-weight: 600; margin-bottom: 6px; }
322
+ .quick-link-content p { font-size: 14px; color: var(--text-muted); }
323
+
324
+ .quick-link-arrow {
325
+ font-size: 28px;
326
+ color: var(--text-muted);
327
+ transition: all 0.3s;
328
+ }
329
+ .quick-link:hover .quick-link-arrow { color: var(--accent); transform: translateX(-6px); }
330
+
331
+ /* Server Info Card */
332
+ .info-card {
333
+ background: linear-gradient(145deg, var(--bg-card), rgba(18,18,26,0.6));
334
+ border: 1px solid var(--border);
335
+ border-radius: var(--radius);
336
+ padding: 28px;
337
+ margin-bottom: 40px;
338
+ display: flex;
339
+ align-items: center;
340
+ gap: 24px;
341
+ }
342
+ .info-card-icon {
343
+ width: 80px;
344
+ height: 80px;
345
+ border-radius: var(--radius);
346
+ flex-shrink: 0;
347
+ border: 3px solid transparent;
348
+ background: linear-gradient(var(--bg-card), var(--bg-card)) padding-box,
349
+ linear-gradient(135deg, var(--accent), var(--purple)) border-box;
350
+ box-shadow: 0 8px 30px var(--accent-glow);
351
+ }
352
+ .info-card-icon-placeholder {
353
+ width: 80px;
354
+ height: 80px;
355
+ border-radius: var(--radius);
356
+ background: linear-gradient(135deg, var(--bg-card-hover), var(--bg-secondary));
357
+ display: flex;
358
+ align-items: center;
359
+ justify-content: center;
360
+ font-size: 32px;
361
+ font-weight: 700;
362
+ color: var(--accent);
363
+ flex-shrink: 0;
364
+ border: 3px solid transparent;
365
+ background: linear-gradient(var(--bg-card), var(--bg-card)) padding-box,
366
+ linear-gradient(135deg, var(--accent), var(--purple)) border-box;
367
+ }
368
+ .info-card-content { flex: 1; }
369
+ .info-card-content h2 { font-size: 24px; font-weight: 700; margin-bottom: 8px; }
370
+ .info-card-content .info-meta { display: flex; flex-wrap: wrap; gap: 20px; }
371
+ .info-meta-item { display: flex; align-items: center; gap: 8px; color: var(--text-secondary); font-size: 14px; }
372
+ .info-meta-item i { font-size: 18px; color: var(--accent); }
373
+
374
+ .info-card-badge {
375
+ padding: 8px 18px;
376
+ background: rgba(16,185,129,0.15);
377
+ color: var(--success);
378
+ border-radius: 50px;
379
+ font-size: 13px;
380
+ font-weight: 600;
381
+ display: flex;
382
+ align-items: center;
383
+ gap: 8px;
384
+ }
385
+ .info-card-badge .dot { width: 8px; height: 8px; background: var(--success); border-radius: 50%; animation: pulse 2s infinite; }
386
+ @keyframes pulse { 0%, 100% { opacity: 1; } 50% { opacity: 0.5; } }
387
+
388
+ /* Animations */
389
+ @keyframes fadeIn { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }
390
+ .animate-in { animation: fadeIn 0.5s ease forwards; }
391
+
392
+ /* Responsive */
393
+ @media (max-width: 992px) {
394
+ .sidebar { transform: translateX(100%); transition: transform 0.3s; }
395
+ .sidebar.open { transform: translateX(0); }
396
+ .main { margin-right: 0; padding: 20px; padding-top: 70px; }
397
+ .mobile-menu-btn {
398
+ position: fixed;
399
+ top: 16px;
400
+ right: 16px;
401
+ z-index: 101;
402
+ width: 44px;
403
+ height: 44px;
404
+ background: var(--bg-card);
405
+ border: 1px solid var(--border);
406
+ border-radius: var(--radius-sm);
407
+ display: flex;
408
+ align-items: center;
409
+ justify-content: center;
410
+ color: var(--text-primary);
411
+ font-size: 22px;
412
+ cursor: pointer;
413
+ }
414
+ .header h1 { font-size: 24px; }
415
+ .header-actions { flex-wrap: wrap; gap: 8px; }
416
+ .btn { padding: 10px 16px; font-size: 13px; }
417
+ .stats-grid { grid-template-columns: repeat(2, 1fr); gap: 12px; }
418
+ .stat-card { padding: 18px 14px; }
419
+ .stat-value { font-size: 24px; }
420
+ .stat-card i { font-size: 20px; }
421
+ .section-card { padding: 0; }
422
+ .section-header { padding: 16px; }
423
+ .section-header h3 { font-size: 15px; }
424
+ .settings-form { padding: 16px; gap: 16px; }
425
+ .commands-grid { grid-template-columns: 1fr; padding: 14px; gap: 10px; }
426
+ .command-item { padding: 12px; }
427
+ .levels-table { font-size: 13px; }
428
+ .levels-table th, .levels-table td { padding: 12px 10px; }
429
+ .giveaway-list { padding: 14px; }
430
+ .giveaway-item { flex-direction: column; align-items: flex-start; gap: 12px; }
431
+ .giveaway-item .btn { width: 100%; justify-content: center; }
432
+ }
433
+ @media (max-width: 600px) {
434
+ .main { padding: 16px; padding-top: 60px; }
435
+ .header h1 { font-size: 20px; }
436
+ .header-actions { width: 100%; }
437
+ .header-actions .btn { flex: 1; justify-content: center; }
438
+ .stats-grid { grid-template-columns: 1fr 1fr; }
439
+ .stat-label { font-size: 11px; }
440
+ .form-row { flex-direction: column; }
441
+ .commands-grid { grid-template-columns: 1fr; }
442
+ .levels-table { display: block; overflow-x: auto; }
443
+ .modal-content { width: 95%; margin: 12px; padding: 20px; }
444
+ }
445
+ @media (min-width: 993px) { .mobile-menu-btn { display: none; } }
446
+ </style>
447
+ </head>
448
+ <body>
449
+ <!-- Background Effects -->
450
+ <div class="bg-effects">
451
+ <div class="bg-gradient-1"></div>
452
+ <div class="bg-gradient-2"></div>
453
+ <div class="bg-grid"></div>
454
+ </div>
455
+
456
+ <!-- Mobile Menu Button -->
457
+ <button class="mobile-menu-btn" onclick="document.querySelector('.sidebar').classList.toggle('open')">
458
+ <i class="ri-menu-line"></i>
459
+ </button>
460
+
461
+ <!-- Sidebar -->
462
+ <aside class="sidebar">
463
+ <div class="sidebar-header">
464
+ <div class="guild-card">
465
+ <div class="guild-icon-wrapper">
466
+ <% if (guild.icon) { %>
467
+ <img src="https://cdn.discordapp.com/icons/<%= guild.id %>/<%= guild.icon %>.png?size=128" alt="<%= guild.name %>" class="guild-icon">
468
+ <% } else { %>
469
+ <div class="guild-icon-placeholder"><%= guild.name.charAt(0).toUpperCase() %></div>
470
+ <% } %>
471
+ <div class="guild-status"></div>
472
+ </div>
473
+ <div class="guild-info">
474
+ <div class="guild-name"><%= guild.name %></div>
475
+ <div class="guild-meta"><i class="ri-group-line"></i> <%= (guild.memberCount || 0).toLocaleString() %> عضو</div>
476
+ </div>
477
+ </div>
478
+ </div>
479
+
480
+ <nav class="sidebar-nav">
481
+ <div class="nav-section">
482
+ <div class="nav-section-title">الرئيسية</div>
483
+ <a href="/dashboard/<%= guild.id %>" class="nav-link active">
484
+ <i class="ri-dashboard-3-line"></i>
485
+ <span>نظرة عامة</span>
486
+ </a>
487
+ </div>
488
+ <div class="nav-section">
489
+ <div class="nav-section-title">الميزات</div>
490
+ <a href="/dashboard/<%= guild.id %>/levels" class="nav-link">
491
+ <i class="ri-bar-chart-grouped-line"></i>
492
+ <span>نظام المستويات</span>
493
+ </a>
494
+ <a href="/dashboard/<%= guild.id %>/giveaways" class="nav-link">
495
+ <i class="ri-gift-2-line"></i>
496
+ <span>الهدايا</span>
497
+ </a>
498
+ </div>
499
+ </nav>
500
+
501
+ <div class="sidebar-footer">
502
+ <a href="/dashboard" class="back-btn">
503
+ <i class="ri-arrow-right-line"></i>
504
+ <span>العودة للوحة التحكم</span>
505
+ </a>
506
+ </div>
507
+ </aside>
508
+
509
+ <!-- Main Content -->
510
+ <main class="main">
511
+ <div class="page-header animate-in">
512
+ <h1><i class="ri-pie-chart-2-line" style="margin-left: 12px; -webkit-text-fill-color: var(--accent);"></i> نظرة عامة</h1>
513
+ <p>إحصائيات ومعلومات سريعة عن السيرفر</p>
514
+ </div>
515
+
516
+ <!-- Server Info Card -->
517
+ <div class="info-card animate-in" style="animation-delay: 0.1s">
518
+ <% if (guild.icon) { %>
519
+ <img src="https://cdn.discordapp.com/icons/<%= guild.id %>/<%= guild.icon %>.png?size=128" alt="<%= guild.name %>" class="info-card-icon">
520
+ <% } else { %>
521
+ <div class="info-card-icon-placeholder"><%= guild.name.charAt(0).toUpperCase() %></div>
522
+ <% } %>
523
+ <div class="info-card-content">
524
+ <h2><%= guild.name %></h2>
525
+ <div class="info-meta">
526
+ <div class="info-meta-item"><i class="ri-fingerprint-line"></i> <%= guild.id %></div>
527
+ <div class="info-meta-item"><i class="ri-group-line"></i> <%= (guild.memberCount || stats.members || 0).toLocaleString() %> عضو</div>
528
+ </div>
529
+ </div>
530
+ <div class="info-card-badge">
531
+ <span class="dot"></span> متصل
532
+ </div>
533
+ </div>
534
+
535
+ <!-- Stats Grid -->
536
+ <div class="stats-grid">
537
+ <div class="stat-card members animate-in" style="animation-delay: 0.15s">
538
+ <div class="stat-icon"><i class="ri-group-line"></i></div>
539
+ <div class="stat-value"><%= (stats.members || 0).toLocaleString() %></div>
540
+ <div class="stat-label">عضو في السيرفر</div>
541
+ </div>
542
+ <div class="stat-card levels animate-in" style="animation-delay: 0.2s">
543
+ <div class="stat-icon"><i class="ri-bar-chart-grouped-line"></i></div>
544
+ <div class="stat-value"><%= stats.levelUsers || 0 %></div>
545
+ <div class="stat-label">مستخدم في نظام المستويات</div>
546
+ </div>
547
+ <div class="stat-card giveaways animate-in" style="animation-delay: 0.25s">
548
+ <div class="stat-icon"><i class="ri-gift-2-line"></i></div>
549
+ <div class="stat-value"><%= stats.activeGiveaways || 0 %></div>
550
+ <div class="stat-label">هدية نشطة</div>
551
+ </div>
552
+ </div>
553
+
554
+ <!-- Quick Links -->
555
+ <h2 class="section-title"><i class="ri-links-line"></i> روابط سريعة</h2>
556
+ <div class="quick-links">
557
+ <a href="/dashboard/<%= guild.id %>/levels" class="quick-link animate-in" style="animation-delay: 0.3s">
558
+ <div class="quick-link-icon"><i class="ri-bar-chart-grouped-line"></i></div>
559
+ <div class="quick-link-content">
560
+ <h3>قائمة المتصدرين</h3>
561
+ <p>عرض ترتيب الأعضاء بالـ XP والمستوى</p>
562
+ </div>
563
+ <i class="ri-arrow-left-s-line quick-link-arrow"></i>
564
+ </a>
565
+ <a href="/dashboard/<%= guild.id %>/giveaways" class="quick-link animate-in" style="animation-delay: 0.35s">
566
+ <div class="quick-link-icon giveaway"><i class="ri-gift-2-line"></i></div>
567
+ <div class="quick-link-content">
568
+ <h3>إدارة الهدايا</h3>
569
+ <p>تحكم بالهدايا النشطة والمنتهية</p>
570
+ </div>
571
+ <i class="ri-arrow-left-s-line quick-link-arrow"></i>
572
+ </a>
573
+ </div>
574
+ </main>
575
+ </body>
576
+ </html>