@keenmate/pure-admin-core 1.0.0-rc01

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 (167) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +172 -0
  3. package/dist/css/main.css +11542 -0
  4. package/dist/fonts/Delivery/Delivery_W_Bd.woff2 +0 -0
  5. package/dist/fonts/Delivery/Delivery_W_BdIt.woff2 +0 -0
  6. package/dist/fonts/Delivery/Delivery_W_CdBlk.woff2 +0 -0
  7. package/dist/fonts/Delivery/Delivery_W_CdLt.woff2 +0 -0
  8. package/dist/fonts/Delivery/Delivery_W_It.woff2 +0 -0
  9. package/dist/fonts/Delivery/Delivery_W_Lt.woff2 +0 -0
  10. package/dist/fonts/Delivery/Delivery_W_LtIt.woff2 +0 -0
  11. package/dist/fonts/Delivery/Delivery_W_Rg.woff2 +0 -0
  12. package/dist/fonts/google/3y976aknfjLm_3lMKjiMgmUUYBs04Y8UH-qVHQ.woff2 +0 -0
  13. package/dist/fonts/google/3y976aknfjLm_3lMKjiMgmUUYBs04Y8UH-qVHQ.woff2.1 +0 -0
  14. package/dist/fonts/google/3y976aknfjLm_3lMKjiMgmUUYBs04Y8UH-qVHQ.woff2.2 +0 -0
  15. package/dist/fonts/google/3y976aknfjLm_3lMKjiMgmUUYBs04Y8VH-qVHQ.woff2 +0 -0
  16. package/dist/fonts/google/3y976aknfjLm_3lMKjiMgmUUYBs04Y8VH-qVHQ.woff2.1 +0 -0
  17. package/dist/fonts/google/3y976aknfjLm_3lMKjiMgmUUYBs04Y8VH-qVHQ.woff2.2 +0 -0
  18. package/dist/fonts/google/3y976aknfjLm_3lMKjiMgmUUYBs04Y8bH-o.woff2 +0 -0
  19. package/dist/fonts/google/3y976aknfjLm_3lMKjiMgmUUYBs04Y8bH-o.woff2.1 +0 -0
  20. package/dist/fonts/google/3y976aknfjLm_3lMKjiMgmUUYBs04Y8fH-qVHQ.woff2 +0 -0
  21. package/dist/fonts/google/3y976aknfjLm_3lMKjiMgmUUYBs04Y8fH-qVHQ.woff2.1 +0 -0
  22. package/dist/fonts/google/3y976aknfjLm_3lMKjiMgmUUYBs04Y8fH-qVHQ.woff2.2 +0 -0
  23. package/dist/fonts/google/6aez4K2oVqwIvtE2H68T.woff2 +0 -0
  24. package/dist/fonts/google/6aez4K2oVqwIvtU2Hw.woff2 +0 -0
  25. package/dist/fonts/google/6aez4K2oVqwIvtY2H68T.woff2 +0 -0
  26. package/dist/fonts/google/6aez4K2oVqwIvtg2H68T.woff2 +0 -0
  27. package/dist/fonts/google/6aez4K2oVqwIvto2H68T.woff2 +0 -0
  28. package/dist/fonts/google/6aez4K2oVqwIvts2H68T.woff2 +0 -0
  29. package/dist/fonts/google/7Auup_AqnyWWAxW2Wk3swUz56MS91Eww8SX21nejog.woff2 +0 -0
  30. package/dist/fonts/google/7Auup_AqnyWWAxW2Wk3swUz56MS91Eww8SX21nijogp5.woff2 +0 -0
  31. package/dist/fonts/google/7Auup_AqnyWWAxW2Wk3swUz56MS91Eww8SX21nmjogp5.woff2 +0 -0
  32. package/dist/fonts/google/PN_xRfK9oXHga0XdZ8g_vT0.woff2 +0 -0
  33. package/dist/fonts/google/PN_xRfK9oXHga0XdZsg_.woff2 +0 -0
  34. package/dist/fonts/google/PN_xRfK9oXHga0XdaMg_vT0.woff2 +0 -0
  35. package/dist/fonts/google/TK3tWkYFABsmjsphPho.woff2 +0 -0
  36. package/dist/fonts/google/TK3tWkYFABsmjspuPho7vA.woff2 +0 -0
  37. package/dist/fonts/google/TK3tWkYFABsmjspvPho7vA.woff2 +0 -0
  38. package/dist/fonts/google/dg45_pLmvrkcOkBnKsOzXyGWTBcmg-X6VjTYJwQj.woff2 +0 -0
  39. package/dist/fonts/google/dg45_pLmvrkcOkBnKsOzXyGWTBcmg-X6VjXYJwQj.woff2 +0 -0
  40. package/dist/fonts/google/dg45_pLmvrkcOkBnKsOzXyGWTBcmg-X6Vj_YJwQj.woff2 +0 -0
  41. package/dist/fonts/google/dg45_pLmvrkcOkBnKsOzXyGWTBcmg-X6VjbYJwQj.woff2 +0 -0
  42. package/dist/fonts/google/dg45_pLmvrkcOkBnKsOzXyGWTBcmg-X6VjvYJw.woff2 +0 -0
  43. package/dist/fonts/google/fonts-tracklist.txt +48 -0
  44. package/dist/fonts/google/vEFO2_JTCgwQ5ejvMV0O96D01E8J0tJXHKbBjM4.woff2 +0 -0
  45. package/dist/fonts/google/vEFO2_JTCgwQ5ejvMV0O96D01E8J0tJXHKbOjM7sfA.woff2 +0 -0
  46. package/dist/fonts/google/vEFO2_JTCgwQ5ejvMV0O96D01E8J0tJXHKbPjM7sfA.woff2 +0 -0
  47. package/dist/fonts/google/wEOhEADFm8hSaQTFG18FErVhsC9x-tarUfLtrftV.woff2 +0 -0
  48. package/dist/fonts/google/wEOhEADFm8hSaQTFG18FErVhsC9x-tarUfXtrftV.woff2 +0 -0
  49. package/dist/fonts/google/wEOhEADFm8hSaQTFG18FErVhsC9x-tarUfbtrQ.woff2 +0 -0
  50. package/dist/fonts/google/wEOhEADFm8hSaQTFG18FErVhsC9x-tarUfjtrftV.woff2 +0 -0
  51. package/dist/fonts/google/wEOhEADFm8hSaQTFG18FErVhsC9x-tarUfntrftV.woff2 +0 -0
  52. package/dist/fonts/google/wEOhEADFm8hSaQTFG18FErVhsC9x-tarUfrtrftV.woff2 +0 -0
  53. package/dist/fonts/google/wEOhEADFm8hSaQTFG18FErVhsC9x-tarUfvtrftV.woff2 +0 -0
  54. package/dist/fonts/google/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk79FN_B-bnBeA.woff2 +0 -0
  55. package/dist/fonts/google/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk79FN_C-bk.woff2 +0 -0
  56. package/dist/fonts/google/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk79FN_G-bnBeA.woff2 +0 -0
  57. package/dist/fonts/google/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk79FN_M-bnBeA.woff2 +0 -0
  58. package/dist/fonts/google/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk79FN_N-bnBeA.woff2 +0 -0
  59. package/dist/fonts/google/xn7_YHE41ni1AdIRqAuZuw1Bx9mbZk79FN_P-bnBeA.woff2 +0 -0
  60. package/package.json +60 -0
  61. package/snippets/alerts.html +281 -0
  62. package/snippets/badges.html +212 -0
  63. package/snippets/buttons.html +287 -0
  64. package/snippets/cards.html +393 -0
  65. package/snippets/checkbox-lists.html +490 -0
  66. package/snippets/code.html +225 -0
  67. package/snippets/command-palette.html +210 -0
  68. package/snippets/comparison.html +428 -0
  69. package/snippets/customization.html +142 -0
  70. package/snippets/forms.html +477 -0
  71. package/snippets/grid.html +338 -0
  72. package/snippets/layout.html +598 -0
  73. package/snippets/lists.html +232 -0
  74. package/snippets/loaders.html +183 -0
  75. package/snippets/manifest.json +388 -0
  76. package/snippets/modal-dialogs.html +411 -0
  77. package/snippets/modals.html +310 -0
  78. package/snippets/popconfirm.html +253 -0
  79. package/snippets/profile.html +264 -0
  80. package/snippets/tables.html +317 -0
  81. package/snippets/tabs.html +930 -0
  82. package/snippets/timeline.html +364 -0
  83. package/snippets/toasts.html +154 -0
  84. package/snippets/tooltips.html +411 -0
  85. package/snippets/typography.html +101 -0
  86. package/snippets/utilities.html +595 -0
  87. package/snippets/virtual-scroll.html +322 -0
  88. package/snippets/web-daterangepicker.html +634 -0
  89. package/snippets/web-multiselect.html +362 -0
  90. package/src/scss/.claude/settings.local.json +11 -0
  91. package/src/scss/_base-css-variables.scss +348 -0
  92. package/src/scss/_core.scss +99 -0
  93. package/src/scss/_fonts.scss +67 -0
  94. package/src/scss/_purecss-grid-responsive.scss +138 -0
  95. package/src/scss/_purecss-grid.scss +58 -0
  96. package/src/scss/_variables.scss +14 -0
  97. package/src/scss/core-components/_alerts.scss +212 -0
  98. package/src/scss/core-components/_badges.scss +16 -0
  99. package/src/scss/core-components/_base.scss +124 -0
  100. package/src/scss/core-components/_buttons.scss +473 -0
  101. package/src/scss/core-components/_cards.scss +285 -0
  102. package/src/scss/core-components/_checkbox-lists.scss +289 -0
  103. package/src/scss/core-components/_code.scss +141 -0
  104. package/src/scss/core-components/_command-palette.scss +518 -0
  105. package/src/scss/core-components/_comparison.scss +172 -0
  106. package/src/scss/core-components/_file-selector.scss +780 -0
  107. package/src/scss/core-components/_forms.scss +16 -0
  108. package/src/scss/core-components/_grid.scss +264 -0
  109. package/src/scss/core-components/_layout.scss +15 -0
  110. package/src/scss/core-components/_lists.scss +211 -0
  111. package/src/scss/core-components/_loaders.scss +277 -0
  112. package/src/scss/core-components/_logic-tree.scss +280 -0
  113. package/src/scss/core-components/_modals.scss +209 -0
  114. package/src/scss/core-components/_notifications.scss +253 -0
  115. package/src/scss/core-components/_pagers.scss +141 -0
  116. package/src/scss/core-components/_popconfirm.scss +170 -0
  117. package/src/scss/core-components/_profile.scss +281 -0
  118. package/src/scss/core-components/_settings-panel.scss +128 -0
  119. package/src/scss/core-components/_statistics.scss +200 -0
  120. package/src/scss/core-components/_tables.scss +555 -0
  121. package/src/scss/core-components/_tabs.scss +438 -0
  122. package/src/scss/core-components/_timeline.scss +589 -0
  123. package/src/scss/core-components/_toasts.scss +281 -0
  124. package/src/scss/core-components/_tooltips.scss +503 -0
  125. package/src/scss/core-components/_utilities.scss +241 -0
  126. package/src/scss/core-components/_web-components-theme.scss +294 -0
  127. package/src/scss/core-components/badges/_badge-base.scss +131 -0
  128. package/src/scss/core-components/badges/_badge-group.scss +25 -0
  129. package/src/scss/core-components/badges/_composite-badge-variants.scss +396 -0
  130. package/src/scss/core-components/badges/_composite-badge.scss +70 -0
  131. package/src/scss/core-components/badges/_index.scss +10 -0
  132. package/src/scss/core-components/badges/_labels.scss +155 -0
  133. package/src/scss/core-components/forms/_checkboxes-radios.scss +205 -0
  134. package/src/scss/core-components/forms/_form-inputs.scss +100 -0
  135. package/src/scss/core-components/forms/_form-layout.scss +66 -0
  136. package/src/scss/core-components/forms/_form-states.scss +89 -0
  137. package/src/scss/core-components/forms/_index.scss +12 -0
  138. package/src/scss/core-components/forms/_input-groups.scss +149 -0
  139. package/src/scss/core-components/forms/_input-wrapper.scss +89 -0
  140. package/src/scss/core-components/forms/_query-editor.scss +313 -0
  141. package/src/scss/core-components/layout/_index.scss +11 -0
  142. package/src/scss/core-components/layout/_layout-container.scss +105 -0
  143. package/src/scss/core-components/layout/_layout-responsive.scss +100 -0
  144. package/src/scss/core-components/layout/_navbar-elements.scss +238 -0
  145. package/src/scss/core-components/layout/_navbar.scss +71 -0
  146. package/src/scss/core-components/layout/_sidebar-states.scss +228 -0
  147. package/src/scss/core-components/layout/_sidebar.scss +177 -0
  148. package/src/scss/main.scss +7 -0
  149. package/src/scss/themes/_dark-base.scss +207 -0
  150. package/src/scss/themes/audi-light.scss +311 -0
  151. package/src/scss/themes/audi.scss +288 -0
  152. package/src/scss/themes/corporate.scss +203 -0
  153. package/src/scss/themes/dark-blue.scss +152 -0
  154. package/src/scss/themes/dark-green.scss +156 -0
  155. package/src/scss/themes/dark-red.scss +160 -0
  156. package/src/scss/themes/dark.scss +145 -0
  157. package/src/scss/themes/express.scss +281 -0
  158. package/src/scss/themes/minimal.scss +121 -0
  159. package/src/scss/utilities.scss +481 -0
  160. package/src/scss/variables/_base.scss +81 -0
  161. package/src/scss/variables/_colors.scss +148 -0
  162. package/src/scss/variables/_components.scss +509 -0
  163. package/src/scss/variables/_index.scss +13 -0
  164. package/src/scss/variables/_layout.scss +65 -0
  165. package/src/scss/variables/_spacing.scss +66 -0
  166. package/src/scss/variables/_system.scss +80 -0
  167. package/src/scss/variables/_typography.scss +37 -0
