@rainersoft/design-tokens 1.0.5 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -7,7 +7,7 @@
7
7
  * através de theme.extend para ter acesso a todos os tokens como classes utilitárias.
8
8
  *
9
9
  * @module formats/tailwind.config
10
- * @version 4.0.0
10
+ * @version 2.0.0
11
11
  * @author Rainer Teixeira
12
12
  * @since 1.0.0
13
13
  * @generated This file is auto-generated. Do not edit manually.
@@ -26,7 +26,7 @@
26
26
  * ```
27
27
  */
28
28
 
29
- import { tokens } from '../tokens';
29
+ import { tokens } from '@rainersoft/design-tokens';
30
30
 
31
31
  /**
32
32
  * Configuração do Tailwind CSS baseada nos design tokens
@@ -57,7 +57,7 @@ import { tokens } from '../tokens';
57
57
  *
58
58
  * @example
59
59
  * ```typescript
60
- * import { tailwindConfig } from 'rainer-design-tokens/formats/tailwind.config';
60
+ * import { tailwindConfig } from '@rainersoft/design-tokens/formats/tailwind.config';
61
61
  *
62
62
  * // Usar em tailwind.config.js
63
63
  * export default {
@@ -238,6 +238,11 @@ export const tailwindConfig = {
238
238
  'accordion-up': 'accordion-up 0.2s ease-out',
239
239
  'slide-in': 'slide-in 0.3s ease-out',
240
240
  'fade-in': 'fade-in 0.5s ease-in',
241
+ 'glitch': 'glitch 4s linear',
242
+ 'neon-pulse': 'neon-pulse 2s ease-in-out',
243
+ 'flicker': 'flicker 2s linear',
244
+ 'scan-line': 'scan-line 4s linear',
245
+ 'glitch-after': 'glitch-after 3s linear',
241
246
  },
242
247
  keyframes: {
243
248
  'accordion-down': {
@@ -274,6 +279,58 @@ export const tailwindConfig = {
274
279
  opacity: '1',
275
280
  },
276
281
  },
282
+ 'glitch': {
283
+ '0%, 100%': {
284
+ transform: 'translate(0)',
285
+ },
286
+ '10%': {
287
+ transform: 'translate(-2px, 2px)',
288
+ },
289
+ '20%': {
290
+ transform: 'translate(2px, -2px)',
291
+ },
292
+ '30%, 50%, 70%, 90%': {
293
+ transform: 'translate(0)',
294
+ },
295
+ },
296
+ 'neon-pulse': {
297
+ '0%, 100%': {
298
+ filter: 'brightness(1) saturate(1)',
299
+ },
300
+ '50%': {
301
+ filter: 'brightness(1.3) saturate(1.2)',
302
+ },
303
+ },
304
+ 'flicker': {
305
+ '0%, 19.999%, 22%, 62.999%, 64%, 64.999%, 70%, 100%': {
306
+ opacity: '1',
307
+ filter: 'brightness(1.2)',
308
+ },
309
+ '20%, 21.999%, 63%, 63.999%, 65%, 69.999%': {
310
+ opacity: '0.85',
311
+ filter: 'brightness(0.9)',
312
+ },
313
+ },
314
+ 'scan-line': {
315
+ '0%': {
316
+ top: '0',
317
+ },
318
+ '100%': {
319
+ top: '100%',
320
+ },
321
+ },
322
+ 'glitch-after': {
323
+ '0%, 100%': {
324
+ opacity: '0',
325
+ },
326
+ '5%, 10%': {
327
+ opacity: '0.8',
328
+ transform: 'translate(-3px, 3px)',
329
+ },
330
+ '15%, 95%': {
331
+ opacity: '0',
332
+ },
333
+ },
277
334
  },
278
335
  },
279
336
  },
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/rainer-design-tokens.json",
3
3
  "name": "@rainersoft/design-tokens",
4
- "version": "1.0.5",
4
+ "version": "2.0.0",
5
5
  "description": "Universal design tokens export for Rainer Design System",
6
6
  "$generated": "This file is auto-generated. Do not edit manually.",
7
7
  "$source": "tokens/*.json",
@@ -41,6 +41,6 @@
41
41
  "repository": "https://github.com/RainerTeixeira/rainer-design-tokens.git",
42
42
  "author": "Rainer Teixeira <suporte@rainersoft.com.br>",
