kimu-core 0.4.1

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 (146) hide show
  1. package/.editorconfig +30 -0
  2. package/.gitattributes +11 -0
  3. package/.github/FUNDING.yml +8 -0
  4. package/.github/copilot-instructions.md +103 -0
  5. package/.github/kimu-copilot-instructions.md +3779 -0
  6. package/.github/workflows/deploy-demo.yml +39 -0
  7. package/AUTHORS.md +20 -0
  8. package/CHANGELOG.md +20 -0
  9. package/CODE_GUIDELINES.md +165 -0
  10. package/CODE_OF_CONDUCT.md +47 -0
  11. package/CONTRIBUTING.md +62 -0
  12. package/FUNDING.md +31 -0
  13. package/ISSUE_GUIDELINES.md +74 -0
  14. package/LICENSE +17 -0
  15. package/LICENSE.it.md +17 -0
  16. package/MPL-2.0.txt +373 -0
  17. package/NOTICE +65 -0
  18. package/README-KIMU.md +40 -0
  19. package/README.it.md +208 -0
  20. package/README.md +266 -0
  21. package/SECURITY.md +64 -0
  22. package/docs/get-started-en.md +207 -0
  23. package/docs/images/icon.svg +64 -0
  24. package/docs/images/logo_kimu.png +0 -0
  25. package/docs/index.md +29 -0
  26. package/env/dev.config.json +6 -0
  27. package/env/local.config.json +6 -0
  28. package/env/prod.config.json +6 -0
  29. package/env/staging.config.json +6 -0
  30. package/env/test.config.json +4 -0
  31. package/icon.svg +10 -0
  32. package/logo_kimu.png +0 -0
  33. package/package.json +79 -0
  34. package/public/favicon.svg +64 -0
  35. package/public/logo_kimu.svg +1 -0
  36. package/scripts/build-all-config.js +59 -0
  37. package/scripts/build-all-core.js +65 -0
  38. package/scripts/build-all-extensions.js +64 -0
  39. package/scripts/build-all-modules.js +99 -0
  40. package/scripts/build-extension.js +60 -0
  41. package/scripts/clear-kimu-build.js +31 -0
  42. package/scripts/generate-kimu-build-config.js +79 -0
  43. package/scripts/install-module.js +162 -0
  44. package/scripts/list-modules.js +109 -0
  45. package/scripts/minify-css-assets.js +82 -0
  46. package/scripts/remove-module.js +122 -0
  47. package/scripts/utils/fix-imports.js +85 -0
  48. package/src/assets/index.css +43 -0
  49. package/src/assets/kimu-style.css +84 -0
  50. package/src/assets/style.css +116 -0
  51. package/src/config/kimu-base-config.json +5 -0
  52. package/src/core/index.ts +47 -0
  53. package/src/core/kimu-app.ts +76 -0
  54. package/src/core/kimu-asset-manager.ts +167 -0
  55. package/src/core/kimu-component-element.ts +325 -0
  56. package/src/core/kimu-component.ts +33 -0
  57. package/src/core/kimu-engine.ts +188 -0
  58. package/src/core/kimu-extension-manager.ts +281 -0
  59. package/src/core/kimu-global-styles.ts +136 -0
  60. package/src/core/kimu-module-manager.ts +69 -0
  61. package/src/core/kimu-module.ts +21 -0
  62. package/src/core/kimu-path-config.ts +127 -0
  63. package/src/core/kimu-reactive.ts +196 -0
  64. package/src/core/kimu-render.ts +91 -0
  65. package/src/core/kimu-store.ts +147 -0
  66. package/src/core/kimu-types.ts +65 -0
  67. package/src/extensions/.gitkeep +0 -0
  68. package/src/extensions/extensions-manifest.json +13 -0
  69. package/src/extensions/kimu-home/component.ts +80 -0
  70. package/src/extensions/kimu-home/lang/en.json +5 -0
  71. package/src/extensions/kimu-home/lang/it.json +5 -0
  72. package/src/extensions/kimu-home/style.css +61 -0
  73. package/src/extensions/kimu-home/view.html +51 -0
  74. package/src/index.html +26 -0
  75. package/src/main.ts +68 -0
  76. package/src/modules/.gitkeep +0 -0
  77. package/src/modules/README.md +79 -0
  78. package/src/modules/i18n/README.it.md +63 -0
  79. package/src/modules/i18n/README.md +63 -0
  80. package/src/modules/i18n/kimu-global-lang.ts +26 -0
  81. package/src/modules/i18n/kimu-i18n-service.ts +108 -0
  82. package/src/modules/i18n/manifest.json +22 -0
  83. package/src/modules/i18n/module.ts +39 -0
  84. package/src/modules/modules-manifest.json +12 -0
  85. package/src/modules-repository/README.md +108 -0
  86. package/src/modules-repository/api-axios/CHANGELOG.md +48 -0
  87. package/src/modules-repository/api-axios/QUICK-REFERENCE.md +178 -0
  88. package/src/modules-repository/api-axios/README.md +304 -0
  89. package/src/modules-repository/api-axios/api-axios-service.ts +355 -0
  90. package/src/modules-repository/api-axios/examples.ts +293 -0
  91. package/src/modules-repository/api-axios/index.ts +19 -0
  92. package/src/modules-repository/api-axios/interfaces.ts +71 -0
  93. package/src/modules-repository/api-axios/module.ts +41 -0
  94. package/src/modules-repository/api-core/CHANGELOG.md +42 -0
  95. package/src/modules-repository/api-core/QUICK-REFERENCE.md +192 -0
  96. package/src/modules-repository/api-core/README.md +435 -0
  97. package/src/modules-repository/api-core/api-core-service.ts +289 -0
  98. package/src/modules-repository/api-core/examples.ts +432 -0
  99. package/src/modules-repository/api-core/index.ts +8 -0
  100. package/src/modules-repository/api-core/interfaces.ts +83 -0
  101. package/src/modules-repository/api-core/module.ts +30 -0
  102. package/src/modules-repository/event-bus/README.md +273 -0
  103. package/src/modules-repository/event-bus/event-bus-service.ts +176 -0
  104. package/src/modules-repository/event-bus/module.ts +30 -0
  105. package/src/modules-repository/i18n/README.it.md +63 -0
  106. package/src/modules-repository/i18n/README.md +63 -0
  107. package/src/modules-repository/i18n/kimu-global-lang.ts +26 -0
  108. package/src/modules-repository/i18n/kimu-i18n-service.ts +108 -0
  109. package/src/modules-repository/i18n/manifest.json +22 -0
  110. package/src/modules-repository/i18n/module.ts +39 -0
  111. package/src/modules-repository/notification/README.md +423 -0
  112. package/src/modules-repository/notification/module.ts +30 -0
  113. package/src/modules-repository/notification/notification-service.ts +436 -0
  114. package/src/modules-repository/router/README.it.md +39 -0
  115. package/src/modules-repository/router/README.md +39 -0
  116. package/src/modules-repository/router/manifest.json +21 -0
  117. package/src/modules-repository/router/module.ts +23 -0
  118. package/src/modules-repository/router/router.ts +144 -0
  119. package/src/modules-repository/state/README.md +409 -0
  120. package/src/modules-repository/state/module.ts +30 -0
  121. package/src/modules-repository/state/state-service.ts +296 -0
  122. package/src/modules-repository/theme/README.md +267 -0
  123. package/src/modules-repository/theme/module.ts +30 -0
  124. package/src/modules-repository/theme/pre-build.js +40 -0
  125. package/src/modules-repository/theme/theme-service.ts +389 -0
  126. package/src/modules-repository/theme/themes/theme-cherry-blossom.css +78 -0
  127. package/src/modules-repository/theme/themes/theme-cozy.css +111 -0
  128. package/src/modules-repository/theme/themes/theme-cyberpunk.css +150 -0
  129. package/src/modules-repository/theme/themes/theme-dark.css +79 -0
  130. package/src/modules-repository/theme/themes/theme-forest.css +171 -0
  131. package/src/modules-repository/theme/themes/theme-gold.css +100 -0
  132. package/src/modules-repository/theme/themes/theme-high-contrast.css +126 -0
  133. package/src/modules-repository/theme/themes/theme-lava.css +101 -0
  134. package/src/modules-repository/theme/themes/theme-lavender.css +90 -0
  135. package/src/modules-repository/theme/themes/theme-light.css +79 -0
  136. package/src/modules-repository/theme/themes/theme-matrix.css +103 -0
  137. package/src/modules-repository/theme/themes/theme-midnight.css +81 -0
  138. package/src/modules-repository/theme/themes/theme-nord.css +94 -0
  139. package/src/modules-repository/theme/themes/theme-ocean.css +84 -0
  140. package/src/modules-repository/theme/themes/theme-retro80s.css +343 -0
  141. package/src/modules-repository/theme/themes/theme-sunset.css +62 -0
  142. package/src/modules-repository/theme/themes-config.d.ts +27 -0
  143. package/src/modules-repository/theme/themes-config.json +213 -0
  144. package/src/vite-env.d.ts +1 -0
  145. package/tsconfig.json +33 -0
  146. package/vite.config.ts +99 -0
