@duskmoon-dev/core 1.15.0 → 1.16.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 (126) hide show
  1. package/dist/cjs/tailwind-plugin.cjs +38 -79
  2. package/dist/components/accordion.css +7 -7
  3. package/dist/components/alert.css +2 -2
  4. package/dist/components/appbar.css +5 -5
  5. package/dist/components/autocomplete.css +7 -7
  6. package/dist/components/avatar.css +5 -5
  7. package/dist/components/badge.css +3 -3
  8. package/dist/components/bottom-navigation.css +7 -7
  9. package/dist/components/bottomsheet.css +12 -12
  10. package/dist/components/button.css +19 -19
  11. package/dist/components/card.css +9 -2
  12. package/dist/components/cascader.css +9 -9
  13. package/dist/components/checkbox.css +1 -1
  14. package/dist/components/chip.css +12 -10
  15. package/dist/components/circle-menu.css +324 -0
  16. package/dist/components/code-block.css +133 -0
  17. package/dist/components/collapse.css +9 -9
  18. package/dist/components/datepicker.css +22 -22
  19. package/dist/components/dialog.css +5 -5
  20. package/dist/components/drawer.css +13 -13
  21. package/dist/components/file-upload.css +12 -12
  22. package/dist/components/form-group.css +162 -1
  23. package/dist/components/form.css +159 -22
  24. package/dist/components/index.css +1026 -385
  25. package/dist/components/input.css +23 -14
  26. package/dist/components/list.css +3 -3
  27. package/dist/components/markdown-body.css +6 -6
  28. package/dist/components/modal.css +7 -7
  29. package/dist/components/multi-select.css +16 -16
  30. package/dist/components/navigation.css +20 -20
  31. package/dist/components/nested-menu.css +5 -5
  32. package/dist/components/otp-input.css +5 -5
  33. package/dist/components/pin-input.css +5 -5
  34. package/dist/components/popover.css +15 -15
  35. package/dist/components/progress.css +2 -2
  36. package/dist/components/radio.css +2 -2
  37. package/dist/components/rating.css +1 -1
  38. package/dist/components/segment-control.css +6 -6
  39. package/dist/components/select.css +7 -7
  40. package/dist/components/skeleton.css +11 -11
  41. package/dist/components/slider.css +16 -16
  42. package/dist/components/snackbar.css +5 -5
  43. package/dist/components/stepper.css +9 -9
  44. package/dist/components/switch.css +1 -1
  45. package/dist/components/table.css +3 -3
  46. package/dist/components/textarea.css +5 -5
  47. package/dist/components/theme-controller.css +4 -4
  48. package/dist/components/time-input.css +10 -10
  49. package/dist/components/timeline.css +6 -6
  50. package/dist/components/toast.css +3 -3
  51. package/dist/components/toggle.css +8 -8
  52. package/dist/components/tooltip.css +1 -1
  53. package/dist/components/tree-select.css +14 -14
  54. package/dist/esm/components/accordion.js +7 -7
  55. package/dist/esm/components/alert.js +2 -2
  56. package/dist/esm/components/appbar.js +5 -5
  57. package/dist/esm/components/autocomplete.js +7 -7
  58. package/dist/esm/components/avatar.js +5 -5
  59. package/dist/esm/components/badge.js +3 -3
  60. package/dist/esm/components/bottom-navigation.js +7 -7
  61. package/dist/esm/components/bottomsheet.js +12 -12
  62. package/dist/esm/components/button.js +19 -19
  63. package/dist/esm/components/card.js +9 -2
  64. package/dist/esm/components/cascader.js +9 -9
  65. package/dist/esm/components/checkbox.js +1 -1
  66. package/dist/esm/components/chip.js +12 -10
  67. package/dist/esm/components/circle-menu.js +331 -0
  68. package/dist/esm/components/code-block.js +140 -0
  69. package/dist/esm/components/collapse.js +9 -9
  70. package/dist/esm/components/datepicker.js +22 -22
  71. package/dist/esm/components/dialog.js +5 -5
  72. package/dist/esm/components/drawer.js +13 -13
  73. package/dist/esm/components/file-upload.js +12 -12
  74. package/dist/esm/components/form-group.js +162 -1
  75. package/dist/esm/components/form.js +159 -22
  76. package/dist/esm/components/input.js +23 -14
  77. package/dist/esm/components/list.js +3 -3
  78. package/dist/esm/components/markdown-body.js +6 -6
  79. package/dist/esm/components/modal.js +7 -7
  80. package/dist/esm/components/multi-select.js +16 -16
  81. package/dist/esm/components/navigation.js +20 -20
  82. package/dist/esm/components/nested-menu.js +5 -5
  83. package/dist/esm/components/otp-input.js +5 -5
  84. package/dist/esm/components/pin-input.js +5 -5
  85. package/dist/esm/components/popover.js +15 -15
  86. package/dist/esm/components/progress.js +2 -2
  87. package/dist/esm/components/radio.js +2 -2
  88. package/dist/esm/components/rating.js +1 -1
  89. package/dist/esm/components/segment-control.js +6 -6
  90. package/dist/esm/components/select.js +7 -7
  91. package/dist/esm/components/skeleton.js +11 -11
  92. package/dist/esm/components/slider.js +16 -16
  93. package/dist/esm/components/snackbar.js +5 -5
  94. package/dist/esm/components/stepper.js +9 -9
  95. package/dist/esm/components/switch.js +1 -1
  96. package/dist/esm/components/table.js +3 -3
  97. package/dist/esm/components/textarea.js +5 -5
  98. package/dist/esm/components/theme-controller.js +4 -4
  99. package/dist/esm/components/time-input.js +10 -10
  100. package/dist/esm/components/timeline.js +6 -6
  101. package/dist/esm/components/toast.js +3 -3
  102. package/dist/esm/components/toggle.js +8 -8
  103. package/dist/esm/components/tooltip.js +1 -1
  104. package/dist/esm/components/tree-select.js +14 -14
  105. package/dist/esm/tailwind-plugin.js +38 -79
  106. package/dist/index.css +1435 -1173
  107. package/dist/index.min.css +1 -1
  108. package/dist/themes/{forest.css → generated/forest.css} +31 -94
  109. package/dist/themes/generated/moonlight.css +82 -0
  110. package/dist/themes/{ocean.css → generated/ocean.css} +31 -103
  111. package/dist/themes/generated/spacing.css +36 -0
  112. package/dist/themes/generated/sunshine.css +82 -0
  113. package/dist/types/tailwind-plugin.d.ts +1 -0
  114. package/dist/types/tailwind-plugin.d.ts.map +1 -1
  115. package/dist/types/themes/generated/ts/types.d.ts +83 -0
  116. package/dist/types/themes/generated/ts/types.d.ts.map +1 -0
  117. package/dist/types/types/index.d.ts +1 -1
  118. package/dist/types/types/index.d.ts.map +1 -1
  119. package/dist/types/types/plugin.d.ts +1 -1
  120. package/dist/types/types/plugin.d.ts.map +1 -1
  121. package/dist/types/types/theme.d.ts +5 -152
  122. package/dist/types/types/theme.d.ts.map +1 -1
  123. package/package.json +10 -8
  124. package/dist/themes/moonlight.css +0 -271
  125. package/dist/themes/sunset.css +0 -146
  126. package/dist/themes/sunshine.css +0 -252