43
43
  "license": "MIT",
44
- "generatedAt": "2025-11-18T17:13:26.132Z"
44
+ "generatedAt": "2025-11-21T14:44:52.195Z"
45
45
  }
46
46
  }
package/package.json CHANGED
@@ -1,7 +1,8 @@
1
1
  {
2
2
  "name": "@rainersoft/design-tokens",
3
- "version": "1.0.5",
3
+ "version": "2.0.0",
4
4
  "type": "module",
5
+ "packageManager": "pnpm@9.0.0",
5
6
  "description": "Design tokens profissionais seguindo padrões W3C/DTCG, com estrutura modular e suporte a tokens primitivos e semânticos.",
6
7
  "author": "Rainer Teixeira <suporte@rainersoft.com.br>",
7
8
  "license": "MIT",
@@ -25,12 +26,15 @@
25
26
  "8pt-grid",
26
27
  "modular-scale"
27
28
  ],
29
+ "main": "./dist/index.mjs",
28
30
  "module": "./dist/index.mjs",
29
31
  "types": "./dist/index.d.ts",
30
32
  "exports": {
31
33
  ".": {
32
34
  "types": "./dist/index.d.ts",
33
- "import": "./dist/index.mjs"
35
+ "import": "./dist/index.mjs",
36
+ "require": "./dist/index.mjs",
37
+ "default": "./dist/index.mjs"
34
38
  },
35
39
  "./css": {
36
40
  "types": "./dist/css.d.ts",
@@ -56,6 +60,33 @@
56
60
  "README.md",
57
61
  "LICENSE"
58
62
  ],
63
+ "scripts": {
64
+ "build": "pnpm run build:formats && tsup",
65
+ "build:formats": "tsx scripts/build-formats.ts",
66
+ "build:css": "tsx scripts/build-css.ts",
67
+ "build:tailwind": "tsx scripts/build-tailwind.ts",
68
+ "build:tokens-json": "tsx scripts/build-tokens-json.ts",
69
+ "dev": "tsup --watch",
70
+ "type-check": "tsc --noEmit",
71
+ "lint": "pnpm exec eslint .",
72
+ "test": "jest",
73
+ "test:watch": "jest --watch",
74
+ "test:coverage": "jest --coverage",
75
+ "dev:editor": "node token-editor/server.js",
76
+ "start:editor": "node token-editor/server.js",
77
+ "prepare:publish": "node scripts/prepare-publish.js",
78
+ "setup:auth": "node scripts/setup-npm-auth.js",
79
+ "prepublishOnly": "pnpm run build:formats && pnpm run update:version && pnpm run type-check",
80
+ "clean": "pnpm exec rimraf dist",
81
+ "storybook": "storybook dev -p 6006",
82
+ "build-storybook": "storybook build",
83
+ "update:dates": "tsx scripts/update-dates.ts",
84
+ "update:version": "tsx scripts/update-version.ts",
85
+ "changelog": "tsx scripts/generate-changelog.ts",
86
+ "setup": "pnpm install",
87
+ "setup:clean": "pnpm run clean:all && pnpm install",
88
+ "clean:all": "pnpm exec rimraf node_modules pnpm-lock.yaml dist .storybook-build"
89
+ },
59
90
  "peerDependencies": {
60
91
  "react": ">=18.0.0"
61
92
  },
@@ -91,28 +122,5 @@
91
122
  "bugs": {
92
123
  "url": "https://github.com/RainerTeixeira/rainer-design-tokens/issues"
93
124
  },
94
- "homepage": "https://github.com/RainerTeixeira/rainer-design-tokens#readme",
95
- "scripts": {
96
- "build": "pnpm run build:formats && tsup",
97
- "build:formats": "tsx scripts/build-formats.ts",
98
- "build:css": "tsx scripts/build-css.ts",
99
- "build:tailwind": "tsx scripts/build-tailwind.ts",
100
- "build:tokens-json": "tsx scripts/build-tokens-json.ts",
101
- "dev": "tsup --watch",
102
- "type-check": "tsc --noEmit",
103
- "lint": "pnpm exec eslint .",
104
- "test": "echo \"No tests configured\" && exit 0",
105
- "test:watch": "jest --watch",
106
- "test:coverage": "jest --coverage",
107
- "prepare:publish": "node scripts/prepare-publish.js",
108
- "setup:auth": "node scripts/setup-npm-auth.js",
109
- "clean": "pnpm exec rimraf dist",
110
- "storybook": "storybook dev -p 6006",
111
- "build-storybook": "storybook build",
112
- "update:dates": "tsx scripts/update-dates.ts",
113
- "update:version": "tsx scripts/update-version.ts",
114
- "setup": "pnpm install",
115
- "setup:clean": "pnpm run clean:all && pnpm install",
116
- "clean:all": "pnpm exec rimraf node_modules pnpm-lock.yaml dist .storybook-build"
117
- }
125
+ "homepage": "https://github.com/RainerTeixeira/rainer-design-tokens#readme"
118
126
  }