@@ -0,0 +1,150 @@
1
+ /**
2
+ * Cyberpunk Theme - Futuristic neon aesthetic
3
+ *
4
+ * Inspired by cyberpunk aesthetics with neon colors,
5
+ * dark backgrounds, and electric accents
6
+ */
7
+
8
+ :root {
9
+ /* Primary Colors - Neon Cyan */
10
+ --kimu-primary: #00F0FF;
11
+ --kimu-primary-hover: #33F3FF;
12
+ --kimu-primary-active: #00D0E0;
13
+ --kimu-primary-light: rgba(0, 240, 255, 0.15);
14
+
15
+ /* Secondary Colors - Electric Pink */
16
+ --kimu-secondary: #FF006E;
17
+ --kimu-secondary-hover: #FF3388;
18
+ --kimu-secondary-active: #E0005E;
19
+
20
+ /* Accent Colors - Neon Purple */
21
+ --kimu-accent: #B100FF;
22
+ --kimu-accent-hover: #C433FF;
23
+ --kimu-accent-active: #9900E0;
24
+
25
+ /* Background Colors - Deep Dark */
26
+ --kimu-bg-primary: #0A0A0F;
27
+ --kimu-bg-secondary: #14141F;
28
+ --kimu-bg-tertiary: #1E1E2E;
29
+ --kimu-bg-hover: #28283D;
30
+
31
+ /* Text Colors - Bright Neon */
32
+ --kimu-text-primary: #F0F0FF;
33
+ --kimu-text-secondary: #C0C0E0;
34
+ --kimu-text-tertiary: #9090C0;
35
+ --kimu-text-disabled: #505070;
36
+
37
+ /* Border Colors - Glowing edges */
38
+ --kimu-border: #00F0FF;
39
+ --kimu-border-light: rgba(0, 240, 255, 0.3);
40
+ --kimu-border-strong: #FF006E;
41
+
42
+ /* Status Colors - Neon Palette */
43
+ --kimu-success: #00FF88;
44
+ --kimu-warning: #FFD700;
45
+ --kimu-error: #FF0055;
46
+ --kimu-info: #00CCFF;
47
+
48
+ /* Shadows - Glowing effects */
49
+ --kimu-shadow-sm: 0 0 10px rgba(0, 240, 255, 0.3);
50
+ --kimu-shadow-md: 0 0 20px rgba(0, 240, 255, 0.4);
51
+ --kimu-shadow-lg: 0 0 30px rgba(0, 240, 255, 0.5);
52
+
53
+ /* Additional Component-specific Colors */
54
+ --kimu-card-bg: var(--kimu-bg-secondary);
55
+ --kimu-input-bg: var(--kimu-bg-tertiary);
56
+ --kimu-input-border: var(--kimu-border-light);
57
+ --kimu-input-focus: var(--kimu-primary);
58
+
59
+ /* Links - Neon glow */
60
+ --kimu-link: var(--kimu-primary);
61
+ --kimu-link-hover: var(--kimu-secondary);
62
+
63
+ /* Overlays */
64
+ --kimu-overlay: rgba(10, 10, 15, 0.9);
65
+ }
66
+
67
+ /* Cyberpunk-specific styling */
68
+ body {
69
+ color: var(--kimu-text-primary);
70
+ background: var(--kimu-bg-primary);
71
+ font-family: 'Courier New', 'Consolas', monospace;
72
+ }
73
+
74
+ /* Add subtle grid background */
75
+ body::before {
76
+ content: '';
77
+ position: fixed;
78
+ top: 0;
79
+ left: 0;
80
+ width: 100%;
81
+ height: 100%;
82
+ background-image:
83
+ linear-gradient(rgba(0, 240, 255, 0.03) 1px, transparent 1px),
84
+ linear-gradient(90deg, rgba(0, 240, 255, 0.03) 1px, transparent 1px);
85
+ background-size: 50px 50px;
86
+ pointer-events: none;
87
+ z-index: -1;
88
+ }
89
+
90
+ /* Glowing text effect for headers */
91
+ h1, h2, h3, h4, h5, h6 {
92
+ color: var(--kimu-primary);
93
+ text-shadow: 0 0 10px rgba(0, 240, 255, 0.5);
94
+ }
95
+
96
+ /* Button glow effects */
97
+ button {
98
+ box-shadow: 0 0 10px rgba(0, 240, 255, 0.3);
99
+ transition: all 0.3s ease;
100
+ }
101
+
102
+ button:hover {
103
+ box-shadow: 0 0 20px rgba(0, 240, 255, 0.6);
104
+ transform: translateY(-2px);
105
+ }
106
+
107
+ /* Input glow on focus */
108
+ input:focus,
109
+ textarea:focus,
110
+ select:focus {
111
+ box-shadow: 0 0 15px rgba(0, 240, 255, 0.5);
112
+ border-color: var(--kimu-primary);
113
+ }
114
+
115
+ /* Link neon glow */
116
+ a {
117
+ text-shadow: 0 0 5px rgba(0, 240, 255, 0.5);
118
+ transition: all 0.3s ease;
119
+ }
120
+
121
+ a:hover {
122
+ text-shadow: 0 0 10px rgba(255, 0, 110, 0.8);
123
+ }
124
+
125
+ /* Scrollbar - Neon style */
126
+ ::-webkit-scrollbar {
127
+ width: 12px;
128
+ height: 12px;
129
+ }
130
+
131
+ ::-webkit-scrollbar-track {
132
+ background: var(--kimu-bg-secondary);
133
+ border: 1px solid rgba(0, 240, 255, 0.2);
134
+ }
135
+
136
+ ::-webkit-scrollbar-thumb {
137
+ background: linear-gradient(180deg, #00F0FF, #B100FF);
138
+ border-radius: 6px;
139
+ box-shadow: 0 0 10px rgba(0, 240, 255, 0.5);
140
+ }
141
+
142
+ ::-webkit-scrollbar-thumb:hover {
143
+ box-shadow: 0 0 15px rgba(0, 240, 255, 0.8);
144
+ }
145
+
146
+ /* Selection glow */
147
+ ::selection {
148
+ background: rgba(0, 240, 255, 0.3);
149
+ text-shadow: 0 0 5px rgba(0, 240, 255, 0.8);
150
+ }
@@ -0,0 +1,79 @@
1
+ /**
2
+ * KIMU Dark Theme
3
+ * Dark theme for low-light environments and reduced eye strain
4
+ *
5
+ * This file OVERRIDES the default CSS variables defined in style.css
6
+ * When this theme is loaded, these values take precedence.
7
+ */
8
+
9
+ :root {
10
+ /* Primary colors */
11
+ --kimu-primary: #818cf8;
12
+ --kimu-primary-light: #a5b4fc;
13
+ --kimu-primary-dark: #667eea;
14
+ --kimu-text-on-primary: #1a202c;
15
+
16
+ /* Accent colors */
17
+ --kimu-accent: #9f7aea;
18
+ --kimu-accent-light: #b794f4;
19
+ --kimu-accent-dark: #805ad5;
20
+ --kimu-text-on-accent: #1a202c;
21
+
22
+ /* Background colors */
23
+ --kimu-background: #1a202c;
24
+ --kimu-background-alt: #2d3748;
25
+ --kimu-surface: #2d3748;
26
+
27
+ /* Text colors */
28
+ --kimu-text-primary: #f7fafc;
29
+ --kimu-text-secondary: #e2e8f0;
30
+ --kimu-text-disabled: #718096;
31
+
32
+ /* Semantic colors */
33
+ --kimu-success: #34d399;
34
+ --kimu-success-light: #6ee7b7;
35
+ --kimu-success-dark: #10b981;
36
+
37
+ --kimu-warning: #fbbf24;
38
+ --kimu-warning-light: #fcd34d;
39
+ --kimu-warning-dark: #f59e0b;
40
+
41
+ --kimu-error: #f87171;
42
+ --kimu-error-light: #fca5a5;
43
+ --kimu-error-dark: #ef4444;
44
+
45
+ --kimu-info: #60a5fa;
46
+ --kimu-info-light: #93c5fd;
47
+ --kimu-info-dark: #3b82f6;
48
+
49
+ /* Borders and dividers */
50
+ --kimu-border: #4a5568;
51
+ --kimu-divider: #374151;
52
+
53
+ /* Shadows */
54
+ --kimu-shadow: rgba(0, 0, 0, 0.3);
55
+ --kimu-shadow-light: rgba(0, 0, 0, 0.2);
56
+ --kimu-shadow-medium: rgba(0, 0, 0, 0.4);
57
+ --kimu-shadow-heavy: rgba(0, 0, 0, 0.6);
58
+
59
+ /* Additional UI colors */
60
+ --kimu-card-bg: #2d3748;
61
+ --kimu-card-border: #4a5568;
62
+ --kimu-input-bg: #374151;
63
+ --kimu-input-border: #4b5563;
64
+ --kimu-input-focus: #818cf8;
65
+
66
+ /* Navigation */
67
+ --kimu-nav-bg: #1f2937;
68
+ --kimu-nav-text: #e2e8f0;
69
+ --kimu-nav-active: #818cf8;
70
+
71
+ /* Footer */
72
+ --kimu-footer-bg: #111827;
73
+ --kimu-footer-text: #9ca3af;
74
+ }
75
+
76
+ /* Smooth transitions for theme changes */
77
+ * {
78
+ transition: background-color 0.3s ease, color 0.3s ease, border-color 0.3s ease;
79
+ }
@@ -0,0 +1,171 @@
1
+ /**
2
+ * Forest Theme - Natural green theme
3
+ *
4
+ * Inspired by nature with earthy greens, browns,
5
+ * and natural tones for a calming effect
6
+ */
7
+
8
+ :root {
9
+ /* Primary Colors - Forest Green */
10
+ --kimu-primary: #2D5016;
11
+ --kimu-primary-hover: #3A6B1E;
12
+ --kimu-primary-active: #234012;
13
+ --kimu-primary-light: rgba(45, 80, 22, 0.1);
14
+
15
+ /* Secondary Colors - Moss Green */
16
+ --kimu-secondary: #5A7D3C;
17
+ --kimu-secondary-hover: #6B9147;
18
+ --kimu-secondary-active: #4A6B30;
19
+
20
+ /* Accent Colors - Earthy Brown */
21
+ --kimu-accent: #8B6F47;
22
+ --kimu-accent-hover: #A68658;
23
+ --kimu-accent-active: #755E3B;
24
+
25
+ /* Background Colors - Light Natural Tones */
26
+ --kimu-bg-primary: #F5F3EF;
27
+ --kimu-bg-secondary: #EAE7E0;
28
+ --kimu-bg-tertiary: #DDD9CF;
29
+ --kimu-bg-hover: #D0CCBF;
30
+
31
+ /* Text Colors - Dark Natural */
32
+ --kimu-text-primary: #2C2C2C;
33
+ --kimu-text-secondary: #4A4A4A;
34
+ --kimu-text-tertiary: #6A6A6A;
35
+ --kimu-text-disabled: #9A9A9A;
36
+
37
+ /* Border Colors - Subtle Earthy */
38
+ --kimu-border: #B8B3A7;
39
+ --kimu-border-light: #D0CCBF;
40
+ --kimu-border-strong: #8B6F47;
41
+
42
+ /* Status Colors - Natural Palette */
43
+ --kimu-success: #4A7C2E;
44
+ --kimu-warning: #D4A017;
45
+ --kimu-error: #A94442;
46
+ --kimu-info: #5A7D8C;
47
+
48
+ /* Shadows - Soft natural */
49
+ --kimu-shadow-sm: 0 2px 4px rgba(45, 80, 22, 0.1);
50
+ --kimu-shadow-md: 0 4px 8px rgba(45, 80, 22, 0.15);
51
+ --kimu-shadow-lg: 0 8px 16px rgba(45, 80, 22, 0.2);
52
+
53
+ /* Additional Component-specific Colors */
54
+ --kimu-card-bg: #FFFFFF;
55
+ --kimu-input-bg: #FFFFFF;
56
+ --kimu-input-border: var(--kimu-border);
57
+ --kimu-input-focus: var(--kimu-primary);
58
+
59
+ /* Links */
60
+ --kimu-link: var(--kimu-primary);
61
+ --kimu-link-hover: var(--kimu-secondary);
62
+
63
+ /* Overlays */
64
+ --kimu-overlay: rgba(45, 80, 22, 0.6);
65
+ }
66
+
67
+ /* Forest-specific styling */
68
+ body {
69
+ color: var(--kimu-text-primary);
70
+ background: var(--kimu-bg-primary);
71
+ }
72
+
73
+ /* Add subtle texture */
74
+ body::before {
75
+ content: '';
76
+ position: fixed;
77
+ top: 0;
78
+ left: 0;
79
+ width: 100%;
80
+ height: 100%;
81
+ background-image:
82
+ repeating-linear-gradient(
83
+ 0deg,
84
+ transparent,
85
+ transparent 2px,
86
+ rgba(45, 80, 22, 0.02) 2px,
87
+ rgba(45, 80, 22, 0.02) 4px
88
+ );
89
+ pointer-events: none;
90
+ z-index: -1;
91
+ }
92
+
93
+ /* Headers with natural feel */
94
+ h1, h2, h3, h4, h5, h6 {
95
+ color: var(--kimu-primary);
96
+ font-weight: 600;
97
+ }
98
+
99
+ /* Buttons with organic feel */
100
+ button {
101
+ border-radius: 8px;
102
+ transition: all 0.3s ease;
103
+ }
104
+
105
+ button:hover {
106
+ transform: translateY(-1px);
107
+ box-shadow: var(--kimu-shadow-md);
108
+ }
109
+
110
+ /* Cards with paper-like appearance */
111
+ .card,
112
+ [class*="card"] {
113
+ background: #FFFFFF;
114
+ border-radius: 12px;
115
+ box-shadow: var(--kimu-shadow-sm);
116
+ }
117
+
118
+ /* Inputs with natural borders */
119
+ input,
120
+ textarea,
121
+ select {
122
+ border-radius: 6px;
123
+ border: 1.5px solid var(--kimu-border);
124
+ transition: all 0.3s ease;
125
+ }
126
+
127
+ input:focus,
128
+ textarea:focus,
129
+ select:focus {
130
+ border-color: var(--kimu-primary);
131
+ box-shadow: 0 0 0 3px var(--kimu-primary-light);
132
+ }
133
+
134
+ /* Links with natural underline */
135
+ a {
136
+ text-decoration: none;
137
+ border-bottom: 1px solid var(--kimu-border-light);
138
+ transition: all 0.2s ease;
139
+ }
140
+
141
+ a:hover {
142
+ border-bottom-color: var(--kimu-primary);
143
+ color: var(--kimu-primary);
144
+ }
145
+
146
+ /* Scrollbar - Natural wood style */
147
+ ::-webkit-scrollbar {
148
+ width: 12px;
149
+ height: 12px;
150
+ }
151
+
152
+ ::-webkit-scrollbar-track {
153
+ background: var(--kimu-bg-secondary);
154
+ border-radius: 6px;
155
+ }
156
+
157
+ ::-webkit-scrollbar-thumb {
158
+ background: linear-gradient(180deg, var(--kimu-secondary), var(--kimu-accent));
159
+ border-radius: 6px;
160
+ border: 2px solid var(--kimu-bg-secondary);
161
+ }
162
+
163
+ ::-webkit-scrollbar-thumb:hover {
164
+ background: var(--kimu-primary);
165
+ }
166
+
167
+ /* Selection with natural highlight */
168
+ ::selection {
169
+ background: var(--kimu-primary-light);
170
+ color: var(--kimu-text-primary);
171
+ }
@@ -0,0 +1,100 @@
1
+ /**
2
+ * Gold Theme - Elegant gold and luxury colors
3
+ * A premium theme with golden accents
4
+ */
5
+
6
+ :root {
7
+ /* Main colors */
8
+ --kimu-background: linear-gradient(135deg, #1A1410 0%, #2A2218 50%, #3A3020 100%);
9
+ --kimu-surface: rgba(218, 165, 32, 0.1);
10
+ --kimu-surface-elevated: rgba(218, 165, 32, 0.15);
11
+
12
+ /* Text colors */
13
+ --kimu-text-primary: #FFD700;
14
+ --kimu-text-secondary: #F0C85B;
15
+ --kimu-text-tertiary: #D4AF37;
16
+ --kimu-text-disabled: #B8941F;
17
+
18
+ /* Border colors */
19
+ --kimu-border: #DAA520;
20
+ --kimu-border-light: #FFD700;
21
+ --kimu-divider: rgba(218, 165, 32, 0.3);
22
+
23
+ /* Accent colors */
24
+ --kimu-primary: #FFD700;
25
+ --kimu-primary-dark: #DAA520;
26
+ --kimu-primary-light: #FFEC8B;
27
+ --kimu-secondary: #F0C85B;
28
+ --kimu-accent: #FFE55C;
29
+
30
+ /* State colors */
31
+ --kimu-success: #90EE90;
32
+ --kimu-warning: #FFA500;
33
+ --kimu-error: #DC143C;
34
+ --kimu-info: #87CEEB;
35
+
36
+ /* Shadow */
37
+ --kimu-shadow: rgba(218, 165, 32, 0.4);
38
+ --kimu-shadow-strong: rgba(218, 165, 32, 0.7);
39
+
40
+ /* Component colors */
41
+ --kimu-input-bg: rgba(42, 34, 24, 0.7);
42
+ --kimu-input-border: #DAA520;
43
+ --kimu-button-bg: #FFD700;
44
+ --kimu-button-hover: #FFEC8B;
45
+ --kimu-card-bg: rgba(42, 34, 24, 0.9);
46
+
47
+ /* Font */
48
+ --kimu-font: 'Georgia', 'Times New Roman', serif;
49
+ }
50
+
51
+ /* Body background with gradient */
52
+ body {
53
+ background: linear-gradient(135deg, #1A1410 0%, #2A2218 50%, #3A3020 100%);
54
+ background-attachment: fixed;
55
+ color: var(--kimu-text-primary);
56
+ font-family: var(--kimu-font);
57
+ }
58
+
59
+ /* Gold shine animation */
60
+ @keyframes gold-shine {
61
+ 0% {
62
+ background-position: -200% center;
63
+ }
64
+ 100% {
65
+ background-position: 200% center;
66
+ }
67
+ }
68
+
69
+ /* Luxury glow effect */
70
+ button:hover,
71
+ a:hover {
72
+ box-shadow: 0 0 20px rgba(255, 215, 0, 0.6),
73
+ 0 0 40px rgba(255, 215, 0, 0.3),
74
+ 0 8px 24px rgba(0, 0, 0, 0.4);
75
+ text-shadow: 0 0 10px rgba(255, 215, 0, 0.8);
76
+ }
77
+
78
+ /* Elegant text shadow */
79
+ h1, h2, h3, h4, h5, h6 {
80
+ text-shadow: 0 2px 10px rgba(255, 215, 0, 0.5),
81
+ 0 0 20px rgba(218, 165, 32, 0.3);
82
+ }
83
+
84
+ /* Sparkle effect */
85
+ body::after {
86
+ content: '';
87
+ position: fixed;
88
+ top: 0;
89
+ left: 0;
90
+ width: 100%;
91
+ height: 100%;
92
+ background-image:
93
+ radial-gradient(2px 2px at 15% 25%, rgba(255, 215, 0, 0.4), transparent),
94
+ radial-gradient(2px 2px at 75% 65%, rgba(255, 215, 0, 0.3), transparent),
95
+ radial-gradient(1px 1px at 45% 85%, rgba(255, 236, 139, 0.5), transparent),
96
+ radial-gradient(1px 1px at 85% 15%, rgba(218, 165, 32, 0.4), transparent);
97
+ background-size: 250px 250px, 300px 300px, 200px 200px, 280px 280px;
98
+ pointer-events: none;
99
+ z-index: 0;
100
+ }
@@ -0,0 +1,126 @@
1
+ /**
2
+ * High Contrast Theme - For accessibility
3
+ *
4
+ * Designed following WCAG AAA guidelines:
5
+ * - Contrast ratio ≥ 7:1 for normal text
6
+ * - Contrast ratio ≥ 4.5:1 for large text
7
+ * - Clear visual indicators for focus and active states
8
+ */
9
+
10
+ :root {
11
+ /* Primary Colors - Pure Black on White */
12
+ --kimu-primary: #0000FF;
13
+ --kimu-primary-hover: #0000CC;
14
+ --kimu-primary-active: #000099;
15
+ --kimu-primary-light: rgba(0, 0, 255, 0.15);
16
+
17
+ /* Secondary Colors - Dark Green */
18
+ --kimu-secondary: #006600;
19
+ --kimu-secondary-hover: #008800;
20
+ --kimu-secondary-active: #004400;
21
+
22
+ /* Accent Colors - Dark Purple */
23
+ --kimu-accent: #660099;
24
+ --kimu-accent-hover: #7700AA;
25
+ --kimu-accent-active: #550088;
26
+
27
+ /* Background Colors - Pure White */
28
+ --kimu-bg-primary: #FFFFFF;
29
+ --kimu-bg-secondary: #F5F5F5;
30
+ --kimu-bg-tertiary: #EBEBEB;
31
+ --kimu-bg-hover: #E0E0E0;
32
+
33
+ /* Text Colors - Pure Black */
34
+ --kimu-text-primary: #000000;
35
+ --kimu-text-secondary: #1A1A1A;
36
+ --kimu-text-tertiary: #333333;
37
+ --kimu-text-disabled: #666666;
38
+
39
+ /* Border Colors - Strong Contrast */
40
+ --kimu-border: #000000;
41
+ --kimu-border-light: #333333;
42
+ --kimu-border-strong: #000000;
43
+
44
+ /* Status Colors - High Contrast */
45
+ --kimu-success: #006600;
46
+ --kimu-warning: #CC6600;
47
+ --kimu-error: #CC0000;
48
+ --kimu-info: #0000CC;
49
+
50
+ /* Shadows - Stronger for visibility */
51
+ --kimu-shadow-sm: 0 2px 4px rgba(0, 0, 0, 0.5);
52
+ --kimu-shadow-md: 0 4px 8px rgba(0, 0, 0, 0.5);
53
+ --kimu-shadow-lg: 0 8px 16px rgba(0, 0, 0, 0.5);
54
+
55
+ /* Additional Component-specific Colors */
56
+ --kimu-card-bg: var(--kimu-bg-primary);
57
+ --kimu-input-bg: #FFFFFF;
58
+ --kimu-input-border: #000000;
59
+ --kimu-input-focus: #0000FF;
60
+
61
+ /* Links - Underlined by default for accessibility */
62
+ --kimu-link: #0000FF;
63
+ --kimu-link-hover: #0000CC;
64
+
65
+ /* Overlays */
66
+ --kimu-overlay: rgba(0, 0, 0, 0.85);
67
+ }
68
+
69
+ /* High Contrast specific enhancements */
70
+ body {
71
+ color: var(--kimu-text-primary);
72
+ background: var(--kimu-bg-primary);
73
+ }
74
+
75
+ /* Ensure all links are underlined */
76
+ a {
77
+ text-decoration: underline;
78
+ font-weight: bold;
79
+ }
80
+
81
+ /* Strong focus indicators */
82
+ :focus-visible {
83
+ outline: 3px solid var(--kimu-primary);
84
+ outline-offset: 2px;
85
+ }
86
+
87
+ /* Button styling with clear borders */
88
+ button {
89
+ border: 2px solid var(--kimu-border) !important;
90
+ font-weight: bold;
91
+ }
92
+
93
+ /* Input styling with clear borders */
94
+ input,
95
+ textarea,
96
+ select {
97
+ border: 2px solid var(--kimu-border) !important;
98
+ }
99
+
100
+ input:focus,
101
+ textarea:focus,
102
+ select:focus {
103
+ border-color: var(--kimu-input-focus) !important;
104
+ outline: 2px solid var(--kimu-input-focus);
105
+ outline-offset: 1px;
106
+ }
107
+
108
+ /* Scrollbar - High contrast */
109
+ ::-webkit-scrollbar {
110
+ width: 16px;
111
+ height: 16px;
112
+ }
113
+
114
+ ::-webkit-scrollbar-track {
115
+ background: #F0F0F0;
116
+ border: 1px solid #000000;
117
+ }
118
+
119
+ ::-webkit-scrollbar-thumb {
120
+ background: #000000;
121
+ border: 2px solid #FFFFFF;
122
+ }
123
+
124
+ ::-webkit-scrollbar-thumb:hover {
125
+ background: #333333;
126
+ }