@@ -5,7 +5,7 @@
5
5
  /**
6
6
  * Theme names available in the plugin
7
7
  */
8
- export type BuiltInTheme = 'sunshine' | 'moonlight';
8
+ export type BuiltInTheme = 'sunshine' | 'moonlight' | 'ocean' | 'forest';
9
9
  /**
10
10
  * Plugin configuration options
11
11
  * Used with @plugin "@duskmoon-dev/core/plugin" { ... } syntax
@@ -1 +1 @@
1
- {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../../src/types/plugin.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,UAAU,GAAG,WAAW,CAAC;AAEpD;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAElB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;;;;OAKG;IACH,UAAU,CAAC,EAAE,KAAK,GAAG,aAAa,EAAE,CAAC;IAErC;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,GACrB,QAAQ,GACR,MAAM,GACN,OAAO,GACP,MAAM,GACN,YAAY,GACZ,OAAO,CAAC;AAEZ;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAEtD;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAC7B,SAAS,GACT,WAAW,GACX,UAAU,GACV,MAAM,GACN,SAAS,GACT,SAAS,GACT,OAAO,CAAC;AAEZ;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAC7B,OAAO,GACP,SAAS,GACT,OAAO,CAAC;AAEZ;;GAEG;AACH,MAAM,MAAM,gBAAgB,GACxB,OAAO,GACP,OAAO,GACP,QAAQ,GACR,UAAU,CAAC"}
1
+ {"version":3,"file":"plugin.d.ts","sourceRoot":"","sources":["../../../src/types/plugin.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,UAAU,GAAG,WAAW,GAAG,OAAO,GAAG,QAAQ,CAAC;AAEzE;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAElB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;OAGG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;;;;OAKG;IACH,UAAU,CAAC,EAAE,KAAK,GAAG,aAAa,EAAE,CAAC;IAErC;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;;OAGG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,MAAM,aAAa,GACrB,QAAQ,GACR,MAAM,GACN,OAAO,GACP,MAAM,GACN,YAAY,GACZ,OAAO,CAAC;AAEZ;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAEtD;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAC7B,SAAS,GACT,WAAW,GACX,UAAU,GACV,MAAM,GACN,SAAS,GACT,SAAS,GACT,OAAO,CAAC;AAEZ;;GAEG;AACH,MAAM,MAAM,qBAAqB,GAC7B,OAAO,GACP,SAAS,GACT,OAAO,CAAC;AAEZ;;GAEG;AACH,MAAM,MAAM,gBAAgB,GACxB,OAAO,GACP,OAAO,GACP,QAAQ,GACR,UAAU,CAAC"}
@@ -1,10 +1,10 @@
1
1
  /**
2
2
  * Theme Configuration Types
3
- * TypeScript definitions for DuskMoonUI theme definitions
3
+ * Re-exports generated types + defines helper types for plugin API
4
4
  */