package/themes/dark.ts CHANGED
@@ -8,7 +8,7 @@
8
8
  * aplicações que buscam um visual futurista e impactante.
9
9
  *
10
10
  * @module themes/dark
11
- * @version 4.0.0
11
+ * @version 2.0.0
12
12
  * @author Rainer Teixeira
13
13
  * @since 1.0.0
14
14
  */
@@ -35,7 +35,7 @@ import { tokens } from '../tokens';
35
35
  *
36
36
  * @example
37
37
  * ```typescript
38
- * import { darkTheme } from 'rainer-design-tokens';
38
+ * import { darkTheme } from '@rainersoft/design-tokens';
39
39
  *
40
40
  * // Acessar cores neon do tema escuro
41
41
  * const neonCyan = darkTheme.colors.accent.cyan;
package/themes/index.ts CHANGED
@@ -7,7 +7,7 @@
7
7
  * facilitando a aplicação de temas completos na aplicação.
8
8
  *
9
9
  * @module themes
10
- * @version 4.0.0
10
+ * @version 2.0.0
11
11
  * @author Rainer Teixeira
12
12
  * @since 1.0.0
13
13
  *
@@ -59,7 +59,7 @@ export { darkTheme, type DarkTheme } from './dark';
59
59
  *
60
60
  * @example
61
61
  * ```typescript
62
- * import { themes } from 'rainer-design-tokens';
62
+ * import { themes } from '@rainersoft/design-tokens';
63
63
  *
64
64
  * // Acessar tema claro
65
65
  * const lightColors = themes.light.colors;
package/themes/light.ts CHANGED
@@ -8,7 +8,7 @@
8
8
  * e profissionalismo.
9
9
  *
10
10
  * @module themes/light
11
- * @version 4.0.0
11
+ * @version 2.0.0
12
12
  * @author Rainer Teixeira
13
13
  * @since 1.0.0
14
14
  */
@@ -35,7 +35,7 @@ import { tokens } from '../tokens';
35
35
  *
36
36
  * @example
