@magmonium/one 0.0.4 → 0.0.5

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 (70) hide show
  1. package/package.json +2 -1
  2. package/sass/_date-picker.sass +147 -0
  3. package/sass/_index.sass +34 -0
  4. package/sass/_input-date.sass +25 -0
  5. package/sass/_m-components.sass +110 -0
  6. package/sass/_menu.sass +132 -0
  7. package/sass/_reset.sass +186 -0
  8. package/sass/animations/_index.sass +13 -0
  9. package/sass/animations/_registry.sass +51 -0
  10. package/sass/animations/background/_energy.sass +91 -0
  11. package/sass/animations/background/_gradient.sass +104 -0
  12. package/sass/animations/background/_index.sass +9 -0
  13. package/sass/animations/background/_nature.sass +110 -0
  14. package/sass/animations/background/_new-effects.sass +292 -0
  15. package/sass/animations/background/_particle.sass +122 -0
  16. package/sass/animations/background/_tech.sass +124 -0
  17. package/sass/functions/_functions.sass +107 -0
  18. package/sass/mixins/_backdrops.sass +230 -0
  19. package/sass/mixins/_backgrounds.sass +214 -0
  20. package/sass/mixins/_borders.sass +93 -0
  21. package/sass/mixins/_breakpoints.sass +68 -0
  22. package/sass/mixins/_button.sass +46 -0
  23. package/sass/mixins/_checkbox.sass +128 -0
  24. package/sass/mixins/_colors.sass +121 -0
  25. package/sass/mixins/_control.sass +13 -0
  26. package/sass/mixins/_device.sass +22 -0
  27. package/sass/mixins/_display.sass +210 -0
  28. package/sass/mixins/_flex.sass +104 -0
  29. package/sass/mixins/_form.sass +68 -0
  30. package/sass/mixins/_grid.sass +273 -0
  31. package/sass/mixins/_header.sass +71 -0
  32. package/sass/mixins/_index.sass +29 -0
  33. package/sass/mixins/_input.sass +132 -0
  34. package/sass/mixins/_interactive.sass +19 -0
  35. package/sass/mixins/_label.sass +25 -0
  36. package/sass/mixins/_layout.sass +251 -0
  37. package/sass/mixins/_links.sass +85 -0
  38. package/sass/mixins/_lists.sass +377 -0
  39. package/sass/mixins/_overflow.sass +121 -0
  40. package/sass/mixins/_position.sass +181 -0
  41. package/sass/mixins/_radio.sass +205 -0
  42. package/sass/mixins/_sizing.sass +181 -0
  43. package/sass/mixins/_spacing.sass +59 -0
  44. package/sass/mixins/_text.sass +159 -0
  45. package/sass/mixins/_toggle.sass +240 -0
  46. package/sass/mixins/_typography.sass +6 -0
  47. package/sass/mixins/_utilities.sass +70 -0
  48. package/sass/utilities/_backdrops.sass +228 -0
  49. package/sass/utilities/_backgrounds.sass +285 -0
  50. package/sass/utilities/_borders.sass +138 -0
  51. package/sass/utilities/_colors.sass +166 -0
  52. package/sass/utilities/_display.sass +308 -0
  53. package/sass/utilities/_flex.sass +91 -0
  54. package/sass/utilities/_grid.sass +502 -0
  55. package/sass/utilities/_index.sass +17 -0
  56. package/sass/utilities/_input.sass +14 -0
  57. package/sass/utilities/_links.sass +136 -0
  58. package/sass/utilities/_lists.sass +4 -0
  59. package/sass/utilities/_popup.sass +73 -0
  60. package/sass/utilities/_position.sass +88 -0
  61. package/sass/utilities/_sizing.sass +277 -0
  62. package/sass/utilities/_spacing.sass +121 -0
  63. package/sass/utilities/_text.sass +207 -0
  64. package/sass/variables/_animations.sass +5 -0
  65. package/sass/variables/_borders.sass +25 -0
  66. package/sass/variables/_colors.sass +93 -0
  67. package/sass/variables/_index.sass +6 -0
  68. package/sass/variables/_number.sass +1 -0
  69. package/sass/variables/_spacing.sass +28 -0
  70. package/sass/variables/_typography.sass +40 -0