5
+ export type { ThemeColors, ThemeShape, ThemeMeta, OklchColor } from '../themes/generated/ts/types';
5
6
  /**
6
- * HSL color value in space-separated format
7
- * @example "240 80% 60%" (hue saturation lightness)
7
+ * @deprecated Use OklchColor instead kept for backwards compatibility
8
8
  */
9
9
  export type HSLColor = string;
10
10
  /**
@@ -16,158 +16,17 @@ export type ColorScheme = 'light' | 'dark';
16
16
  * Defines all color tokens for a theme
17
17
  */
18
18
  export interface ThemeDefinition {
19
- /**
20
- * Unique theme identifier
21
- * @example "sunshine", "moonlight", "custom"
22
- */
23
19
  name: string;
24
- /**
25
- * Light or dark color scheme
26
- * Used for browser color-scheme CSS property
27
- */
28
20
  colorScheme: ColorScheme;
29
- /**
30
- * Whether this is the default theme
31
- * Only one theme can be default
32
- */
33
21
  default?: boolean;
34
- /**
35
- * Whether to use when user prefers dark mode
36
- * Only one theme can have prefersDark
37
- */
38
22
  prefersDark?: boolean;
39
- /**
40
- * Theme colors
41
- */
42
- colors: ThemeColors;
43
- }
44
- /**
45
- * Complete theme color token set
46
- * 65+ tokens following Material Design 3 conventions
47
- */
48
- export interface ThemeColors {
49
- /**
50
- * Primary brand color
51
- * @example "30 90% 60%" (warm orange for sunshine theme)
52
- */
53
- primary: HSLColor;
54
- /**
55
- * Primary focus state (hover/active)
56
- */
57
- 'primary-focus': HSLColor;
58
- /**
59
- * Content color on primary background
60
- * Must meet WCAG AA contrast (4.5:1)
61
- */
62
- 'primary-content': HSLColor;
63
- /**
64
- * Tinted primary container background
65
- */
66
- 'primary-container': HSLColor;
67
- /**
68
- * Content color on primary container
69
- */
70
- 'on-primary-container': HSLColor;
71
- /**
72
- * Secondary brand color
73
- */
74
- secondary: HSLColor;
75
- 'secondary-focus': HSLColor;
76
- 'secondary-content': HSLColor;
77
- 'secondary-container': HSLColor;
78
- 'on-secondary-container': HSLColor;
79
- /**
80
- * Tertiary brand color
81
- */
82
- tertiary: HSLColor;
83
- 'tertiary-focus': HSLColor;
84
- 'tertiary-content': HSLColor;
85
- 'tertiary-container': HSLColor;
86
- 'on-tertiary-container': HSLColor;
87
- /**
88
- * Base surface color
89
- */
90
- surface: HSLColor;
91
- /**
92
- * Dimmed surface for lower emphasis
93
- */
94
- 'surface-dim': HSLColor;
95
- /**
96
- * Brightened surface for higher emphasis
97
- */
98
- 'surface-bright': HSLColor;
99
- /**
100
- * Surface container variants (elevation levels)
101
- */
102
- 'surface-container-lowest': HSLColor;
103
- 'surface-container-low': HSLColor;
104
- 'surface-container': HSLColor;
105
- 'surface-container-high': HSLColor;
106
- 'surface-container-highest': HSLColor;
107
- /**
108
- * Content on surface colors
109
- */
110
- 'on-surface': HSLColor;
111
- 'on-surface-variant': HSLColor;
112
- /**
113
- * Info semantic color (blue tones)
114
- */
115
- info: HSLColor;
116
- 'info-content': HSLColor;
117
- 'info-container': HSLColor;
118
- 'on-info-container': HSLColor;
119
- /**
120
- * Success semantic color (green tones)
121
- */
122
- success: HSLColor;
123
- 'success-content': HSLColor;
124
- 'success-container': HSLColor;
125
- 'on-success-container': HSLColor;
126
- /**
127
- * Warning semantic color (yellow/orange tones)
128
- */
129
- warning: HSLColor;
130
- 'warning-content': HSLColor;
131
- 'warning-container': HSLColor;
132
- 'on-warning-container': HSLColor;
133
- /**
134
- * Error semantic color (red tones)
135
- */
136
- error: HSLColor;
137
- 'error-content': HSLColor;
138
- 'error-container': HSLColor;
139
- 'on-error-container': HSLColor;
140
- /**
141
- * Base neutral colors (grayscale)
142
- * base-100 is lightest, base-900 is darkest
143
- */
144
- 'base-100': HSLColor;
145
- 'base-200': HSLColor;
146
- 'base-300': HSLColor;
147
- 'base-400': HSLColor;
148
- 'base-500': HSLColor;
149
- 'base-600': HSLColor;
150
- 'base-700': HSLColor;
151
- 'base-800': HSLColor;
152
- 'base-900': HSLColor;
153
- /**
154
- * Default text color on base backgrounds
155
- */
156
- 'base-content': HSLColor;
157
- /**
158
- * Primary outline color
159
- */
160
- outline: HSLColor;
161
- /**
162
- * Subtle outline variant
163
- */
164
- 'outline-variant': HSLColor;
23
+ colors: import('../themes/generated/ts/types').ThemeColors;
165
24
  }