@@ -0,0 +1,207 @@
1
+ /* Dark Theme Base Template - Reusable mixin for dark theme variants */
2
+
3
+ @mixin dark-theme-base(
4
+ $theme-name,
5
+ $primary-bg,
6
+ $content-bg,
7
+ $header-bg,
8
+ $sidebar-bg,
9
+ $footer-bg,
10
+ $border-color,
11
+ $text-primary,
12
+ $text-secondary,
13
+ $accent-color,
14
+ $accent-hover,
15
+ $accent-light,
16
+ $card-bg,
17
+ $card-header-bg,
18
+ $card-footer-bg,
19
+ $card-tabs-bg,
20
+ $input-bg,
21
+ $table-bg,
22
+ $table-header-bg,
23
+ $table-hover-bg,
24
+ $table-stripe,
25
+ $btn-colors,
26
+ $modal-overlay-bg,
27
+ $modal-content-bg
28
+ ) {
29
+ [data-theme="#{$theme-name}"] {
30
+ // Layout dimensions (same across themes)
31
+ --header-height: 2.5rem;
32
+ --footer-height: 2rem;
33
+ --sidebar-width: 12rem;
34
+
35
+ // Theme colors
36
+ --primary-bg: #{$primary-bg};
37
+ --content-background-color: #{$content-bg};
38
+ --header-bg: #{$header-bg};
39
+ --sidebar-bg: #{$sidebar-bg};
40
+ --footer-bg: #{$footer-bg};
41
+ --border-color: #{$border-color};
42
+ --text-primary: #{$text-primary};
43
+ --text-secondary: #{$text-secondary};
44
+ --accent-color: #{$accent-color};
45
+ --accent-hover: #{$accent-hover};
46
+ --accent-light: #{$accent-light};
47
+
48
+ // Card colors
49
+ --card-bg: #{$card-bg};
50
+ --card-header-bg: #{$card-header-bg};
51
+ --card-footer-bg: #{$card-footer-bg};
52
+ --card-tabs-bg: #{$card-tabs-bg};
53
+
54
+ // Input colors
55
+ --input-bg: #{$input-bg};
56
+ --input-border: var(--border-color);
57
+ --input-text: var(--text-primary);
58
+
59
+ // Table colors
60
+ --table-bg: #{$table-bg};
61
+ --table-header-bg: #{$table-header-bg};
62
+ --table-hover-bg: #{$table-hover-bg};
63
+ --table-stripe: #{$table-stripe};
64
+
65
+ // Button colors
66
+ --btn-primary-bg: #{map-get($btn-colors, primary)};
67
+ --btn-primary-bg-hover: #{map-get($btn-colors, primary-hover)};
68
+ --btn-secondary-bg: #{map-get($btn-colors, secondary)};
69
+ --btn-secondary-bg-hover: #{map-get($btn-colors, secondary-hover)};
70
+ --btn-success-bg: #{map-get($btn-colors, success)};
71
+ --btn-success-bg-hover: #{map-get($btn-colors, success-hover)};
72
+ --btn-warning-bg: #{map-get($btn-colors, warning)};
73
+ --btn-warning-text: #ffffff;
74
+ --btn-danger-bg: #{map-get($btn-colors, danger)};
75
+ --btn-danger-bg-hover: #{map-get($btn-colors, danger-hover)};
76
+ --btn-info-bg: #{map-get($btn-colors, info)};
77
+ --btn-info-bg-hover: #{map-get($btn-colors, info-hover)};
78
+ --btn-light-bg: #{map-get($btn-colors, light)};
79
+ --btn-light-text: #{map-get($btn-colors, light-text)};
80
+ --btn-light-bg-hover: #{map-get($btn-colors, light-hover)};
81
+ --btn-dark-bg: #{map-get($btn-colors, dark)};
82
+ --btn-dark-bg-hover: #{map-get($btn-colors, dark-hover)};
83
+
84
+ // Modal colors
85
+ --modal-overlay-bg: #{$modal-overlay-bg};
86
+ --modal-content-bg: #{$modal-content-bg};
87
+ }
88
+
89
+ [data-theme="#{$theme-name}"] {
90
+ body {
91
+ background-color: var(--content-background-color);
92
+ }
93
+
94
+ .admin-content {
95
+ background-color: var(--content-background-color);
96
+ }
97
+
98
+ .content-section {
99
+ background: #{$card-bg};
100
+ border: 1px solid var(--border-color);
101
+ }
102
+
103
+ .long-content .content-block {
104
+ background: #{$card-bg};
105
+ border: 1px solid var(--border-color);
106
+ }
107
+
108
+ .pa-card {
109
+ background: var(--card-bg);
110
+ border-color: var(--border-color);
111
+
112
+ &__header {
113
+ background: var(--card-header-bg);
114
+ border-color: var(--border-color);
115
+ }
116
+
117
+ &__footer {
118
+ background: var(--card-footer-bg);
119
+ border-color: var(--border-color);
120
+ }
121
+ }
122
+
123
+ .pa-input,
124
+ .pa-select,
125
+ .pa-textarea {
126
+ background-color: var(--input-bg);
127
+ border-color: var(--border-color);
128
+ color: var(--text-primary);
129
+
130
+ &:focus {
131
+ border-color: var(--accent-color);
132
+ box-shadow: 0 0 0 3px var(--accent-light);
133
+ }
134
+ }
135
+
136
+ /* Table styling - comprehensive overrides */
137
+ .pa-table {
138
+ background-color: var(--table-bg);
139
+ color: var(--text-primary);
140
+
141
+ th {
142
+ background-color: var(--table-header-bg);
143
+ color: var(--text-primary);
144
+ border-color: var(--border-color);
145
+ }
146
+
147
+ td {
148
+ background-color: var(--table-bg);
149
+ color: var(--text-primary);
150
+ border-color: var(--border-color);
151
+ }
152
+
153
+ tr {
154
+ background-color: var(--table-bg);
155
+
156
+ &:hover {
157
+ background-color: var(--table-hover-bg);
158
+ }
159
+ }
160
+
161
+ tbody {
162
+ tr {
163
+ background-color: var(--table-bg) !important;
164
+
165
+ &:hover {
166
+ background-color: var(--table-hover-bg) !important;
167
+ }
168
+ }
169
+
170
+ td {
171
+ background-color: transparent !important;
172
+ color: var(--text-primary);
173
+ }
174
+ }
175
+ }
176
+
177
+ /* Pure CSS table overrides */
178
+ .pure-table {
179
+ background-color: var(--table-bg);
180
+ color: var(--text-primary);
181
+
182
+ td,
183
+ th {
184
+ background-color: var(--table-bg);
185
+ color: var(--text-primary);
186
+ border-color: var(--border-color);
187
+ }
188
+
189
+ thead th {
190
+ background-color: var(--table-header-bg);
191
+ }
192
+
193
+ &-striped tr:nth-child(2n-1) td {
194
+ background-color: var(--table-stripe);
195
+ }
196
+
197
+ tr:hover td {
198
+ background-color: var(--table-hover-bg);
199
+ }
200
+ }
201
+
202
+ .component-card {
203
+ background: var(--card-bg);
204
+ border-color: var(--border-color);
205
+ }
206
+ }
207
+ }
@@ -0,0 +1,311 @@
1
+ /* Pure Admin Visual - Audi Light Theme */
2
+ /* Light version maintaining Audi's red accents and Fira Sans Condensed font */
3
+ @use 'sass:color';
4
+
5
+ @import '../variables';
6
+
7
+ // Audi Light theme configuration
8
+ $sidebar-width: 29rem; // 290px (10px base)
9
+ $border-radius: 1px; // Keep Audi's sharp edges
10
+ $border-radius-lg: 2px;
11
+
12
+ // Audi Light color palette
13
+ // Grays - light palette
14
+ $audi-white: #ffffff;
15
+ $audi-gray-50: #f8f9fa;
16
+ $audi-gray-100: #f1f3f5;
17
+ $audi-gray-200: #e9ecef;
18
+ $audi-gray-300: #dee2e6;
19
+ $audi-gray-400: #ced4da;
20
+ $audi-gray-500: #adb5bd;
21
+ $audi-gray-600: #6c757d;
22
+ $audi-gray-700: #495057;
23
+ $audi-gray-800: #343a40;
24
+ $audi-gray-900: #212529;
25
+
26
+ // Dark sidebar colors (for contrast)
27
+ $audi-sidebar-dark: #1a1a1a;
28
+ $audi-sidebar-darker: #0a0a0a;
29
+ $audi-sidebar-gray: #2a2a2a;
30
+ $audi-sidebar-gray-light: #333333;
31
+
32
+ // Audi signature red (unchanged)
33
+ $audi-red: #ff0000;
34
+ $audi-red-dark: #cc0000;
35
+ $audi-red-light: rgba(255, 0, 0, 0.1);
36
+
37
+ // Layout colors - light with dark sidebar
38
+ $primary-bg: $audi-gray-100;
39
+ $bg-secondary: $audi-gray-50;
40
+ $content-background-color: $audi-gray-100;
41
+ $header-bg: $audi-sidebar-dark; // Dark header
42
+ $header-border-color: $audi-gray-300;
43
+ $header-profile-name-color: #ffffff; // Light text on dark header
44
+ $sidebar-bg: $audi-sidebar-dark; // Dark sidebar for contrast
45
+ $sidebar-submenu-bg: $audi-sidebar-gray;
46
+ $sidebar-submenu-hover-bg: rgba($audi-red, 0.25); // Match level 1 hover (red accent)
47
+ $sidebar-submenu-active-bg: rgba($audi-red, 0.3); // Match level 1 active (red accent)
48
+ $footer-bg: $audi-sidebar-dark; // Dark footer
49
+ $border-color: $audi-gray-300;
50
+ $text-primary: $audi-gray-900;
51
+ $text-secondary: $audi-gray-600;
52
+ $accent-color: $audi-red;
53
+ $accent-hover: rgba($audi-red, 0.1);
54
+ $accent-light: rgba($audi-red, 0.05);
55
+
56
+ // Sync base variables with theme colors
57
+ $base-accent-color: $accent-color;
58
+ $base-accent-color-hover: color.adjust($base-accent-color, $lightness: 10%);
59
+ $base-accent-color-active: color.adjust($base-accent-color, $lightness: 20%);
60
+ $base-accent-color-light: $accent-light;
61
+ $base-accent-color-light-hover: rgba($base-accent-color, 0.08);
62
+
63
+ // Form focus colors - must match accent color
64
+ $input-focus-border-color: $accent-color;
65
+ $select-focus-border-color: $accent-color;
66
+ $textarea-focus-border-color: $accent-color;
67
+
68
+ // Checkbox colors - must match accent color
69
+ $checkbox-border-color-hover: $accent-color;
70
+ $checkbox-border-color-checked: $accent-color;
71
+ $checkbox-bg-checked: $accent-color;
72
+ $checkbox-bg-indeterminate: $accent-color;
73
+ $checkbox-focus-shadow: 0 0 0 2px rgba($accent-color, 0.25);
74
+
75
+ // Card colors
76
+ $card-bg: $audi-white;
77
+ $card-header-bg: $audi-gray-50;
78
+ $card-footer-bg: $audi-gray-50;
79
+ $card-tabs-bg: $audi-gray-200;
80
+
81
+ // Input colors
82
+ $input-bg: $audi-white;
83
+ $input-border: $audi-gray-300;
84
+ $input-text: $audi-gray-900;
85
+
86
+ // Table colors
87
+ $table-stripe: $audi-gray-50;
88
+ $table-bg: $audi-white;
89
+ $table-header-bg: $audi-gray-100;
90
+ $table-hover-bg: $audi-gray-50;
91
+
92
+ // Enable red accent on table row hover (Audi signature detail)
93
+ $table-hover-accent-width: 3px;
94
+ $table-hover-accent-color: $accent-color;
95
+ $table-hover-accent-position: left;
96
+
97
+ // Modal colors
98
+ $modal-content-bg: $audi-white;
99
+ $modal-overlay-bg: rgba($audi-sidebar-darker, 0.75);
100
+
101
+ // Button colors - Keep Audi's red primary/danger, adjust others for light theme
102
+ $btn-primary-bg: $audi-red;
103
+ $btn-primary-bg-hover: $audi-red-dark;
104
+ $btn-primary-text: #ffffff;
105
+ $btn-secondary-bg: $audi-gray-600;
106
+ $btn-secondary-bg-hover: $audi-gray-700;
107
+ $btn-secondary-text: #ffffff;
108
+ $btn-success-bg: #00cc44;
109
+ $btn-success-bg-hover: #009933;
110
+ $btn-success-text: #ffffff;
111
+ $btn-danger-bg: $audi-red;
112
+ $btn-danger-bg-hover: $audi-red-dark;
113
+ $btn-danger-text: #ffffff;
114
+ $btn-warning-bg: #ff6600;
115
+ $btn-warning-bg-hover: #e55a00;
116
+ $btn-warning-text: #ffffff;
117
+ $btn-info-bg: #0099ff;
118
+ $btn-info-bg-hover: #0077cc;
119
+ $btn-info-text: #ffffff;
120
+ $btn-light-bg: $audi-gray-200;
121
+ $btn-light-bg-hover: $audi-gray-300;
122
+ $btn-light-text: $audi-gray-900;
123
+ $btn-dark-bg: $audi-gray-900;
124
+ $btn-dark-bg-hover: $audi-gray-800;
125
+ $btn-dark-text: #ffffff;
126
+
127
+ // Validation shadow colors - match button colors
128
+ $success-bg: $btn-success-bg;
129
+ $success-bg-light: rgba(0, 204, 68, 0.1);
130
+ $warning-bg: $btn-warning-bg;
131
+ $warning-bg-light: rgba(255, 102, 0, 0.1);
132
+ $danger-bg: $btn-danger-bg;
133
+ $danger-bg-light: rgba(255, 0, 0, 0.1);
134
+
135
+ // Fira Sans Condensed fonts (local, same as Audi dark theme)
136
+ /* cyrillic-ext */
137
+ @font-face {
138
+ font-family: 'Fira Sans Condensed';
139
+ font-style: normal;
140
+ font-weight: 400;
141
+ font-display: swap;
142
+ src: url(/fonts/google/wEOhEADFm8hSaQTFG18FErVhsC9x-tarUfvtrftV.woff2) format('woff2');
143
+ unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
144
+ }
145
+ /* cyrillic */
146
+ @font-face {
147
+ font-family: 'Fira Sans Condensed';
148
+ font-style: normal;
149
+ font-weight: 400;
150
+ font-display: swap;
151
+ src: url(/fonts/google/wEOhEADFm8hSaQTFG18FErVhsC9x-tarUfLtrftV.woff2) format('woff2');
152
+ unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
153
+ }
154
+ /* greek-ext */
155
+ @font-face {
156
+ font-family: 'Fira Sans Condensed';
157
+ font-style: normal;
158
+ font-weight: 400;
159
+ font-display: swap;
160
+ src: url(/fonts/google/wEOhEADFm8hSaQTFG18FErVhsC9x-tarUfrtrftV.woff2) format('woff2');
161
+ unicode-range: U+1F00-1FFF;
162
+ }
163
+ /* greek */
164
+ @font-face {
165
+ font-family: 'Fira Sans Condensed';
166
+ font-style: normal;
167
+ font-weight: 400;
168
+ font-display: swap;
169
+ src: url(/fonts/google/wEOhEADFm8hSaQTFG18FErVhsC9x-tarUfXtrftV.woff2) format('woff2');
170
+ unicode-range: U+0370-03FF;
171
+ }
172
+ /* vietnamese */
173
+ @font-face {
174
+ font-family: 'Fira Sans Condensed';
175
+ font-style: normal;
176
+ font-weight: 400;
177
+ font-display: swap;
178
+ src: url(/fonts/google/wEOhEADFm8hSaQTFG18FErVhsC9x-tarUfntrftV.woff2) format('woff2');
179
+ unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+1EA0-1EF9, U+20AB;
180
+ }
181
+ /* latin-ext */
182
+ @font-face {
183
+ font-family: 'Fira Sans Condensed';
184
+ font-style: normal;
185
+ font-weight: 400;
186
+ font-display: swap;
187
+ src: url(/fonts/google/wEOhEADFm8hSaQTFG18FErVhsC9x-tarUfjtrftV.woff2) format('woff2');
188
+ unicode-range: U+0100-024F, U+0259, U+1E00-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
189
+ }
190
+ /* latin */
191
+ @font-face {
192
+ font-family: 'Fira Sans Condensed';
193
+ font-style: normal;
194
+ font-weight: 400;
195
+ font-display: swap;
196
+ src: url(/fonts/google/wEOhEADFm8hSaQTFG18FErVhsC9x-tarUfbtrQ.woff2) format('woff2');
197
+ unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
198
+ }
199
+
200
+ // Set body font
201
+ $body-font-family: "Fira Sans Condensed", "Arial Narrow", "Arial", sans-serif;
202
+
203
+ // Import core styles with overridden variables
204
+ @import '../core';
205
+ @import '../utilities';
206
+ @import '../base-css-variables';
207
+
208
+ // Audi Light specific overrides
209
+ // Sidebar text should be light on dark background
210
+ .pa-sidebar {
211
+ color: #ffffff;
212
+
213
+ &__link {
214
+ color: #cccccc;
215
+
216
+ &:hover {
217
+ color: #ffffff;
218
+ background-color: rgba($audi-red, 0.1);
219
+ }
220
+
221
+ &--active {
222
+ color: #ffffff;
223
+ background-color: rgba($audi-red, 0.15);
224
+ border-left: 3px solid $audi-red;
225
+ }
226
+ }
227
+
228
+ &__toggle {
229
+ color: #cccccc;
230
+
231
+ &:hover {
232
+ color: #ffffff;
233
+ }
234
+ }
235
+ }
236
+
237
+ // Header text visibility - light text on dark header
238
+ .pa-header {
239
+ &__brand h1 {
240
+ color: #ffffff !important;
241
+ }
242
+
243
+ &__nav > ul > li > a {
244
+ color: #cccccc !important;
245
+
246
+ &:hover {
247
+ color: $audi-red !important;
248
+ background-color: rgba($audi-red, 0.1) !important;
249
+ }
250
+ }
251
+
252
+ // Dropdown menu items - dark text on light background
253
+ &__dropdown li a {
254
+ color: $audi-gray-900 !important;
255
+
256
+ &:hover {
257
+ color: $audi-red !important;
258
+ background-color: rgba($audi-red, 0.05) !important;
259
+ }
260
+ }
261
+
262
+ &__title h2 {
263
+ color: #cccccc !important;
264
+ }
265
+
266
+ &__profile-btn {
267
+ color: #ffffff !important;
268
+
269
+ &:hover {
270
+ background-color: rgba($audi-red, 0.2) !important;
271
+ }
272
+ }
273
+ }
274
+
275
+ // Burger menu - light bars on dark header
276
+ .burger-menu {
277
+ span {
278
+ background-color: #ffffff !important;
279
+ }
280
+
281
+ &:hover span {
282
+ background-color: $audi-red !important;
283
+ }
284
+ }
285
+
286
+ // Theme switcher in header
287
+ .theme-switcher {
288
+ label {
289
+ color: #cccccc !important;
290
+ }
291
+
292
+ select {
293
+ background-color: $audi-sidebar-gray !important;
294
+ color: #ffffff !important;
295
+ border-color: $audi-sidebar-gray-light !important;
296
+
297
+ &:focus {
298
+ border-color: $audi-red !important;
299
+ }
300
+ }
301
+ }
302
+
303
+ // CSS Variables for page loader (FOUC prevention) and base theme variables
304
+ :root {
305
+ --page-loader-bg: rgba(240, 240, 240, 0.95);
306
+ --page-loader-spinner-border: #d0d0d0;
307
+ --page-loader-spinner-accent: #bb0a30; // Audi red
308
+
309
+ // Base CSS variables for web components (daterangepicker, multiselect, etc.)
310
+ @include output-base-css-variables;
311
+ }