@@ -0,0 +1,51 @@
1
+ // Animation Registry System
2
+ @use 'sass:map'
3
+ // Maps animation names to their respective files for selective loading
4
+
5
+ // Animation Categories Map
6
+ $animation-categories: (
7
+ // Gradient-based animations
8
+ 'gradient': 'gradient',
9
+ 'mesh': 'gradient',
10
+ 'plasma': 'gradient',
11
+
12
+ // Particle/object animations
13
+ 'particles': 'particle',
14
+ 'geometric': 'particle',
15
+ 'crystal': 'particle',
16
+
17
+ // Tech-themed animations
18
+ 'matrix': 'tech',
19
+ 'cyber': 'tech',
20
+ 'hologram': 'tech',
21
+
22
+ // Nature-inspired animations
23
+ 'waves': 'nature',
24
+ 'aurora': 'nature',
25
+ 'nebula': 'nature',
26
+
27
+ // Energy/light animations
28
+ 'pulse': 'energy',
29
+ 'neon': 'energy',
30
+ 'spiral': 'energy',
31
+
32
+ // New effect animations
33
+ 'fire': 'new-effects',
34
+ 'electric': 'new-effects',
35
+ 'galaxy': 'new-effects',
36
+ 'liquid': 'new-effects',
37
+ 'glitch': 'new-effects',
38
+ 'prism': 'new-effects'
39
+ )
40
+
41
+ // Function to get animation category
42
+ @function get-animation-category($animation-name)
43
+ @return map.get($animation-categories, $animation-name)
44
+
45
+ // Mixin for selective animation loading
46
+ @mixin load-animation($animation-name)
47
+ $category: get-animation-category($animation-name)
48
+ @if $category
49
+ @use 'background/#{$category}'
50
+ @else
51
+ @warn 'Unknown animation: #{$animation-name}'
@@ -0,0 +1,91 @@
1
+ // Energy/Light Background Animations
2
+ // Contains: pulse, neon, spiral
3
+
4
+ // Animation: Pulse Effect
5
+ @mixin pulse-animation()
6
+ .m-jumbotron__background
7
+ background: linear-gradient(120deg, #a8edea 0%, #fed6e3 100%)
8
+ animation: pulseBackground 4s ease-in-out infinite alternate
9
+
10
+ // Animation: Neon Glow
11
+ @mixin neon-animation()
12
+ .m-jumbotron__background
13
+ background: linear-gradient(135deg, #0a0a0a 0%, #1a0a1a 50%, #0a1a0a 100%)
14
+
15
+ &::before,
16
+ &::after
17
+ content: ''
18
+ position: absolute
19
+ border-radius: 50%
20
+ filter: blur(20px)
21
+ animation: neonPulse 4s ease-in-out infinite alternate
22
+
23
+ &::before
24
+ width: 150px
25
+ height: 150px
26
+ top: 20%
27
+ left: 20%
28
+ background: radial-gradient(circle, rgba(255, 0, 255, 0.8) 0%, transparent 70%)
29
+ box-shadow: 0 0 50px rgba(255, 0, 255, 0.5)
30
+
31
+ &::after
32
+ width: 120px
33
+ height: 120px
34
+ bottom: 30%
35
+ right: 30%
36
+ background: radial-gradient(circle, rgba(0, 255, 0, 0.8) 0%, transparent 70%)
37
+ box-shadow: 0 0 50px rgba(0, 255, 0, 0.5)
38
+ animation-delay: -2s
39
+
40
+ // Animation: Spiral Galaxy
41
+ @mixin spiral-animation()
42
+ .m-jumbotron__background
43
+ background: radial-gradient(ellipse at center, #1a1a2e 0%, #16213e 30%, #0f0f23 70%, #000 100%)
44
+
45
+ &::before,
46
+ &::after
47
+ content: ''
48
+ position: absolute
49
+ border-radius: 50%
50
+ border: 2px solid rgba(255, 255, 255, 0.1)
51
+ animation: spiralRotate 20s linear infinite
52
+
53
+ &::before
54
+ width: 300px
55
+ height: 300px
56
+ top: 50%
57
+ left: 50%
58
+ transform: translate(-50%, -50%)
59
+ border-style: dashed
60
+
61
+ &::after
62
+ width: 150px
63
+ height: 150px
64
+ top: 50%
65
+ left: 50%
66
+ transform: translate(-50%, -50%)
67
+ animation-direction: reverse
68
+ animation-duration: 15s
69
+
70
+ // Keyframe animations for energy effects
71
+ @keyframes pulseBackground
72
+ 0%
73
+ transform: scale(1)
74
+ opacity: 0.8
75
+ 100%
76
+ transform: scale(1.02)
77
+ opacity: 1
78
+
79
+ @keyframes neonPulse
80
+ 0%
81
+ transform: scale(1)
82
+ opacity: 0.6
83
+ 100%
84
+ transform: scale(1.2)
85
+ opacity: 1
86
+
87
+ @keyframes spiralRotate
88
+ 0%
89
+ transform: translate(-50%, -50%) rotate(0deg) scale(1)
90
+ 100%
91
+ transform: translate(-50%, -50%) rotate(360deg) scale(1.1)
@@ -0,0 +1,104 @@
1
+ // Gradient-based Background Animations
2
+ // Contains: gradient, mesh, plasma
3
+
4
+ // Animation: Gradient Wave
5
+ @mixin gradient-animation()
6
+ .m-jumbotron__background
7
+ background: linear-gradient(45deg, #667eea 0%, #764ba2 100%)
8
+ animation: gradientWave 8s ease-in-out infinite
9
+
10
+ // Animation: Mesh Gradient
11
+ @mixin mesh-animation()
12
+ .m-jumbotron__background
13
+ background: linear-gradient(135deg, #667eea 0%, #764ba2 25%, #f093fb 50%, #f5576c 75%, #4facfe 100%)
14
+ background-size: 300% 300%
15
+ animation: meshFlow 16s ease-in-out infinite
16
+
17
+ &::before
18
+ content: ''
19
+ position: absolute
20
+ top: 0
21
+ left: 0
22
+ right: 0
23
+ bottom: 0
24
+ background: radial-gradient(circle at 30% 30%, rgba(255, 255, 255, 0.1) 0%, transparent 50%), radial-gradient(circle at 70% 70%, rgba(255, 255, 255, 0.05) 0%, transparent 50%)
25
+ animation: meshOverlay 10s ease-in-out infinite
26
+
27
+ // Animation: Plasma Energy
28
+ @mixin plasma-animation()
29
+ .m-jumbotron__background
30
+ background: radial-gradient(ellipse at top, #ff006e 0%, #8338ec 50%, #3a86ff 100%)
31
+ animation: plasmaEnergy 8s ease-in-out infinite alternate
32
+
33
+ &::before,
34
+ &::after
35
+ content: ''
36
+ position: absolute
37
+ border-radius: 50%
38
+ filter: blur(30px)
39
+ animation: plasmaOrbs 10s ease-in-out infinite
40
+
41
+ &::before
42
+ width: 200px
43
+ height: 200px
44
+ top: 20%
45
+ left: 20%
46
+ background: radial-gradient(circle, rgba(255, 0, 110, 0.6) 0%, transparent 70%)
47
+ animation-delay: 0s
48
+
49
+ &::after
50
+ width: 150px
51
+ height: 150px
52
+ bottom: 25%
53
+ right: 25%
54
+ background: radial-gradient(circle, rgba(131, 56, 236, 0.6) 0%, transparent 70%)
55
+ animation-delay: -5s
56
+
57
+ // Keyframe animations for gradient effects
58
+ @keyframes gradientWave
59
+ 0%, 100%
60
+ background-position: 0% 50%
61
+ transform: scale(1)
62
+ 50%
63
+ background-position: 100% 50%
64
+ transform: scale(1.05)
65
+
66
+ @keyframes meshFlow
67
+ 0%, 100%
68
+ background-position: 0% 50%
69
+ 25%
70
+ background-position: 100% 0%
71
+ 50%
72
+ background-position: 100% 100%
73
+ 75%
74
+ background-position: 0% 100%
75
+
76
+ @keyframes meshOverlay
77
+ 0%, 100%
78
+ opacity: 0.1
79
+ transform: scale(1)
80
+ 50%
81
+ opacity: 0.3
82
+ transform: scale(1.05)
83
+
84
+ @keyframes plasmaEnergy
85
+ 0%
86
+ transform: scale(1) rotate(0deg)
87
+ filter: hue-rotate(0deg)
88
+ 100%
89
+ transform: scale(1.1) rotate(5deg)
90
+ filter: hue-rotate(90deg)
91
+
92
+ @keyframes plasmaOrbs
93
+ 0%, 100%
94
+ transform: translate(0, 0) scale(1)
95
+ opacity: 0.6
96
+ 25%
97
+ transform: translate(30px, -20px) scale(1.2)
98
+ opacity: 0.8
99
+ 50%
100
+ transform: translate(-20px, 30px) scale(0.8)
101
+ opacity: 0.4
102
+ 75%
103
+ transform: translate(20px, 20px) scale(1.1)
104
+ opacity: 0.7
@@ -0,0 +1,9 @@
1
+ // Background Animations Module
2
+ // Entry point for all background animation categories
3
+
4
+ @forward 'gradient'
5
+ @forward 'particle'
6
+ @forward 'tech'
7
+ @forward 'nature'
8
+ @forward 'energy'
9
+ @forward 'new-effects'
@@ -0,0 +1,110 @@
1
+ // Nature-inspired Background Animations
2
+ // Contains: waves, aurora, nebula
3
+
4
+ // Animation: Ocean Waves
5
+ @mixin waves-animation()
6
+ .m-jumbotron__background
7
+ background: linear-gradient(135deg, #667db6 0%, #0082c8 25%, #0082c8 50%, #667db6 100%)
8
+ background-size: 400% 400%
9
+ animation: waveMotion 10s ease-in-out infinite
10
+
11
+ &::before
12
+ content: ''
13
+ position: absolute
14
+ top: 0
15
+ left: 0
16
+ right: 0
17
+ bottom: 0
18
+ background-image: radial-gradient(circle at 25% 25%, rgba(255, 255, 255, 0.1) 0%, transparent 50%), radial-gradient(circle at 75% 75%, rgba(255, 255, 255, 0.05) 0%, transparent 50%)
19
+ animation: waveRipple 8s ease-in-out infinite
20
+
21
+ // Animation: Aurora Borealis
22
+ @mixin aurora-animation()
23
+ .m-jumbotron__background
24
+ background: linear-gradient(135deg, #0c0c0c 0%, #1a1a2e 50%, #16213e 100%)
25
+
26
+ &::before,
27
+ &::after
28
+ content: ''
29
+ position: absolute
30
+ border-radius: 50%
31
+ filter: blur(40px)
32
+ animation: auroraFlow 12s ease-in-out infinite
33
+
34
+ &::before
35
+ width: 300px
36
+ height: 100px
37
+ top: 20%
38
+ left: 10%
39
+ background: linear-gradient(90deg, rgba(0, 255, 150, 0.3), rgba(0, 150, 255, 0.3))
40
+ animation-delay: 0s
41
+
42
+ &::after
43
+ width: 250px
44
+ height: 80px
45
+ bottom: 30%
46
+ right: 15%
47
+ background: linear-gradient(90deg, rgba(255, 0, 150, 0.3), rgba(150, 0, 255, 0.3))
48
+ animation-delay: -6s
49
+
50
+ // Animation: Cosmic Nebula
51
+ @mixin nebula-animation()
52
+ .m-jumbotron__background
53
+ background: radial-gradient(ellipse at center, #1a1a2e 0%, #16213e 50%, #0f0f23 100%)
54
+
55
+ &::before,
56
+ &::after
57
+ content: ''
58
+ position: absolute
59
+ border-radius: 50%
60
+ filter: blur(60px)
61
+ animation: nebulaGlow 14s ease-in-out infinite alternate
62
+
63
+ &::before
64
+ width: 400px
65
+ height: 200px
66
+ top: 10%
67
+ left: 5%
68
+ background: radial-gradient(ellipse, rgba(138, 43, 226, 0.4) 0%, rgba(75, 0, 130, 0.2) 50%, transparent 100%)
69
+
70
+ &::after
71
+ width: 350px
72
+ height: 180px
73
+ bottom: 15%
74
+ right: 10%
75
+ background: radial-gradient(ellipse, rgba(255, 20, 147, 0.4) 0%, rgba(199, 21, 133, 0.2) 50%, transparent 100%)
76
+ animation-delay: -7s
77
+
78
+ // Keyframe animations for nature effects
79
+ @keyframes waveMotion
80
+ 0%, 100%
81
+ background-position: 0% 50%
82
+ 50%
83
+ background-position: 100% 50%
84
+
85
+ @keyframes waveRipple
86
+ 0%, 100%
87
+ transform: scale(1) rotate(0deg)
88
+ opacity: 0.3
89
+ 50%
90
+ transform: scale(1.1) rotate(5deg)
91
+ opacity: 0.6
92
+
93
+ @keyframes auroraFlow
94
+ 0%, 100%
95
+ transform: translateX(0) scale(1)
96
+ opacity: 0.3
97
+ 33%
98
+ transform: translateX(50px) scale(1.2)
99
+ opacity: 0.6
100
+ 66%
101
+ transform: translateX(-30px) scale(0.9)
102
+ opacity: 0.4
103
+
104
+ @keyframes nebulaGlow
105
+ 0%
106
+ transform: scale(1) rotate(0deg)
107
+ opacity: 0.4
108
+ 100%
109
+ transform: scale(1.3) rotate(10deg)
110
+ opacity: 0.7
@@ -0,0 +1,292 @@
1
+ // New Effect Background Animations
2
+ // Contains: fire, electric, galaxy, liquid, glitch, prism
3
+
4
+ // Animation: Fire Effect
5
+ @mixin fire-animation()
6
+ .m-jumbotron__background
7
+ background: linear-gradient(135deg, #ff4500 0%, #ff8c00 25%, #ffa500 50%, #ff6347 75%, #dc143c 100%)
8
+ background-size: 300% 300%
9
+ animation: fireFlicker 6s ease-in-out infinite
10
+
11
+ &::before,
12
+ &::after
13
+ content: ''
14
+ position: absolute
15
+ border-radius: 50% 50% 50% 50% / 60% 60% 40% 40%
16
+ filter: blur(15px)
17
+ animation: fireParticles 8s ease-in-out infinite
18
+
19
+ &::before
20
+ width: 100px
21
+ height: 120px
22
+ bottom: 10%
23
+ left: 20%
24
+ background: radial-gradient(ellipse, rgba(255, 69, 0, 0.8) 0%, rgba(255, 140, 0, 0.4) 50%, transparent 100%)
25
+ animation-delay: 0s
26
+
27
+ &::after
28
+ width: 80px
29
+ height: 100px
30
+ bottom: 15%
31
+ right: 25%
32
+ background: radial-gradient(ellipse, rgba(255, 165, 0, 0.8) 0%, rgba(255, 99, 71, 0.4) 50%, transparent 100%)
33
+ animation-delay: -4s
34
+
35
+ // Animation: Electric Effect
36
+ @mixin electric-animation()
37
+ .m-jumbotron__background
38
+ background: linear-gradient(135deg, #000428 0%, #004e92 50%, #009ffd 100%)
39
+ animation: electricStorm 5s ease-in-out infinite
40
+
41
+ &::before,
42
+ &::after
43
+ content: ''
44
+ position: absolute
45
+ background: linear-gradient(45deg, transparent 30%, rgba(0, 255, 255, 0.8) 50%, transparent 70%)
46
+ animation: electricBolt 3s ease-in-out infinite
47
+
48
+ &::before
49
+ width: 2px
50
+ height: 150px
51
+ top: 10%
52
+ left: 30%
53
+ transform: rotate(15deg)
54
+ animation-delay: 0s
55
+
56
+ &::after
57
+ width: 3px
58
+ height: 200px
59
+ top: 20%
60
+ right: 35%
61
+ transform: rotate(-20deg)
62
+ animation-delay: -1.5s
63
+
64
+ // Animation: Galaxy Effect
65
+ @mixin galaxy-animation()
66
+ .m-jumbotron__background
67
+ background: radial-gradient(ellipse at center, #1a1a2e 0%, #16213e 20%, #0f0f23 60%, #000 100%)
68
+ animation: galaxyRotate 30s linear infinite
69
+
70
+ &::before,
71
+ &::after
72
+ content: ''
73
+ position: absolute
74
+ border-radius: 50%
75
+ background: radial-gradient(circle, rgba(255, 255, 255, 0.1) 0%, transparent 60%)
76
+ animation: starField 20s ease-in-out infinite
77
+
78
+ &::before
79
+ width: 400px
80
+ height: 400px
81
+ top: 50%
82
+ left: 50%
83
+ transform: translate(-50%, -50%)
84
+ background-image: radial-gradient(2px 2px at 50px 100px, rgba(255, 255, 255, 0.8), transparent), radial-gradient(1px 1px at 150px 200px, rgba(255, 255, 255, 0.6), transparent), radial-gradient(1px 1px at 300px 50px, rgba(255, 255, 255, 0.4), transparent)
85
+
86
+ &::after
87
+ width: 200px
88
+ height: 200px
89
+ top: 50%
90
+ left: 50%
91
+ transform: translate(-50%, -50%)
92
+ background: conic-gradient(from 0deg, transparent, rgba(138, 43, 226, 0.3), transparent)
93
+ animation-direction: reverse
94
+ animation-duration: 25s
95
+
96
+ // Animation: Liquid Effect
97
+ @mixin liquid-animation()
98
+ .m-jumbotron__background
99
+ background: linear-gradient(135deg, #667db6 0%, #0082c8 25%, #667db6 50%, #0082c8 75%, #667db6 100%)
100
+ background-size: 400% 400%
101
+ animation: liquidFlow 12s ease-in-out infinite
102
+
103
+ &::before,
104
+ &::after
105
+ content: ''
106
+ position: absolute
107
+ border-radius: 50%
108
+ filter: blur(25px)
109
+ animation: liquidDrops 10s ease-in-out infinite
110
+
111
+ &::before
112
+ width: 200px
113
+ height: 120px
114
+ top: 20%
115
+ left: 15%
116
+ background: radial-gradient(ellipse, rgba(102, 125, 182, 0.6) 0%, rgba(0, 130, 200, 0.3) 70%, transparent 100%)
117
+ animation-delay: 0s
118
+
119
+ &::after
120
+ width: 150px
121
+ height: 100px
122
+ bottom: 25%
123
+ right: 20%
124
+ background: radial-gradient(ellipse, rgba(0, 130, 200, 0.6) 0%, rgba(102, 125, 182, 0.3) 70%, transparent 100%)
125
+ animation-delay: -5s
126
+
127
+ // Animation: Glitch Effect
128
+ @mixin glitch-animation()
129
+ .m-jumbotron__background
130
+ background: linear-gradient(135deg, #1a1a2e 0%, #16213e 50%, #0f0f23 100%)
131
+ animation: glitchBase 8s ease-in-out infinite
132
+
133
+ &::before,
134
+ &::after
135
+ content: ''
136
+ position: absolute
137
+ width: 100%
138
+ height: 100%
139
+ mix-blend-mode: screen
140
+ animation: glitchDistortion 4s ease-in-out infinite
141
+
142
+ &::before
143
+ background: linear-gradient(90deg, transparent 0%, rgba(255, 0, 0, 0.1) 25%, transparent 50%, rgba(0, 255, 0, 0.1) 75%, transparent 100%)
144
+ animation-delay: 0s
145
+
146
+ &::after
147
+ background: linear-gradient(270deg, transparent 0%, rgba(0, 0, 255, 0.1) 25%, transparent 50%, rgba(255, 255, 0, 0.1) 75%, transparent 100%)
148
+ animation-delay: -2s
149
+
150
+ // Animation: Prism Effect
151
+ @mixin prism-animation()
152
+ .m-jumbotron__background
153
+ background: linear-gradient(135deg, #667eea 0%, #764ba2 20%, #f093fb 40%, #f5576c 60%, #4facfe 80%, #00f2fe 100%)
154
+ background-size: 300% 300%
155
+ animation: prismShift 15s ease-in-out infinite
156
+
157
+ &::before,
158
+ &::after
159
+ content: ''
160
+ position: absolute
161
+ background: conic-gradient(from 0deg, rgba(255,0,0,0.1), rgba(255,165,0,0.1), rgba(255,255,0,0.1), rgba(0,255,0,0.1), rgba(0,0,255,0.1), rgba(75,0,130,0.1), rgba(238,130,238,0.1))
162
+ filter: blur(30px)
163
+ animation: prismRotate 12s linear infinite
164
+
165
+ &::before
166
+ width: 150px
167
+ height: 150px
168
+ top: 25%
169
+ left: 25%
170
+ border-radius: 50%
171
+
172
+ &::after
173
+ width: 100px
174
+ height: 100px
175
+ bottom: 30%
176
+ right: 30%
177
+ border-radius: 50%
178
+ animation-direction: reverse
179
+
180
+ // Keyframe animations for new effects
181
+ @keyframes fireFlicker
182
+ 0%, 100%
183
+ background-position: 0% 50%
184
+ filter: brightness(1) hue-rotate(0deg)
185
+ 25%
186
+ background-position: 50% 25%
187
+ filter: brightness(1.2) hue-rotate(10deg)
188
+ 50%
189
+ background-position: 100% 50%
190
+ filter: brightness(0.9) hue-rotate(-5deg)
191
+ 75%
192
+ background-position: 50% 75%
193
+ filter: brightness(1.1) hue-rotate(5deg)
194
+
195
+ @keyframes fireParticles
196
+ 0%, 100%
197
+ transform: translateY(0) scale(1)
198
+ opacity: 0.8
199
+ 50%
200
+ transform: translateY(-20px) scale(1.1)
201
+ opacity: 0.4
202
+
203
+ @keyframes electricStorm
204
+ 0%, 100%
205
+ filter: brightness(1) contrast(1)
206
+ 25%
207
+ filter: brightness(1.3) contrast(1.2)
208
+ 50%
209
+ filter: brightness(0.8) contrast(1.1)
210
+ 75%
211
+ filter: brightness(1.2) contrast(1.3)
212
+
213
+ @keyframes electricBolt
214
+ 0%, 90%, 100%
215
+ opacity: 0
216
+ transform: scale(1)
217
+ 5%, 85%
218
+ opacity: 1
219
+ transform: scale(1.2)
220
+ 10%, 80%
221
+ opacity: 0.7
222
+ transform: scale(0.9)
223
+
224
+ @keyframes galaxyRotate
225
+ 0%
226
+ transform: rotate(0deg)
227
+ 100%
228
+ transform: rotate(360deg)
229
+
230
+ @keyframes starField
231
+ 0%, 100%
232
+ opacity: 0.3
233
+ transform: translate(-50%, -50%) scale(1)
234
+ 50%
235
+ opacity: 0.8
236
+ transform: translate(-50%, -50%) scale(1.1)
237
+
238
+ @keyframes liquidFlow
239
+ 0%, 100%
240
+ background-position: 0% 50%
241
+ 33%
242
+ background-position: 70% 30%
243
+ 66%
244
+ background-position: 30% 70%
245
+
246
+ @keyframes liquidDrops
247
+ 0%, 100%
248
+ transform: translateY(0) scale(1)
249
+ opacity: 0.6
250
+ 50%
251
+ transform: translateY(-10px) scale(1.2)
252
+ opacity: 0.3
253
+
254
+ @keyframes glitchBase
255
+ 0%, 100%
256
+ filter: hue-rotate(0deg) saturate(1)
257
+ 25%
258
+ filter: hue-rotate(90deg) saturate(1.2)
259
+ 50%
260
+ filter: hue-rotate(180deg) saturate(0.8)
261
+ 75%
262
+ filter: hue-rotate(270deg) saturate(1.1)
263
+
264
+ @keyframes glitchDistortion
265
+ 0%, 90%, 100%
266
+ transform: translateX(0)
267
+ opacity: 0.1
268
+ 2%, 5%, 8%
269
+ transform: translateX(2px)
270
+ opacity: 0.3
271
+ 3%, 6%
272
+ transform: translateX(-2px)
273
+ opacity: 0.2
274
+
275
+ @keyframes prismShift
276
+ 0%, 100%
277
+ background-position: 0% 50%
278
+ filter: hue-rotate(0deg)
279
+ 33%
280
+ background-position: 100% 0%
281
+ filter: hue-rotate(120deg)
282
+ 66%
283
+ background-position: 0% 100%
284
+ filter: hue-rotate(240deg)
285
+
286
+ @keyframes prismRotate
287
+ 0%
288
+ transform: rotate(0deg) scale(1)
289
+ opacity: 0.3
290
+ 100%
291
+ transform: rotate(360deg) scale(1.1)
292
+ opacity: 0.6