zulfiqar001 commited on
Commit
84a03e0
·
verified ·
1 Parent(s): bf83365

Add 2 files

Browse files
Files changed (2) hide show
  1. README.md +6 -4
  2. index.html +1222 -19
README.md CHANGED
@@ -1,10 +1,12 @@
1
  ---
2
- title: Hms
3
- emoji: 🏃
4
  colorFrom: blue
5
- colorTo: pink
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: hms
3
+ emoji: 🐳
4
  colorFrom: blue
5
+ colorTo: blue
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,1222 @@
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
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Skardu View Point - Hotel Management System</title>
7
+ <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
8
+ <link href="https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700&family=Playfair+Display:wght@400;500;600;700&display=swap" rel="stylesheet">
9
+ <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/flatpickr/dist/flatpickr.min.css">
10
+ <style>
11
+ :root {
12
+ --primary: #2c6e49;
13
+ --primary-light: #4c956c;
14
+ --secondary: #d68c45;
15
+ --accent: #fefee3;
16
+ --light: #f8edeb;
17
+ --gray: #94a3b8;
18
+ --dark: #1a1a1a;
19
+ --white: #ffffff;
20
+ --success: #38a169;
21
+ --warning: #dd6b20;
22
+ --danger: #e53e3e;
23
+ }
24
+
25
+ * {
26
+ margin: 0;
27
+ padding: 0;
28
+ box-sizing: border-box;
29
+ }
30
+
31
+ body {
32
+ font-family: 'Montserrat', sans-serif;
33
+ background-color: #f5f5f5;
34
+ color: var(--dark);
35
+ line-height: 1.6;
36
+ }
37
+
38
+ /* Utility Classes */
39
+ .container {
40
+ max-width: 1200px;
41
+ margin: 0 auto;
42
+ padding: 0 20px;
43
+ }
44
+
45
+ .btn {
46
+ display: inline-block;
47
+ padding: 10px 20px;
48
+ border: none;
49
+ border-radius: 5px;
50
+ cursor: pointer;
51
+ font-size: 14px;
52
+ font-weight: 500;
53
+ transition: all 0.3s ease;
54
+ }
55
+
56
+ .btn-primary {
57
+ background-color: var(--primary);
58
+ color: var(--white);
59
+ }
60
+
61
+ .btn-primary:hover {
62
+ background-color: var(--primary-light);
63
+ }
64
+
65
+ .btn-secondary {
66
+ background-color: var(--secondary);
67
+ color: var(--white);
68
+ }
69
+
70
+ .btn-secondary:hover {
71
+ background-color: #e6913e;
72
+ }
73
+
74
+ .btn-outline {
75
+ background-color: transparent;
76
+ border: 1px solid var(--primary);
77
+ color: var(--primary);
78
+ }
79
+
80
+ .btn-outline:hover {
81
+ background-color: var(--primary);
82
+ color: var(--white);
83
+ }
84
+
85
+ .flex {
86
+ display: flex;
87
+ }
88
+
89
+ .flex-between {
90
+ justify-content: space-between;
91
+ }
92
+
93
+ .flex-center {
94
+ align-items: center;
95
+ }
96
+
97
+ /* Header & Navigation */
98
+ header {
99
+ background-color: var(--white);
100
+ box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
101
+ position: fixed;
102
+ width: 100%;
103
+ z-index: 100;
104
+ }
105
+
106
+ .navbar {
107
+ padding: 15px 0;
108
+ }
109
+
110
+ .logo {
111
+ font-family: 'Playfair Display', serif;
112
+ font-size: 24px;
113
+ font-weight: 700;
114
+ color: var(--primary);
115
+ }
116
+
117
+ .logo span {
118
+ color: var(--secondary);
119
+ }
120
+
121
+ .nav-links {
122
+ display: flex;
123
+ gap: 25px;
124
+ }
125
+
126
+ .nav-links a {
127
+ text-decoration: none;
128
+ color: var(--dark);
129
+ font-weight: 500;
130
+ transition: color 0.3s;
131
+ }
132
+
133
+ .nav-links a:hover {
134
+ color: var(--primary);
135
+ }
136
+
137
+ .user-menu {
138
+ display: flex;
139
+ align-items: center;
140
+ gap: 15px;
141
+ }
142
+
143
+ .user-menu .avatar {
144
+ width: 40px;
145
+ height: 40px;
146
+ border-radius: 50%;
147
+ background-color: var(--primary-light);
148
+ color: var(--white);
149
+ display: flex;
150
+ align-items: center;
151
+ justify-content: center;
152
+ font-weight: 600;
153
+ cursor: pointer;
154
+ }
155
+
156
+ .notification-bell {
157
+ position: relative;
158
+ cursor: pointer;
159
+ }
160
+
161
+ .notification-bell .badge {
162
+ position: absolute;
163
+ top: -5px;
164
+ right: -5px;
165
+ background-color: var(--danger);
166
+ color: white;
167
+ border-radius: 50%;
168
+ width: 18px;
169
+ height: 18px;
170
+ font-size: 10px;
171
+ display: flex;
172
+ align-items: center;
173
+ justify-content: center;
174
+ }
175
+
176
+ /* Main Content */
177
+ .main {
178
+ padding-top: 80px;
179
+ min-height: calc(100vh - 150px);
180
+ }
181
+
182
+ /* Dashboard */
183
+ .dashboard {
184
+ display: grid;
185
+ grid-template-columns: 250px 1fr;
186
+ gap: 30px;
187
+ padding: 30px 0;
188
+ }
189
+
190
+ .sidebar {
191
+ background-color: var(--white);
192
+ border-radius: 10px;
193
+ box-shadow: 0 2px 15px rgba(0, 0, 0, 0.05);
194
+ padding: 20px;
195
+ height: fit-content;
196
+ }
197
+
198
+ .sidebar-title {
199
+ font-size: 18px;
200
+ font-weight: 600;
201
+ margin-bottom: 20px;
202
+ padding-bottom: 10px;
203
+ border-bottom: 1px solid #eee;
204
+ color: var(--primary);
205
+ }
206
+
207
+ .sidebar-menu {
208
+ list-style: none;
209
+ }
210
+
211
+ .sidebar-menu li {
212
+ margin-bottom: 10px;
213
+ }
214
+
215
+ .sidebar-menu a {
216
+ display: block;
217
+ padding: 8px 10px;
218
+ color: var(--dark);
219
+ text-decoration: none;
220
+ border-radius: 5px;
221
+ transition: all 0.3s;
222
+ display: flex;
223
+ align-items: center;
224
+ }
225
+
226
+ .sidebar-menu a:hover, .sidebar-menu a.active {
227
+ background-color: rgba(44, 110, 73, 0.1);
228
+ color: var(--primary);
229
+ }
230
+
231
+ .sidebar-menu a i {
232
+ margin-right: 10px;
233
+ width: 20px;
234
+ text-align: center;
235
+ }
236
+
237
+ .dashboard-content {
238
+ background-color: var(--white);
239
+ border-radius: 10px;
240
+ box-shadow: 0 2px 15px rgba(0, 0, 0, 0.05);
241
+ padding: 25px;
242
+ }
243
+
244
+ .dashboard-header {
245
+ display: flex;
246
+ justify-content: space-between;
247
+ align-items: center;
248
+ margin-bottom: 30px;
249
+ }
250
+
251
+ .dashboard-title {
252
+ font-size: 24px;
253
+ font-weight: 600;
254
+ color: var(--primary);
255
+ }
256
+
257
+ .stats-cards {
258
+ display: grid;
259
+ grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
260
+ gap: 20px;
261
+ margin-bottom: 30px;
262
+ }
263
+
264
+ .stat-card {
265
+ background-color: var(--white);
266
+ border-radius: 10px;
267
+ padding: 20px;
268
+ box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
269
+ border-left: 5px solid var(--primary);
270
+ }
271
+
272
+ .stat-card.warning {
273
+ border-left-color: var(--warning);
274
+ }
275
+
276
+ .stat-card.success {
277
+ border-left-color: var(--success);
278
+ }
279
+
280
+ .stat-card.danger {
281
+ border-left-color: var(--danger);
282
+ }
283
+
284
+ .stat-card-title {
285
+ font-size: 14px;
286
+ color: var(--gray);
287
+ margin-bottom: 10px;
288
+ }
289
+
290
+ .stat-card-value {
291
+ font-size: 28px;
292
+ font-weight: 700;
293
+ margin-bottom: 5px;
294
+ }
295
+
296
+ .stat-card-change {
297
+ font-size: 12px;
298
+ display: flex;
299
+ align-items: center;
300
+ }
301
+
302
+ .stat-card-change.up {
303
+ color: var(--success);
304
+ }
305
+
306
+ .stat-card-change.down {
307
+ color: var(--danger);
308
+ }
309
+
310
+ /* Booking Form */
311
+ .booking-form {
312
+ background-color: var(--white);
313
+ border-radius: 10px;
314
+ padding: 25px;
315
+ box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
316
+ margin-bottom: 30px;
317
+ }
318
+
319
+ .form-title {
320
+ font-size: 20px;
321
+ font-weight: 600;
322
+ margin-bottom: 20px;
323
+ color: var(--primary);
324
+ }
325
+
326
+ .form-group {
327
+ margin-bottom: 20px;
328
+ }
329
+
330
+ .form-label {
331
+ display: block;
332
+ margin-bottom: 8px;
333
+ font-weight: 500;
334
+ }
335
+
336
+ .form-control {
337
+ width: 100%;
338
+ padding: 10px 15px;
339
+ border: 1px solid #ddd;
340
+ border-radius: 5px;
341
+ font-size: 14px;
342
+ transition: border-color 0.3s;
343
+ }
344
+
345
+ .form-control:focus {
346
+ border-color: var(--primary);
347
+ outline: none;
348
+ }
349
+
350
+ .form-row {
351
+ display: grid;
352
+ grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
353
+ gap: 20px;
354
+ }
355
+
356
+ /* Rooms Grid */
357
+ .rooms-grid {
358
+ display: grid;
359
+ grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
360
+ gap: 25px;
361
+ }
362
+
363
+ .room-card {
364
+ background-color: var(--white);
365
+ border-radius: 10px;
366
+ overflow: hidden;
367
+ box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
368
+ transition: transform 0.3s, box-shadow 0.3s;
369
+ }
370
+
371
+ .room-card:hover {
372
+ transform: translateY(-5px);
373
+ box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
374
+ }
375
+
376
+ .room-image {
377
+ height: 180px;
378
+ background-color: #eee;
379
+ position: relative;
380
+ }
381
+
382
+ .room-image img {
383
+ width: 100%;
384
+ height: 100%;
385
+ object-fit: cover;
386
+ }
387
+
388
+ .room-badge {
389
+ position: absolute;
390
+ top: 15px;
391
+ right: 15px;
392
+ background-color: rgba(0, 0, 0, 0.7);
393
+ color: white;
394
+ padding: 5px 10px;
395
+ border-radius: 20px;
396
+ font-size: 12px;
397
+ }
398
+
399
+ .room-content {
400
+ padding: 15px;
401
+ }
402
+
403
+ .room-title {
404
+ font-size: 18px;
405
+ font-weight: 600;
406
+ margin-bottom: 5px;
407
+ color: var(--primary);
408
+ }
409
+
410
+ .room-price {
411
+ font-size: 16px;
412
+ font-weight: 700;
413
+ color: var(--secondary);
414
+ margin-bottom: 10px;
415
+ }
416
+
417
+ .room-amenities {
418
+ display: flex;
419
+ flex-wrap: wrap;
420
+ gap: 10px;
421
+ margin-bottom: 15px;
422
+ }
423
+
424
+ .amenity {
425
+ font-size: 12px;
426
+ background-color: var(--light);
427
+ padding: 3px 8px;
428
+ border-radius: 20px;
429
+ display: flex;
430
+ align-items: center;
431
+ }
432
+
433
+ .amenity i {
434
+ margin-right: 5px;
435
+ font-size: 10px;
436
+ }
437
+
438
+ .room-card-footer {
439
+ display: flex;
440
+ justify-content: space-between;
441
+ align-items: center;
442
+ }
443
+
444
+ /* Rooms Table */
445
+ .data-table {
446
+ width: 100%;
447
+ border-collapse: collapse;
448
+ margin-bottom: 20px;
449
+ }
450
+
451
+ .data-table th, .data-table td {
452
+ padding: 12px 15px;
453
+ text-align: left;
454
+ border-bottom: 1px solid #eee;
455
+ }
456
+
457
+ .data-table th {
458
+ background-color: #f9f9f9;
459
+ font-weight: 600;
460
+ color: var(--primary);
461
+ }
462
+
463
+ .data-table tr:hover {
464
+ background-color: #f5f5f5;
465
+ }
466
+
467
+ .status {
468
+ display: inline-block;
469
+ padding: 5px 10px;
470
+ border-radius: 20px;
471
+ font-size: 12px;
472
+ font-weight: 500;
473
+ }
474
+
475
+ .status-available {
476
+ background-color: rgba(56, 161, 105, 0.1);
477
+ color: var(--success);
478
+ }
479
+
480
+ .status-booked {
481
+ background-color: rgba(229, 62, 62, 0.1);
482
+ color: var(--danger);
483
+ }
484
+
485
+ .status-maintenance {
486
+ background-color: rgba(221, 107, 32, 0.1);
487
+ color: var(--warning);
488
+ }
489
+
490
+ .status-cleaning {
491
+ background-color: rgba(99, 102, 241, 0.1);
492
+ color: #6366f1;
493
+ }
494
+
495
+ .table-actions {
496
+ display: flex;
497
+ gap: 10px;
498
+ }
499
+
500
+ .table-actions .btn {
501
+ padding: 5px 10px;
502
+ font-size: 12px;
503
+ }
504
+
505
+ /* Calendar */
506
+ .calendar {
507
+ background-color: var(--white);
508
+ border-radius: 10px;
509
+ box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
510
+ padding: 25px;
511
+ margin-bottom: 30px;
512
+ }
513
+
514
+ .calendar-header {
515
+ display: flex;
516
+ justify-content: space-between;
517
+ align-items: center;
518
+ margin-bottom: 20px;
519
+ }
520
+
521
+ .calendar-title {
522
+ font-size: 18px;
523
+ font-weight: 600;
524
+ color: var(--primary);
525
+ }
526
+
527
+ .calendar-grid {
528
+ display: grid;
529
+ grid-template-columns: repeat(7, 1fr);
530
+ gap: 5px;
531
+ }
532
+
533
+ .calendar-day-header {
534
+ text-align: center;
535
+ font-weight: 600;
536
+ padding: 10px;
537
+ background-color: #f9f9f9;
538
+ color: var(--primary);
539
+ }
540
+
541
+ .calendar-day {
542
+ border: 1px solid #eee;
543
+ padding: 10px;
544
+ min-height: 80px;
545
+ }
546
+
547
+ .day-number {
548
+ font-weight: 600;
549
+ margin-bottom: 5px;
550
+ }
551
+
552
+ .calendar-event {
553
+ background-color: var(--primary-light);
554
+ color: white;
555
+ font-size: 12px;
556
+ padding: 2px 5px;
557
+ border-radius: 3px;
558
+ margin-bottom: 2px;
559
+ cursor: pointer;
560
+ }
561
+
562
+ .calendar-event.booked {
563
+ background-color: var(--secondary);
564
+ }
565
+
566
+ .calendar-event.maintenance {
567
+ background-color: var(--warning);
568
+ }
569
+
570
+ .calendar-event.cleaning {
571
+ background-color: #6366f1;
572
+ }
573
+
574
+ /* Tabs */
575
+ .tabs {
576
+ display: flex;
577
+ border-bottom: 1px solid #ddd;
578
+ margin-bottom: 20px;
579
+ }
580
+
581
+ .tab {
582
+ padding: 10px 20px;
583
+ cursor: pointer;
584
+ border-bottom: 2px solid transparent;
585
+ font-weight: 500;
586
+ transition: all 0.3s;
587
+ }
588
+
589
+ .tab.active {
590
+ border-bottom-color: var(--primary);
591
+ color: var(--primary);
592
+ }
593
+
594
+ .tab-content {
595
+ display: none;
596
+ }
597
+
598
+ .tab-content.active {
599
+ display: block;
600
+ }
601
+
602
+ /* Payment Card */
603
+ .payment-card {
604
+ background-color: var(--white);
605
+ border-radius: 10px;
606
+ padding: 20px;
607
+ box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
608
+ margin-bottom: 20px;
609
+ }
610
+
611
+ .payment-card-header {
612
+ display: flex;
613
+ justify-content: space-between;
614
+ align-items: center;
615
+ margin-bottom: 15px;
616
+ }
617
+
618
+ .payment-card-title {
619
+ font-weight: 600;
620
+ color: var(--primary);
621
+ }
622
+
623
+ .payment-methods {
624
+ display: flex;
625
+ gap: 15px;
626
+ margin-bottom: 20px;
627
+ }
628
+
629
+ .payment-method {
630
+ border: 1px solid #ddd;
631
+ padding: 15px;
632
+ border-radius: 5px;
633
+ cursor: pointer;
634
+ transition: all 0.3s;
635
+ flex: 1;
636
+ }
637
+
638
+ .payment-method:hover, .payment-method.active {
639
+ border-color: var(--primary);
640
+ background-color: rgba(44, 110, 73, 0.05);
641
+ }
642
+
643
+ .payment-method img {
644
+ height: 25px;
645
+ }
646
+
647
+ .card-element {
648
+ border: 1px solid #ddd;
649
+ padding: 15px;
650
+ border-radius: 5px;
651
+ margin-bottom: 20px;
652
+ }
653
+
654
+ /* Invoice */
655
+ .invoice {
656
+ background-color: var(--white);
657
+ border-radius: 10px;
658
+ box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
659
+ padding: 30px;
660
+ margin-bottom: 30px;
661
+ }
662
+
663
+ .invoice-header {
664
+ display: flex;
665
+ justify-content: space-between;
666
+ margin-bottom: 30px;
667
+ }
668
+
669
+ .invoice-logo {
670
+ font-family: 'Playfair Display', serif;
671
+ font-size: 24px;
672
+ font-weight: 700;
673
+ color: var(--primary);
674
+ }
675
+
676
+ .invoice-number {
677
+ text-align: right;
678
+ }
679
+
680
+ .invoice-number small {
681
+ color: var(--gray);
682
+ }
683
+
684
+ .invoice-body {
685
+ margin-bottom: 30px;
686
+ }
687
+
688
+ .invoice-row {
689
+ display: grid;
690
+ grid-template-columns: 1fr 1fr;
691
+ gap: 20px;
692
+ margin-bottom: 20px;
693
+ }
694
+
695
+ .invoice-column h5 {
696
+ font-size: 14px;
697
+ color: var(--gray);
698
+ margin-bottom: 5px;
699
+ }
700
+
701
+ .invoice-table {
702
+ width: 100%;
703
+ border-collapse: collapse;
704
+ margin-bottom: 20px;
705
+ }
706
+
707
+ .invoice-table th {
708
+ text-align: left;
709
+ padding: 10px;
710
+ background-color: #f9f9f9;
711
+ font-weight: 600;
712
+ }
713
+
714
+ .invoice-table td {
715
+ padding: 10px;
716
+ border-bottom: 1px solid #eee;
717
+ }
718
+
719
+ .invoice-table .total-row td {
720
+ font-weight: 600;
721
+ }
722
+
723
+ .invoice-footer {
724
+ border-top: 1px solid #ddd;
725
+ padding-top: 20px;
726
+ text-align: center;
727
+ font-size: 13px;
728
+ color: var(--gray);
729
+ }
730
+
731
+ /* Footer */
732
+ footer {
733
+ background-color: var(--dark);
734
+ color: var(--white);
735
+ padding: 30px 0;
736
+ margin-top: 50px;
737
+ }
738
+
739
+ .footer-content {
740
+ display: grid;
741
+ grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
742
+ gap: 30px;
743
+ }
744
+
745
+ .footer-column h3 {
746
+ font-size: 16px;
747
+ font-weight: 600;
748
+ margin-bottom: 15px;
749
+ color: var(--accent);
750
+ }
751
+
752
+ .footer-links {
753
+ list-style: none;
754
+ }
755
+
756
+ .footer-links li {
757
+ margin-bottom: 10px;
758
+ }
759
+
760
+ .footer-links a {
761
+ color: var(--gray);
762
+ text-decoration: none;
763
+ transition: color 0.3s;
764
+ }
765
+
766
+ .footer-links a:hover {
767
+ color: var(--accent);
768
+ }
769
+
770
+ .footer-bottom {
771
+ text-align: center;
772
+ padding-top: 30px;
773
+ margin-top: 30px;
774
+ border-top: 1px solid rgba(255, 255, 255, 0.1);
775
+ font-size: 14px;
776
+ color: var(--gray);
777
+ }
778
+
779
+ /* Login Page */
780
+ .login-container {
781
+ display: flex;
782
+ justify-content: center;
783
+ align-items: center;
784
+ min-height: 100vh;
785
+ background: linear-gradient(135deg, rgba(44,110,73,0.8), rgba(76,149,108,0.8));
786
+ padding: 20px;
787
+ }
788
+
789
+ .login-card {
790
+ background-color: var(--white);
791
+ border-radius: 10px;
792
+ box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
793
+ width: 100%;
794
+ max-width: 400px;
795
+ padding: 30px;
796
+ }
797
+
798
+ .login-header {
799
+ text-align: center;
800
+ margin-bottom: 30px;
801
+ }
802
+
803
+ .login-title {
804
+ font-size: 24px;
805
+ font-weight: 700;
806
+ color: var(--primary);
807
+ margin-bottom: 5px;
808
+ }
809
+
810
+ .login-subtitle {
811
+ color: var(--gray);
812
+ font-size: 14px;
813
+ }
814
+
815
+ .social-login {
816
+ display: flex;
817
+ justify-content: center;
818
+ gap: 15px;
819
+ margin-bottom: 20px;
820
+ }
821
+
822
+ .social-btn {
823
+ width: 40px;
824
+ height: 40px;
825
+ border-radius: 50%;
826
+ display: flex;
827
+ align-items: center;
828
+ justify-content: center;
829
+ color: white;
830
+ cursor: pointer;
831
+ }
832
+
833
+ .social-btn.google {
834
+ background-color: #DB4437;
835
+ }
836
+
837
+ .social-btn.facebook {
838
+ background-color: #4267B2;
839
+ }
840
+
841
+ .divider {
842
+ display: flex;
843
+ align-items: center;
844
+ margin: 20px 0;
845
+ }
846
+
847
+ .divider-line {
848
+ flex-grow: 1;
849
+ height: 1px;
850
+ background-color: #eee;
851
+ }
852
+
853
+ .divider-text {
854
+ padding: 0 10px;
855
+ color: var(--gray);
856
+ font-size: 14px;
857
+ }
858
+
859
+ .forgot-password {
860
+ text-align: right;
861
+ margin-bottom: 20px;
862
+ }
863
+
864
+ .forgot-password a {
865
+ color: var(--secondary);
866
+ font-size: 13px;
867
+ text-decoration: none;
868
+ }
869
+
870
+ .login-footer {
871
+ text-align: center;
872
+ margin-top: 20px;
873
+ font-size: 14px;
874
+ color: var(--gray);
875
+ }
876
+
877
+ .login-footer a {
878
+ color: var(--primary);
879
+ text-decoration: none;
880
+ font-weight: 500;
881
+ }
882
+
883
+ /* Modal */
884
+ .modal {
885
+ position: fixed;
886
+ top: 0;
887
+ left: 0;
888
+ right: 0;
889
+ bottom: 0;
890
+ background-color: rgba(0, 0, 0, 0.5);
891
+ display: flex;
892
+ justify-content: center;
893
+ align-items: center;
894
+ z-index: 200;
895
+ opacity: 0;
896
+ visibility: hidden;
897
+ transition: all 0.3s;
898
+ }
899
+
900
+ .modal.active {
901
+ opacity: 1;
902
+ visibility: visible;
903
+ }
904
+
905
+ .modal-content {
906
+ background-color: white;
907
+ border-radius: 10px;
908
+ width: 90%;
909
+ max-width: 500px;
910
+ max-height: 90vh;
911
+ overflow-y: auto;
912
+ box-shadow: 0 5px 20px rgba(0, 0, 0, 0.2);
913
+ transform: translateY(20px);
914
+ transition: transform 0.3s;
915
+ }
916
+
917
+ .modal.active .modal-content {
918
+ transform: translateY(0);
919
+ }
920
+
921
+ .modal-header {
922
+ display: flex;
923
+ justify-content: space-between;
924
+ align-items: center;
925
+ padding: 20px;
926
+ border-bottom: 1px solid #eee;
927
+ }
928
+
929
+ .modal-title {
930
+ font-size: 18px;
931
+ font-weight: 600;
932
+ color: var(--primary);
933
+ }
934
+
935
+ .modal-close {
936
+ background: none;
937
+ border: none;
938
+ font-size: 20px;
939
+ cursor: pointer;
940
+ color: var(--gray);
941
+ }
942
+
943
+ .modal-body {
944
+ padding: 20px;
945
+ }
946
+
947
+ .modal-footer {
948
+ padding: 20px;
949
+ border-top: 1px solid #eee;
950
+ display: flex;
951
+ justify-content: flex-end;
952
+ gap: 10px;
953
+ }
954
+
955
+ /* Date Picker */
956
+ .date-range-picker {
957
+ display: flex;
958
+ gap: 10px;
959
+ }
960
+
961
+ .date-input {
962
+ flex: 1;
963
+ position: relative;
964
+ }
965
+
966
+ .date-input i {
967
+ position: absolute;
968
+ right: 10px;
969
+ top: 50%;
970
+ transform: translateY(-50%);
971
+ color: var(--gray);
972
+ }
973
+
974
+ /* Guest Dashboard */
975
+ .guest-dashboard {
976
+ display: grid;
977
+ grid-template-columns: 1fr;
978
+ gap: 30px;
979
+ }
980
+
981
+ .guest-greeting {
982
+ background: linear-gradient(135deg, var(--primary), var(--primary-light));
983
+ color: white;
984
+ padding: 30px;
985
+ border-radius: 10px;
986
+ margin-bottom: 30px;
987
+ }
988
+
989
+ .guest-greeting h2 {
990
+ font-size: 24px;
991
+ margin-bottom: 10px;
992
+ }
993
+
994
+ .guest-stats {
995
+ display: grid;
996
+ grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
997
+ gap: 15px;
998
+ }
999
+
1000
+ .guest-stat {
1001
+ background-color: rgba(255, 255, 255, 0.1);
1002
+ padding: 15px;
1003
+ border-radius: 5px;
1004
+ text-align: center;
1005
+ }
1006
+
1007
+ .guest-stat-value {
1008
+ font-size: 24px;
1009
+ font-weight: 700;
1010
+ margin-bottom: 5px;
1011
+ }
1012
+
1013
+ .guest-stat-label {
1014
+ font-size: 12px;
1015
+ opacity: 0.8;
1016
+ }
1017
+
1018
+ /* Room Availability */
1019
+ .availability-container {
1020
+ display: flex;
1021
+ gap: 20px;
1022
+ }
1023
+
1024
+ .availability-filters {
1025
+ width: 250px;
1026
+ }
1027
+
1028
+ .filter-card {
1029
+ background-color: white;
1030
+ border-radius: 10px;
1031
+ padding: 20px;
1032
+ margin-bottom: 20px;
1033
+ }
1034
+
1035
+ .filter-title {
1036
+ font-weight: 600;
1037
+ margin-bottom: 15px;
1038
+ color: var(--primary);
1039
+ }
1040
+
1041
+ .checkbox-group {
1042
+ margin-bottom: 15px;
1043
+ }
1044
+
1045
+ .checkbox-item {
1046
+ margin-bottom: 10px;
1047
+ display: flex;
1048
+ align-items: center;
1049
+ }
1050
+
1051
+ .checkbox-item input {
1052
+ margin-right: 10px;
1053
+ }
1054
+
1055
+ /* Responsive */
1056
+ @media (max-width: 992px) {
1057
+ .dashboard {
1058
+ grid-template-columns: 1fr;
1059
+ }
1060
+ }
1061
+
1062
+ @media (max-width: 768px) {
1063
+ .navbar {
1064
+ flex-direction: column;
1065
+ gap: 15px;
1066
+ }
1067
+
1068
+ .nav-links {
1069
+ justify-content: center;
1070
+ }
1071
+
1072
+ .user-menu {
1073
+ justify-content: center;
1074
+ }
1075
+
1076
+ .stats-cards {
1077
+ grid-template-columns: 1fr 1fr;
1078
+ }
1079
+
1080
+ .form-row {
1081
+ grid-template-columns: 1fr;
1082
+ }
1083
+
1084
+ .availability-container {
1085
+ flex-direction: column;
1086
+ }
1087
+
1088
+ .availability-filters {
1089
+ width: 100%;
1090
+ }
1091
+ }
1092
+
1093
+ @media (max-width: 576px) {
1094
+ .stats-cards {
1095
+ grid-template-columns: 1fr;
1096
+ }
1097
+
1098
+ .date-range-picker {
1099
+ flex-direction: column;
1100
+ }
1101
+ }
1102
+
1103
+ /* Animation */
1104
+ @keyframes fadeIn {
1105
+ from {
1106
+ opacity: 0;
1107
+ }
1108
+ to {
1109
+ opacity: 1;
1110
+ }
1111
+ }
1112
+
1113
+ .fade-in {
1114
+ animation: fadeIn 0.5s ease-in-out;
1115
+ }
1116
+ </style>
1117
+ </head>
1118
+ <body>
1119
+ <!-- Loading Screen (Would be shown while checking authentication) -->
1120
+ <div id="loading-screen" style="position: fixed; top: 0; left: 0; right: 0; bottom: 0; background-color: white; display: flex; justify-content: center; align-items: center; z-index: 1000;">
1121
+ <div class="loading-spinner" style="width: 50px; height: 50px; border: 5px solid #f3f3f3; border-top: 5px solid #3498db; border-radius: 50%; animation: spin 1s linear infinite;"></div>
1122
+ </div>
1123
+
1124
+ <!-- Global Notification Container -->
1125
+ <div id="notification-container" style="position: fixed; top: 20px; right: 20px; z-index: 1500; max-width: 350px;"></div>
1126
+
1127
+ <!-- Login Page (Initial View) -->
1128
+ <div id="login-page" class="login-container">
1129
+ <div class="login-card">
1130
+ <div class="login-header">
1131
+ <h1 class="login-title">Skardu View Point</h1>
1132
+ <p class="login-subtitle">Hotel Management System</p>
1133
+ </div>
1134
+
1135
+ <form id="login-form">
1136
+ <div class="form-group">
1137
+ <label for="login-email" class="form-label">Email Address</label>
1138
+ <input type="email" id="login-email" class="form-control" placeholder="Enter your email" required>
1139
+ </div>
1140
+
1141
+ <div class="form-group">
1142
+ <label for="login-password" class="form-label">Password</label>
1143
+ <input type="password" id="login-password" class="form-control" placeholder="Enter your password" required>
1144
+ </div>
1145
+
1146
+ <div class="forgot-password">
1147
+ <a href="#" id="forgot-password-link">Forgot password?</a>
1148
+ </div>
1149
+
1150
+ <button type="submit" class="btn btn-primary" style="width: 100%;">Login</button>
1151
+ </form>
1152
+
1153
+ <div class="divider">
1154
+ <div class="divider-line"></div>
1155
+ <div class="divider-text">OR</div>
1156
+ <div class="divider-line"></div>
1157
+ </div>
1158
+
1159
+ <div class="social-login">
1160
+ <div class="social-btn google">
1161
+ <i class="fab fa-google"></i>
1162
+ </div>
1163
+ <div class="social-btn facebook">
1164
+ <i class="fab fa-facebook-f"></i>
1165
+ </div>
1166
+ </div>
1167
+
1168
+ <div class="login-footer">
1169
+ Don't have an account? <a href="#" id="register-link">Register here</a>
1170
+ </div>
1171
+ </div>
1172
+ </div>
1173
+
1174
+ <!-- Main Application (Shown after login) -->
1175
+ <div id="app-container" style="display: none;">
1176
+ <!-- Header -->
1177
+ <header>
1178
+ <div class="container">
1179
+ <nav class="navbar flex flex-between flex-center">
1180
+ <div class="logo">Skardu<span>ViewPoint</span></div>
1181
+
1182
+ <div class="nav-links">
1183
+ <a href="#" class="active" data-section="dashboard">Dashboard</a>
1184
+ <a href="#" data-section="bookings">Bookings</a>
1185
+ <a href="#" data-section="rooms">Rooms</a>
1186
+ <a href="#" data-section="guests">Guests</a>
1187
+ <a href="#" data-section="reports">Reports</a>
1188
+ </div>
1189
+
1190
+ <div class="user-menu">
1191
+ <div class="notification-bell">
1192
+ <i class="fas fa-bell"></i>
1193
+ <div class="badge">3</div>
1194
+ </div>
1195
+ <div class="avatar">AD</div>
1196
+ </div>
1197
+ </nav>
1198
+ </div>
1199
+ </header>
1200
+
1201
+ <!-- Main Content -->
1202
+ <main class="main">
1203
+ <div class="container">
1204
+ <!-- Dashboard Content -->
1205
+ <div id="dashboard-section" class="dashboard-section" style="display: none;">
1206
+ <div class="dashboard">
1207
+ <div class="sidebar">
1208
+ <h3 class="sidebar-title">Management</h3>
1209
+ <ul class="sidebar-menu">
1210
+ <li><a href="#" class="active" data-subsection="overview"><i class="fas fa-chart-line"></i> Overview</a></li>
1211
+ <li><a href="#" data-subsection="bookings"><i class="fas fa-calendar-alt"></i> Bookings</a></li>
1212
+ <li><a href="#" data-subsection="rooms"><i class="fas fa-bed"></i> Rooms</a></li>
1213
+ <li><a href="#" data-subsection="staff"><i class="fas fa-users"></i> Staff</a></li>
1214
+ <li><a href="#" data-subsection="inventory"><i class="fas fa-boxes"></i> Inventory</a></li>
1215
+ <li><a href="#" data-subsection="reports"><i class="fas fa-chart-pie"></i> Reports</a></li>
1216
+ </ul>
1217
+
1218
+ <h3 class="sidebar-title" style="margin-top: 30px;">Settings</h3>
1219
+ <ul class="sidebar-menu">
1220
+ <li><a href="#" data-subsection="settings"><i class="fas fa-cog"></i> System Settings</a></li>
1221
+
1222
+ </html>