@djb25/digit-ui-css 1.0.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.
Files changed (161) hide show
  1. package/README.md +80 -0
  2. package/dist/index.css +17535 -0
  3. package/dist/index.min.css +1 -0
  4. package/img/browser-icon.png +0 -0
  5. package/img/m_seva_white_logo.png +0 -0
  6. package/img/mseva-demo.png +0 -0
  7. package/package.json +70 -0
  8. package/src/components/CardBasedOptions.scss +46 -0
  9. package/src/components/CitizenHomeCard.scss +56 -0
  10. package/src/components/EllipsisMenu.scss +17 -0
  11. package/src/components/EventCalendarView.scss +10 -0
  12. package/src/components/FAQ.scss +64 -0
  13. package/src/components/OnGroundEventCard.scss +72 -0
  14. package/src/components/PageBasedInput.scss +29 -0
  15. package/src/components/PopupHeadingLabel.scss +15 -0
  16. package/src/components/PropertySearchForm.scss +58 -0
  17. package/src/components/SearchForm.scss +56 -0
  18. package/src/components/SearchOnRadioButton.scss +10 -0
  19. package/src/components/StandaloneSearchBar.scss +10 -0
  20. package/src/components/TimeLine.scss +68 -0
  21. package/src/components/WhatsNewCard.scss +13 -0
  22. package/src/components/actionLink.scss +3 -0
  23. package/src/components/actionbar.scss +97 -0
  24. package/src/components/bannercomponents.scss +136 -0
  25. package/src/components/body.scss +144 -0
  26. package/src/components/buttons.scss +106 -0
  27. package/src/components/card.scss +468 -0
  28. package/src/components/cardHeaderWithOptions.scss +14 -0
  29. package/src/components/changeLanguage.scss +3 -0
  30. package/src/components/charts.scss +186 -0
  31. package/src/components/checkbox.scss +53 -0
  32. package/src/components/checkpoint.scss +63 -0
  33. package/src/components/citizenInfoLabel.scss +14 -0
  34. package/src/components/custombtn.scss +11 -0
  35. package/src/components/datatable.scss +134 -0
  36. package/src/components/datewrap.scss +21 -0
  37. package/src/components/detailscard.scss +6 -0
  38. package/src/components/detailscontainer.scss +13 -0
  39. package/src/components/filters.scss +98 -0
  40. package/src/components/financeUi.scss +875 -0
  41. package/src/components/grey.scss +3 -0
  42. package/src/components/hoc/InboxComposer.scss +115 -0
  43. package/src/components/hoc/index.scss +1 -0
  44. package/src/components/howItWorks.scss +71 -0
  45. package/src/components/imageviewer.scss +33 -0
  46. package/src/components/inboxv2/InboxLinks.scss +59 -0
  47. package/src/components/inboxv2/horizontalNav.scss +224 -0
  48. package/src/components/inboxv2/inboxSearch.scss +116 -0
  49. package/src/components/inboxv2/inboxSearchComposer.scss +134 -0
  50. package/src/components/inboxv2/index.scss +5 -0
  51. package/src/components/inboxv2/searchComponentTable.scss +44 -0
  52. package/src/components/info-banner.scss +35 -0
  53. package/src/components/inputotp.scss +15 -0
  54. package/src/components/keynote.scss +27 -0
  55. package/src/components/landingpage.scss +3860 -0
  56. package/src/components/languageSelector.scss +23 -0
  57. package/src/components/loader.scss +96 -0
  58. package/src/components/map.scss +30 -0
  59. package/src/components/menu.scss +0 -0
  60. package/src/components/metricsTable.scss +28 -0
  61. package/src/components/multiLink.scss +88 -0
  62. package/src/components/multiSelectDropdown.scss +77 -0
  63. package/src/components/navbar.scss +312 -0
  64. package/src/components/plusMinus.scss +15 -0
  65. package/src/components/popup.scss +16 -0
  66. package/src/components/radiobtn.scss +45 -0
  67. package/src/components/ratingstar.scss +33 -0
  68. package/src/components/roundedLabel.scss +10 -0
  69. package/src/components/searchAction.scss +20 -0
  70. package/src/components/sectionalDropdown.scss +43 -0
  71. package/src/components/selectdropdown.scss +174 -0
  72. package/src/components/sidebar.scss +141 -0
  73. package/src/components/staticDynamicMessages.scss +107 -0
  74. package/src/components/staticSideBar.scss +27 -0
  75. package/src/components/statushighlight.scss +17 -0
  76. package/src/components/submiterrors.scss +11 -0
  77. package/src/components/summary.scss +29 -0
  78. package/src/components/table.scss +230 -0
  79. package/src/components/tag.scss +27 -0
  80. package/src/components/telephone.scss +17 -0
  81. package/src/components/textfields.scss +96 -0
  82. package/src/components/toast.scss +31 -0
  83. package/src/components/toggleSwitch.scss +41 -0
  84. package/src/components/topbar.scss +151 -0
  85. package/src/components/uploadcomponents.scss +100 -0
  86. package/src/digitv2/components/ErrorMessage.scss +6 -0
  87. package/src/digitv2/components/FormComposerV2.scss +120 -0
  88. package/src/digitv2/components/actionLinkV2.scss +7 -0
  89. package/src/digitv2/components/actionbarV2.scss +110 -0
  90. package/src/digitv2/components/appContainerV2.scss +55 -0
  91. package/src/digitv2/components/backButtonV2.scss +26 -0
  92. package/src/digitv2/components/bannerV2.scss +120 -0
  93. package/src/digitv2/components/bodyContainerV2.scss +39 -0
  94. package/src/digitv2/components/breadCrumbV2.scss +31 -0
  95. package/src/digitv2/components/breakLineV2.scss +6 -0
  96. package/src/digitv2/components/buttonsV2.scss +40 -0
  97. package/src/digitv2/components/cardV2.scss +385 -0
  98. package/src/digitv2/components/checkboxV2.scss +61 -0
  99. package/src/digitv2/components/checkpointV2.scss +71 -0
  100. package/src/digitv2/components/collapseAndExpandGroups.scss +60 -0
  101. package/src/digitv2/components/dateWrapV2.scss +12 -0
  102. package/src/digitv2/components/displayPhotosV2.scss +33 -0
  103. package/src/digitv2/components/headerV2.scss +6 -0
  104. package/src/digitv2/components/infoBannerV2.scss +37 -0
  105. package/src/digitv2/components/keynoteV2.scss +35 -0
  106. package/src/digitv2/components/loaderV2.scss +81 -0
  107. package/src/digitv2/components/mobileNumberV2.scss +33 -0
  108. package/src/digitv2/components/multiSelectDropdownV2.scss +92 -0
  109. package/src/digitv2/components/noresultsfoundV2.scss +11 -0
  110. package/src/digitv2/components/otpInputV2.scss +15 -0
  111. package/src/digitv2/components/popUpV2.scss +16 -0
  112. package/src/digitv2/components/radiobtnV2.scss +51 -0
  113. package/src/digitv2/components/ratingV2.scss +33 -0
  114. package/src/digitv2/components/selectdropdownV2.scss +170 -0
  115. package/src/digitv2/components/tagV2.scss +28 -0
  116. package/src/digitv2/components/telephoneV2.scss +18 -0
  117. package/src/digitv2/components/textInputV2.scss +123 -0
  118. package/src/digitv2/components/textareaV2.scss +11 -0
  119. package/src/digitv2/components/uploadFileV2.scss +146 -0
  120. package/src/digitv2/index.scss +168 -0
  121. package/src/digitv2/pages/employee/index.scss +1 -0
  122. package/src/digitv2/pages/employee/workbench.scss +1042 -0
  123. package/src/digitv2/typography.scss +241 -0
  124. package/src/index.scss +804 -0
  125. package/src/pages/citizen/CitizenEngagementNotificationWrapper.scss +8 -0
  126. package/src/pages/citizen/DocumentList.scss +305 -0
  127. package/src/pages/citizen/Events.scss +47 -0
  128. package/src/pages/citizen/HomePageWrapper.scss +158 -0
  129. package/src/pages/citizen/SurveyList.scss +22 -0
  130. package/src/pages/citizen/citizenDocument.scss +22 -0
  131. package/src/pages/citizen/container.scss +19 -0
  132. package/src/pages/citizen/payment/payment-type.scss +3 -0
  133. package/src/pages/citizen/updatePropertyNumber.scss +46 -0
  134. package/src/pages/employee/EmployeeLogin.scss +7 -0
  135. package/src/pages/employee/cardfix.scss +13 -0
  136. package/src/pages/employee/container.scss +72 -0
  137. package/src/pages/employee/dss.scss +266 -0
  138. package/src/pages/employee/form-fields.scss +13 -0
  139. package/src/pages/employee/iframe.scss +66 -0
  140. package/src/pages/employee/inbox.scss +634 -0
  141. package/src/pages/employee/index.scss +621 -0
  142. package/src/pages/employee/login.scss +302 -0
  143. package/src/pages/employee/oldMobileInbox.scss +5 -0
  144. package/src/pages/employee/popupmodule.scss +34 -0
  145. package/src/pages/employee/response.scss +3 -0
  146. package/src/pages/employee/scroll-table.scss +119 -0
  147. package/src/pages/employee/surveys.scss +273 -0
  148. package/src/pages/employee/tooltip.scss +36 -0
  149. package/src/pages/employee/updateNumber.scss +13 -0
  150. package/svg/arrowdown.svg +1 -0
  151. package/svg/arrowleft.svg +1 -0
  152. package/svg/calendar.svg +1 -0
  153. package/svg/camera.svg +4 -0
  154. package/svg/check.svg +4 -0
  155. package/svg/close.svg +4 -0
  156. package/svg/error.svg +4 -0
  157. package/svg/error2.svg +5 -0
  158. package/svg/searchicon.svg +4 -0
  159. package/svg/starempty.svg +4 -0
  160. package/svg/starfilled.svg +5 -0
  161. package/svg/success.svg +4 -0