166
25
  /**
167
26
  * Partial theme colors for custom theme definitions
168
27
  * Allows overriding only specific tokens
169
28
  */
170
- export type PartialThemeColors = Partial<ThemeColors>;
29
+ export type PartialThemeColors = Partial<import('../themes/generated/ts/types').ThemeColors>;
171
30
  /**
172
31
  * Theme configuration for plugin
173
32
  */
@@ -182,17 +41,11 @@ export interface ThemeValidationResult {
182
41
  errors: ThemeValidationError[];
183
42
  warnings: ThemeValidationWarning[];
184
43
  }
185
- /**
186
- * Theme validation error
187
- */
188
44
  export interface ThemeValidationError {
189
45
  token: string;
190
46
  message: string;
191
47
  value?: string;
192
48
  }
193
- /**
194
- * Theme validation warning (non-blocking)
195
- */
196
49
  export interface ThemeValidationWarning {
197
50
  token: string;
198
51
  message: string;
@@ -1 +1 @@
1
- {"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../../../src/types/theme.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../../../src/types/theme.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAEnG;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,MAAM,CAAC;AAE9B;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,MAAM,CAAC;AAE3C;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,WAAW,CAAC;IACzB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,MAAM,EAAE,OAAO,8BAA8B,EAAE,WAAW,CAAC;CAC5D;AAED;;;GAGG;AACH,MAAM,MAAM,kBAAkB,GAAG,OAAO,CAAC,OAAO,8BAA8B,EAAE,WAAW,CAAC,CAAC;AAE7F;;GAEG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG;IACjC,CAAC,SAAS,EAAE,MAAM,GAAG,kBAAkB,CAAC;CACzC,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,oBAAoB,EAAE,CAAC;IAC/B,QAAQ,EAAE,sBAAsB,EAAE,CAAC;CACpC;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@duskmoon-dev/core",
3
- "version": "1.15.0",
3
+ "version": "1.16.1",
4
4
  "description": "DuskMoonUI - Tailwind CSS v4 plugin with Material Design 3 color system and component styles",
5
5
  "type": "module",
6
6
  "main": "./dist/index.css",
@@ -17,19 +17,16 @@
17
17
  "types": "./dist/types/tailwind-plugin.d.ts"
18
18
  },
19
19
  "./themes/sunshine": {
20
- "style": "./dist/themes/sunshine.css"
20
+ "style": "./dist/themes/generated/sunshine.css"
21
21
  },
22
22
  "./themes/moonlight": {
23
- "style": "./dist/themes/moonlight.css"
23
+ "style": "./dist/themes/generated/moonlight.css"
24
24
  },
25
25
  "./themes/ocean": {
26
- "style": "./dist/themes/ocean.css"
26
+ "style": "./dist/themes/generated/ocean.css"
27
27
  },
28
28
  "./themes/forest": {
29
- "style": "./dist/themes/forest.css"
30
- },
31
- "./themes/sunset": {
32
- "style": "./dist/themes/sunset.css"
29
+ "style": "./dist/themes/generated/forest.css"
33
30
  },
34
31
  "./components": {
35
32
  "style": "./dist/components/index.css"
@@ -99,6 +96,11 @@
99
96
  "import": "./dist/esm/components/chip.js",
100
97
  "default": "./dist/esm/components/chip.js"
101
98
  },
99
+ "./components/circle-menu": {
100
+ "style": "./dist/components/circle-menu.css",
101
+ "import": "./dist/esm/components/circle-menu.js",
102
+ "default": "./dist/esm/components/circle-menu.js"
103
+ },
102
104
  "./components/code-block": {
103
105
  "style": "./dist/components/code-block.css",
104
106
  "import": "./dist/esm/components/code-block.js",
@@ -1,271 +0,0 @@
1
- /**
2
- * Moonlight Theme - Dark Mode
3
- * A cool, calm dark theme optimized for low-light viewing
4
- * Uses OKLCH format: "oklch(L% C H)"
5
- */
6
-
7
- [data-theme="moonlight"] {
8
- color-scheme: dark;
9
-
10
- /* ============================================
11
- * BRAND COLORS
12
- * ============================================ */
13
-
14
- /* Primary Color Family - Cool Blue */
15
- --color-primary: oklch(85.45% 0 0);
16
- --color-primary-content: oklch(14.94% 0.031 39.947);
17
- --color-primary-container: oklch(25% 0.01 0);
18
- --color-on-primary-container: oklch(85% 0.01 0);
19
-
20
- /* Secondary Color Family - Soft Teal */
21
- --color-secondary: oklch(83.33% 0.0981 73.78);
22
- --color-secondary-content: oklch(14.507% 0.035 2.72);
23
- --color-secondary-container: oklch(28% 0.03 73.78);
24
- --color-on-secondary-container: oklch(88% 0.03 73.78);
25
-
26
- /* Tertiary Color Family - Lavender */
27
- --color-tertiary: oklch(72% 0.090 255);
28
- --color-tertiary-content: oklch(14% 0.012 255);
29
- --color-tertiary-container: oklch(28% 0.030 255);
30
- --color-on-tertiary-container: oklch(88% 0.010 255);
31
-
32
- /* ============================================
33
- * SURFACE COLORS
34
- * ============================================ */
35
-
36
- --color-surface: oklch(20% 0.02 260);
37
- --color-surface-dim: oklch(17% 0.02 260);
38
- --color-surface-bright: oklch(28% 0.02 260);
39
- --color-surface-container-lowest: oklch(14% 0.02 260);
40
- --color-surface-container-low: oklch(20% 0.02 260);
41
- --color-surface-container: oklch(22% 0.02 260);
42
- --color-surface-container-high: oklch(25% 0.02 260);
43
- --color-surface-container-highest: oklch(28% 0.01 260);
44
- --color-on-surface: oklch(95% 0.01 260);
45
- --color-on-surface-variant: oklch(75% 0.01 260);
46
-
47
- /* ============================================
48
- * SEMANTIC COLORS
49
- * ============================================ */
50
-
51
- /* Info - Light Blue */
52
- --color-info: oklch(82.42% 0.09757279812867503 240.7677443360475);
53
- --color-info-content: oklch(17.111% 0.017 206.015);
54
- --color-info-container: oklch(32% 0.06 235);
55
- --color-on-info-container: oklch(88% 0.06 235);
56
-
57
- /* Success - Mint Green */
58
- --color-success: oklch(82.19% 0.0621 133.3);
59
- --color-success-content: oklch(17.112% 0.017 144.778);
60
- --color-success-container: oklch(30% 0.05 150);
61
- --color-on-success-container: oklch(85% 0.06 150);
62
-
63
- /* Warning - Warm Amber */
64
- --color-warning: oklch(76.36% 0.1752731353930708 61.96388739129725);
65
- --color-warning-content: oklch(17.113% 0.016 74.427);
66
- --color-warning-container: oklch(35% 0.06 80);
67
- --color-on-warning-container: oklch(90% 0.06 80);
68
-
69
- /* Error - Soft Red */
70
- --color-error: oklch(46.38% 0.1898 29.17);
71
- --color-error-content: oklch(86.38% 0.298 39.17);
72
- --color-error-container: oklch(30% 0.08 25);
73
- --color-on-error-container: oklch(88% 0.06 25);
74
-
75
- /* ============================================
76
- * NEUTRAL COLORS (Base Scale)
77
- * ============================================ */
78
-
79
- --color-base-100: oklch(22% 0.019 237.69);
80
- --color-base-200: oklch(20% 0.019 237.69);
81
- --color-base-300: oklch(18% 0.019 237.69);
82
- --color-base-400: oklch(26% 0.019 237.69);
83
- --color-base-500: oklch(32% 0.019 237.69);
84
- --color-base-600: oklch(40% 0.018 237.69);
85
- --color-base-700: oklch(55% 0.017 237.69);
86
- --color-base-800: oklch(70% 0.016 237.69);
87
- --color-base-900: oklch(85% 0.015 237.69);
88
- --color-base-content: oklch(77.383% 0.043 245.096);
89
-
90
-
91
- /* ============================================
92
- * OUTLINE COLORS
93
- * ============================================ */
94
-
95
- --color-outline: oklch(44% 0.01 260);
96
- --color-outline-variant: oklch(35% 0.01 260);
97
-
98
- /* ============================================
99
- * ACCENT COLORS
100
- * ============================================ */
101
-
102
- --color-accent: oklch(75.65% 0.1303 335.51);
103
- --color-accent-content: oklch(14.258% 0.033 299.844);
104
-
105
- /* ============================================
106
- * NEUTRAL COLORS
107
- * ============================================ */
108
-
109
- --color-neutral: oklch(23% 0 0);
110
- --color-neutral-content: oklch(52.43% 0 0);
111
- --color-neutral-variant: oklch(55% 0.01 260);
112
-
113
- /* ============================================
114
- * SHAPE & DEPTH
115
- * ============================================ */
116
-
117
- /* Moonlight: sleek, minimal, slightly angular */
118
- --radius-selector: 0.125rem;
119
- --radius-field: 0.375rem;
120
- --radius-box: 1rem;
121
- --size-selector: 0.125rem;
122
- --size-field: 0.125rem;
123
- --border: 1px;
124
- --depth: 0.8;
125
- --noise: 0.6;
126
-
127
- /* ============================================
128
- * SURFACE VARIANT
129
- * ============================================ */
130
-
131
- --color-surface-variant: oklch(30% 0.02 260);
132
-
133
- /* ============================================
134
- * INVERSE COLORS
135
- * ============================================ */
136
-
137
- --color-inverse-surface: oklch(95% 0.01 260);
138
- --color-inverse-on-surface: oklch(25% 0.02 260);
139
- --color-inverse-primary: oklch(55% 0.16 255);
140
-
141
- /* ============================================
142
- * SHADOW & SCRIM
143
- * ============================================ */
144
-
145
- --color-shadow: oklch(0% 0 0);
146
- --color-scrim: oklch(0% 0 0 / 60%);
147
-
148
- /* Dark-mode shadows: stronger opacity for depth on dark surfaces */
149
- --shadow-xs: 0 1px 2px 0 rgb(0 0 0 / 0.15);
150
- --shadow-sm: 0 1px 3px 0 rgb(0 0 0 / 0.25), 0 1px 2px -1px rgb(0 0 0 / 0.25);
151
- --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.25), 0 2px 4px -2px rgb(0 0 0 / 0.25);
152
- --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.3), 0 4px 6px -4px rgb(0 0 0 / 0.3);
153
- --shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.3), 0 8px 10px -6px rgb(0 0 0 / 0.3);
154
- --shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / 0.5);
155
- }
156
-
157
- /* System preference: prefers-color-scheme dark */
158
- @media (prefers-color-scheme: dark) {
159
- :root:not([data-theme]) {
160
- color-scheme: dark;
161
-
162
- /* Brand Colors */
163
- --color-primary: oklch(85.45% 0 0);
164
- --color-primary-content: oklch(14.94% 0.031 39.947);
165
- --color-primary-container: oklch(25% 0.01 0);
166
- --color-on-primary-container: oklch(85% 0.01 0);
167
-
168
- --color-secondary: oklch(83.33% 0.0981 73.78);
169
- --color-secondary-content: oklch(14.507% 0.035 2.72);
170
- --color-secondary-container: oklch(28% 0.03 73.78);
171
- --color-on-secondary-container: oklch(88% 0.03 73.78);
172
-
173
- --color-tertiary: oklch(72% 0.090 255);
174
- --color-tertiary-content: oklch(14% 0.012 255);
175
- --color-tertiary-container: oklch(28% 0.030 255);
176
- --color-on-tertiary-container: oklch(88% 0.010 255);
177
-
178
- /* Surface Colors */
179
- --color-surface: oklch(20% 0.02 260);
180
- --color-surface-dim: oklch(17% 0.02 260);
181
- --color-surface-bright: oklch(28% 0.02 260);
182
- --color-surface-container-lowest: oklch(14% 0.02 260);
183
- --color-surface-container-low: oklch(20% 0.02 260);
184
- --color-surface-container: oklch(22% 0.02 260);
185
- --color-surface-container-high: oklch(25% 0.02 260);
186
- --color-surface-container-highest: oklch(28% 0.01 260);
187
- --color-on-surface: oklch(95% 0.01 260);
188
- --color-on-surface-variant: oklch(75% 0.01 260);
189
-
190
- /* Semantic Colors */
191
- --color-info: oklch(82.42% 0.09757279812867503 240.7677443360475);
192
- --color-info-content: oklch(17.111% 0.017 206.015);
193
- --color-info-container: oklch(32% 0.06 235);
194
- --color-on-info-container: oklch(88% 0.06 235);
195
-
196
- --color-success: oklch(82.19% 0.0621 133.3);
197
- --color-success-content: oklch(17.112% 0.017 144.778);
198
- --color-success-container: oklch(30% 0.05 150);
199
- --color-on-success-container: oklch(85% 0.06 150);
200
-
201
- --color-warning: oklch(76.36% 0.1752731353930708 61.96388739129725);
202
- --color-warning-content: oklch(17.113% 0.016 74.427);
203
- --color-warning-container: oklch(35% 0.06 80);
204
- --color-on-warning-container: oklch(90% 0.06 80);
205
-
206
- --color-error: oklch(46.38% 0.1898 29.17);
207
- --color-error-content: oklch(86.38% 0.298 39.17);
208
- --color-error-container: oklch(30% 0.08 25);
209
- --color-on-error-container: oklch(88% 0.06 25);
210
-
211
- /* Neutral Colors */
212
- --color-base-100: oklch(22% 0.019 237.69);
213
- --color-base-200: oklch(20% 0.019 237.69);
214
- --color-base-300: oklch(18% 0.019 237.69);
215
- --color-base-400: oklch(26% 0.019 237.69);
216
- --color-base-500: oklch(32% 0.019 237.69);
217
- --color-base-600: oklch(40% 0.018 237.69);
218
- --color-base-700: oklch(55% 0.017 237.69);
219
- --color-base-800: oklch(70% 0.016 237.69);
220
- --color-base-900: oklch(85% 0.015 237.69);
221
- --color-base-content: oklch(77.383% 0.043 245.096);
222
-
223
- /* Outline Colors */
224
- --color-outline: oklch(44% 0.01 260);
225
- --color-outline-variant: oklch(35% 0.01 260);
226
-
227
- /* Accent Colors */
228
- --color-accent: oklch(75.65% 0.1303 335.51);
229
- --color-accent-content: oklch(14.258% 0.033 299.844);
230
-
231
- /* Neutral Colors */
232
- --color-neutral: oklch(23% 0 0);
233
- --color-neutral-content: oklch(52.43% 0 0);
234
- --color-neutral-variant: oklch(55% 0.01 260);
235
-
236
- /* ============================================
237
- * SHAPE & DEPTH
238
- * ============================================ */
239
-
240
- /* Moonlight: sleek, minimal, slightly angular */
241
- --radius-selector: 0.125rem;
242
- --radius-field: 0.375rem;
243
- --radius-box: 1rem;
244
- --size-selector: 0.125rem;
245
- --size-field: 0.125rem;
246
- --border: 1px;
247
- --depth: 0.8;
248
- --noise: 0.6;
249
-
250
- /* Surface Variant */
251
- --color-surface-variant: oklch(30% 0.02 260);
252
-
253
- /* Inverse Colors */
254
- --color-inverse-surface: oklch(95% 0.01 260);
255
- --color-inverse-on-surface: oklch(25% 0.02 260);
256
- --color-inverse-primary: oklch(55% 0.16 255);
257
-
258
- /* Shadow & Scrim */
259
- --color-shadow: oklch(0% 0 0);
260
- --color-scrim: oklch(0% 0 0 / 60%);
261
-
262
- /* Dark-mode shadows */
263
- --shadow-xs: 0 1px 2px 0 rgb(0 0 0 / 0.15);
264
- --shadow-sm: 0 1px 3px 0 rgb(0 0 0 / 0.25), 0 1px 2px -1px rgb(0 0 0 / 0.25);
265
- --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.25), 0 2px 4px -2px rgb(0 0 0 / 0.25);
266
- --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.3), 0 4px 6px -4px rgb(0 0 0 / 0.3);
267
- --shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.3), 0 8px 10px -6px rgb(0 0 0 / 0.3);
268
- --shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / 0.5);
269
- }
270
- }
271
-
@@ -1,146 +0,0 @@
1
- /**
2
- * Sunset Theme - Light Mode
3
- * A warm, vibrant theme inspired by golden hour and dusk skies
4
- * Uses OKLCH format: "oklch(L% C H)"
5
- */
6
-
7
- [data-theme="sunset"] {
8
- color-scheme: light;
9
-
10
- /* ============================================
11
- * BRAND COLORS
12
- * ============================================ */
13
-
14
- /* Primary Color Family - Burnt Orange */
15
- --color-primary: oklch(58% 0.18 35);
16
- --color-primary-content: oklch(98% 0.01 35);
17
- --color-primary-container: oklch(92% 0.04 35);
18
- --color-on-primary-container: oklch(25% 0.07 35);
19
-
20
- /* Secondary Color Family - Rose */
21
- --color-secondary: oklch(58% 0.15 350);
22
- --color-secondary-content: oklch(98% 0.01 350);
23
- --color-secondary-container: oklch(92% 0.04 350);
24
- --color-on-secondary-container: oklch(25% 0.06 350);
25
-
26
- /* Tertiary Color Family - Golden */
27
- --color-tertiary: oklch(65% 0.14 75);
28
- --color-tertiary-content: oklch(18% 0.04 75);
29
- --color-tertiary-container: oklch(93% 0.04 75);
30
- --color-on-tertiary-container: oklch(28% 0.06 75);
31
-
32
- /* ============================================
33
- * SURFACE COLORS
34
- * ============================================ */
35
-
36
- --color-surface: oklch(99% 0.008 50);
37
- --color-surface-dim: oklch(95% 0.012 50);
38
- --color-surface-bright: oklch(100% 0 0);
39
- --color-surface-container-lowest: oklch(100% 0 0);
40
- --color-surface-container-low: oklch(98% 0.01 50);
41
- --color-surface-container: oklch(96% 0.012 50);
42
- --color-surface-container-high: oklch(94% 0.015 50);
43
- --color-surface-container-highest: oklch(92% 0.018 50);
44
- --color-on-surface: oklch(22% 0.02 30);
45
- --color-on-surface-variant: oklch(42% 0.02 30);
46
-
47
- /* ============================================
48
- * SEMANTIC COLORS
49
- * ============================================ */
50
-
51
- /* Info - Dusty Blue */
52
- --color-info: oklch(50% 0.10 245);
53
- --color-info-content: oklch(98% 0.01 245);
54
- --color-info-container: oklch(94% 0.03 245);
55
- --color-on-info-container: oklch(28% 0.05 245);
56
-
57
- /* Success - Olive Green */
58
- --color-success: oklch(58% 0.14 140);
59
- --color-success-content: oklch(98% 0.01 140);
60
- --color-success-container: oklch(93% 0.04 140);
61
- --color-on-success-container: oklch(26% 0.06 140);
62
-
63
- /* Warning - Deep Amber */
64
- --color-warning: oklch(65% 0.18 60);
65
- --color-warning-content: oklch(18% 0.05 60);
66
- --color-warning-container: oklch(93% 0.05 60);
67
- --color-on-warning-container: oklch(32% 0.08 60);
68
-
69
- /* Error - Crimson */
70
- --color-error: oklch(52% 0.20 20);
71
- --color-error-content: oklch(98% 0.01 20);
72
- --color-error-container: oklch(93% 0.04 20);
73
- --color-on-error-container: oklch(28% 0.08 20);
74
-
75
- /* ============================================
76
- * NEUTRAL COLORS (Base Scale)
77
- * ============================================ */
78
-
79
- --color-base-100: oklch(99% 0.008 50);
80
- --color-base-200: oklch(92% 0.012 50);
81
- --color-base-300: oklch(80% 0.01 50);
82
- --color-base-400: oklch(60% 0.01 50);
83
- --color-base-500: oklch(48% 0.01 50);
84
- --color-base-600: oklch(38% 0.008 50);
85
- --color-base-700: oklch(28% 0.008 50);
86
- --color-base-800: oklch(20% 0.005 50);
87
- --color-base-900: oklch(14% 0.003 50);
88
- --color-base-content: oklch(14% 0.01 30);
89
-
90
- /* ============================================
91
- * OUTLINE COLORS
92
- * ============================================ */
93
-
94
- --color-outline: oklch(60% 0.015 40);
95
- --color-outline-variant: oklch(80% 0.01 40);
96
-
97
- /* ============================================
98
- * ACCENT COLORS
99
- * ============================================ */
100
-
101
- --color-accent: oklch(62% 0.14 310);
102
- --color-accent-content: oklch(98% 0.01 310);
103
-
104
- /* ============================================
105
- * NEUTRAL COLORS
106
- * ============================================ */
107
-
108
- --color-neutral: oklch(14% 0.01 30);
109
- --color-neutral-content: oklch(92% 0.01 50);
110
- --color-neutral-variant: oklch(48% 0.015 40);
111
-
112
- /* ============================================
113
- * SHAPE & DEPTH
114
- * ============================================ */
115
-
116
- /* Sunset: warm, soft, organic feel */
117
- --radius-selector: 0.1875rem;
118
- --radius-field: 0.5rem;
119
- --radius-box: 1.25rem;
120
- --size-selector: 0.1875rem;
121
- --size-field: 0.1875rem;
122
- --border: 0.75px;
123
- --depth: 0.9;
124
- --noise: 0.7;
125
-
126
- /* ============================================
127
- * SURFACE VARIANT
128
- * ============================================ */
129
-
130
- --color-surface-variant: oklch(93% 0.02 50);
131
-
132
- /* ============================================
133
- * INVERSE COLORS
134
- * ============================================ */
135
-
136
- --color-inverse-surface: oklch(22% 0.02 30);
137
- --color-inverse-on-surface: oklch(95% 0.01 50);
138
- --color-inverse-primary: oklch(75% 0.14 35);
139
-
140
- /* ============================================
141
- * SHADOW & SCRIM
142
- * ============================================ */
143
-
144
- --color-shadow: oklch(0% 0 0);
145
- --color-scrim: oklch(0% 0 0 / 45%);
146
- }