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,101 @@
1
+ /**
2
+ * Lava Theme - Intense red and orange fire colors
3
+ * A powerful theme inspired by molten lava
4
+ */
5
+
6
+ :root {
7
+ /* Main colors */
8
+ --kimu-background: linear-gradient(135deg, #1A0000 0%, #330000 30%, #4D0000 60%, #660000 100%);
9
+ --kimu-surface: rgba(255, 69, 0, 0.1);
10
+ --kimu-surface-elevated: rgba(255, 69, 0, 0.2);
11
+
12
+ /* Text colors */
13
+ --kimu-text-primary: #FFE5D9;
14
+ --kimu-text-secondary: #FFD4BF;
15
+ --kimu-text-tertiary: #FFC4A6;
16
+ --kimu-text-disabled: #CC9980;
17
+
18
+ /* Border colors */
19
+ --kimu-border: #FF4500;
20
+ --kimu-border-light: #FF6347;
21
+ --kimu-divider: rgba(255, 69, 0, 0.3);
22
+
23
+ /* Accent colors */
24
+ --kimu-primary: #FF4500;
25
+ --kimu-primary-dark: #CC3700;
26
+ --kimu-primary-light: #FF6347;
27
+ --kimu-secondary: #FF8C00;
28
+ --kimu-accent: #FFD700;
29
+
30
+ /* State colors */
31
+ --kimu-success: #FFD700;
32
+ --kimu-warning: #FFA500;
33
+ --kimu-error: #B22222;
34
+ --kimu-info: #FF6347;
35
+
36
+ /* Shadow */
37
+ --kimu-shadow: rgba(255, 69, 0, 0.5);
38
+ --kimu-shadow-strong: rgba(255, 69, 0, 0.8);
39
+
40
+ /* Component colors */
41
+ --kimu-input-bg: rgba(51, 0, 0, 0.7);
42
+ --kimu-input-border: #FF4500;
43
+ --kimu-button-bg: #FF4500;
44
+ --kimu-button-hover: #FF6347;
45
+ --kimu-card-bg: rgba(51, 0, 0, 0.8);
46
+
47
+ /* Font */
48
+ --kimu-font: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', sans-serif;
49
+ }
50
+
51
+ /* Body background with gradient */
52
+ body {
53
+ background: linear-gradient(135deg, #1A0000 0%, #330000 30%, #4D0000 60%, #660000 100%);
54
+ background-attachment: fixed;
55
+ color: var(--kimu-text-primary);
56
+ }
57
+
58
+ /* Lava glow animation */
59
+ @keyframes lava-glow {
60
+ 0%, 100% {
61
+ box-shadow: 0 0 20px rgba(255, 69, 0, 0.5),
62
+ 0 0 40px rgba(255, 69, 0, 0.3);
63
+ }
64
+ 50% {
65
+ box-shadow: 0 0 30px rgba(255, 140, 0, 0.7),
66
+ 0 0 60px rgba(255, 140, 0, 0.5);
67
+ }
68
+ }
69
+
70
+ /* Fire effect on hover */
71
+ button:hover,
72
+ a:hover {
73
+ animation: lava-glow 2s infinite;
74
+ }
75
+
76
+ /* Ember particles effect */
77
+ body::after {
78
+ content: '';
79
+ position: fixed;
80
+ top: 0;
81
+ left: 0;
82
+ width: 100%;
83
+ height: 100%;
84
+ background-image:
85
+ radial-gradient(3px 3px at 10% 20%, rgba(255, 140, 0, 0.4), transparent),
86
+ radial-gradient(2px 2px at 80% 60%, rgba(255, 69, 0, 0.3), transparent),
87
+ radial-gradient(3px 3px at 40% 80%, rgba(255, 215, 0, 0.4), transparent);
88
+ background-size: 300px 300px;
89
+ animation: ember-rise 15s linear infinite;
90
+ pointer-events: none;
91
+ z-index: 0;
92
+ }
93
+
94
+ @keyframes ember-rise {
95
+ from {
96
+ transform: translateY(100%);
97
+ }
98
+ to {
99
+ transform: translateY(-100%);
100
+ }
101
+ }
@@ -0,0 +1,90 @@
1
+ /**
2
+ * Lavender Theme - Relaxing purple lavender colors
3
+ * A calming theme inspired by lavender fields
4
+ */
5
+
6
+ :root {
7
+ /* Main colors */
8
+ --kimu-background: linear-gradient(135deg, #F4ECFA 0%, #E6D9F5 50%, #D8C6F0 100%);
9
+ --kimu-surface: rgba(216, 198, 240, 0.2);
10
+ --kimu-surface-elevated: rgba(216, 198, 240, 0.3);
11
+
12
+ /* Text colors */
13
+ --kimu-text-primary: #4A2C5B;
14
+ --kimu-text-secondary: #6A4C7B;
15
+ --kimu-text-tertiary: #8A6C9B;
16
+ --kimu-text-disabled: #AA8CBB;
17
+
18
+ /* Border colors */
19
+ --kimu-border: #C8B2E0;
20
+ --kimu-border-light: #DCC9EB;
21
+ --kimu-divider: rgba(200, 178, 224, 0.3);
22
+
23
+ /* Accent colors */
24
+ --kimu-primary: #9B7EBD;
25
+ --kimu-primary-dark: #7B5E9D;
26
+ --kimu-primary-light: #B89ED4;
27
+ --kimu-secondary: #B5A2D4;
28
+ --kimu-accent: #D8C6F0;
29
+
30
+ /* State colors */
31
+ --kimu-success: #81C784;
32
+ --kimu-warning: #FFB74D;
33
+ --kimu-error: #E57373;
34
+ --kimu-info: #64B5F6;
35
+
36
+ /* Shadow */
37
+ --kimu-shadow: rgba(155, 126, 189, 0.3);
38
+ --kimu-shadow-strong: rgba(155, 126, 189, 0.5);
39
+
40
+ /* Component colors */
41
+ --kimu-input-bg: #FFFFFF;
42
+ --kimu-input-border: #C8B2E0;
43
+ --kimu-button-bg: #9B7EBD;
44
+ --kimu-button-hover: #B89ED4;
45
+ --kimu-card-bg: rgba(255, 255, 255, 0.9);
46
+
47
+ /* Font */
48
+ --kimu-font: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', sans-serif;
49
+ }
50
+
51
+ /* Body background with gradient */
52
+ body {
53
+ background: linear-gradient(135deg, #F4ECFA 0%, #E6D9F5 50%, #D8C6F0 100%);
54
+ background-attachment: fixed;
55
+ color: var(--kimu-text-primary);
56
+ }
57
+
58
+ /* Lavender field effect */
59
+ body::before {
60
+ content: '';
61
+ position: fixed;
62
+ bottom: 0;
63
+ left: 0;
64
+ width: 100%;
65
+ height: 30%;
66
+ background: linear-gradient(to top,
67
+ rgba(155, 126, 189, 0.2) 0%,
68
+ rgba(155, 126, 189, 0.1) 50%,
69
+ transparent 100%
70
+ );
71
+ pointer-events: none;
72
+ z-index: 0;
73
+ }
74
+
75
+ /* Soft glow on hover */
76
+ button:hover,
77
+ a:hover {
78
+ box-shadow: 0 0 20px rgba(155, 126, 189, 0.5);
79
+ transition: all 0.3s ease;
80
+ }
81
+
82
+ /* Relaxing pulse animation */
83
+ @keyframes lavender-pulse {
84
+ 0%, 100% {
85
+ box-shadow: 0 0 10px rgba(155, 126, 189, 0.3);
86
+ }
87
+ 50% {
88
+ box-shadow: 0 0 20px rgba(155, 126, 189, 0.5);
89
+ }
90
+ }
@@ -0,0 +1,79 @@
1
+ /**
2
+ * KIMU Light Theme
3
+ * Clean and bright theme for daytime use
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: #667eea;
12
+ --kimu-primary-light: #818cf8;
13
+ --kimu-primary-dark: #5a67d8;
14
+ --kimu-text-on-primary: #ffffff;
15
+
16
+ /* Accent colors */
17
+ --kimu-accent: #764ba2;
18
+ --kimu-accent-light: #9f7aea;
19
+ --kimu-accent-dark: #6b46c1;
20
+ --kimu-text-on-accent: #ffffff;
21
+
22
+ /* Background colors */
23
+ --kimu-background: #ffffff;
24
+ --kimu-background-alt: #f7fafc;
25
+ --kimu-surface: #ffffff;
26
+
27
+ /* Text colors */
28
+ --kimu-text-primary: #1a202c;
29
+ --kimu-text-secondary: #4a5568;
30
+ --kimu-text-disabled: #a0aec0;
31
+
32
+ /* Semantic colors */
33
+ --kimu-success: #22c55e;
34
+ --kimu-success-light: #4ade80;
35
+ --kimu-success-dark: #16a34a;
36
+
37
+ --kimu-warning: #f59e0b;
38
+ --kimu-warning-light: #fbbf24;
39
+ --kimu-warning-dark: #d97706;
40
+
41
+ --kimu-error: #ef4444;
42
+ --kimu-error-light: #f87171;
43
+ --kimu-error-dark: #dc2626;
44
+
45
+ --kimu-info: #3b82f6;
46
+ --kimu-info-light: #60a5fa;
47
+ --kimu-info-dark: #2563eb;
48
+
49
+ /* Borders and dividers */
50
+ --kimu-border: #e2e8f0;
51
+ --kimu-divider: #cbd5e0;
52
+
53
+ /* Shadows */
54
+ --kimu-shadow: rgba(0, 0, 0, 0.1);
55
+ --kimu-shadow-light: rgba(0, 0, 0, 0.05);
56
+ --kimu-shadow-medium: rgba(0, 0, 0, 0.15);
57
+ --kimu-shadow-heavy: rgba(0, 0, 0, 0.25);
58
+
59
+ /* Additional UI colors */
60
+ --kimu-card-bg: #ffffff;
61
+ --kimu-card-border: #e2e8f0;
62
+ --kimu-input-bg: #ffffff;
63
+ --kimu-input-border: #cbd5e0;
64
+ --kimu-input-focus: #667eea;
65
+
66
+ /* Navigation */
67
+ --kimu-nav-bg: #ffffff;
68
+ --kimu-nav-text: #4a5568;
69
+ --kimu-nav-active: #667eea;
70
+
71
+ /* Footer */
72
+ --kimu-footer-bg: #f7fafc;
73
+ --kimu-footer-text: #718096;
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,103 @@
1
+ /**
2
+ * Matrix Theme - Green phosphorescent on black
3
+ * A hacker-style theme inspired by The Matrix
4
+ */
5
+
6
+ :root {
7
+ /* Main colors */
8
+ --kimu-background: linear-gradient(135deg, #000000 0%, #0A0A0A 50%, #001100 100%);
9
+ --kimu-surface: rgba(0, 255, 65, 0.05);
10
+ --kimu-surface-elevated: rgba(0, 255, 65, 0.1);
11
+
12
+ /* Text colors */
13
+ --kimu-text-primary: #00FF41;
14
+ --kimu-text-secondary: #00D936;
15
+ --kimu-text-tertiary: #00B32C;
16
+ --kimu-text-disabled: #008C23;
17
+
18
+ /* Border colors */
19
+ --kimu-border: #00FF41;
20
+ --kimu-border-light: #33FF66;
21
+ --kimu-divider: rgba(0, 255, 65, 0.2);
22
+
23
+ /* Accent colors */
24
+ --kimu-primary: #00FF41;
25
+ --kimu-primary-dark: #00D936;
26
+ --kimu-primary-light: #33FF66;
27
+ --kimu-secondary: #00E63B;
28
+ --kimu-accent: #66FF8C;
29
+
30
+ /* State colors */
31
+ --kimu-success: #00FF41;
32
+ --kimu-warning: #FFFF00;
33
+ --kimu-error: #FF0000;
34
+ --kimu-info: #00FFFF;
35
+
36
+ /* Shadow */
37
+ --kimu-shadow: rgba(0, 255, 65, 0.3);
38
+ --kimu-shadow-strong: rgba(0, 255, 65, 0.6);
39
+
40
+ /* Component colors */
41
+ --kimu-input-bg: rgba(0, 17, 0, 0.8);
42
+ --kimu-input-border: #00FF41;
43
+ --kimu-button-bg: #00FF41;
44
+ --kimu-button-hover: #33FF66;
45
+ --kimu-card-bg: rgba(0, 17, 0, 0.9);
46
+
47
+ /* Font */
48
+ --kimu-font: 'Courier New', 'Consolas', monospace;
49
+ }
50
+
51
+ /* Body background with gradient */
52
+ body {
53
+ background: linear-gradient(135deg, #000000 0%, #0A0A0A 50%, #001100 100%);
54
+ background-attachment: fixed;
55
+ color: var(--kimu-text-primary);
56
+ font-family: var(--kimu-font);
57
+ }
58
+
59
+ /* Matrix rain effect */
60
+ @keyframes matrix-rain {
61
+ 0% {
62
+ transform: translateY(-100%);
63
+ opacity: 1;
64
+ }
65
+ 100% {
66
+ transform: translateY(100vh);
67
+ opacity: 0;
68
+ }
69
+ }
70
+
71
+ /* Digital glow effect */
72
+ button:hover,
73
+ a:hover {
74
+ box-shadow: 0 0 20px rgba(0, 255, 65, 0.8),
75
+ 0 0 40px rgba(0, 255, 65, 0.4),
76
+ inset 0 0 10px rgba(0, 255, 65, 0.2);
77
+ text-shadow: 0 0 10px rgba(0, 255, 65, 0.8);
78
+ }
79
+
80
+ /* Text glow */
81
+ body {
82
+ text-shadow: 0 0 5px rgba(0, 255, 65, 0.5);
83
+ }
84
+
85
+ /* Scanline effect */
86
+ body::before {
87
+ content: '';
88
+ position: fixed;
89
+ top: 0;
90
+ left: 0;
91
+ width: 100%;
92
+ height: 100%;
93
+ background: repeating-linear-gradient(
94
+ 0deg,
95
+ rgba(0, 0, 0, 0.15) 0px,
96
+ transparent 1px,
97
+ transparent 2px,
98
+ rgba(0, 0, 0, 0.15) 3px
99
+ );
100
+ pointer-events: none;
101
+ z-index: 9999;
102
+ opacity: 0.3;
103
+ }
@@ -0,0 +1,81 @@
1
+ /**
2
+ * Midnight Theme - Deep blue night colors
3
+ * A peaceful theme inspired by the midnight sky
4
+ */
5
+
6
+ :root {
7
+ /* Main colors */
8
+ --kimu-background: linear-gradient(135deg, #0B1D3D 0%, #1A2F5C 50%, #2A4A7C 100%);
9
+ --kimu-surface: rgba(42, 74, 124, 0.3);
10
+ --kimu-surface-elevated: rgba(42, 74, 124, 0.5);
11
+
12
+ /* Text colors */
13
+ --kimu-text-primary: #E0E7FF;
14
+ --kimu-text-secondary: #B8C5E0;
15
+ --kimu-text-tertiary: #8B9DC3;
16
+ --kimu-text-disabled: #6B7B99;
17
+
18
+ /* Border colors */
19
+ --kimu-border: #3D5A8C;
20
+ --kimu-border-light: #4E6BA0;
21
+ --kimu-divider: rgba(61, 90, 140, 0.3);
22
+
23
+ /* Accent colors */
24
+ --kimu-primary: #4E9FFF;
25
+ --kimu-primary-dark: #3D7FCC;
26
+ --kimu-primary-light: #6BB2FF;
27
+ --kimu-secondary: #7C9FFF;
28
+ --kimu-accent: #A0C4FF;
29
+
30
+ /* State colors */
31
+ --kimu-success: #4ECDC4;
32
+ --kimu-warning: #FFB347;
33
+ --kimu-error: #FF6B6B;
34
+ --kimu-info: #4E9FFF;
35
+
36
+ /* Shadow */
37
+ --kimu-shadow: rgba(0, 0, 0, 0.4);
38
+ --kimu-shadow-strong: rgba(0, 0, 0, 0.7);
39
+
40
+ /* Component colors */
41
+ --kimu-input-bg: rgba(26, 47, 92, 0.5);
42
+ --kimu-input-border: #3D5A8C;
43
+ --kimu-button-bg: #4E9FFF;
44
+ --kimu-button-hover: #6BB2FF;
45
+ --kimu-card-bg: rgba(26, 47, 92, 0.7);
46
+
47
+ /* Font */
48
+ --kimu-font: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', sans-serif;
49
+ }
50
+
51
+ /* Body background with gradient */
52
+ body {
53
+ background: linear-gradient(135deg, #0B1D3D 0%, #1A2F5C 50%, #2A4A7C 100%);
54
+ background-attachment: fixed;
55
+ color: var(--kimu-text-primary);
56
+ }
57
+
58
+ /* Starry effect on hover */
59
+ button:hover,
60
+ a:hover {
61
+ box-shadow: 0 0 20px rgba(78, 159, 255, 0.5),
62
+ 0 0 40px rgba(78, 159, 255, 0.3);
63
+ }
64
+
65
+ /* Subtle stars background */
66
+ body::before {
67
+ content: '';
68
+ position: fixed;
69
+ top: 0;
70
+ left: 0;
71
+ width: 100%;
72
+ height: 100%;
73
+ background-image:
74
+ radial-gradient(2px 2px at 20% 30%, rgba(255, 255, 255, 0.3), transparent),
75
+ radial-gradient(2px 2px at 60% 70%, rgba(255, 255, 255, 0.2), transparent),
76
+ radial-gradient(1px 1px at 50% 50%, rgba(255, 255, 255, 0.4), transparent),
77
+ radial-gradient(1px 1px at 80% 10%, rgba(255, 255, 255, 0.3), transparent);
78
+ background-size: 200px 200px, 300px 300px, 150px 150px, 250px 250px;
79
+ pointer-events: none;
80
+ z-index: 0;
81
+ }
@@ -0,0 +1,94 @@
1
+ /**
2
+ * Nord Theme - Cold and relaxing Nordic theme
3
+ * Based on Nord color palette: https://www.nordtheme.com/
4
+ *
5
+ * Color Palette:
6
+ * - Polar Night (dark backgrounds): #2E3440, #3B4252, #434C5E, #4C566A
7
+ * - Snow Storm (light foregrounds): #D8DEE9, #E5E9F0, #ECEFF4
8
+ * - Frost (blues): #8FBCBB, #88C0D0, #81A1C1, #5E81AC
9
+ * - Aurora (accents): #BF616A, #D08770, #EBCB8B, #A3BE8C, #B48EAD
10
+ */
11
+
12
+ :root {
13
+ /* Primary Colors - Frost Blue */
14
+ --kimu-primary: #88C0D0;
15
+ --kimu-primary-hover: #8FBCBB;
16
+ --kimu-primary-active: #81A1C1;
17
+ --kimu-primary-light: rgba(136, 192, 208, 0.1);
18
+
19
+ /* Secondary Colors - Aurora Purple */
20
+ --kimu-secondary: #B48EAD;
21
+ --kimu-secondary-hover: #c4a3bb;
22
+ --kimu-secondary-active: #a47d9a;
23
+
24
+ /* Accent Colors - Aurora Green */
25
+ --kimu-accent: #A3BE8C;
26
+ --kimu-accent-hover: #b3ce9c;
27
+ --kimu-accent-active: #93ae7c;
28
+
29
+ /* Background Colors - Polar Night */
30
+ --kimu-bg-primary: #2E3440;
31
+ --kimu-bg-secondary: #3B4252;
32
+ --kimu-bg-tertiary: #434C5E;
33
+ --kimu-bg-hover: #4C566A;
34
+
35
+ /* Text Colors - Snow Storm */
36
+ --kimu-text-primary: #ECEFF4;
37
+ --kimu-text-secondary: #E5E9F0;
38
+ --kimu-text-tertiary: #D8DEE9;
39
+ --kimu-text-disabled: #4C566A;
40
+
41
+ /* Border Colors */
42
+ --kimu-border: #4C566A;
43
+ --kimu-border-light: #434C5E;
44
+ --kimu-border-strong: #5E81AC;
45
+
46
+ /* Status Colors - Aurora */
47
+ --kimu-success: #A3BE8C;
48
+ --kimu-warning: #EBCB8B;
49
+ --kimu-error: #BF616A;
50
+ --kimu-info: #81A1C1;
51
+
52
+ /* Shadows - Darker for depth */
53
+ --kimu-shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.3);
54
+ --kimu-shadow-md: 0 4px 6px rgba(0, 0, 0, 0.3);
55
+ --kimu-shadow-lg: 0 10px 15px rgba(0, 0, 0, 0.3);
56
+
57
+ /* Additional Component-specific Colors */
58
+ --kimu-card-bg: var(--kimu-bg-secondary);
59
+ --kimu-input-bg: var(--kimu-bg-tertiary);
60
+ --kimu-input-border: var(--kimu-border);
61
+ --kimu-input-focus: var(--kimu-primary);
62
+
63
+ /* Links */
64
+ --kimu-link: var(--kimu-primary);
65
+ --kimu-link-hover: var(--kimu-primary-hover);
66
+
67
+ /* Overlays */
68
+ --kimu-overlay: rgba(46, 52, 64, 0.8);
69
+ }
70
+
71
+ /* Optional: Add some Nord-specific styling */
72
+ body {
73
+ color: var(--kimu-text-primary);
74
+ background: var(--kimu-bg-primary);
75
+ }
76
+
77
+ /* Scrollbar styling for Nord theme */
78
+ ::-webkit-scrollbar {
79
+ width: 12px;
80
+ height: 12px;
81
+ }
82
+
83
+ ::-webkit-scrollbar-track {
84
+ background: var(--kimu-bg-secondary);
85
+ }
86
+
87
+ ::-webkit-scrollbar-thumb {
88
+ background: var(--kimu-border);
89
+ border-radius: 6px;
90
+ }
91
+
92
+ ::-webkit-scrollbar-thumb:hover {
93
+ background: var(--kimu-primary);
94
+ }
@@ -0,0 +1,84 @@
1
+ /**
2
+ * KIMU Ocean Theme
3
+ * Ocean-inspired dark theme with blue-green tones
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 - Ocean blues */
11
+ --kimu-primary: #0ea5e9;
12
+ --kimu-primary-light: #38bdf8;
13
+ --kimu-primary-dark: #0284c7;
14
+ --kimu-text-on-primary: #ffffff;
15
+
16
+ /* Accent colors - Teal/Cyan */
17
+ --kimu-accent: #14b8a6;
18
+ --kimu-accent-light: #2dd4bf;
19
+ --kimu-accent-dark: #0d9488;
20
+ --kimu-text-on-accent: #ffffff;
21
+
22
+ /* Background colors - Deep ocean */
23
+ --kimu-background: #0c1821;
24
+ --kimu-background-alt: #1b3a4b;
25
+ --kimu-surface: #1e3a52;
26
+
27
+ /* Text colors */
28
+ --kimu-text-primary: #e0f2fe;
29
+ --kimu-text-secondary: #bae6fd;
30
+ --kimu-text-disabled: #67e8f9;
31
+
32
+ /* Semantic colors */
33
+ --kimu-success: #10b981;
34
+ --kimu-success-light: #34d399;
35
+ --kimu-success-dark: #059669;
36
+
37
+ --kimu-warning: #f59e0b;
38
+ --kimu-warning-light: #fbbf24;
39
+ --kimu-warning-dark: #d97706;
40
+
41
+ --kimu-error: #f43f5e;
42
+ --kimu-error-light: #fb7185;
43
+ --kimu-error-dark: #e11d48;
44
+
45
+ --kimu-info: #06b6d4;
46
+ --kimu-info-light: #22d3ee;
47
+ --kimu-info-dark: #0891b2;
48
+
49
+ /* Borders and dividers */
50
+ --kimu-border: #155e75;
51
+ --kimu-divider: #0e7490;
52
+
53
+ /* Shadows - Ocean themed */
54
+ --kimu-shadow: rgba(6, 182, 212, 0.15);
55
+ --kimu-shadow-light: rgba(6, 182, 212, 0.08);
56
+ --kimu-shadow-medium: rgba(6, 182, 212, 0.25);
57
+ --kimu-shadow-heavy: rgba(6, 182, 212, 0.35);
58
+
59
+ /* Additional UI colors */
60
+ --kimu-card-bg: #164e63;
61
+ --kimu-card-border: #155e75;
62
+ --kimu-input-bg: #0e7490;
63
+ --kimu-input-border: #0891b2;
64
+ --kimu-input-focus: #06b6d4;
65
+
66
+ /* Navigation */
67
+ --kimu-nav-bg: #083344;
68
+ --kimu-nav-text: #bae6fd;
69
+ --kimu-nav-active: #06b6d4;
70
+
71
+ /* Footer */
72
+ --kimu-footer-bg: #082f49;
73
+ --kimu-footer-text: #7dd3fc;
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
+ }
80
+
81
+ /* Ocean wave effect (optional) */
82
+ body {
83
+ background: linear-gradient(180deg, var(--kimu-background) 0%, #164e63 100%);
84
+ }