@@ -0,0 +1,3860 @@
1
+ body {
2
+ transition: padding-top 0.35s cubic-bezier(0.4, 0, 0.2, 1);
3
+ }
4
+
5
+ .mcd-scrolled {
6
+ padding-top: 80px; /* header height */
7
+ }
8
+
9
+ /* HEADER */
10
+ .mcd-header-container {
11
+ display: flex;
12
+ justify-content: space-between;
13
+ align-items: center;
14
+ padding: 12px 32px;
15
+ background: #fff;
16
+ }
17
+
18
+ .mcd-header-left {
19
+ display: flex;
20
+ align-items: center;
21
+ }
22
+
23
+ .mcd-logo {
24
+ height: 60px;
25
+ margin-right: 12px;
26
+ }
27
+
28
+ .small-logo {
29
+ height: 50px;
30
+ }
31
+
32
+ .mcd-title {
33
+ font-size: 24px;
34
+ font-weight: 700;
35
+ color: #0b2c57;
36
+ }
37
+
38
+ .mcd-header-right {
39
+ display: flex;
40
+ align-items: center;
41
+ }
42
+
43
+ .mcd-menu {
44
+ list-style: none;
45
+ display: flex;
46
+ margin-left: 20px;
47
+ }
48
+
49
+ .mcd-menu li a {
50
+ padding: 8px 16px;
51
+ color: #0b2c57;
52
+ text-decoration: none;
53
+ font-weight: 500;
54
+ }
55
+
56
+ .mcd-language-select {
57
+ padding: 6px 10px;
58
+ border-radius: 4px;
59
+ }
60
+
61
+ /* INFO BAR */
62
+ .mcd-info-bar {
63
+ width: 100%;
64
+ background: linear-gradient(180deg, #003c8f, #0053a6);
65
+ padding: 4px 0;
66
+ color: #fff;
67
+ font-size: 15px;
68
+ display: flex;
69
+ align-items: center;
70
+ position: relative;
71
+ }
72
+
73
+ .mcd-info-icon {
74
+ margin-left: 145px;
75
+ margin-right: 8px;
76
+ }
77
+
78
+ .mcd-info-content {
79
+ overflow: hidden;
80
+ white-space: nowrap;
81
+ width: 75%; /* Increased middle width */
82
+ }
83
+
84
+ .mcd-info-text {
85
+ display: inline-block;
86
+ padding-left: 100%;
87
+ animation: scrollText 19s linear infinite;
88
+ will-change: transform;
89
+ }
90
+
91
+ @keyframes scrollText {
92
+ from { transform: translateX(0); }
93
+ to { transform: translateX(-100%); }
94
+ }
95
+
96
+ .mcd-search-box {
97
+ position: absolute;
98
+ bottom: -40px;
99
+ left: 50%;
100
+ transform: translateX(-50%);
101
+ background: white;
102
+ display: flex;
103
+ padding: 8px;
104
+ border-radius: 50px;
105
+ width: 520px;
106
+ align-items: center;
107
+ box-shadow: 0 3px 10px rgba(0,0,0,0.15);
108
+ }
109
+
110
+ .mcd-search-input {
111
+ display: flex;
112
+ align-items: center;
113
+ flex: 1;
114
+ }
115
+
116
+ .mcd-search-input input {
117
+ border: none;
118
+ outline: none;
119
+ padding: 10px;
120
+ flex: 1;
121
+ font-size: 16px;
122
+ }
123
+
124
+ .mcd-search-btn {
125
+ background: linear-gradient(180deg, #217eff, #000);
126
+ border: none;
127
+ color: #fff;
128
+ padding: 12px 24px;
129
+ border-radius: 30px;
130
+ font-weight: 600;
131
+ cursor: pointer;
132
+ }
133
+
134
+ /* QUICK SERVICES */
135
+ .mcd-quick-services {
136
+ padding: 80px 0 20px;
137
+ text-align: center;
138
+ }
139
+
140
+ .qs-label {
141
+ font-size: 15px;
142
+ color: #555;
143
+ }
144
+
145
+ .qs-list {
146
+ display: flex;
147
+ justify-content: center;
148
+ gap: 30px;
149
+ margin-top: 10px;
150
+ }
151
+
152
+ .qs-list li a {
153
+ color: #0b2c57;
154
+ font-weight: 500;
155
+ text-decoration: none;
156
+ }
157
+
158
+ /* FOOTER */
159
+ .mcd-footer {
160
+ padding: 40px;
161
+ text-align: center;
162
+ }
163
+
164
+ .mcd-footer-img {
165
+ height: 40px;
166
+ cursor: pointer;
167
+ }
168
+
169
+
170
+ .branding {
171
+ display: flex;
172
+ align-items: center;
173
+ gap: 15px;
174
+ }
175
+
176
+ .mcd-emblem {
177
+ width: 55px;
178
+ }
179
+
180
+ .branding h2 {
181
+ font-size: 28px;
182
+ margin: 0;
183
+ color: #003366;
184
+ font-weight: 700;
185
+ }
186
+
187
+ .branding p {
188
+ font-size: 14px;
189
+ margin: 0;
190
+ }
191
+
192
+ .lang-switch {
193
+ cursor: pointer;
194
+ font-weight: 600;
195
+ padding: 2px 6px;
196
+ }
197
+
198
+
199
+ .mcd-top-bar {
200
+ background: rgb(255 255 255);
201
+ color: black;
202
+ padding: 0 45px;
203
+ display: flex;
204
+ justify-content: space-between;
205
+ align-items: center;
206
+ font-size: 14px;
207
+ box-shadow: inset 0 -1px 0 rgb(0 0 0 / 12%) !important;
208
+ height: 36px;
209
+ transform: translateY(0);
210
+ transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
211
+ will-change: transform;
212
+ }
213
+
214
+ .mcd-top-bar {
215
+ transition: transform 0.3s ease;
216
+ }
217
+
218
+
219
+ .mcd-top-left {
220
+ display: flex;
221
+ align-items: center;
222
+ gap: 8px;
223
+ }
224
+
225
+ .mcd-top-right .icon-link {
226
+ color: #000;
227
+ }
228
+
229
+ .pipe {
230
+ opacity: 0.5;
231
+
232
+ }
233
+
234
+ .mcd-top-right {
235
+ display: flex;
236
+ align-items: center;
237
+ gap: 14px;
238
+ }
239
+
240
+ .icon-link {
241
+ color: white;
242
+ text-decoration: none;
243
+ }
244
+
245
+ .icon-svg {
246
+ width: 18px;
247
+ height: 18px;
248
+ fill: white;
249
+ vertical-align: middle;
250
+ }
251
+
252
+ .mcd-header {
253
+ position: relative;
254
+ z-index: 1000;
255
+ background: #fff;
256
+ padding: 0px 45px;
257
+ border-bottom: 2px solid #e6e6e6;
258
+ display: flex;
259
+ justify-content: space-between;
260
+ align-items: center;
261
+ transform: translateY(0);
262
+ transition:
263
+ transform 0.35s cubic-bezier(0.4, 0, 0.2, 1),
264
+ box-shadow 0.35s ease;
265
+ will-change: transform;
266
+ }
267
+
268
+ .mcd-scrolled .mcd-top-bar {
269
+ transform: translateY(-100%);
270
+ }
271
+
272
+ /* Header moves to top */
273
+ .mcd-scrolled .mcd-header {
274
+ position: fixed;
275
+ top: 0;
276
+ left: 0;
277
+ right: 0;
278
+ box-shadow: 0 2px 12px rgba(0,0,0,0.15);
279
+ }
280
+
281
+ .branding {
282
+ display: flex;
283
+ align-items: center;
284
+ gap: 12px;
285
+ }
286
+
287
+ .mcd-emblem {
288
+ width: 360px;
289
+ height: auto;
290
+ }
291
+
292
+ .mcd-title {
293
+ margin: 0;
294
+ font-size: 28px;
295
+ font-weight: 700;
296
+ color: #003366;
297
+ }
298
+
299
+ .mcd-subtitle {
300
+ margin: 0;
301
+ font-size: 13px;
302
+ color: #555;
303
+ }
304
+
305
+ .mcd-nav {
306
+ display: flex;
307
+ gap: 25px;
308
+ align-items: baseline;
309
+ }
310
+
311
+ .mcd-nav a {
312
+ font-size: 16px;
313
+ color: #003366;
314
+ text-decoration: none;
315
+ font-weight: 500;
316
+ }
317
+
318
+ .mcd-nav a:hover {
319
+ color: #005bbb;
320
+ text-decoration: underline;
321
+ }
322
+
323
+
324
+ /* HERO SECTION */
325
+ .mcd-hero-wrapper {
326
+ width: 100%;
327
+ padding: 30px 0 30px 0; /* extra bottom padding */
328
+ display: flex;
329
+ justify-content: center;
330
+ background: #f0f0f0;;
331
+ }
332
+
333
+ .mcd-hero-container {
334
+ width: 96%;
335
+ background: #fff;
336
+ border-radius: 22px;
337
+ overflow: hidden;
338
+ box-shadow: 0 4px 25px rgba(0,0,0,0.1);
339
+ }
340
+
341
+ .mcd-hero-main-img {
342
+ width: 100%;
343
+ height: auto;
344
+ object-fit: cover;
345
+ display: block;
346
+ }
347
+
348
+ /* SEARCH BAR FLOATS BELOW HERO */
349
+ .mcd-search-wrapper {
350
+ width: 100%;
351
+ display: flex;
352
+ justify-content: center;
353
+ margin-top: -40px; /* floats up like KSMART */
354
+ z-index: 100;
355
+ position: relative;
356
+ }
357
+
358
+ .mcd-search-box {
359
+ width: 600px;
360
+ max-width: 90%;
361
+ background: #fff;
362
+ border-radius: 50px;
363
+ box-shadow: 0px 8px 25px rgba(0,0,0,0.15);
364
+ display: flex;
365
+ align-items: center;
366
+ padding: 6px 20px;
367
+ gap: 7px;
368
+ }
369
+
370
+ .mcd-search-icon {
371
+ height: 45px;
372
+ width: 45px;
373
+ background: #eef3ff;
374
+ border-radius: 50%;
375
+ display: flex;
376
+ justify-content: center;
377
+ align-items: center;
378
+ }
379
+
380
+ .mcd-search-input {
381
+ flex: 1;
382
+ border: none;
383
+ outline: none;
384
+ font-size: 16px;
385
+ }
386
+
387
+ .mcd-search-btn {
388
+ background: linear-gradient(180deg, #003c8f, #0053a6);
389
+ color: #fff !important;
390
+ border: none;
391
+ padding: 10px 26px;
392
+ border-radius: 40px;
393
+ font-weight: 600;
394
+ cursor: pointer;
395
+ transition: 0.2s;
396
+ }
397
+
398
+ .mcd-search-btn:hover {}
399
+
400
+ /* SUGGESTED LINKS ROW */
401
+ .mcd-suggested-wrapper {
402
+ width: 100%;
403
+ max-width: 900px;
404
+ margin: 50px auto 0 auto;
405
+ display: flex;
406
+ align-items: center;
407
+ justify-content: center;
408
+ gap: 10px;
409
+ padding: 10px 0 10px 0;
410
+ }
411
+
412
+ .mcd-suggested-label {
413
+ color: #666;
414
+ font-size: 14px;
415
+ font-weight: 600;
416
+ }
417
+
418
+ /* Link Buttons (KSMART pill style) */
419
+ .mcd-suggested-btn {
420
+ background: #f0f4ff;
421
+ border: 1px solid #d6ddf7;
422
+ border-radius: 8px;
423
+ padding: 8px 20px;
424
+ font-size: 14px;
425
+ color: #38445c;
426
+ cursor: pointer;
427
+ transition: 0.2s ease;
428
+ white-space: nowrap;
429
+ }
430
+
431
+ .mcd-suggested-btn:hover {
432
+ background: #e4eaff;
433
+ border-color: #c2c9f0;
434
+ }
435
+
436
+ /* Mobile Responsive */
437
+ @media (max-width: 768px) {
438
+ .mcd-suggested-wrapper {
439
+ flex-wrap: wrap;
440
+ gap: 10px;
441
+ padding-bottom: 20px;
442
+ }
443
+
444
+ .mcd-suggested-btn {
445
+ padding: 8px 14px;
446
+ font-size: 13px;
447
+ }
448
+ }
449
+
450
+ /* QUICK SERVICES WRAPPER */
451
+ .mcd-quick-wrapper {
452
+ width: 100%;
453
+ background: linear-gradient(180deg, #003c8f, #0053a6);
454
+ padding: 50px 0;
455
+ text-align: center;
456
+ margin-top: 30px;
457
+ }
458
+
459
+ /* Title */
460
+ .mcd-quick-title {
461
+ font-size: 22px;
462
+ font-weight: 700;
463
+ color: #fff;
464
+ margin-bottom: 35px;
465
+ }
466
+
467
+ /* Cards Grid (2 rows × 3 columns) */
468
+ .mcd-quick-grid {
469
+ max-width: 1200px;
470
+ margin: auto;
471
+ display: grid;
472
+ grid-template-columns: repeat(3, 1fr);
473
+ gap: 22px;
474
+ }
475
+
476
+ /* Individual Card */
477
+ .mcd-quick-card {
478
+ background: #fff;
479
+ height: 64px;
480
+ border-radius: 10px;
481
+ box-shadow: 0px 4px 12px rgba(0, 0, 0, 0.08);
482
+ display: flex;
483
+ align-items: center;
484
+ padding: 0 18px;
485
+ cursor: pointer;
486
+ transition: 0.25s ease;
487
+ }
488
+
489
+ .mcd-quick-card:hover {
490
+ transform: translateY(-3px);
491
+ box-shadow: 0px 6px 16px rgba(0, 0, 0, 0.14);
492
+ }
493
+
494
+ /* Left icon bubble */
495
+ .mcd-quick-icon {
496
+ background: #eef3ff;
497
+ width: 38px;
498
+ height: 38px;
499
+ min-width: 38px;
500
+ border-radius: 8px;
501
+ display: flex;
502
+ justify-content: center;
503
+ align-items: center;
504
+ font-size: 18px;
505
+ margin-right: 16px;
506
+ }
507
+
508
+ /* Service Text */
509
+ .mcd-quick-text {
510
+ flex: 1;
511
+ text-align: left;
512
+ font-size: 15px;
513
+ font-weight: 600;
514
+ color: #2d3b55;
515
+ }
516
+
517
+ /* Right Arrow */
518
+ .mcd-quick-arrow {
519
+ font-size: 22px;
520
+ font-weight: 700;
521
+ color: #4e5b78;
522
+ }
523
+
524
+
525
+ /* Mobile Responsive */
526
+ @media (max-width: 900px) {
527
+ .mcd-quick-grid {
528
+ grid-template-columns: repeat(2, 1fr);
529
+ gap: 16px;
530
+ }
531
+ }
532
+
533
+ @media (max-width: 600px) {
534
+ .mcd-quick-grid {
535
+ grid-template-columns: 1fr;
536
+ }
537
+
538
+ .mcd-quick-card {
539
+ height: 60px;
540
+ }
541
+ }
542
+
543
+ .services-section {
544
+ padding: 40px 0;
545
+ text-align: center;
546
+ }
547
+
548
+ .services-title {
549
+ font-size: 28px;
550
+ font-weight: 700;
551
+ margin-bottom: 30px;
552
+ }
553
+
554
+ .services-grid {
555
+ display: grid;
556
+ grid-template-columns: repeat(4, 1fr);
557
+ gap: 24px;
558
+ padding: 0 40px;
559
+ }
560
+
561
+ .service-card {
562
+ background: #ffffff;
563
+ border-radius: 12px;
564
+ padding-bottom: 25px;
565
+ box-shadow: 0 4px 12px rgba(0,0,0,0.08);
566
+ position: relative;
567
+ overflow: hidden;
568
+ cursor: pointer;
569
+ transition: transform 0.2s;
570
+ }
571
+
572
+ .service-card:hover {
573
+ transform: translateY(-4px);
574
+ }
575
+
576
+ .service-wave-drop {
577
+ position: absolute;
578
+ top: 12px;
579
+ left: 12px;
580
+ z-index: 3;
581
+ background: rgba(255, 255, 255, 0.85);
582
+ border-radius: 50%;
583
+ padding: 6px;
584
+ box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
585
+ }
586
+
587
+ /* Optional hover effect */
588
+ .service-card:hover .service-wave-drop {
589
+ transform: scale(1.08);
590
+ transition: transform 0.25s ease;
591
+ }
592
+
593
+ .service-banner {
594
+ width: 100%;
595
+ height: 150px;
596
+ object-fit: cover;
597
+ }
598
+
599
+ .service-icon-badge {
600
+ width: 60px;
601
+ height: 60px;
602
+ background: #ffffff;
603
+ border-radius: 50%;
604
+ position: absolute;
605
+ top: 120px;
606
+ left: 50%;
607
+ transform: translateX(-50%);
608
+ box-shadow: 0 4px 8px rgba(0,0,0,0.1);
609
+ display: flex;
610
+ justify-content: center;
611
+ align-items: center;
612
+ }
613
+
614
+ .service-icon-badge img {
615
+ width: 32px;
616
+ height: 32px;
617
+ }
618
+
619
+
620
+ .services-footer {
621
+ margin-top: 30px;
622
+ }
623
+
624
+ .view-all-btn {
625
+ background: #fff;
626
+ border: 1px solid #1a73e8;
627
+ color: #1a73e8;
628
+ padding: 12px 28px;
629
+ border-radius: 30px;
630
+ font-size: 16px;
631
+ cursor: pointer;
632
+ }
633
+
634
+ .view-all-btn:hover {
635
+ background: #1a73e8;
636
+ color: #fff;
637
+ }
638
+
639
+ /* Responsive */
640
+ @media (max-width: 992px) {
641
+ .services-grid {
642
+ grid-template-columns: repeat(2, 1fr);
643
+ }
644
+ }
645
+
646
+ @media (max-width: 576px) {
647
+ .services-grid {
648
+ grid-template-columns: 1fr;
649
+ }
650
+ }
651
+
652
+
653
+ /* SERVICE GRID WRAPPER */
654
+ .mcd-service-wrapper {
655
+ width: 100%;
656
+ padding: 40px 0;
657
+ background: #f7faff;
658
+ text-align: center;
659
+ }
660
+
661
+ .mcd-service-title {
662
+ font-size: 22px;
663
+ font-weight: 700;
664
+ color: #002b5c;
665
+ margin-bottom: 25px;
666
+ }
667
+
668
+ /* GRID (4 per row like KSMART) */
669
+ .mcd-service-grid {
670
+ max-width: 90%;
671
+ margin: auto;
672
+ display: grid;
673
+ grid-template-columns: repeat(4, 1fr);
674
+ gap: 22px;
675
+ }
676
+
677
+ /* Card */
678
+ .mcd-service-card {
679
+ background: #fff;
680
+ height: 70px;
681
+ border-radius: 10px;
682
+ display: flex;
683
+ align-items: center;
684
+ padding: 0 18px;
685
+ box-shadow: 0px 4px 12px rgba(0,0,0,0.08);
686
+ cursor: pointer;
687
+ transition: 0.25s ease;
688
+ }
689
+
690
+ .mcd-service-card:hover {
691
+ transform: translateY(-4px);
692
+ box-shadow: 0px 6px 16px rgba(0,0,0,0.12);
693
+ }
694
+
695
+ /* Left Icon */
696
+ .mcd-service-icon {
697
+ width: 40px;
698
+ height: 40px;
699
+ background: #eef3ff;
700
+ border-radius: 8px;
701
+ display: flex;
702
+ align-items: center;
703
+ justify-content: center;
704
+ font-size: 18px;
705
+ margin-right: 14px;
706
+ }
707
+
708
+ /* Text */
709
+ .mcd-service-text {
710
+ flex: 1;
711
+ text-align: left;
712
+ font-size: 15px;
713
+ font-weight: 600;
714
+ color: #2d3b55;
715
+ }
716
+
717
+ /* Arrow */
718
+ .mcd-service-arrow {
719
+ font-size: 22px;
720
+ font-weight: 700;
721
+ color: #4e5b78;
722
+ }
723
+
724
+ /* Responsive */
725
+ @media (max-width: 1024px) {
726
+ .mcd-service-grid {
727
+ grid-template-columns: repeat(3, 1fr);
728
+ }
729
+ }
730
+
731
+ @media (max-width: 768px) {
732
+ .mcd-service-grid {
733
+ grid-template-columns: repeat(2, 1fr);
734
+ }
735
+ }
736
+
737
+ @media (max-width: 500px) {
738
+ .mcd-service-grid {
739
+ grid-template-columns: 1fr;
740
+ }
741
+ }
742
+
743
+ .service-expand-btn-wrapper {
744
+ text-align: center;
745
+ margin-top: 20px;
746
+ }
747
+
748
+ .service-expand-btn {
749
+ background: #fff;
750
+ border: 1px solid #1a73e8;
751
+ color: #1a73e8;
752
+ padding: 10px 26px;
753
+ border-radius: 25px;
754
+ font-size: 16px;
755
+ cursor: pointer;
756
+ transition: 0.2s ease;
757
+ }
758
+
759
+ .service-expand-btn:hover {
760
+ background: #1a73e8;
761
+ color: #fff;
762
+ }
763
+
764
+ /* FULL SECTION BACKGROUND */
765
+ .news-events-container {
766
+ background: #f3f6fb;
767
+ padding: 60px 0 62px 0;
768
+ padding-bottom: 100px;
769
+ }
770
+
771
+ /* TITLE */
772
+ .news-title {
773
+ text-align: center;
774
+ font-size: 28px;
775
+ font-weight: 700;
776
+ margin-bottom: 28px;
777
+ color: #1f1f1f;
778
+ }
779
+
780
+ /* ==============================
781
+ FEATURED WHITE BOX
782
+ ============================== */
783
+ .featured-news {
784
+ width: 92%;
785
+ margin: 0 auto;
786
+ padding: 32px;
787
+ background: #ffffff;
788
+ display: flex;
789
+ gap: 32px;
790
+ border-radius: 14px;
791
+ box-shadow: 0px 6px 28px rgba(0,0,0,0.1);
792
+ position: relative;
793
+ z-index: 10;
794
+ }
795
+
796
+ .featured-left {
797
+ flex: 1.15;
798
+ position: relative;
799
+ }
800
+
801
+ .featured-img {
802
+ width: 100%;
803
+ height: 340px;
804
+ object-fit: cover;
805
+ border-radius: 12px;
806
+ }
807
+
808
+ .latest-tag {
809
+ position: absolute;
810
+ top: 18px;
811
+ left: 18px;
812
+ background: #0094ff;
813
+ padding: 6px 12px;
814
+ color: #fff;
815
+ border-radius: 6px;
816
+ font-size: 13px;
817
+ font-weight: 600;
818
+ }
819
+
820
+ .featured-right {
821
+ flex: 1;
822
+ text-align: left;
823
+ }
824
+
825
+ .featured-heading {
826
+ font-size: 22px;
827
+ font-weight: 700;
828
+ margin-bottom: 12px;
829
+ }
830
+
831
+ .featured-date {
832
+ font-size: 14px;
833
+ color: #7d7d7d;
834
+ margin-bottom: 12px;
835
+ }
836
+
837
+ .featured-desc {
838
+ font-size: 15px;
839
+ color: #474747;
840
+ line-height: 1.6;
841
+ margin-bottom: 20px;
842
+ }
843
+
844
+ .read-more {
845
+ color: #0074ff;
846
+ font-weight: 600;
847
+ }
848
+
849
+ /* ==============================
850
+ BLUE SLIDER SECTION
851
+ ============================== */
852
+ .news-slider-section {
853
+ background: linear-gradient(180deg, #005cc8, #003e85);
854
+ margin-top: -22px;
855
+ padding: 80px 0 60px 0;
856
+ position: relative;
857
+ z-index: 5;
858
+ }
859
+
860
+ /* SLIDER TRACK */
861
+ .slider {
862
+ display: flex;
863
+ gap: 26px;
864
+ justify-content: center;
865
+ padding: 0 80px;
866
+ transition: 0.3s ease;
867
+ }
868
+
869
+ /* SLIDER CARD */
870
+ .news-card {
871
+ width: 290px;
872
+ background: white;
873
+ border-radius: 14px;
874
+ box-shadow: 0px 4px 18px rgba(0, 0, 0, 0.18);
875
+ cursor: pointer;
876
+ overflow: hidden;
877
+ transition: 0.25s ease;
878
+ }
879
+
880
+ .news-card:hover {
881
+ transform: translateY(-4px);
882
+ }
883
+
884
+ .news-card-img {
885
+ width: 100%;
886
+ height: 150px;
887
+ object-fit: cover;
888
+ }
889
+
890
+ .news-card-title {
891
+ font-size: 15px;
892
+ font-weight: 600;
893
+ padding: 12px;
894
+ min-height: 55px;
895
+ text-align: left;
896
+ }
897
+
898
+ .news-card-date {
899
+ font-size: 13px;
900
+ color: #666;
901
+ padding: 0 12px 14px;
902
+ }
903
+
904
+ /* HIGHLIGHT CARD */
905
+ .highlight-card {
906
+ border: 2px solid #007aff;
907
+ box-shadow: 0px 0px 14px rgba(0, 122, 255, 0.4);
908
+ transform: scale(1.03);
909
+ }
910
+
911
+ /* ARROWS */
912
+ .slide-btn {
913
+ position: absolute;
914
+ top: 50%;
915
+ transform: translateY(-50%);
916
+ width: 48px;
917
+ height: 48px;
918
+ background: #ffffff;
919
+ border: none;
920
+ border-radius: 50%;
921
+ font-size: 26px;
922
+ cursor: pointer;
923
+ box-shadow: 0 4px 18px rgba(0,0,0,0.25);
924
+ display: flex;
925
+ align-items: center;
926
+ justify-content: center;
927
+ z-index: 999; /* <-- MAKE BUTTONS VISIBLE */
928
+ transition: 0.3s ease;
929
+ }
930
+
931
+
932
+ .slide-btn.left { left: 55px; }
933
+ .slide-btn.right { right: 55px; }
934
+
935
+ .slide-btn:hover {
936
+ background: #007bff;
937
+ color: #fff;
938
+ }
939
+
940
+
941
+ /* FOOTER BUTTON */
942
+ .news-footer {
943
+ position: relative;
944
+ margin-top: -45px; /* pull it up inside the blue bar */
945
+ text-align: center;
946
+ z-index: 10;
947
+ }
948
+
949
+
950
+ .view-all-btn {
951
+ padding: 12px 34px;
952
+ border-radius: 24px;
953
+ background: #ffffff;
954
+ color: #007aff;
955
+ border: 1px solid #007aff;
956
+
957
+ font-size: 15px;
958
+ cursor: pointer;
959
+ position: relative;
960
+
961
+ box-shadow: 0 6px 18px rgba(0,0,0,0.15);
962
+ transition: 0.3s ease;
963
+
964
+ /* This makes it float */
965
+ transform: translateY(50%);
966
+ }
967
+
968
+
969
+ .view-all-btn:hover {
970
+ background: #007aff;
971
+ color: white;
972
+ }
973
+
974
+ /* BLUE GRADIENT BACKGROUND */
975
+ .stats-section {
976
+ background: linear-gradient(180deg, #005cc8, #004a9a);
977
+ padding: 80px 0;
978
+ }
979
+
980
+ /* FLEX CONTAINER */
981
+ .stats-container {
982
+ width: 90%;
983
+ margin: 0 auto;
984
+ display: flex;
985
+ justify-content: space-between;
986
+ gap: 30px;
987
+ flex-wrap: wrap; /* For mobile responsiveness */
988
+ }
989
+
990
+
991
+ @media (max-width: 992px) {
992
+ .stats-container {
993
+ flex-wrap: wrap;
994
+ gap: 20px;
995
+ }
996
+ }
997
+
998
+ @media (max-width: 600px) {
999
+ .stats-card {
1000
+ padding: 30px 20px;
1001
+ }
1002
+
1003
+ .stats-value {
1004
+ font-size: 26px;
1005
+ }
1006
+ }
1007
+
1008
+
1009
+ /* Section Container */
1010
+ .videos-section {
1011
+ padding: 60px 0;
1012
+ text-align: center;
1013
+ background: #ffffff;
1014
+ }
1015
+
1016
+ /* Title */
1017
+ .videos-title {
1018
+ font-size: 26px;
1019
+ font-weight: 700;
1020
+ margin-bottom: 40px;
1021
+ color: #1a1a1a;
1022
+ }
1023
+
1024
+ /* Wrapper */
1025
+ .videos-wrapper {
1026
+ display: flex;
1027
+ gap: 40px;
1028
+ justify-content: center;
1029
+ flex-wrap: wrap;
1030
+ }
1031
+
1032
+ /* Video Card */
1033
+ .video-card {
1034
+ background: #fff;
1035
+ padding: 12px;
1036
+ border-radius: 16px;
1037
+ box-shadow: 0 6px 20px rgba(0, 0, 0, 0.1);
1038
+ transition: all 0.3s ease;
1039
+ width: 500px;
1040
+ }
1041
+
1042
+ .video-card:hover {
1043
+ transform: translateY(-10px);
1044
+ box-shadow: 0 12px 30px rgba(0, 0, 0, 0.18);
1045
+ }
1046
+
1047
+ /* YouTube iframe */
1048
+ .video-card iframe {
1049
+ width: 100%;
1050
+ height: 280px;
1051
+ border-radius: 12px;
1052
+ border: none;
1053
+ }
1054
+
1055
+ /* Mobile responsiveness */
1056
+ @media (max-width: 768px) {
1057
+ .video-card {
1058
+ width: 90%;
1059
+ }
1060
+
1061
+ .video-card iframe {
1062
+ height: 220px;
1063
+ }
1064
+ }
1065
+
1066
+ /* ================================
1067
+ MAIN FOOTER WRAPPER (KSMART STYLE)
1068
+ ================================ */
1069
+ .footer-wrapper {
1070
+ background: #003c8f;
1071
+ color: #ffffff;
1072
+ padding: 0 0 15px;
1073
+ font-family: "Inter", sans-serif;
1074
+ }
1075
+
1076
+ /* ================================
1077
+ TOP LOGO STRIP
1078
+ ================================ */
1079
+ /* White background strip behind logos */
1080
+ .footer-logos {
1081
+ width: 100%;
1082
+ background: #ffffff; /* White background */
1083
+ padding: 25px 0; /* Vertical spacing like KSMART */
1084
+ display: flex;
1085
+ justify-content: center;
1086
+ align-items: center;
1087
+ gap: 60px; /* Space between logos */
1088
+ border-bottom: 1px solid #e5e5e5; /* Light divider line */
1089
+ }
1090
+
1091
+ /* Ensure logos look clean */
1092
+ .footer-logos img {
1093
+ height: 55px;
1094
+ object-fit: contain;
1095
+ opacity: 1;
1096
+ }
1097
+
1098
+ /* ================================
1099
+ MAIN GRID (5 COLUMNS LIKE KSMART)
1100
+ ================================ */
1101
+ .footer-grid {
1102
+ display: grid;
1103
+ grid-template-columns: 1.8fr 1fr 1fr 1fr;
1104
+ padding: 0 90px;
1105
+ gap: 40px;
1106
+ }
1107
+
1108
+ .footer-grid h3 {
1109
+ font-size: 17px;
1110
+ margin-bottom: 16px;
1111
+ font-weight: 600;
1112
+ }
1113
+
1114
+ .footer-grid p {
1115
+ margin: 4px 0;
1116
+ font-size: 14px;
1117
+ opacity: 0.92;
1118
+ line-height: 1.5;
1119
+ }
1120
+
1121
+ /* ================================
1122
+ CONTACT BUTTON (KSMART STYLE)
1123
+ ================================ */
1124
+ .contact-btn {
1125
+ margin-top: 18px;
1126
+ background: transparent;
1127
+ border: 1px solid #ffffff;
1128
+ color: #ffffff;
1129
+ padding: 8px 22px;
1130
+ border-radius: 20px;
1131
+ cursor: pointer;
1132
+ transition: 0.3s;
1133
+ }
1134
+
1135
+ .contact-btn:hover {
1136
+ background: #ffffff;
1137
+ color: #003c8f;
1138
+ }
1139
+
1140
+ /* ================================
1141
+ FEEDBACK BOX (KSMART STYLE)
1142
+ ================================ */
1143
+ .feedback-btn {
1144
+ margin-top: 10px;
1145
+ background: #ffffff;
1146
+ color: #003c8f;
1147
+ padding: 8px 18px;
1148
+ border-radius: 22px;
1149
+ border: none;
1150
+ cursor: pointer;
1151
+ transition: 0.3s ease;
1152
+ }
1153
+
1154
+ .feedback-btn:hover {
1155
+ background: #d8e7ff;
1156
+ }
1157
+
1158
+ /* ================================
1159
+ APP STORE BUTTONS (if you enable)
1160
+ ================================ */
1161
+ .app-img {
1162
+ display: block;
1163
+ height: 45px;
1164
+ margin-top: 12px;
1165
+ }
1166
+
1167
+ /* ================================
1168
+ DIVIDER
1169
+ ================================ */
1170
+ .footer-bottom {
1171
+ text-align: center;
1172
+ margin-top: 40px;
1173
+ }
1174
+
1175
+ .footer-bottom .copyright {
1176
+ font-size: 14px;
1177
+ opacity: 0.9;
1178
+ line-height: 1.6;
1179
+ margin-bottom: 8px;
1180
+ }
1181
+
1182
+ /* Social Icons (If enabled later) */
1183
+ .social-icons {
1184
+ display: flex;
1185
+ justify-content: center;
1186
+ gap: 15px;
1187
+ margin-top: 10px;
1188
+ }
1189
+ .social-icons svg {
1190
+ color: #fff;
1191
+ font-size: 18px;
1192
+ cursor: pointer;
1193
+ transition: 0.3s;
1194
+ }
1195
+ .social-icons svg:hover {
1196
+ opacity: 0.6;
1197
+ }
1198
+
1199
+ /* --------------------------- */
1200
+ /* BASE STATS CARD DESIGN */
1201
+ /* --------------------------- */
1202
+
1203
+ .stats-card {
1204
+ position: relative; /* needed for waves */
1205
+ background: #ffffff;
1206
+ padding: 40px 30px;
1207
+ flex: 1;
1208
+ min-width: 260px;
1209
+ border-radius: 20px;
1210
+ text-align: center;
1211
+ box-shadow: 0px 6px 18px rgba(0, 0, 0, 0.15);
1212
+ transition: all 0.28s ease;
1213
+ overflow: hidden; /* so wave stays inside */
1214
+ }
1215
+
1216
+ /* Hover effect */
1217
+ .stats-card:hover {
1218
+ transform: translateY(-8px) scale(1.03);
1219
+ box-shadow: 0px 12px 24px rgba(0,0,0,0.22);
1220
+ }
1221
+
1222
+ /* --------------------------- */
1223
+ /* TEXT INSIDE CARD */
1224
+ /* --------------------------- */
1225
+
1226
+ .stats-value {
1227
+ font-size: 32px;
1228
+ font-weight: 800;
1229
+ color: #eb1f74;
1230
+ margin-bottom: 12px;
1231
+ position: relative;
1232
+ z-index: 3;
1233
+ }
1234
+
1235
+ .stats-title {
1236
+ font-size: 18px;
1237
+ font-weight: 700;
1238
+ color: #003c80;
1239
+ margin-bottom: 10px;
1240
+ position: relative;
1241
+ z-index: 3;
1242
+ }
1243
+
1244
+ .stats-desc {
1245
+ font-size: 14px;
1246
+ color: #000000;
1247
+ line-height: 1.5;
1248
+ position: relative;
1249
+ z-index: 3;
1250
+ }
1251
+
1252
+ /* --------------------------- */
1253
+ /* WAVE PATTERN BACKGROUND */
1254
+ /* --------------------------- */
1255
+
1256
+ .stats-card::before {
1257
+ content: "";
1258
+ position: absolute;
1259
+ bottom: -20px;
1260
+ left: -10%;
1261
+ width: 150%;
1262
+ height: 140px;
1263
+ background: linear-gradient(135deg, #5cb6ff 0%, #0077d8 100%);
1264
+ border-radius: 40%;
1265
+ opacity: 0.45;
1266
+ transform: rotate(-4deg);
1267
+ z-index: 1;
1268
+ }
1269
+
1270
+ .stats-card::after {
1271
+ content: "";
1272
+ position: absolute;
1273
+ bottom: -40px;
1274
+ right: -15%;
1275
+ width: 170%;
1276
+ height: 180px;
1277
+ background: linear-gradient(135deg, #0059a8 0%, #003d73 100%);
1278
+ border-radius: 45%;
1279
+ opacity: 0.55;
1280
+ transform: rotate(6deg);
1281
+ z-index: 1;
1282
+ }
1283
+
1284
+ /* Thin abstract wave lines */
1285
+ .stats-card .wave-lines {
1286
+ position: absolute;
1287
+ bottom: 25px;
1288
+ left: 12%;
1289
+ width: 75%;
1290
+ height: 60px;
1291
+ background: repeating-linear-gradient(
1292
+ 90deg,
1293
+ rgba(0, 120, 190, 0.22) 0px,
1294
+ rgba(0, 120, 190, 0.22) 2px,
1295
+ transparent 2px,
1296
+ transparent 10px
1297
+ );
1298
+ opacity: 0.3;
1299
+ transform: skewX(-20deg);
1300
+ z-index: 2;
1301
+ }
1302
+
1303
+ .pattern-soft-curves {
1304
+ position: relative;
1305
+ overflow: hidden;
1306
+ background: #ffffff;
1307
+ border-radius: 16px;
1308
+ }
1309
+
1310
+ .pattern-soft-curves::before {
1311
+ content: "";
1312
+ position: absolute;
1313
+ width: 140%;
1314
+ height: 140%;
1315
+ top: -30%;
1316
+ left: -20%;
1317
+ background: radial-gradient(
1318
+ circle at 30% 30%,
1319
+ rgba(0, 160, 255, 0.18),
1320
+ transparent 60%
1321
+ );
1322
+ filter: blur(40px);
1323
+ }
1324
+
1325
+ .pattern-soft-curves::after {
1326
+ content: "";
1327
+ position: absolute;
1328
+ width: 160%;
1329
+ height: 100%;
1330
+ bottom: -50%;
1331
+ left: -20%;
1332
+ background: radial-gradient(
1333
+ circle at 70% 80%,
1334
+ rgba(0, 90, 200, 0.18),
1335
+ transparent 70%
1336
+ );
1337
+ filter: blur(38px);
1338
+ }
1339
+
1340
+ .pattern-sine-lines {
1341
+ position: relative;
1342
+ overflow: hidden;
1343
+ }
1344
+
1345
+ .pattern-sine-lines::before {
1346
+ content: "";
1347
+ position: absolute;
1348
+ bottom: 20px;
1349
+ width: 100%;
1350
+ height: 40px;
1351
+ background: repeating-linear-gradient(
1352
+ 90deg,
1353
+ rgba(0, 130, 200, 0.25) 0px,
1354
+ rgba(0, 130, 200, 0.25) 2px,
1355
+ transparent 2px,
1356
+ transparent 14px
1357
+ );
1358
+ transform: skewX(-20deg);
1359
+ opacity: 0.4;
1360
+ }
1361
+ .pattern-paper {
1362
+ position: relative;
1363
+ overflow: hidden;
1364
+ }
1365
+
1366
+ .pattern-paper::before {
1367
+ content: "";
1368
+ position: absolute;
1369
+ width: 120%;
1370
+ height: 50%;
1371
+ bottom: 0;
1372
+ left: 0;
1373
+ background: linear-gradient(180deg, #dff1ff, #b6daf7);
1374
+ border-top-left-radius: 50% 40%;
1375
+ border-top-right-radius: 50% 40%;
1376
+ }
1377
+
1378
+ .pattern-paper::after {
1379
+ content: "";
1380
+ position: absolute;
1381
+ width: 140%;
1382
+ height: 65%;
1383
+ bottom: -20%;
1384
+ left: -10%;
1385
+ background: linear-gradient(180deg, #9bccff, #4f8fe3);
1386
+ border-top-left-radius: 60% 40%;
1387
+ border-top-right-radius: 60% 40%;
1388
+ opacity: 0.6;
1389
+ }
1390
+ .pattern-blob {
1391
+ position: relative;
1392
+ overflow: hidden;
1393
+ }
1394
+
1395
+ .pattern-blob::before {
1396
+ content: "";
1397
+ position: absolute;
1398
+ width: 130%;
1399
+ height: 130%;
1400
+ top: -20%;
1401
+ left: -10%;
1402
+ background: radial-gradient(
1403
+ circle,
1404
+ rgba(0, 122, 255, 0.25) 0%,
1405
+ rgba(0, 122, 255, 0.05) 70%,
1406
+ transparent 100%
1407
+ );
1408
+ border-radius: 40%;
1409
+ transform: rotate(20deg);
1410
+ }
1411
+ .card-diagonal {
1412
+ position: relative;
1413
+ overflow: hidden;
1414
+ }
1415
+
1416
+ .card-diagonal::before {
1417
+ content: "";
1418
+ position: absolute;
1419
+ top: 0;
1420
+ right: -40%;
1421
+ width: 120%;
1422
+ height: 120%;
1423
+ background: linear-gradient(135deg, #d8e8ff, #c6dcff);
1424
+ transform: skewX(-18deg);
1425
+ opacity: 0.5;
1426
+ }
1427
+ .card-double-wave {
1428
+ position: relative;
1429
+ overflow: hidden;
1430
+ }
1431
+
1432
+ .card-double-wave::before {
1433
+ content: "";
1434
+ position: absolute;
1435
+ bottom: -25px;
1436
+ left: 0;
1437
+ width: 140%;
1438
+ height: 90px;
1439
+ background: #d6eaff;
1440
+ border-radius: 50%;
1441
+ opacity: 0.7;
1442
+ }
1443
+
1444
+ .card-double-wave::after {
1445
+ content: "";
1446
+ position: absolute;
1447
+ bottom: -45px;
1448
+ left: -10%;
1449
+ width: 150%;
1450
+ height: 120px;
1451
+ background: #bcd7ff;
1452
+ border-radius: 50%;
1453
+ opacity: 0.55;
1454
+ }
1455
+ .card-grid {
1456
+ background-image:
1457
+ linear-gradient(to right, rgba(0,0,0,0.06) 1px, transparent 1px),
1458
+ linear-gradient(to bottom, rgba(0,0,0,0.06) 1px, transparent 1px);
1459
+ background-size: 18px 18px;
1460
+ }
1461
+
1462
+ .card-soft-wave {
1463
+ position: relative;
1464
+ overflow: hidden;
1465
+ }
1466
+
1467
+ .card-soft-wave::after {
1468
+ content: "";
1469
+ position: absolute;
1470
+ bottom: -15px;
1471
+ left: 0;
1472
+ width: 120%;
1473
+ height: 80px;
1474
+ background: linear-gradient(135deg, #d7eaff, #b6d7ff);
1475
+ border-radius: 50%;
1476
+ opacity: 0.8;
1477
+ }
1478
+
1479
+ .card-glass {
1480
+ background: rgba(255,255,255,0.25);
1481
+ backdrop-filter: blur(10px);
1482
+ border: 1px solid rgba(255,255,255,0.35);
1483
+ border-radius: 14px;
1484
+ }
1485
+
1486
+ .card-stripes {
1487
+ background-image: repeating-linear-gradient(
1488
+ 135deg,
1489
+ rgba(0,0,0,0.03) 0px,
1490
+ rgba(0,0,0,0.03) 2px,
1491
+ transparent 2px,
1492
+ transparent 8px
1493
+ );
1494
+ }
1495
+
1496
+ .card-shine {
1497
+ background: linear-gradient(to bottom, rgba(255,255,255,0.6), rgba(255,255,255,0.3));
1498
+ }
1499
+
1500
+ .card-dots {
1501
+ background-image: radial-gradient(rgba(0,0,0,0.05) 1px, transparent 1px);
1502
+ background-size: 10px 10px;
1503
+ }
1504
+
1505
+ .card-gradient-border {
1506
+ position: relative;
1507
+ background: white;
1508
+ border-radius: 12px;
1509
+ }
1510
+
1511
+ .card-gradient-border::before {
1512
+ content:"";
1513
+ position:absolute;
1514
+ inset: -2px;
1515
+ background: linear-gradient(135deg, #004aad, #1ec0ff);
1516
+ border-radius: inherit;
1517
+ z-index:-1;
1518
+ }
1519
+
1520
+ .card-mini-wave::before {
1521
+ content:"";
1522
+ position:absolute;
1523
+ top:-10px;
1524
+ left:0;
1525
+ width:120%;
1526
+ height:40px;
1527
+ background: radial-gradient(circle at 50% 100%, #0077d8 40%, transparent 41%);
1528
+ }
1529
+
1530
+ .card-diagonal {
1531
+ background: linear-gradient(135deg, #ffffff 50%, #e7f3ff 50%);
1532
+ }
1533
+
1534
+ .card-inner-shadow {
1535
+ background: #fff;
1536
+ box-shadow: inset 0 8px 20px rgba(0,0,0,0.07);
1537
+ }
1538
+
1539
+ .pattern-mesh {
1540
+ background: radial-gradient(circle at 30% 40%, #d8f1ff, transparent 60%),
1541
+ radial-gradient(circle at 80% 80%, #c4e4ff, transparent 60%);
1542
+ }
1543
+
1544
+ .pattern-waves {
1545
+ position: relative;
1546
+ background: #e9f6ff;
1547
+ overflow: hidden;
1548
+ }
1549
+
1550
+ .pattern-waves::before {
1551
+ content: "";
1552
+ position: absolute;
1553
+ bottom: -20px;
1554
+ left: -10%;
1555
+ width: 100%;
1556
+ height: 120px;
1557
+ background: #8cc9ff;
1558
+ border-radius: 40%;
1559
+ opacity: 0.45;
1560
+ }
1561
+
1562
+ .pattern-waves::after {
1563
+ content: "";
1564
+ position: absolute;
1565
+ bottom: -50px;
1566
+ left: -20%;
1567
+ width: 160%;
1568
+ height: 140px;
1569
+ background: #3b82f6;
1570
+ border-radius: 45%;
1571
+ opacity: 0.6;
1572
+ }
1573
+
1574
+ .pattern-stripes {
1575
+ background: repeating-linear-gradient(
1576
+ 135deg,
1577
+ rgba(0, 42, 97, 0.06) 0px,
1578
+ rgba(0, 42, 97, 0.06) 3px,
1579
+ transparent 3px,
1580
+ transparent 12px
1581
+ );
1582
+ }
1583
+
1584
+ .pattern-microlines {
1585
+ background: repeating-linear-gradient(
1586
+ 90deg,
1587
+ rgba(0,0,0,0.05) 0px,
1588
+ rgba(0,0,0,0.05) 1px,
1589
+ transparent 1px,
1590
+ transparent 8px
1591
+ );
1592
+ }
1593
+
1594
+ .wave-animated {
1595
+ position: relative;
1596
+ overflow: hidden;
1597
+ }
1598
+ .wave-animated::before,
1599
+ .wave-animated::after {
1600
+ content: "";
1601
+ position: absolute;
1602
+ bottom: 0;
1603
+ left: -10%;
1604
+ width: 130%;
1605
+ height: 120px;
1606
+ background: var(--mcd-blue-2);
1607
+ opacity: 0.18;
1608
+ border-radius: 50%;
1609
+ animation: waveMove 6s ease-in-out infinite;
1610
+ }
1611
+
1612
+ .wave-animated::after {
1613
+ background: var(--mcd-blue-3);
1614
+ opacity: 0.25;
1615
+ animation-duration: 9s;
1616
+ animation-delay: -1.5s;
1617
+ }
1618
+
1619
+ @keyframes waveMove {
1620
+ 0% { transform: translateX(0) rotate(0deg); }
1621
+ 50% { transform: translateX(-25px) rotate(-2deg); }
1622
+ 100% { transform: translateX(0) rotate(0deg); }
1623
+ }
1624
+ .service-card-title{
1625
+ padding-bottom: 6vh;
1626
+ }
1627
+
1628
+ .service-title {
1629
+ position: absolute;
1630
+ bottom: 12px; /* move text higher/lower */
1631
+ left: 50%;
1632
+ transform: translateX(-50%);
1633
+ color: #1a1a1a;
1634
+ font-weight: 600;
1635
+ font-size: 16px;
1636
+ }
1637
+
1638
+ .playlist-btn {
1639
+ display: flex;
1640
+ align-items: center;
1641
+ justify-content: center;
1642
+ gap: 10px;
1643
+
1644
+ margin: 30px auto 0 auto;
1645
+ padding: 12px 28px;
1646
+
1647
+ width: fit-content;
1648
+ background: #0057C2; /* MCD Blue */
1649
+ color: #fff;
1650
+
1651
+ text-decoration: none;
1652
+ font-size: 16px;
1653
+ font-weight: 600;
1654
+
1655
+ border-radius: 30px;
1656
+ box-shadow: 0 4px 12px rgba(0,0,0,0.15);
1657
+
1658
+ transition: 0.3s ease;
1659
+ }
1660
+
1661
+ .playlist-btn:hover {
1662
+ background: #003C8F;
1663
+ transform: translateY(-2px);
1664
+ }
1665
+
1666
+ .yt-icon {
1667
+ width: 22px;
1668
+ height: 22px;
1669
+ }
1670
+
1671
+ .playlist-btn-outline {
1672
+ display: flex;
1673
+ align-items: center;
1674
+ justify-content: center;
1675
+ gap: 10px;
1676
+
1677
+ margin: 30px auto 0;
1678
+ padding: 12px 28px;
1679
+
1680
+ background: #ffffff;
1681
+ color: #0057C2;
1682
+ border: 2px solid #0057C2;
1683
+
1684
+ border-radius: 30px;
1685
+ font-size: 16px;
1686
+ font-weight: 600;
1687
+ text-decoration: none;
1688
+
1689
+ transition: 0.3s ease;
1690
+ }
1691
+
1692
+ .playlist-btn-outline:hover {
1693
+ background: #0057C2;
1694
+ color: #ffffff;
1695
+ }
1696
+
1697
+
1698
+ .playlist-btn-red {
1699
+ display: flex;
1700
+ align-items: center;
1701
+ justify-content: center;
1702
+ gap: 10px;
1703
+
1704
+ margin: 30px auto 0;
1705
+ padding: 12px 28px;
1706
+
1707
+ background: #FF0000;
1708
+ color: #ffffff;
1709
+ border-radius: 30px;
1710
+
1711
+ font-size: 16px;
1712
+ font-weight: 600;
1713
+ text-decoration: none;
1714
+
1715
+ box-shadow: 0 4px 12px rgba(255,0,0,0.4);
1716
+ transition: 0.3s ease;
1717
+ }
1718
+
1719
+ .playlist-btn-red:hover {
1720
+ background: #cc0000;
1721
+ transform: translateY(-2px);
1722
+ }
1723
+
1724
+ .playlist-btn-gradient {
1725
+ display: flex;
1726
+ align-items: center;
1727
+ justify-content: center;
1728
+ gap: 10px;
1729
+
1730
+ margin: 30px auto 0;
1731
+ padding: 12px 30px;
1732
+
1733
+ background: linear-gradient(90deg, #003C8F, #0057C2);
1734
+ color: #ffffff;
1735
+
1736
+ border-radius: 35px;
1737
+ font-size: 16px;
1738
+ font-weight: 600;
1739
+ text-decoration: none;
1740
+
1741
+ box-shadow: 0 4px 16px rgba(0,0,0,0.2);
1742
+ transition: 0.3s ease;
1743
+ }
1744
+
1745
+ .playlist-btn-gradient:hover {
1746
+ background: linear-gradient(90deg, #002F70, #004EAF);
1747
+ transform: translateY(-3px);
1748
+ }
1749
+
1750
+ .footer-separator {
1751
+ width: 90%;
1752
+ height: 1px;
1753
+ background-color: rgba(255, 255, 255, 0.3); /* soft white line */
1754
+ margin: 20px auto;
1755
+ border: none;
1756
+ }
1757
+
1758
+
1759
+ .header-login-dropdown {
1760
+ position: relative;
1761
+ display: inline-block;
1762
+ }
1763
+
1764
+
1765
+ .login-dropdown-menu {
1766
+ position: absolute;
1767
+ top: 110%;
1768
+ right: 0;
1769
+ background: #fff;
1770
+ border-radius: 6px;
1771
+ box-shadow: 0px 4px 12px rgba(0,0,0,0.15);
1772
+ width: 180px;
1773
+ z-index: 999;
1774
+ }
1775
+
1776
+ .dropdown-item {
1777
+ display: block;
1778
+ padding: 10px 14px;
1779
+ font-size: 14px;
1780
+ color: #333;
1781
+ text-decoration: none;
1782
+ }
1783
+
1784
+ .dropdown-item:hover {
1785
+ background: #f5f5f5;
1786
+ }
1787
+
1788
+
1789
+
1790
+ .djb-contact-wrapper {
1791
+ padding: 60px 80px;
1792
+ background: #f8f9fb;
1793
+ }
1794
+
1795
+ .djb-contact-title {
1796
+ text-align: center;
1797
+ font-size: 32px;
1798
+ margin-bottom: 40px;
1799
+ }
1800
+
1801
+ .djb-contact-title span {
1802
+ color: #0b5cab;
1803
+ }
1804
+
1805
+ /* GRID */
1806
+ .djb-contact-grid {
1807
+ display: grid;
1808
+ grid-template-columns: 1fr 1fr;
1809
+ gap: 30px;
1810
+ }
1811
+
1812
+ /* LEFT CARD */
1813
+ .djb-contact-info {
1814
+ background: #fff;
1815
+ padding: 30px;
1816
+ border-radius: 10px;
1817
+ box-shadow: 0 4px 20px rgba(0,0,0,0.08);
1818
+ }
1819
+
1820
+ .info-item {
1821
+ display: flex;
1822
+ gap: 14px;
1823
+ margin-bottom: 20px;
1824
+ }
1825
+
1826
+ .info-item .icon {
1827
+ width: 42px;
1828
+ height: 42px;
1829
+ border-radius: 50%;
1830
+ background: #eaf2fb;
1831
+ display: flex;
1832
+ align-items: center;
1833
+ justify-content: center;
1834
+ font-size: 18px;
1835
+ }
1836
+
1837
+ .info-item h4 {
1838
+ margin: 0;
1839
+ font-size: 16px;
1840
+ }
1841
+
1842
+ .info-item p {
1843
+ margin: 4px 0 0;
1844
+ color: #555;
1845
+ font-size: 14px;
1846
+ }
1847
+
1848
+ .djb-map {
1849
+ margin-top: 20px;
1850
+ border-radius: 8px;
1851
+ overflow: hidden;
1852
+ }
1853
+
1854
+ /* RIGHT CARD */
1855
+ .djb-contact-form {
1856
+ background: #fff;
1857
+ padding: 30px;
1858
+ border-radius: 10px;
1859
+ }
1860
+
1861
+ .djb-contact-form form {
1862
+ display: flex;
1863
+ flex-direction: column;
1864
+ gap: 16px;
1865
+ }
1866
+
1867
+ .form-row {
1868
+ display: flex;
1869
+ gap: 16px;
1870
+ }
1871
+
1872
+ .form-row input {
1873
+ flex: 1;
1874
+ }
1875
+
1876
+ .djb-contact-form input,
1877
+ .djb-contact-form textarea {
1878
+ padding: 12px;
1879
+ border: 1px solid #dcdcdc;
1880
+ border-radius: 6px;
1881
+ font-size: 14px;
1882
+ }
1883
+
1884
+ .djb-submit-btn {
1885
+ align-self: center;
1886
+ margin-top: 10px;
1887
+ padding: 10px 28px;
1888
+ background: #0b5cab;
1889
+ color: #fff;
1890
+ border: none;
1891
+ border-radius: 22px;
1892
+ cursor: pointer;
1893
+ font-size: 14px;
1894
+ }
1895
+
1896
+ .djb-submit-btn:hover {
1897
+ background: #094a8c;
1898
+ }
1899
+
1900
+ /* RESPONSIVE */
1901
+ @media (max-width: 900px) {
1902
+ .djb-contact-grid {
1903
+ grid-template-columns: 1fr;
1904
+ }
1905
+
1906
+ .djb-contact-wrapper {
1907
+ padding: 40px 20px;
1908
+ }
1909
+ }
1910
+
1911
+ /* =============================== */
1912
+ /* Legacy DJB Contact Section */
1913
+ /* =============================== */
1914
+
1915
+ .djb-legacy-contact {
1916
+ background: #ffffff;
1917
+ padding: 40px 80px;
1918
+ }
1919
+
1920
+ .legacy-container {
1921
+ max-width: 1100px;
1922
+ margin: 0 auto;
1923
+ font-size: 14px;
1924
+ color: #111;
1925
+ }
1926
+
1927
+ .legacy-address {
1928
+ margin-bottom: 20px;
1929
+ line-height: 1.6;
1930
+ }
1931
+
1932
+ .djb-legacy-contact h4 {
1933
+ margin: 22px 0 12px;
1934
+ font-size: 15px;
1935
+ font-weight: 600;
1936
+ }
1937
+
1938
+ .legacy-list {
1939
+ list-style: none;
1940
+ padding: 0;
1941
+ margin: 0;
1942
+ padding-left: 20px;
1943
+ line-height: 1.7;
1944
+ }
1945
+
1946
+ .legacy-list li {
1947
+ display: flex;
1948
+ align-items: center;
1949
+ gap: 8px;
1950
+ margin-bottom: 10px;
1951
+ line-height: 1.5;
1952
+ }
1953
+
1954
+ .legacy-list svg {
1955
+ flex-shrink: 0;
1956
+ }
1957
+
1958
+ .legacy-links a {
1959
+ color: #0b5cab;
1960
+ font-weight: 500;
1961
+ text-decoration: none;
1962
+ }
1963
+
1964
+ .legacy-links a:hover {
1965
+ text-decoration: underline;
1966
+ }
1967
+
1968
+ .new-tag {
1969
+ color: #d93025;
1970
+ font-weight: bold;
1971
+ font-size: 12px;
1972
+ margin-left: 6px;
1973
+ }
1974
+ .djb-two-column {
1975
+ display: grid;
1976
+ grid-template-columns: 1fr 1fr;
1977
+ gap: 30px;
1978
+ }
1979
+
1980
+ .djb-contact-section {
1981
+ padding: 40px 80px;
1982
+ }
1983
+
1984
+ .section-top { background: #ffffff; }
1985
+ .section-bottom { background: #f8f9fb; }
1986
+
1987
+ .djb-left,
1988
+ .djb-right {
1989
+ background: #fff;
1990
+ padding: 24px;
1991
+ border-radius: 10px;
1992
+ box-shadow: 0 4px 18px rgba(0,0,0,0.08);
1993
+ }
1994
+
1995
+ .section-title {
1996
+ font-size: 18px;
1997
+ font-weight: 600;
1998
+ color: #0b5cab;
1999
+ margin-bottom: 20px;
2000
+ border-bottom: 1px solid #e6eef8;
2001
+ padding-bottom: 8px;
2002
+ }
2003
+
2004
+ .legacy-highlight {
2005
+ background: #eef5ff;
2006
+ padding: 14px;
2007
+ margin: 16px 0;
2008
+ border-left: 4px solid #0b5cab;
2009
+ }
2010
+
2011
+ .legacy-list li {
2012
+ margin-bottom: 6px;
2013
+ }
2014
+
2015
+ .legacy-links a {
2016
+ color: #0b5cab;
2017
+ font-weight: 500;
2018
+ text-decoration: none;
2019
+ }
2020
+
2021
+ .new-tag {
2022
+ color: red;
2023
+ font-weight: bold;
2024
+ }
2025
+
2026
+ .djb-contact-form {
2027
+ display: flex;
2028
+ flex-direction: column;
2029
+ gap: 14px;
2030
+ }
2031
+
2032
+ .form-row {
2033
+ display: flex;
2034
+ gap: 14px;
2035
+ }
2036
+
2037
+ .form-row input {
2038
+ flex: 1;
2039
+ }
2040
+
2041
+ .djb-contact-form input,
2042
+ .djb-contact-form textarea {
2043
+ padding: 12px;
2044
+ border: 1px solid #dcdcdc;
2045
+ border-radius: 6px;
2046
+ }
2047
+
2048
+ .djb-submit-btn {
2049
+ align-self: center;
2050
+ padding: 10px 30px;
2051
+ border-radius: 22px;
2052
+ background: #0b5cab;
2053
+ color: #fff;
2054
+ border: none;
2055
+ }
2056
+
2057
+ .info-item {
2058
+ display: flex;
2059
+ gap: 14px;
2060
+ margin-bottom: 16px;
2061
+ }
2062
+
2063
+ .info-item .icon {
2064
+ width: 40px;
2065
+ height: 40px;
2066
+ background: #eef5ff;
2067
+ border-radius: 50%;
2068
+ display: flex;
2069
+ align-items: center;
2070
+ justify-content: center;
2071
+ }
2072
+
2073
+ .djb-map {
2074
+ border-radius: 8px;
2075
+ overflow: hidden;
2076
+ }
2077
+
2078
+ @media (max-width: 900px) {
2079
+ .djb-two-column {
2080
+ grid-template-columns: 1fr;
2081
+ }
2082
+
2083
+ .djb-contact-section {
2084
+ padding: 30px 20px;
2085
+ }
2086
+ }
2087
+
2088
+ .contact-info-card {
2089
+ background: #fff;
2090
+ padding: 32px;
2091
+ border-radius: 12px;
2092
+ box-shadow: 0 8px 30px rgba(0,0,0,0.08);
2093
+ }
2094
+
2095
+ .info-grid {
2096
+ display: grid;
2097
+ grid-template-columns: repeat(3, 1fr);
2098
+ gap: 24px;
2099
+ align-items: stretch;
2100
+ }
2101
+
2102
+ .info-box {
2103
+ display: flex;
2104
+ flex-direction: column;
2105
+ justify-content: center; /* centers content vertically */
2106
+ text-align: center;
2107
+ padding: 24px 16px;
2108
+ border-radius: 10px;
2109
+ background: #f7faff;
2110
+ transition: background 0.2s ease, box-shadow 0.2s ease;
2111
+ }
2112
+
2113
+ .info-box:hover {
2114
+ background: #eef5ff;
2115
+ box-shadow: 0 6px 20px rgba(0,0,0,0.12);
2116
+ }
2117
+
2118
+
2119
+ .info-box .icon {
2120
+ width: 48px;
2121
+ height: 48px;
2122
+ margin: 0 auto 12px;
2123
+ background: #e6f0ff;
2124
+ border-radius: 50%;
2125
+ display: flex;
2126
+ align-items: center;
2127
+ justify-content: center;
2128
+ font-size: 20px;
2129
+ }
2130
+
2131
+ .info-box:hover .icon {
2132
+ background: #dce9ff;
2133
+ }
2134
+
2135
+
2136
+ .info-box h4 {
2137
+ margin-bottom: 8px;
2138
+ color: #0b5cab;
2139
+ }
2140
+
2141
+ .info-box p {
2142
+ font-size: 14px;
2143
+ color: #333;
2144
+ }
2145
+
2146
+ /* Responsive */
2147
+ @media (max-width: 768px) {
2148
+ .info-grid {
2149
+ grid-template-columns: 1fr;
2150
+ }
2151
+ }
2152
+
2153
+
2154
+ .modal-overlay {
2155
+ position: fixed;
2156
+ inset: 0;
2157
+ background: rgba(0,0,0,0.6);
2158
+ z-index: 9999;
2159
+ }
2160
+
2161
+ .modal-content {
2162
+ width: 80%;
2163
+ height: 80%;
2164
+ background: #fff;
2165
+ margin: 5% auto;
2166
+ position: relative;
2167
+ border-radius: 8px;
2168
+ }
2169
+
2170
+ .modal-content iframe {
2171
+ width: 100%;
2172
+ height: 100%;
2173
+ }
2174
+
2175
+ .modal-close {
2176
+ position: absolute;
2177
+ top: 8px;
2178
+ right: 12px;
2179
+ font-size: 18px;
2180
+ background: none;
2181
+ border: none;
2182
+ cursor: pointer;
2183
+ }
2184
+
2185
+ /* 🔹 Nav Hover Button (EXCEPT LOGIN) */
2186
+ /* 🔹 Nav Hover Button (EXCEPT LOGIN) */
2187
+ .mcd-nav .nav-hover-btn {
2188
+ padding: 8px 16px;
2189
+ border-radius: 999px;
2190
+ font-size: 14px;
2191
+ font-weight: 500;
2192
+ color: #003a8f;
2193
+ text-decoration: none; /* ✅ remove underline */
2194
+ transition: all 0.25s ease;
2195
+ }
2196
+
2197
+ .mcd-nav .nav-hover-btn:hover {
2198
+ background: #003a8f;
2199
+ color: #ffffff;
2200
+ text-decoration: none; /* ✅ ensure no underline on hover */
2201
+ box-shadow: 0 4px 10px rgba(0, 58, 143, 0.25);
2202
+ }
2203
+
2204
+ /* ================= ABOUT PAGE LAYOUT ================= */
2205
+
2206
+ /* Layout */
2207
+ .djb-layout {
2208
+ display: grid;
2209
+ grid-template-columns: 260px 1fr;
2210
+ gap: 24px;
2211
+ align-items: flex-start;
2212
+ }
2213
+
2214
+ /* Sticky sidebar */
2215
+ .djb-side-nav {
2216
+ position: sticky;
2217
+ top: 110px; /* below header */
2218
+ background: #ffffff;
2219
+ border-radius: 8px;
2220
+ box-shadow: 0 4px 14px rgba(0, 0, 0, 0.1);
2221
+ overflow: hidden;
2222
+ }
2223
+
2224
+ /* Sidebar title */
2225
+ .side-nav-title {
2226
+ background: #0b4da2;
2227
+ color: #fff;
2228
+ padding: 12px 16px;
2229
+ font-size: 15px;
2230
+ font-weight: 600;
2231
+ }
2232
+
2233
+ /* Sidebar buttons */
2234
+ .djb-side-nav button {
2235
+ display: block;
2236
+ width: 100%;
2237
+ padding: 12px 16px;
2238
+ border: none;
2239
+ background: #fff;
2240
+ text-align: left;
2241
+ font-size: 14px;
2242
+ cursor: pointer;
2243
+ border-bottom: 1px solid #e5e7eb;
2244
+ transition: background 0.2s ease;
2245
+ }
2246
+
2247
+ .djb-side-nav button:hover {
2248
+ background: #f3f6fb;
2249
+ }
2250
+
2251
+ /* Active menu */
2252
+ .djb-side-nav button.active {
2253
+ background: #ffc107;
2254
+ font-weight: 600;
2255
+ }
2256
+
2257
+ /* Content area */
2258
+ .djb-content {
2259
+ min-width: 0;
2260
+ }
2261
+
2262
+ /* Mobile fallback */
2263
+ @media (max-width: 900px) {
2264
+ .djb-layout {
2265
+ grid-template-columns: 1fr;
2266
+ }
2267
+
2268
+ .djb-side-nav {
2269
+ position: relative;
2270
+ top: auto;
2271
+ }
2272
+ }
2273
+
2274
+ /* HERO */
2275
+ .about-hero {
2276
+ background: linear-gradient(135deg, #0b5cab, #083a73);
2277
+ color: #fff;
2278
+ padding: 70px 20px;
2279
+ text-align: center;
2280
+ }
2281
+
2282
+ .about-container {
2283
+ padding: 40px 80px;
2284
+ background: #fff;
2285
+ }
2286
+
2287
+ .about-section {
2288
+ margin-bottom: 36px;
2289
+ }
2290
+
2291
+ .about-section h2 {
2292
+ color: #0b5cab;
2293
+ font-size: 24px;
2294
+ margin-bottom: 12px;
2295
+ border-bottom: 2px solid #e6eef7;
2296
+ padding-bottom: 6px;
2297
+ }
2298
+
2299
+ .about-list {
2300
+ padding-left: 20px;
2301
+ line-height: 1.8;
2302
+ }
2303
+
2304
+ .about-table-wrapper {
2305
+ overflow-x: auto;
2306
+ }
2307
+
2308
+ .about-table {
2309
+ width: 100%;
2310
+ border-collapse: collapse;
2311
+ }
2312
+
2313
+ .about-table th,
2314
+ .about-table td {
2315
+ border: 1px solid #ddd;
2316
+ padding: 10px;
2317
+ }
2318
+
2319
+ .about-table th {
2320
+ background: #f3f7fb;
2321
+ }
2322
+
2323
+ /* ===============================
2324
+ ABOUT PAGE – KSMART STYLE
2325
+ DJB COLOR TUNING
2326
+ =============================== */
2327
+
2328
+ /* Page background */
2329
+ body {
2330
+ background: #f4f6f8;
2331
+ }
2332
+
2333
+ /* Main wrapper */
2334
+ .djb-page-wrapper {
2335
+ max-width: 1200px;
2336
+ margin: 0 auto;
2337
+ padding: 24px 16px 60px;
2338
+ }
2339
+
2340
+ /* Page title */
2341
+ .djb-page-title {
2342
+ font-size: 26px;
2343
+ font-weight: 600;
2344
+ color: #0b5cab;
2345
+ margin-bottom: 20px;
2346
+ }
2347
+
2348
+ /* Each section becomes a card */
2349
+ .djb-section {
2350
+ background: #ffffff;
2351
+ border: 1px solid #e2e6ea;
2352
+ border-radius: 4px;
2353
+ padding: 20px 24px;
2354
+ margin-bottom: 20px;
2355
+ }
2356
+
2357
+ /* Section heading */
2358
+ .djb-section-title {
2359
+ font-size: 18px;
2360
+ font-weight: 600;
2361
+ color: #083a73;
2362
+ margin-bottom: 12px;
2363
+ padding-bottom: 6px;
2364
+ border-bottom: 1px solid #e3e9f1;
2365
+ }
2366
+
2367
+ /* Paragraph text */
2368
+ .djb-section p {
2369
+ font-size: 14.5px;
2370
+ line-height: 1.75;
2371
+ color: #333;
2372
+ margin-bottom: 10px;
2373
+ }
2374
+
2375
+ /* Lists */
2376
+ .djb-list {
2377
+ padding-left: 18px;
2378
+ margin-top: 8px;
2379
+ }
2380
+
2381
+ .djb-list li {
2382
+ font-size: 14.5px;
2383
+ line-height: 1.7;
2384
+ margin-bottom: 6px;
2385
+ color: #333;
2386
+ }
2387
+
2388
+ /* ===============================
2389
+ TABLES – KSMART STYLE
2390
+ =============================== */
2391
+
2392
+ .djb-table {
2393
+ width: 100%;
2394
+ border-collapse: collapse;
2395
+ margin-top: 12px;
2396
+ font-size: 14px;
2397
+ }
2398
+
2399
+ .djb-table th {
2400
+ background: #f1f5fb;
2401
+ color: #083a73;
2402
+ font-weight: 600;
2403
+ padding: 10px;
2404
+ border: 1px solid #d9e1ec;
2405
+ text-align: left;
2406
+ }
2407
+
2408
+ .djb-table td {
2409
+ padding: 10px;
2410
+ border: 1px solid #e0e0e0;
2411
+ color: #333;
2412
+ }
2413
+
2414
+ .djb-table tr:nth-child(even) {
2415
+ background: #fafbfd;
2416
+ }
2417
+
2418
+ /* Table container look */
2419
+ .djb-table-wrapper {
2420
+ border: 1px solid #e2e6ea;
2421
+ border-radius: 4px;
2422
+ overflow-x: auto;
2423
+ margin-top: 10px;
2424
+ }
2425
+
2426
+ /* ===============================
2427
+ MOBILE
2428
+ =============================== */
2429
+
2430
+ @media (max-width: 768px) {
2431
+ .djb-page-title {
2432
+ font-size: 22px;
2433
+ }
2434
+
2435
+ .djb-section {
2436
+ padding: 16px;
2437
+ }
2438
+
2439
+ .djb-section-title {
2440
+ font-size: 17px;
2441
+ }
2442
+
2443
+ .djb-section p,
2444
+ .djb-list li {
2445
+ font-size: 14px;
2446
+ }
2447
+
2448
+ .djb-table {
2449
+ font-size: 13px;
2450
+ }
2451
+ }
2452
+
2453
+
2454
+ /* Tabs */
2455
+ .djb-tabs {
2456
+ display: flex;
2457
+ gap: 8px;
2458
+ margin-bottom: 20px;
2459
+ flex-wrap: wrap;
2460
+ }
2461
+
2462
+ .djb-tabs button {
2463
+ padding: 8px 14px;
2464
+ background: #f1f5fb;
2465
+ border: 1px solid #d6e0ef;
2466
+ border-radius: 4px;
2467
+ cursor: pointer;
2468
+ font-size: 14px;
2469
+ color: #083a73;
2470
+ }
2471
+
2472
+ .djb-tabs button.active {
2473
+ background: #0b5cab;
2474
+ color: #fff;
2475
+ border-color: #0b5cab;
2476
+ }
2477
+
2478
+ /* Cards */
2479
+ .djb-section {
2480
+ background: #ffffff;
2481
+ border: 1px solid #e2e6ea;
2482
+ border-radius: 4px;
2483
+ padding: 20px;
2484
+ margin-bottom: 20px;
2485
+ }
2486
+
2487
+ .djb-table tbody tr:hover {
2488
+ background: #f1f8ff;
2489
+ }
2490
+
2491
+ .djb-table td:last-child {
2492
+ font-weight: 600;
2493
+ color: #076db1;
2494
+ }
2495
+
2496
+ /* Revenue Bars – CSS only */
2497
+ .djb-revenue-table .revenue-cell {
2498
+ display: flex;
2499
+ flex-direction: column;
2500
+ gap: 6px;
2501
+ }
2502
+
2503
+ .revenue-value {
2504
+ font-weight: 600;
2505
+ color: #076db1;
2506
+ }
2507
+
2508
+ .revenue-bar {
2509
+ width: 100%;
2510
+ height: 8px;
2511
+ background: #e6eef7;
2512
+ border-radius: 4px;
2513
+ overflow: hidden;
2514
+ }
2515
+
2516
+ .revenue-bar .bar {
2517
+ height: 100%;
2518
+ background: linear-gradient(90deg, #076db1, #2fa4ff);
2519
+ border-radius: 4px;
2520
+ transition: width 0.4s ease;
2521
+ }
2522
+
2523
+ /* Width presets */
2524
+ .bar-36 { width: 36%; }
2525
+ .bar-52 { width: 52%; }
2526
+ .bar-68 { width: 68%; }
2527
+ .bar-69 { width: 69%; }
2528
+ .bar-81 { width: 81%; }
2529
+ .bar-86 { width: 86%; }
2530
+ .bar-91 { width: 91%; }
2531
+ .bar-96 { width: 96%; }
2532
+ .bar-100 { width: 100%; }
2533
+
2534
+ /* Hover enhancement */
2535
+ .djb-revenue-table tbody tr:hover .bar {
2536
+ filter: brightness(1.1);
2537
+ }
2538
+
2539
+ .djb-about-layout {
2540
+ display: grid;
2541
+ grid-template-columns: 260px 1fr;
2542
+ gap: 30px;
2543
+ margin-top: 20px;
2544
+ }
2545
+
2546
+ /* Sidebar */
2547
+ .djb-side-nav {
2548
+ background: #ffffff;
2549
+ border-radius: 6px;
2550
+ box-shadow: 0 4px 10px rgba(0, 0, 0, 0.12);
2551
+ overflow: hidden;
2552
+ }
2553
+
2554
+ .side-nav-title {
2555
+ background: #0b4ea2;
2556
+ color: #fff;
2557
+ padding: 14px 16px;
2558
+ font-weight: 600;
2559
+ }
2560
+
2561
+ .djb-side-nav ul {
2562
+ list-style: none;
2563
+ margin: 0;
2564
+ padding: 0;
2565
+ }
2566
+
2567
+ .djb-side-nav li {
2568
+ padding: 12px 16px;
2569
+ border-bottom: 1px solid #e0e0e0;
2570
+ cursor: pointer;
2571
+ }
2572
+
2573
+ .djb-side-nav li:hover {
2574
+ background: #f5f7fa;
2575
+ }
2576
+
2577
+ .djb-side-nav li.active {
2578
+ background: #f1f8ff;
2579
+ font-weight: 600;
2580
+ }
2581
+
2582
+ /* Content */
2583
+ .djb-about-content {
2584
+ width: 100%;
2585
+ background: #fff;
2586
+ padding-top: 10px !important;
2587
+ overflow: hidden; /* IMPORTANT */
2588
+ }
2589
+
2590
+ /* Responsive */
2591
+ @media (max-width: 900px) {
2592
+ .djb-about-layout {
2593
+ grid-template-columns: 1fr;
2594
+ }
2595
+ }
2596
+
2597
+
2598
+ /* ===== LAYOUT ===== */
2599
+ .djb-about-layout {
2600
+ display: grid;
2601
+ grid-template-columns: 280px 1fr;
2602
+ gap: 24px;
2603
+ margin-top: 20px;
2604
+ }
2605
+
2606
+ /* ===== SIDE NAV ===== */
2607
+ .djb-side-nav {
2608
+ background: #ffffff;
2609
+ border-radius: 8px;
2610
+ box-shadow: 0 4px 12px rgba(0,0,0,0.12);
2611
+ height: fit-content;
2612
+ position: sticky;
2613
+ top: 110px;
2614
+ }
2615
+
2616
+ .side-nav-header {
2617
+ background: #0b4fa3;
2618
+ color: #fff;
2619
+ padding: 12px 16px;
2620
+ font-size: 15px;
2621
+ font-weight: 600;
2622
+ border-radius: 8px 8px 0 0;
2623
+ }
2624
+
2625
+ .djb-side-nav ul {
2626
+ list-style: none;
2627
+ padding: 0;
2628
+ margin: 0;
2629
+ }
2630
+
2631
+ .djb-side-nav li {
2632
+ border-bottom: 1px solid #e5e5e5;
2633
+ }
2634
+
2635
+ .djb-side-nav li button {
2636
+ width: 100%;
2637
+ background: none;
2638
+ border: none;
2639
+ text-align: left;
2640
+ padding: 12px 16px;
2641
+ font-size: 14px;
2642
+ cursor: pointer;
2643
+ }
2644
+
2645
+ .djb-side-nav li.active button {
2646
+ background: #f1f8ff;
2647
+ font-weight: 600;
2648
+ }
2649
+
2650
+ .djb-side-nav li button:hover {
2651
+ background: #f4f7ff;
2652
+ }
2653
+
2654
+ /* ===== MOBILE ===== */
2655
+ @media (max-width: 900px) {
2656
+ .djb-about-layout {
2657
+ grid-template-columns: 1fr;
2658
+ }
2659
+
2660
+ .djb-side-nav {
2661
+ position: relative;
2662
+ top: 0;
2663
+ }
2664
+ }
2665
+
2666
+
2667
+ /* ================= PAGE ================= */
2668
+ .org-page {
2669
+ width: 100%;
2670
+ }
2671
+
2672
+ /* ================= SCROLL (INSIDE CONTENT) ================= */
2673
+ .org-scroll {
2674
+ width: 100%;
2675
+ max-width: 100%;
2676
+ overflow-x: auto;
2677
+ overflow-y: hidden;
2678
+ }
2679
+
2680
+ /* ================= TREE ================= */
2681
+ .org-tree {
2682
+ width: 100%;
2683
+ max-width: 100%;
2684
+ margin: 0 auto;
2685
+ }
2686
+
2687
+ /* ================= NODE ================= */
2688
+ .org-node {
2689
+ display: flex;
2690
+ flex-direction: column;
2691
+ align-items: center;
2692
+ position: relative;
2693
+ text-align: center;
2694
+ }
2695
+
2696
+ /* ================= BOX ================= */
2697
+ .org-box {
2698
+ border: 2px solid #0b5fa5;
2699
+ background: #ffffff;
2700
+ padding: 6px 12px;
2701
+ border-radius: 6px;
2702
+ font-size: 12.5px;
2703
+ font-weight: 600;
2704
+ color: #0b5fa5;
2705
+ display: inline-flex;
2706
+ align-items: center;
2707
+ gap: 6px;
2708
+ white-space: nowrap;
2709
+ box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
2710
+ max-width: 160px;
2711
+ white-space: normal;
2712
+ text-align: center;
2713
+ word-break: break-word;
2714
+ }
2715
+
2716
+ /* ================= LEVEL STYLES ================= */
2717
+ .level-0 {
2718
+ background: #0b5fa5;
2719
+ color: #ffffff;
2720
+ font-size: 14px;
2721
+ font-weight: 700;
2722
+ }
2723
+
2724
+ .level-1 {
2725
+ background: #eaf2fb;
2726
+ }
2727
+
2728
+ .level-2 {
2729
+ background: #f4f8fc;
2730
+ }
2731
+
2732
+ /* 🔥 Allow wrapping ONLY from level-3 downward */
2733
+ .level-2 + .org-children,
2734
+ .level-3 + .org-children {
2735
+ flex-wrap: wrap;
2736
+ }
2737
+ /* ================= CHILDREN ================= */
2738
+ .org-children {
2739
+ display: flex;
2740
+ justify-content: center;
2741
+ align-items: flex-start;
2742
+ gap: 14px;
2743
+ margin-top: 16px;
2744
+ padding-top: 14px;
2745
+ position: relative;
2746
+ max-width: 100%;
2747
+ }
2748
+
2749
+ /* ================= CONNECTORS ================= */
2750
+ .org-children::before {
2751
+ content: "";
2752
+ position: absolute;
2753
+ top: 0;
2754
+ left: 50%;
2755
+ width: 2px;
2756
+ height: 14px;
2757
+ background: #0b5fa5;
2758
+ }
2759
+
2760
+ .org-node > .org-children > .org-node::before {
2761
+ content: "";
2762
+ position: absolute;
2763
+ top: -14px;
2764
+ left: 50%;
2765
+ width: 2px;
2766
+ height: 14px;
2767
+ background: #0b5fa5;
2768
+ }
2769
+
2770
+ .svg-org-wrapper {
2771
+ width: 100%;
2772
+ overflow-x: auto;
2773
+ padding: 16px;
2774
+ }
2775
+
2776
+ .svg-node {
2777
+ fill: #ffffff;
2778
+ stroke: #0b5fa5;
2779
+ stroke-width: 2;
2780
+ }
2781
+
2782
+ .svg-node.level-0 {
2783
+ fill: #0b5fa5;
2784
+ }
2785
+
2786
+ svg text {
2787
+ font-size: 12px;
2788
+ font-weight: 600;
2789
+ fill: #0b5fa5;
2790
+ }
2791
+
2792
+ .svg-node.level-0 + text {
2793
+ fill: #ffffff;
2794
+ }
2795
+
2796
+ .orgchart-viewport {
2797
+ width: 100%;
2798
+ height: calc(100vh - 260px); /* header + tabs */
2799
+ overflow: auto;
2800
+ background: #fff;
2801
+ border: 1px solid #e5e7eb;
2802
+ border-radius: 6px;
2803
+ }
2804
+
2805
+ /* SVG fills viewport */
2806
+ .orgchart-svg {
2807
+ width: 100%;
2808
+ height: 100%;
2809
+ }
2810
+
2811
+ /* Nodes */
2812
+ .svg-node {
2813
+ fill: #ffffff;
2814
+ stroke: #0b5fa5;
2815
+ stroke-width: 2;
2816
+ }
2817
+
2818
+ .svg-text {
2819
+ font-size: 12px;
2820
+ font-weight: 600;
2821
+ fill: #0b5fa5;
2822
+ pointer-events: none;
2823
+ }
2824
+
2825
+
2826
+
2827
+
2828
+ /* Premium Professional Organizational Chart - Version 4.0 */
2829
+
2830
+ :root {
2831
+ --primary-color: #667eea;
2832
+ --primary-dark: #5a67d8;
2833
+ --secondary-color: #f093fb;
2834
+ --accent-color: #4facfe;
2835
+ --success-color: #48bb78;
2836
+ --warning-color: #f6ad55;
2837
+ --danger-color: #fc8181;
2838
+ --dark: #1a202c;
2839
+ --gray-100: #f7fafc;
2840
+ --gray-200: #edf2f7;
2841
+ --gray-300: #e2e8f0;
2842
+ --gray-400: #cbd5e0;
2843
+ --gray-500: #a0aec0;
2844
+ --gray-600: #718096;
2845
+ --gray-700: #4a5568;
2846
+ --gray-800: #2d3748;
2847
+ --shadow-sm: 0 1px 3px 0 rgba(0, 0, 0, 0.1);
2848
+ --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
2849
+ --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
2850
+ --shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1);
2851
+ }
2852
+
2853
+ .org-chart-container {
2854
+ width: 100%;
2855
+ background: linear-gradient(135deg, #f7fafc 0%, #edf2f7 100%);
2856
+ padding: 24px;
2857
+ overflow-x: auto;
2858
+ overflow-y: auto;
2859
+ min-height: 650px;
2860
+ max-height: 800px;
2861
+ position: relative;
2862
+ box-sizing: border-box;
2863
+ border-radius: 16px;
2864
+ box-shadow: var(--shadow-xl);
2865
+ font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
2866
+ }
2867
+
2868
+ /* Chart Header */
2869
+ .chart-header {
2870
+ display: flex;
2871
+ justify-content: space-between;
2872
+ align-items: center;
2873
+ margin-bottom: 20px;
2874
+ padding-bottom: 16px;
2875
+ border-bottom: 2px solid var(--gray-300);
2876
+ }
2877
+
2878
+ .org-chart-title {
2879
+ font-size: 28px;
2880
+ font-weight: 800;
2881
+ color: var(--dark);
2882
+ margin: 0;
2883
+ text-transform: uppercase;
2884
+ letter-spacing: 1.2px;
2885
+ background: linear-gradient(135deg, var(--primary-color), var(--secondary-color));
2886
+ -webkit-background-clip: text;
2887
+ -webkit-text-fill-color: transparent;
2888
+ background-clip: text;
2889
+ }
2890
+
2891
+ .chart-stats {
2892
+ display: flex;
2893
+ gap: 16px;
2894
+ }
2895
+
2896
+ .stat-badge {
2897
+ display: flex;
2898
+ align-items: center;
2899
+ gap: 8px;
2900
+ background: white;
2901
+ padding: 10px 16px;
2902
+ border-radius: 12px;
2903
+ box-shadow: var(--shadow-md);
2904
+ border: 2px solid var(--gray-200);
2905
+ }
2906
+
2907
+ .stat-icon {
2908
+ font-size: 20px;
2909
+ }
2910
+
2911
+ .stat-value {
2912
+ font-size: 20px;
2913
+ font-weight: 700;
2914
+ color: var(--primary-color);
2915
+ }
2916
+
2917
+ .stat-label {
2918
+ font-size: 12px;
2919
+ color: var(--gray-600);
2920
+ font-weight: 500;
2921
+ }
2922
+
2923
+ /* Main Toolbar */
2924
+ .org-chart-toolbar {
2925
+ display: flex;
2926
+ justify-content: space-between;
2927
+ align-items: center;
2928
+ gap: 16px;
2929
+ margin-bottom: 16px;
2930
+ flex-wrap: wrap;
2931
+ background: white;
2932
+ padding: 16px 20px;
2933
+ border-radius: 12px;
2934
+ box-shadow: var(--shadow-md);
2935
+ border: 2px solid var(--gray-200);
2936
+ }
2937
+
2938
+ .toolbar-section {
2939
+ display: flex;
2940
+ align-items: center;
2941
+ gap: 12px;
2942
+ flex-wrap: wrap;
2943
+ }
2944
+
2945
+ /* Search Container */
2946
+ .search-container {
2947
+ display: flex;
2948
+ align-items: center;
2949
+ gap: 8px;
2950
+ background: var(--gray-100);
2951
+ border: 2px solid var(--gray-300);
2952
+ border-radius: 10px;
2953
+ padding: 4px 4px 4px 12px;
2954
+ transition: all 0.3s;
2955
+ min-width: 300px;
2956
+ }
2957
+
2958
+ .search-container:focus-within {
2959
+ border-color: var(--primary-color);
2960
+ background: white;
2961
+ box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1);
2962
+ }
2963
+
2964
+ .search-icon {
2965
+ font-size: 18px;
2966
+ color: var(--gray-500);
2967
+ }
2968
+
2969
+ .search-input {
2970
+ flex: 1;
2971
+ border: none;
2972
+ background: transparent;
2973
+ padding: 10px 8px;
2974
+ font-size: 14px;
2975
+ outline: none;
2976
+ color: var(--gray-800);
2977
+ font-weight: 500;
2978
+ }
2979
+
2980
+ .search-input::placeholder {
2981
+ color: var(--gray-400);
2982
+ }
2983
+
2984
+ .clear-search-btn {
2985
+ background: var(--danger-color);
2986
+ color: white;
2987
+ border: none;
2988
+ width: 28px;
2989
+ height: 28px;
2990
+ border-radius: 50%;
2991
+ cursor: pointer;
2992
+ font-size: 14px;
2993
+ display: flex;
2994
+ align-items: center;
2995
+ justify-content: center;
2996
+ transition: all 0.2s;
2997
+ font-weight: 700;
2998
+ }
2999
+
3000
+ .clear-search-btn:hover {
3001
+ background: #e53e3e;
3002
+ transform: scale(1.1);
3003
+ }
3004
+
3005
+ /* Button Groups */
3006
+ .button-group {
3007
+ display: flex;
3008
+ gap: 8px;
3009
+ align-items: center;
3010
+ }
3011
+
3012
+ /* Action Buttons */
3013
+ .action-btn {
3014
+ display: flex;
3015
+ align-items: center;
3016
+ gap: 8px;
3017
+ padding: 10px 18px;
3018
+ border-radius: 8px;
3019
+ cursor: pointer;
3020
+ font-size: 13px;
3021
+ font-weight: 600;
3022
+ transition: all 0.2s;
3023
+ white-space: nowrap;
3024
+ border: 2px solid transparent;
3025
+ }
3026
+
3027
+ .action-btn.primary {
3028
+ background: linear-gradient(135deg, var(--primary-color), var(--primary-dark));
3029
+ color: white;
3030
+ border-color: var(--primary-dark);
3031
+ }
3032
+
3033
+ .action-btn.primary:hover {
3034
+ transform: translateY(-2px);
3035
+ box-shadow: 0 6px 12px rgba(102, 126, 234, 0.3);
3036
+ }
3037
+
3038
+ .action-btn.secondary {
3039
+ background: white;
3040
+ color: var(--primary-color);
3041
+ border-color: var(--primary-color);
3042
+ }
3043
+
3044
+ .action-btn.secondary:hover {
3045
+ background: var(--primary-color);
3046
+ color: white;
3047
+ }
3048
+
3049
+ .action-btn.utility {
3050
+ background: var(--gray-100);
3051
+ color: var(--gray-700);
3052
+ border-color: var(--gray-300);
3053
+ padding: 10px 14px;
3054
+ }
3055
+
3056
+ .action-btn.utility:hover {
3057
+ background: var(--gray-700);
3058
+ color: white;
3059
+ }
3060
+
3061
+ .btn-icon {
3062
+ font-size: 16px;
3063
+ }
3064
+
3065
+ /* View Mode Buttons */
3066
+ .view-btn {
3067
+ width: 40px;
3068
+ height: 40px;
3069
+ background: white;
3070
+ border: 2px solid var(--gray-300);
3071
+ border-radius: 8px;
3072
+ cursor: pointer;
3073
+ font-size: 18px;
3074
+ transition: all 0.2s;
3075
+ display: flex;
3076
+ align-items: center;
3077
+ justify-content: center;
3078
+ }
3079
+
3080
+ .view-btn:hover {
3081
+ border-color: var(--primary-color);
3082
+ background: var(--gray-50);
3083
+ }
3084
+
3085
+ .view-btn.active {
3086
+ background: var(--primary-color);
3087
+ color: white;
3088
+ border-color: var(--primary-color);
3089
+ box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.2);
3090
+ }
3091
+
3092
+ /* Zoom Controls */
3093
+ .zoom-controls {
3094
+ display: flex;
3095
+ align-items: center;
3096
+ gap: 6px;
3097
+ background: var(--gray-100);
3098
+ padding: 4px;
3099
+ border-radius: 10px;
3100
+ border: 2px solid var(--gray-300);
3101
+ }
3102
+
3103
+ .zoom-btn {
3104
+ background: white;
3105
+ border: none;
3106
+ border-radius: 6px;
3107
+ padding: 8px 14px;
3108
+ cursor: pointer;
3109
+ font-size: 18px;
3110
+ font-weight: 700;
3111
+ color: var(--gray-700);
3112
+ transition: all 0.2s;
3113
+ min-width: 40px;
3114
+ }
3115
+
3116
+ .zoom-btn:hover {
3117
+ background: var(--gray-700);
3118
+ color: white;
3119
+ }
3120
+
3121
+ .zoom-btn.reset {
3122
+ font-size: 16px;
3123
+ }
3124
+
3125
+ .zoom-display {
3126
+ background: var(--gray-800);
3127
+ color: white;
3128
+ padding: 8px 16px;
3129
+ border-radius: 6px;
3130
+ font-size: 13px;
3131
+ font-weight: 700;
3132
+ min-width: 55px;
3133
+ text-align: center;
3134
+ }
3135
+
3136
+ /* Level Controls */
3137
+ .level-controls {
3138
+ display: flex;
3139
+ align-items: center;
3140
+ gap: 10px;
3141
+ margin-bottom: 12px;
3142
+ padding: 12px 16px;
3143
+ background: white;
3144
+ border-radius: 10px;
3145
+ box-shadow: var(--shadow-sm);
3146
+ border: 2px solid var(--gray-200);
3147
+ }
3148
+
3149
+ .level-label {
3150
+ font-size: 13px;
3151
+ font-weight: 600;
3152
+ color: var(--gray-600);
3153
+ margin-right: 4px;
3154
+ }
3155
+
3156
+ .level-btn {
3157
+ padding: 6px 16px;
3158
+ background: var(--gray-100);
3159
+ border: 2px solid var(--gray-300);
3160
+ border-radius: 6px;
3161
+ cursor: pointer;
3162
+ font-size: 12px;
3163
+ font-weight: 600;
3164
+ color: var(--gray-700);
3165
+ transition: all 0.2s;
3166
+ }
3167
+
3168
+ .level-btn:hover {
3169
+ background: var(--accent-color);
3170
+ color: white;
3171
+ border-color: var(--accent-color);
3172
+ transform: translateY(-1px);
3173
+ }
3174
+
3175
+ /* Instruction Banner */
3176
+ .instruction-banner {
3177
+ background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
3178
+ color: white;
3179
+ padding: 14px 24px;
3180
+ border-radius: 10px;
3181
+ margin-bottom: 20px;
3182
+ font-size: 14px;
3183
+ text-align: center;
3184
+ box-shadow: var(--shadow-lg);
3185
+ display: flex;
3186
+ align-items: center;
3187
+ justify-content: center;
3188
+ gap: 12px;
3189
+ }
3190
+
3191
+ .banner-icon {
3192
+ font-size: 24px;
3193
+ }
3194
+
3195
+ .instruction-banner strong {
3196
+ font-weight: 700;
3197
+ margin-right: 8px;
3198
+ }
3199
+
3200
+ /* Chart Wrapper */
3201
+ .org-chart-wrapper {
3202
+ display: flex;
3203
+ justify-content: center;
3204
+ min-width: max-content;
3205
+ padding: 30px;
3206
+ transform-origin: center top;
3207
+ transition: transform 0.3s ease;
3208
+ }
3209
+
3210
+ .org-chart-wrapper.dragging {
3211
+ cursor: grabbing !important;
3212
+ }
3213
+
3214
+ /* Tree Structure */
3215
+ .org-tree {
3216
+ list-style: none;
3217
+ margin: 0;
3218
+ padding: 0;
3219
+ position: relative;
3220
+ display: flex;
3221
+ justify-content: center;
3222
+ }
3223
+
3224
+ .org-tree ul {
3225
+ list-style: none;
3226
+ margin: 0;
3227
+ padding: 0;
3228
+ position: relative;
3229
+ display: flex;
3230
+ justify-content: center;
3231
+ padding-top: 55px;
3232
+ }
3233
+
3234
+ .org-node {
3235
+ position: relative;
3236
+ display: inline-block;
3237
+ text-align: center;
3238
+ padding: 0 14px;
3239
+ }
3240
+
3241
+ /* Node Boxes - Standard View */
3242
+ .org-box {
3243
+ display: inline-block;
3244
+ background: white;
3245
+ border: 3px solid var(--gray-700);
3246
+ border-radius: 10px;
3247
+ padding: 16px 20px;
3248
+ min-width: 150px;
3249
+ max-width: 210px;
3250
+ box-shadow: var(--shadow-lg);
3251
+ cursor: pointer;
3252
+ transition: all 0.3s ease;
3253
+ position: relative;
3254
+ user-select: none;
3255
+ }
3256
+
3257
+ /* View Mode Variations */
3258
+ .org-box.view-compact {
3259
+ padding: 10px 14px;
3260
+ min-width: 120px;
3261
+ max-width: 170px;
3262
+ }
3263
+
3264
+ .org-box.view-detailed {
3265
+ padding: 18px 24px;
3266
+ min-width: 170px;
3267
+ max-width: 240px;
3268
+ }
3269
+
3270
+ .org-box:hover {
3271
+ background: var(--gray-50);
3272
+ transform: translateY(-4px);
3273
+ box-shadow: 0 8px 20px rgba(0, 0, 0, 0.15);
3274
+ border-color: var(--primary-color);
3275
+ }
3276
+
3277
+ .org-box.highlighted {
3278
+ animation: pulse-highlight 1.5s infinite;
3279
+ border-color: var(--warning-color);
3280
+ background: #fffaf0;
3281
+ box-shadow: 0 0 25px rgba(246, 173, 85, 0.6);
3282
+ }
3283
+
3284
+ .org-box.search-match {
3285
+ background: #fef5e7;
3286
+ border-color: #f59e0b;
3287
+ border-width: 3px;
3288
+ }
3289
+
3290
+ .org-box.selected {
3291
+ border-color: var(--success-color);
3292
+ background: #f0fff4;
3293
+ box-shadow: 0 0 25px rgba(72, 187, 120, 0.4);
3294
+ }
3295
+
3296
+ @keyframes pulse-highlight {
3297
+ 0%, 100% {
3298
+ box-shadow: 0 0 25px rgba(246, 173, 85, 0.6);
3299
+ }
3300
+ 50% {
3301
+ box-shadow: 0 0 35px rgba(246, 173, 85, 0.9);
3302
+ }
3303
+ }
3304
+
3305
+ .org-title {
3306
+ font-size: 14px;
3307
+ font-weight: 600;
3308
+ color: var(--gray-800);
3309
+ line-height: 1.5;
3310
+ display: block;
3311
+ word-wrap: break-word;
3312
+ }
3313
+
3314
+ .view-compact .org-title {
3315
+ font-size: 12px;
3316
+ }
3317
+
3318
+ .view-detailed .org-title {
3319
+ font-size: 15px;
3320
+ }
3321
+
3322
+ .expand-icon {
3323
+ position: absolute;
3324
+ top: 6px;
3325
+ right: 6px;
3326
+ width: 26px;
3327
+ height: 26px;
3328
+ background: var(--primary-color);
3329
+ color: white;
3330
+ border-radius: 50%;
3331
+ display: flex;
3332
+ align-items: center;
3333
+ justify-content: center;
3334
+ font-size: 18px;
3335
+ font-weight: 700;
3336
+ line-height: 1;
3337
+ transition: all 0.2s;
3338
+ box-shadow: var(--shadow-sm);
3339
+ }
3340
+
3341
+ .org-box:hover .expand-icon {
3342
+ background: var(--primary-dark);
3343
+ transform: scale(1.15);
3344
+ box-shadow: var(--shadow-md);
3345
+ }
3346
+
3347
+ .child-count {
3348
+ position: absolute;
3349
+ bottom: 4px;
3350
+ right: 6px;
3351
+ background: var(--accent-color);
3352
+ color: white;
3353
+ padding: 2px 8px;
3354
+ border-radius: 12px;
3355
+ font-size: 11px;
3356
+ font-weight: 700;
3357
+ }
3358
+
3359
+ /* Connecting Lines */
3360
+ .org-node::before {
3361
+ content: '';
3362
+ position: absolute;
3363
+ top: 0;
3364
+ left: 50%;
3365
+ width: 3px;
3366
+ height: 55px;
3367
+ background: var(--gray-600);
3368
+ transform: translateX(-50%);
3369
+ }
3370
+
3371
+ .org-tree > .org-node::before {
3372
+ display: none;
3373
+ }
3374
+
3375
+ .org-children {
3376
+ position: relative;
3377
+ }
3378
+
3379
+ .org-children::before {
3380
+ content: '';
3381
+ position: absolute;
3382
+ top: 0;
3383
+ left: 0;
3384
+ right: 0;
3385
+ height: 3px;
3386
+ background: var(--gray-600);
3387
+ transform: translateY(-55px);
3388
+ }
3389
+
3390
+ .org-children .org-node:first-child::after,
3391
+ .org-children .org-node:last-child::after {
3392
+ content: '';
3393
+ position: absolute;
3394
+ top: -55px;
3395
+ width: 50%;
3396
+ height: 3px;
3397
+ background: linear-gradient(135deg, #f7fafc 0%, #edf2f7 100%);
3398
+ }
3399
+
3400
+ .org-children .org-node:first-child::after {
3401
+ left: 0;
3402
+ }
3403
+
3404
+ .org-children .org-node:last-child::after {
3405
+ right: 0;
3406
+ }
3407
+
3408
+ /* Hierarchy Level Styling */
3409
+ .org-tree > .org-node > .org-box {
3410
+ background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
3411
+ color: white;
3412
+ border-color: var(--primary-dark);
3413
+ font-size: 16px;
3414
+ padding: 18px 26px;
3415
+ min-width: 190px;
3416
+ box-shadow: 0 8px 20px rgba(102, 126, 234, 0.4);
3417
+ }
3418
+
3419
+ .org-tree > .org-node > .org-box .org-title {
3420
+ color: white;
3421
+ font-weight: 700;
3422
+ }
3423
+
3424
+ .org-tree > .org-node > .org-box .expand-icon {
3425
+ background: rgba(255, 255, 255, 0.25);
3426
+ border: 2px solid white;
3427
+ }
3428
+
3429
+ .org-tree > .org-node > .org-children > .org-node > .org-box {
3430
+ background: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);
3431
+ color: white;
3432
+ border-color: #e74c3c;
3433
+ }
3434
+
3435
+ .org-tree > .org-node > .org-children > .org-node > .org-box .org-title {
3436
+ color: white;
3437
+ }
3438
+
3439
+ .org-tree > .org-node > .org-children > .org-node > .org-box .expand-icon {
3440
+ background: rgba(255, 255, 255, 0.25);
3441
+ border: 2px solid white;
3442
+ }
3443
+
3444
+ .org-tree > .org-node > .org-children > .org-node > .org-children > .org-node > .org-box {
3445
+ background: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%);
3446
+ color: white;
3447
+ border-color: #3498db;
3448
+ }
3449
+
3450
+ .org-tree > .org-node > .org-children > .org-node > .org-children > .org-node > .org-box .org-title {
3451
+ color: white;
3452
+ }
3453
+
3454
+ .org-tree > .org-node > .org-children > .org-node > .org-children > .org-node > .org-box .expand-icon {
3455
+ background: rgba(255, 255, 255, 0.25);
3456
+ border: 2px solid white;
3457
+ }
3458
+
3459
+ /* Info Panel */
3460
+ .info-panel {
3461
+ position: fixed;
3462
+ bottom: 24px;
3463
+ right: 24px;
3464
+ width: 320px;
3465
+ background: white;
3466
+ border-radius: 12px;
3467
+ box-shadow: 0 20px 40px rgba(0, 0, 0, 0.2);
3468
+ border: 3px solid var(--primary-color);
3469
+ z-index: 1000;
3470
+ animation: slideIn 0.3s ease;
3471
+ }
3472
+
3473
+ @keyframes slideIn {
3474
+ from {
3475
+ transform: translateY(100px);
3476
+ opacity: 0;
3477
+ }
3478
+ to {
3479
+ transform: translateY(0);
3480
+ opacity: 1;
3481
+ }
3482
+ }
3483
+
3484
+ .info-header {
3485
+ display: flex;
3486
+ justify-content: space-between;
3487
+ align-items: center;
3488
+ padding: 16px 20px;
3489
+ background: linear-gradient(135deg, var(--primary-color), var(--primary-dark));
3490
+ color: white;
3491
+ border-radius: 9px 9px 0 0;
3492
+ }
3493
+
3494
+ .info-header h3 {
3495
+ margin: 0;
3496
+ font-size: 16px;
3497
+ font-weight: 700;
3498
+ }
3499
+
3500
+ .close-btn {
3501
+ background: rgba(255, 255, 255, 0.2);
3502
+ border: 2px solid white;
3503
+ color: white;
3504
+ width: 28px;
3505
+ height: 28px;
3506
+ border-radius: 50%;
3507
+ cursor: pointer;
3508
+ font-size: 16px;
3509
+ display: flex;
3510
+ align-items: center;
3511
+ justify-content: center;
3512
+ transition: all 0.2s;
3513
+ font-weight: 700;
3514
+ }
3515
+
3516
+ .close-btn:hover {
3517
+ background: white;
3518
+ color: var(--primary-color);
3519
+ }
3520
+
3521
+ .info-content {
3522
+ padding: 20px;
3523
+ }
3524
+
3525
+ .info-row {
3526
+ display: flex;
3527
+ justify-content: space-between;
3528
+ margin-bottom: 14px;
3529
+ padding-bottom: 14px;
3530
+ border-bottom: 1px solid var(--gray-200);
3531
+ }
3532
+
3533
+ .info-label {
3534
+ font-size: 13px;
3535
+ font-weight: 600;
3536
+ color: var(--gray-600);
3537
+ }
3538
+
3539
+ .info-value {
3540
+ font-size: 14px;
3541
+ font-weight: 700;
3542
+ color: var(--gray-800);
3543
+ }
3544
+
3545
+ .info-actions {
3546
+ margin-top: 16px;
3547
+ }
3548
+
3549
+ .info-action-btn {
3550
+ width: 100%;
3551
+ padding: 12px;
3552
+ background: var(--primary-color);
3553
+ color: white;
3554
+ border: none;
3555
+ border-radius: 8px;
3556
+ cursor: pointer;
3557
+ font-size: 14px;
3558
+ font-weight: 600;
3559
+ transition: all 0.2s;
3560
+ }
3561
+
3562
+ .info-action-btn:hover {
3563
+ background: var(--primary-dark);
3564
+ transform: translateY(-2px);
3565
+ box-shadow: var(--shadow-md);
3566
+ }
3567
+
3568
+ /* Legend */
3569
+ .chart-legend {
3570
+ position: fixed;
3571
+ bottom: 24px;
3572
+ left: 24px;
3573
+ background: white;
3574
+ padding: 16px 20px;
3575
+ border-radius: 12px;
3576
+ box-shadow: var(--shadow-lg);
3577
+ border: 2px solid var(--gray-200);
3578
+ display: flex;
3579
+ flex-direction: column;
3580
+ gap: 10px;
3581
+ }
3582
+
3583
+ .legend-item {
3584
+ display: flex;
3585
+ align-items: center;
3586
+ gap: 10px;
3587
+ }
3588
+
3589
+ .legend-color {
3590
+ width: 32px;
3591
+ height: 20px;
3592
+ border-radius: 4px;
3593
+ border: 2px solid var(--gray-300);
3594
+ }
3595
+
3596
+ .legend-color.level-1 {
3597
+ background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
3598
+ }
3599
+
3600
+ .legend-color.level-2 {
3601
+ background: linear-gradient(135deg, #f093fb 0%, #f5576c 100%);
3602
+ }
3603
+
3604
+ .legend-color.level-3 {
3605
+ background: linear-gradient(135deg, #4facfe 0%, #00f2fe 100%);
3606
+ }
3607
+
3608
+ .legend-color.level-4 {
3609
+ background: white;
3610
+ border-color: var(--gray-600);
3611
+ }
3612
+
3613
+ .legend-text {
3614
+ font-size: 12px;
3615
+ font-weight: 600;
3616
+ color: var(--gray-700);
3617
+ }
3618
+
3619
+ /* Scrollbar */
3620
+ .org-chart-container::-webkit-scrollbar {
3621
+ width: 14px;
3622
+ height: 14px;
3623
+ }
3624
+
3625
+ .org-chart-container::-webkit-scrollbar-track {
3626
+ background: var(--gray-200);
3627
+ border-radius: 10px;
3628
+ margin: 4px;
3629
+ }
3630
+
3631
+ .org-chart-container::-webkit-scrollbar-thumb {
3632
+ background: linear-gradient(135deg, var(--primary-color), var(--primary-dark));
3633
+ border-radius: 10px;
3634
+ border: 3px solid var(--gray-200);
3635
+ }
3636
+
3637
+ .org-chart-container::-webkit-scrollbar-thumb:hover {
3638
+ background: linear-gradient(135deg, var(--primary-dark), #4c51bf);
3639
+ }
3640
+
3641
+ /* Print Styles */
3642
+ @media print {
3643
+ .org-chart-toolbar,
3644
+ .level-controls,
3645
+ .instruction-banner,
3646
+ .info-panel,
3647
+ .chart-legend,
3648
+ .zoom-controls {
3649
+ display: none !important;
3650
+ }
3651
+
3652
+ .org-chart-container {
3653
+ max-height: none;
3654
+ overflow: visible;
3655
+ }
3656
+
3657
+ .org-chart-wrapper {
3658
+ transform: scale(1) !important;
3659
+ }
3660
+ }
3661
+
3662
+ /* Responsive Design */
3663
+ @media (max-width: 1200px) {
3664
+ .org-chart-toolbar {
3665
+ flex-direction: column;
3666
+ align-items: stretch;
3667
+ }
3668
+
3669
+ .toolbar-section {
3670
+ width: 100%;
3671
+ justify-content: center;
3672
+ }
3673
+
3674
+ .search-container {
3675
+ min-width: 100%;
3676
+ }
3677
+
3678
+ .chart-legend {
3679
+ position: static;
3680
+ margin-top: 16px;
3681
+ }
3682
+ }
3683
+
3684
+ @media (max-width: 768px) {
3685
+ .chart-header {
3686
+ flex-direction: column;
3687
+ gap: 12px;
3688
+ }
3689
+
3690
+ .org-chart-title {
3691
+ font-size: 22px;
3692
+ }
3693
+
3694
+ .info-panel {
3695
+ width: calc(100% - 32px);
3696
+ left: 16px;
3697
+ right: 16px;
3698
+ bottom: 16px;
3699
+ }
3700
+ }
3701
+
3702
+
3703
+
3704
+ /* ===== Document Frame ===== */
3705
+ .doc-frame {
3706
+ background: #ffffff;
3707
+ border: 1px solid #dcdcdc;
3708
+ border-radius: 6px;
3709
+ padding: 16px;
3710
+ }
3711
+
3712
+ /* ===== Header ===== */
3713
+ .doc-header {
3714
+ display: flex;
3715
+ justify-content: space-between;
3716
+ align-items: flex-start;
3717
+ border-bottom: 1px solid #e6e6e6;
3718
+ padding-bottom: 10px;
3719
+ margin-bottom: 8px;
3720
+ }
3721
+
3722
+ .doc-title {
3723
+ margin: 0;
3724
+ font-size: 18px;
3725
+ font-weight: 600;
3726
+ }
3727
+
3728
+ .doc-meta {
3729
+ font-size: 13px;
3730
+ color: #666;
3731
+ margin-top: 4px;
3732
+ }
3733
+
3734
+ /* ===== Toolbar ===== */
3735
+ .pdf-toolbar {
3736
+ display: flex;
3737
+ gap: 10px;
3738
+ }
3739
+
3740
+ .pdf-btn {
3741
+ padding: 6px 14px;
3742
+ font-size: 14px;
3743
+ background: #0b5ed7;
3744
+ color: #fff;
3745
+ border-radius: 4px;
3746
+ border: none;
3747
+ cursor: pointer;
3748
+ }
3749
+
3750
+ .pdf-btn:hover {
3751
+ background: #084298;
3752
+ }
3753
+
3754
+ /* ===== Hint ===== */
3755
+ .doc-hint {
3756
+ font-size: 13px;
3757
+ color: #555;
3758
+ background: #f4f6f8;
3759
+ border-left: 4px solid #0b5ed7;
3760
+ padding: 8px 12px;
3761
+ margin-bottom: 12px;
3762
+ }
3763
+
3764
+ /* ===== PDF Viewer ===== */
3765
+ .pdf-container.full-view {
3766
+ width: 100%;
3767
+ height: calc(100vh - 300px);
3768
+ min-height: 720px;
3769
+ border: 1px solid #e1e1e1;
3770
+ border-radius: 4px;
3771
+ overflow: hidden;
3772
+ background: #f9f9f9;
3773
+ }
3774
+
3775
+ .pdf-container.full-view iframe {
3776
+ width: 100%;
3777
+ height: 100%;
3778
+ border: none;
3779
+ background: #fff;
3780
+ }
3781
+
3782
+ /* ===== Skeleton Loader ===== */
3783
+ .pdf-skeleton {
3784
+ width: 100%;
3785
+ min-height: 720px;
3786
+ padding: 16px;
3787
+ background: #f4f6f8;
3788
+ border-radius: 6px;
3789
+ margin-bottom: 10px;
3790
+ }
3791
+
3792
+ .skeleton-line {
3793
+ height: 14px;
3794
+ background: linear-gradient(90deg, #e0e0e0, #f0f0f0, #e0e0e0);
3795
+ background-size: 200% 100%;
3796
+ animation: skeleton 1.4s infinite;
3797
+ margin-bottom: 10px;
3798
+ border-radius: 4px;
3799
+ }
3800
+
3801
+ .skeleton-line.title {
3802
+ width: 40%;
3803
+ height: 18px;
3804
+ }
3805
+
3806
+ .skeleton-box {
3807
+ height: 420px;
3808
+ background: linear-gradient(90deg, #e0e0e0, #f0f0f0, #e0e0e0);
3809
+ background-size: 200% 100%;
3810
+ animation: skeleton 1.4s infinite;
3811
+ border-radius: 6px;
3812
+ }
3813
+
3814
+ @keyframes skeleton {
3815
+ 0% { background-position: 200% 0; }
3816
+ 100% { background-position: -200% 0; }
3817
+ }
3818
+
3819
+ /* ===== Print Rules ===== */
3820
+ @media print {
3821
+ body * {
3822
+ visibility: hidden;
3823
+ }
3824
+
3825
+ .pdf-print-area,
3826
+ .pdf-print-area * {
3827
+ visibility: visible;
3828
+ }
3829
+
3830
+ .pdf-print-area {
3831
+ position: absolute;
3832
+ left: 0;
3833
+ top: 0;
3834
+ width: 100%;
3835
+ }
3836
+
3837
+ .no-print {
3838
+ display: none !important;
3839
+ }
3840
+ }
3841
+
3842
+
3843
+
3844
+
3845
+
3846
+ /*organisational page for now only*/
3847
+ .org-image-wrapper {
3848
+ width: 100%;
3849
+ overflow-x: auto;
3850
+ text-align: center;
3851
+ padding: 20px 0;
3852
+ }
3853
+
3854
+ .org-structure-image {
3855
+ max-width: 100%;
3856
+ height: auto;
3857
+ object-fit: contain;
3858
+ border-radius: 8px;
3859
+ box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
3860
+ }