Subham9126 commited on
Commit
cd344a6
·
verified ·
1 Parent(s): 23d7189

Update style.css

Browse files
Files changed (1) hide show
  1. style.css +614 -17
style.css CHANGED
@@ -1,28 +1,625 @@
 
 
 
 
 
 
 
1
  body {
2
- padding: 2rem;
3
- font-family: -apple-system, BlinkMacSystemFont, "Arial", sans-serif;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4
  }
5
 
6
- h1 {
7
- font-size: 16px;
8
- margin-top: 0;
9
  }
10
 
11
- p {
12
- color: rgb(107, 114, 128);
13
- font-size: 15px;
14
- margin-bottom: 10px;
15
- margin-top: 5px;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
16
  }
17
 
18
  .card {
19
- max-width: 620px;
20
- margin: 0 auto;
21
- padding: 16px;
22
- border: 1px solid lightgray;
23
- border-radius: 16px;
 
24
  }
25
 
26
- .card p:last-child {
27
- margin-bottom: 0;
28
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* Reset and Base Styles */
2
+ * {
3
+ margin: 0;
4
+ padding: 0;
5
+ box-sizing: border-box;
6
+ }
7
+
8
  body {
9
+ font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
10
+ background-color: #f5f5f5;
11
+ color: #333;
12
+ line-height: 1.6;
13
+ }
14
+
15
+ /* Sidebar Navigation */
16
+ .sidebar {
17
+ position: fixed;
18
+ left: 0;
19
+ top: 0;
20
+ width: 250px;
21
+ height: 100vh;
22
+ background: linear-gradient(180deg, #2c3e50 0%, #34495e 100%);
23
+ color: white;
24
+ padding: 20px 0;
25
+ z-index: 100;
26
+ }
27
+
28
+ .logo {
29
+ text-align: center;
30
+ padding: 0 20px 30px;
31
+ border-bottom: 1px solid #4a5c6e;
32
+ }
33
+
34
+ .logo h2 {
35
+ font-size: 1.5rem;
36
+ font-weight: 600;
37
+ }
38
+
39
+ .nav-menu {
40
+ list-style: none;
41
+ padding: 20px 0;
42
+ }
43
+
44
+ .nav-menu li {
45
+ margin-bottom: 5px;
46
+ }
47
+
48
+ .nav-link {
49
+ display: block;
50
+ padding: 15px 20px;
51
+ color: #bdc3c7;
52
+ text-decoration: none;
53
+ transition: all 0.3s ease;
54
+ font-weight: 500;
55
+ }
56
+
57
+ .nav-link:hover {
58
+ background-color: #3a4c60;
59
+ color: white;
60
+ padding-left: 30px;
61
+ }
62
+
63
+ .nav-link.active {
64
+ background-color: #3498db;
65
+ color: white;
66
+ border-right: 4px solid #2980b9;
67
+ }
68
+
69
+ /* Main Content */
70
+ .main-content {
71
+ margin-left: 250px;
72
+ padding: 30px;
73
+ min-height: 100vh;
74
+ }
75
+
76
+ /* Page Management */
77
+ .page {
78
+ display: none;
79
  }
80
 
81
+ .page.active {
82
+ display: block;
 
83
  }
84
 
85
+ .page-header {
86
+ display: flex;
87
+ justify-content: space-between;
88
+ align-items: center;
89
+ margin-bottom: 30px;
90
+ }
91
+
92
+ .page-header h1 {
93
+ color: #2c3e50;
94
+ font-size: 2rem;
95
+ font-weight: 600;
96
+ }
97
+
98
+ .page-controls {
99
+ display: flex;
100
+ gap: 15px;
101
+ align-items: center;
102
+ }
103
+
104
+ /* Dashboard Cards */
105
+ .dashboard-cards {
106
+ display: grid;
107
+ grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
108
+ gap: 20px;
109
+ margin-bottom: 40px;
110
  }
111
 
112
  .card {
113
+ background: white;
114
+ padding: 25px;
115
+ border-radius: 10px;
116
+ box-shadow: 0 2px 10px rgba(0,0,0,0.1);
117
+ text-align: center;
118
+ border-left: 4px solid #3498db;
119
  }
120
 
121
+ .card.overdue {
122
+ border-left-color: #e74c3c;
123
  }
124
+
125
+ .card.upcoming {
126
+ border-left-color: #f39c12;
127
+ }
128
+
129
+ .card h3 {
130
+ color: #7f8c8d;
131
+ font-size: 0.9rem;
132
+ text-transform: uppercase;
133
+ letter-spacing: 1px;
134
+ margin-bottom: 10px;
135
+ }
136
+
137
+ .card .stat {
138
+ font-size: 2.5rem;
139
+ font-weight: bold;
140
+ color: #2c3e50;
141
+ }
142
+
143
+ /* Alerts Section */
144
+ .alerts-section {
145
+ background: white;
146
+ border-radius: 10px;
147
+ padding: 25px;
148
+ box-shadow: 0 2px 10px rgba(0,0,0,0.1);
149
+ }
150
+
151
+ .alerts-section h2 {
152
+ color: #2c3e50;
153
+ margin-bottom: 20px;
154
+ }
155
+
156
+ .alert-item {
157
+ padding: 15px;
158
+ border-radius: 8px;
159
+ margin-bottom: 10px;
160
+ display: flex;
161
+ align-items: center;
162
+ gap: 15px;
163
+ }
164
+
165
+ .alert-item.overdue {
166
+ background-color: #fdf2f2;
167
+ border-left: 4px solid #e74c3c;
168
+ }
169
+
170
+ .alert-item.upcoming {
171
+ background-color: #fffbf2;
172
+ border-left: 4px solid #f39c12;
173
+ }
174
+
175
+ .alert-icon {
176
+ font-size: 1.2rem;
177
+ }
178
+
179
+ .alert-content h4 {
180
+ margin-bottom: 5px;
181
+ color: #2c3e50;
182
+ }
183
+
184
+ .alert-content p {
185
+ color: #7f8c8d;
186
+ font-size: 0.9rem;
187
+ }
188
+
189
+ .no-alerts {
190
+ text-align: center;
191
+ color: #7f8c8d;
192
+ font-style: italic;
193
+ }
194
+
195
+ /* Tables */
196
+ .table-container {
197
+ background: white;
198
+ border-radius: 10px;
199
+ overflow: hidden;
200
+ box-shadow: 0 2px 10px rgba(0,0,0,0.1);
201
+ }
202
+
203
+ table {
204
+ width: 100%;
205
+ border-collapse: collapse;
206
+ }
207
+
208
+ th, td {
209
+ padding: 15px;
210
+ text-align: left;
211
+ border-bottom: 1px solid #ecf0f1;
212
+ }
213
+
214
+ th {
215
+ background-color: #f8f9fa;
216
+ font-weight: 600;
217
+ color: #2c3e50;
218
+ font-size: 0.9rem;
219
+ text-transform: uppercase;
220
+ letter-spacing: 0.5px;
221
+ }
222
+
223
+ tbody tr:hover {
224
+ background-color: #f8f9fa;
225
+ }
226
+
227
+ .no-data {
228
+ text-align: center;
229
+ color: #7f8c8d;
230
+ font-style: italic;
231
+ }
232
+
233
+ /* Buttons */
234
+ .btn {
235
+ padding: 10px 20px;
236
+ border: none;
237
+ border-radius: 6px;
238
+ cursor: pointer;
239
+ font-size: 0.9rem;
240
+ font-weight: 500;
241
+ text-decoration: none;
242
+ display: inline-block;
243
+ transition: all 0.3s ease;
244
+ min-width: 100px;
245
+ }
246
+
247
+ .btn-primary {
248
+ background-color: #3498db;
249
+ color: white;
250
+ }
251
+
252
+ .btn-primary:hover {
253
+ background-color: #2980b9;
254
+ transform: translateY(-2px);
255
+ }
256
+
257
+ .btn-secondary {
258
+ background-color: #95a5a6;
259
+ color: white;
260
+ }
261
+
262
+ .btn-secondary:hover {
263
+ background-color: #7f8c8d;
264
+ }
265
+
266
+ .btn-danger {
267
+ background-color: #e74c3c;
268
+ color: white;
269
+ }
270
+
271
+ .btn-danger:hover {
272
+ background-color: #c0392b;
273
+ }
274
+
275
+ .btn-warning {
276
+ background-color: #f39c12;
277
+ color: white;
278
+ }
279
+
280
+ .btn-warning:hover {
281
+ background-color: #d68910;
282
+ }
283
+
284
+ .btn-small {
285
+ padding: 5px 10px;
286
+ font-size: 0.8rem;
287
+ min-width: auto;
288
+ }
289
+
290
+ .btn:disabled {
291
+ background-color: #bdc3c7;
292
+ cursor: not-allowed;
293
+ transform: none;
294
+ }
295
+
296
+ .action-buttons {
297
+ display: flex;
298
+ gap: 5px;
299
+ }
300
+
301
+ /* Modal Styles */
302
+ .modal {
303
+ display: none;
304
+ position: fixed;
305
+ z-index: 1000;
306
+ left: 0;
307
+ top: 0;
308
+ width: 100%;
309
+ height: 100%;
310
+ background-color: rgba(0,0,0,0.5);
311
+ animation: fadeIn 0.3s ease;
312
+ }
313
+
314
+ .modal-content {
315
+ background-color: white;
316
+ margin: 5% auto;
317
+ border-radius: 10px;
318
+ width: 90%;
319
+ max-width: 500px;
320
+ box-shadow: 0 10px 30px rgba(0,0,0,0.3);
321
+ animation: slideIn 0.3s ease;
322
+ }
323
+
324
+ .modal-header {
325
+ display: flex;
326
+ justify-content: space-between;
327
+ align-items: center;
328
+ padding: 20px 25px;
329
+ border-bottom: 1px solid #ecf0f1;
330
+ }
331
+
332
+ .modal-header h2 {
333
+ color: #2c3e50;
334
+ font-size: 1.3rem;
335
+ }
336
+
337
+ .close {
338
+ color: #aaa;
339
+ font-size: 28px;
340
+ font-weight: bold;
341
+ cursor: pointer;
342
+ }
343
+
344
+ .close:hover {
345
+ color: #333;
346
+ }
347
+
348
+ /* Forms */
349
+ form {
350
+ padding: 25px;
351
+ }
352
+
353
+ .form-group {
354
+ margin-bottom: 20px;
355
+ }
356
+
357
+ .form-group label {
358
+ display: block;
359
+ margin-bottom: 8px;
360
+ font-weight: 600;
361
+ color: #2c3e50;
362
+ }
363
+
364
+ .form-group input,
365
+ .form-group select,
366
+ .form-group textarea {
367
+ width: 100%;
368
+ padding: 12px;
369
+ border: 2px solid #ecf0f1;
370
+ border-radius: 6px;
371
+ font-size: 1rem;
372
+ transition: border-color 0.3s ease;
373
+ }
374
+
375
+ .form-group input:focus,
376
+ .form-group select:focus,
377
+ .form-group textarea:focus {
378
+ outline: none;
379
+ border-color: #3498db;
380
+ }
381
+
382
+ .form-group textarea {
383
+ resize: vertical;
384
+ min-height: 80px;
385
+ }
386
+
387
+ .form-group small {
388
+ display: block;
389
+ margin-top: 5px;
390
+ color: #7f8c8d;
391
+ font-size: 0.85rem;
392
+ }
393
+
394
+ .modal-actions {
395
+ display: flex;
396
+ justify-content: flex-end;
397
+ gap: 10px;
398
+ margin-top: 25px;
399
+ padding-top: 20px;
400
+ border-top: 1px solid #ecf0f1;
401
+ }
402
+
403
+ /* Config Page */
404
+ .config-container {
405
+ max-width: 600px;
406
+ background: white;
407
+ border-radius: 10px;
408
+ padding: 30px;
409
+ box-shadow: 0 2px 10px rgba(0,0,0,0.1);
410
+ }
411
+
412
+ .config-actions {
413
+ display: flex;
414
+ gap: 15px;
415
+ justify-content: flex-end;
416
+ margin-top: 30px;
417
+ }
418
+
419
+ .config-help {
420
+ margin-top: 30px;
421
+ padding: 20px;
422
+ background-color: #f8f9fa;
423
+ border-radius: 8px;
424
+ border-left: 4px solid #3498db;
425
+ }
426
+
427
+ .config-help h3 {
428
+ color: #2c3e50;
429
+ margin-bottom: 15px;
430
+ }
431
+
432
+ .config-help ol {
433
+ margin-left: 20px;
434
+ }
435
+
436
+ .config-help li {
437
+ margin-bottom: 8px;
438
+ color: #5d6d7e;
439
+ }
440
+
441
+ /* Status Messages */
442
+ .status-message {
443
+ padding: 15px;
444
+ border-radius: 8px;
445
+ margin-top: 20px;
446
+ font-weight: 500;
447
+ }
448
+
449
+ .status-message.success {
450
+ background-color: #d4edda;
451
+ color: #155724;
452
+ border: 1px solid #c3e6cb;
453
+ }
454
+
455
+ .status-message.error {
456
+ background-color: #f8d7da;
457
+ color: #721c24;
458
+ border: 1px solid #f5c6cb;
459
+ }
460
+
461
+ .status-message.info {
462
+ background-color: #d1ecf1;
463
+ color: #0c5460;
464
+ border: 1px solid #bee5eb;
465
+ }
466
+
467
+ /* Loading Overlay */
468
+ .loading-overlay {
469
+ position: fixed;
470
+ top: 0;
471
+ left: 0;
472
+ width: 100%;
473
+ height: 100%;
474
+ background-color: rgba(255, 255, 255, 0.9);
475
+ display: flex;
476
+ justify-content: center;
477
+ align-items: center;
478
+ z-index: 2000;
479
+ }
480
+
481
+ .loading-spinner {
482
+ text-align: center;
483
+ }
484
+
485
+ .spinner {
486
+ border: 4px solid #f3f3f3;
487
+ border-top: 4px solid #3498db;
488
+ border-radius: 50%;
489
+ width: 40px;
490
+ height: 40px;
491
+ animation: spin 1s linear infinite;
492
+ margin: 0 auto 15px;
493
+ }
494
+
495
+ .loading-spinner p {
496
+ color: #7f8c8d;
497
+ font-weight: 500;
498
+ }
499
+
500
+ /* Toast Notifications */
501
+ .toast-container {
502
+ position: fixed;
503
+ top: 20px;
504
+ right: 20px;
505
+ z-index: 3000;
506
+ }
507
+
508
+ .toast {
509
+ background: white;
510
+ border-radius: 8px;
511
+ padding: 15px 20px;
512
+ margin-bottom: 10px;
513
+ box-shadow: 0 5px 15px rgba(0,0,0,0.2);
514
+ border-left: 4px solid #3498db;
515
+ animation: slideInRight 0.3s ease;
516
+ position: relative;
517
+ max-width: 300px;
518
+ }
519
+
520
+ .toast.success {
521
+ border-left-color: #27ae60;
522
+ }
523
+
524
+ .toast.error {
525
+ border-left-color: #e74c3c;
526
+ }
527
+
528
+ .toast.warning {
529
+ border-left-color: #f39c12;
530
+ }
531
+
532
+ .toast-title {
533
+ font-weight: 600;
534
+ margin-bottom: 5px;
535
+ color: #2c3e50;
536
+ }
537
+
538
+ .toast-message {
539
+ color: #7f8c8d;
540
+ font-size: 0.9rem;
541
+ }
542
+
543
+ /* Animations */
544
+ @keyframes fadeIn {
545
+ from { opacity: 0; }
546
+ to { opacity: 1; }
547
+ }
548
+
549
+ @keyframes slideIn {
550
+ from {
551
+ opacity: 0;
552
+ transform: translateY(-50px);
553
+ }
554
+ to {
555
+ opacity: 1;
556
+ transform: translateY(0);
557
+ }
558
+ }
559
+
560
+ @keyframes slideInRight {
561
+ from {
562
+ opacity: 0;
563
+ transform: translateX(100px);
564
+ }
565
+ to {
566
+ opacity: 1;
567
+ transform: translateX(0);
568
+ }
569
+ }
570
+
571
+ @keyframes spin {
572
+ 0% { transform: rotate(0deg); }
573
+ 100% { transform: rotate(360deg); }
574
+ }
575
+
576
+ /* Responsive Design */
577
+ @media (max-width: 768px) {
578
+ .sidebar {
579
+ transform: translateX(-100%);
580
+ transition: transform 0.3s ease;
581
+ }
582
+
583
+ .sidebar.mobile-open {
584
+ transform: translateX(0);
585
+ }
586
+
587
+ .main-content {
588
+ margin-left: 0;
589
+ padding: 20px;
590
+ }
591
+
592
+ .dashboard-cards {
593
+ grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
594
+ gap: 15px;
595
+ }
596
+
597
+ .page-header {
598
+ flex-direction: column;
599
+ align-items: stretch;
600
+ gap: 15px;
601
+ }
602
+
603
+ .page-controls {
604
+ justify-content: flex-end;
605
+ }
606
+
607
+ .modal-content {
608
+ margin: 10% auto;
609
+ width: 95%;
610
+ }
611
+
612
+ .config-actions {
613
+ flex-direction: column;
614
+ }
615
+
616
+ .action-buttons {
617
+ flex-direction: column;
618
+ gap: 8px;
619
+ }
620
+
621
+ .btn-small {
622
+ min-width: 80px;
623
+ }
624
+ }
625
+