37
37
  * ```typescript
38
- * import { lightTheme } from 'rainer-design-tokens';
38
+ * import { lightTheme } from '@rainersoft/design-tokens';
39
39
  *
40
40
  * // Acessar cores do tema claro
41
41
  * const primaryColor = lightTheme.colors.brand.primary;
@@ -7,7 +7,7 @@
7
7
  * qualquer ambiente (web, mobile, desktop).
8
8
  *
9
9
  * @module tokens/accessibility
10
- * @version 4.0.0
10
+ * @version 2.0.0
11
11
  * @author Rainer Teixeira
12
12
  * @since 1.0.0
13
13
  */
@@ -53,6 +53,89 @@
53
53
  "opacity": "1"
54
54
  }
55
55
  }
56
+ },
57
+ "glitch": {
58
+ "name": "glitch",
59
+ "duration": "4s",
60
+ "timingFunction": "linear",
61
+ "iterationCount": "infinite",
62
+ "keyframes": {
63
+ "0%, 100%": {
64
+ "transform": "translate(0)"
65
+ },
66
+ "10%": {
67
+ "transform": "translate(-2px, 2px)"
68
+ },
69
+ "20%": {
70
+ "transform": "translate(2px, -2px)"
71
+ },
72
+ "30%, 50%, 70%, 90%": {
73
+ "transform": "translate(0)"
74
+ }
75
+ }
76
+ },
77
+ "neon-pulse": {
78
+ "name": "neon-pulse",
79
+ "duration": "2s",
80
+ "timingFunction": "ease-in-out",
81
+ "iterationCount": "infinite",
82
+ "direction": "alternate",
83
+ "keyframes": {
84
+ "0%, 100%": {
85
+ "filter": "brightness(1) saturate(1)"
86
+ },
87
+ "50%": {
88
+ "filter": "brightness(1.3) saturate(1.2)"
89
+ }
90
+ }
91
+ },
92
+ "flicker": {
93
+ "name": "flicker",
94
+ "duration": "2s",
95
+ "timingFunction": "linear",
96
+ "iterationCount": "infinite",
97
+ "keyframes": {
98
+ "0%, 19.999%, 22%, 62.999%, 64%, 64.999%, 70%, 100%": {
99
+ "opacity": "1",
100
+ "filter": "brightness(1.2)"
101
+ },
102
+ "20%, 21.999%, 63%, 63.999%, 65%, 69.999%": {
103
+ "opacity": "0.85",
104
+ "filter": "brightness(0.9)"
105
+ }
106
+ }
107
+ },
108
+ "scan-line": {
109
+ "name": "scan-line",
110
+ "duration": "4s",
111
+ "timingFunction": "linear",
112
+ "iterationCount": "infinite",
113
+ "keyframes": {
114
+ "0%": {
115
+ "top": "0"
116
+ },
117
+ "100%": {
118
+ "top": "100%"
119
+ }
120
+ }
121
+ },
122
+ "glitch-after": {
123
+ "name": "glitch-after",
124
+ "duration": "3s",
125
+ "timingFunction": "linear",
126
+ "iterationCount": "infinite",
127
+ "keyframes": {
128
+ "0%, 100%": {
129
+ "opacity": "0"
130
+ },
131
+ "5%, 10%": {
132
+ "opacity": "0.8",
133
+ "transform": "translate(-3px, 3px)"
134
+ },
135
+ "15%, 95%": {
136
+ "opacity": "0"
137
+ }
138
+ }
56
139
  }
57
140
  }
58
141
  }
@@ -0,0 +1,30 @@
1
+ {
2
+ "$schema": "https://json.schemastore.org/theme.json",
3
+ "$description": "Responsive breakpoints - Mobile-first approach",
4
+ "breakpoints": {
5
+ "xs": "0px",
6
+ "sm": "640px",
7
+ "md": "768px",
8
+ "lg": "1024px",
9
+ "xl": "1280px",
10
+ "2xl": "1536px",
11
+ "3xl": "1920px"
12
+ },
13
+ "container": {
14
+ "sm": "640px",
15
+ "md": "768px",
16
+ "lg": "1024px",
17
+ "xl": "1280px",
18
+ "2xl": "1536px",
19
+ "3xl": "1920px"
20
+ },
21
+ "mediaQueries": {
22
+ "xs": "@media (min-width: 0px)",
23
+ "sm": "@media (min-width: 640px)",
24
+ "md": "@media (min-width: 768px)",
25
+ "lg": "@media (min-width: 1024px)",
26
+ "xl": "@media (min-width: 1280px)",
27
+ "2xl": "@media (min-width: 1536px)",
28
+ "3xl": "@media (min-width: 1920px)"
29
+ }
30
+ }
@@ -0,0 +1,106 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$description": "Tokens para componente de background celestial - configurações de estrelas, nebulosas e efeitos espaciais",
4
+ "celestialBackground": {
5
+ "stars": {
6
+ "default": {
7
+ "count": 150,
8
+ "sizes": [1, 1.5, 2],
9
+ "opacity": [0.35, 0.55, 0.75],
10
+ "glow": {
11
+ "color": "rgba(255, 255, 255, 0.8)",
12
+ "radius": 2
13
+ }
14
+ },
15
+ "dense": {
16
+ "count": 250,
17
+ "sizes": [1, 1.5, 2, 2.5],
18
+ "opacity": [0.25, 0.45, 0.65, 0.85],
19
+ "glow": {
20
+ "color": "rgba(255, 255, 255, 0.8)",
21
+ "radius": 2
22
+ }
23
+ },
24
+ "sparse": {
25
+ "count": 80,
26
+ "sizes": [1, 1.5],
27
+ "opacity": [0.45, 0.65],
28
+ "glow": {
29
+ "color": "rgba(255, 255, 255, 0.8)",
30
+ "radius": 2
31
+ }
32
+ }
33
+ },
34
+ "nebula": {
35
+ "cyan": {
36
+ "position": {
37
+ "top": "0%",
38
+ "left": "0%"
39
+ },
40
+ "size": {
41
+ "width": "40%",
42
+ "height": "40%"
43
+ },
44
+ "gradient": {
45
+ "type": "radial",
46
+ "center": "0% 0%",
47
+ "colorStops": [
48
+ { "color": "cyan.400", "alpha": 0.06, "position": "0%" },
49
+ { "color": "cyan.400", "alpha": 0.04, "position": "30%" },
50
+ { "color": "transparent", "alpha": 0, "position": "70%" }
51
+ ]
52
+ },
53
+ "blur": "3xl"
54
+ },
55
+ "purple": {
56
+ "position": {
57
+ "top": "50%",
58
+ "right": "0%"
59
+ },
60
+ "size": {
61
+ "width": "35%",
62
+ "height": "35%"
63
+ },
64
+ "gradient": {
65
+ "type": "radial",
66
+ "center": "100% 50%",
67
+ "colorStops": [
68
+ { "color": "purple.400", "alpha": 0.06, "position": "0%" },
69
+ { "color": "purple.400", "alpha": 0.04, "position": "30%" },
70
+ { "color": "transparent", "alpha": 0, "position": "70%" }
71
+ ]
72
+ },
73
+ "blur": "3xl"
74
+ },
75
+ "pink": {
76
+ "position": {
77
+ "bottom": "0%",
78
+ "left": "25%"
79
+ },
80
+ "size": {
81
+ "width": "30%",
82
+ "height": "30%"
83
+ },
84
+ "gradient": {
85
+ "type": "radial",
86
+ "center": "25% 100%",
87
+ "colorStops": [
88
+ { "color": "pink.500", "alpha": 0.06, "position": "0%" },
89
+ { "color": "pink.500", "alpha": 0.04, "position": "30%" },
90
+ { "color": "transparent", "alpha": 0, "position": "70%" }
91
+ ]
92
+ },
93
+ "blur": "3xl"
94
+ }
95
+ },
96
+ "baseGradient": {
97
+ "direction": "to-bottom",
98
+ "from": "black",
99
+ "via": {
100
+ "color": "purple-950",
101
+ "alpha": 0.35
102
+ },
103
+ "to": "black"
104
+ }
105
+ }
106
+ }
@@ -0,0 +1,125 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$description": "Tokens para efeitos visuais - filters, blur, glow, backdrop effects",
4
+ "effects": {
5
+ "filter": {
6
+ "brightness": {
7
+ "subtle": "brightness(1.1)",
8
+ "moderate": "brightness(1.2)",
9
+ "intense": "brightness(1.3)",
10
+ "strong": "brightness(1.4)",
11
+ "extreme": "brightness(1.6)"
12
+ },
13
+ "contrast": {
14
+ "subtle": "contrast(1.05)",
15
+ "moderate": "contrast(1.1)",
16
+ "strong": "contrast(1.2)",
17
+ "intense": "contrast(1.3)"
18
+ },
19
+ "saturate": {
20
+ "subtle": "saturate(1.1)",
21
+ "moderate": "saturate(1.2)",
22
+ "strong": "saturate(1.3)",
23
+ "intense": "saturate(1.4)"
24
+ },
25
+ "combined": {
26
+ "neon-subtle": "brightness(1.2) saturate(1.1)",
27
+ "neon-moderate": "brightness(1.3) saturate(1.2)",
28
+ "neon-intense": "brightness(1.4) saturate(1.3)",
29
+ "neon-extreme": "brightness(1.6) contrast(1.3) saturate(1.4)",
30
+ "glass": "blur(8px) saturate(180%)",
31
+ "frosted": "blur(12px) saturate(150%)"
32
+ }
33
+ },
34
+ "blur": {
35
+ "none": "blur(0)",
36
+ "xs": "blur(0.5px)",
37
+ "sm": "blur(2px)",
38
+ "base": "blur(4px)",
39
+ "md": "blur(8px)",
40
+ "lg": "blur(12px)",
41
+ "xl": "blur(16px)",
42
+ "2xl": "blur(24px)",
43
+ "3xl": "blur(40px)"
44
+ },
45
+ "backdrop": {
46
+ "blur": {
47
+ "none": "backdrop-blur-none",
48
+ "sm": "backdrop-blur-sm",
49
+ "base": "backdrop-blur",
50
+ "md": "backdrop-blur-md",
51
+ "lg": "backdrop-blur-lg",
52
+ "xl": "backdrop-blur-xl",
53
+ "2xl": "backdrop-blur-2xl",
54
+ "3xl": "backdrop-blur-3xl"
55
+ },
56
+ "saturate": {
57
+ "default": "backdrop-saturate-100",
58
+ "enhanced": "backdrop-saturate-150",
59
+ "strong": "backdrop-saturate-200"
60
+ }
61
+ },
62
+ "glow": {
63
+ "star": {
64
+ "small": {
65
+ "radius": "0 0 4px",
66
+ "color": "rgba(255, 255, 255, 0.8)"
67
+ },
68
+ "medium": {
69
+ "radius": "0 0 8px",
70
+ "color": "rgba(255, 255, 255, 0.8)"
71
+ },
72
+ "large": {
73
+ "radius": "0 0 12px",
74
+ "color": "rgba(255, 255, 255, 0.8)"
75
+ }
76
+ },
77
+ "neon": {
78
+ "cyan": {
79
+ "subtle": "0 0 10px rgba(0, 230, 255, 0.3)",
80
+ "moderate": "0 0 20px rgba(0, 230, 255, 0.5), 0 0 40px rgba(0, 230, 255, 0.3)",
81
+ "intense": "0 0 30px rgba(0, 230, 255, 0.7), 0 0 60px rgba(0, 230, 255, 0.5)"
82
+ },
83
+ "purple": {
84
+ "subtle": "0 0 10px rgba(125, 0, 255, 0.3)",
85
+ "moderate": "0 0 20px rgba(125, 0, 255, 0.5), 0 0 40px rgba(125, 0, 255, 0.3)",
86
+ "intense": "0 0 30px rgba(125, 0, 255, 0.7), 0 0 60px rgba(125, 0, 255, 0.5)"
87
+ },
88
+ "pink": {
89
+ "subtle": "0 0 10px rgba(255, 0, 255, 0.3)",
90
+ "moderate": "0 0 20px rgba(255, 0, 255, 0.5), 0 0 40px rgba(255, 0, 255, 0.3)",
91
+ "intense": "0 0 30px rgba(255, 0, 255, 0.7), 0 0 60px rgba(255, 0, 255, 0.5)"
92
+ },
93
+ "green": {
94
+ "subtle": "0 0 10px rgba(0, 255, 0, 0.3)",
95
+ "moderate": "0 0 20px rgba(0, 255, 0, 0.5), 0 0 40px rgba(0, 255, 0, 0.3)",
96
+ "intense": "0 0 30px rgba(0, 255, 0, 0.7), 0 0 60px rgba(0, 255, 0, 0.5)"
97
+ }
98
+ }
99
+ },
100
+ "textShadow": {
101
+ "glow": {
102
+ "cyan-subtle": "0 0 10px rgba(34, 211, 238, 0.5)",
103
+ "cyan-moderate": "0 0 20px rgba(34, 211, 238, 0.8), 0 0 40px rgba(34, 211, 238, 0.6)",
104
+ "cyan-intense": "0 0 40px rgba(34, 211, 238, 1), 0 0 60px rgba(103, 232, 249, 0.8), 0 2px 4px rgba(0, 0, 0, 0.5)"
105
+ },
106
+ "depth": {
107
+ "subtle": "0 1px 2px rgba(0, 0, 0, 0.1)",
108
+ "moderate": "0 2px 4px rgba(0, 0, 0, 0.3)",
109
+ "strong": "0 2px 4px rgba(0, 0, 0, 0.5)"
110
+ }
111
+ },
112
+ "boxShadow": {
113
+ "cyberpunk": {
114
+ "card": "0 0 20px rgba(34, 211, 238, 0.1)",
115
+ "cardHover": "0 0 30px rgba(34, 211, 238, 0.2)",
116
+ "elevated": "0 25px 50px -12px rgba(0, 0, 0, 0.5)"
117
+ },
118
+ "glass": {
119
+ "subtle": "0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1)",
120
+ "moderate": "0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1)",
121
+ "strong": "0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1)"
122
+ }
123
+ }
124
+ }
125
+ }