@@ -27,7 +27,7 @@ All colors MUST be HSL.
2727 --muted : 220 20% 90% ;
2828 --muted-foreground : 220 20% 45% ;
2929
30- --accent : 270 80 % 65 % ;
30+ --accent : 185 90 % 45 % ;
3131 --accent-foreground : 0 0% 100% ;
3232
3333 --success : 142 76% 36% ;
@@ -44,6 +44,7 @@ All colors MUST be HSL.
4444
4545 /* Gradients */
4646 --gradient-primary : linear-gradient (135deg , hsl (217 91% 60% ), hsl (270 80% 65% ));
47+ --gradient-accent : linear-gradient (135deg , hsl (217 91% 60% ), hsl (185 90% 45% ));
4748 --gradient-card : linear-gradient (180deg , hsl (0 0% 100% ), hsl (220 25% 97% ));
4849 --gradient-hero : linear-gradient (135deg , hsl (217 91% 60% / 0.1 ), hsl (270 80% 65% / 0.05 ));
4950
@@ -57,45 +58,58 @@ All colors MUST be HSL.
5758 }
5859
5960 .dark {
60- --background : 220 60% 5% ;
61- --foreground : 220 25% 95% ;
61+ /* Near-black background for premium feel */
62+ --background : 220 20% 4% ;
63+ --foreground : 220 10% 98% ;
6264
63- --card : 220 50% 8% ;
64- --card-foreground : 220 25% 95% ;
65+ /* Elevated card surfaces */
66+ --card : 220 15% 7% ;
67+ --card-foreground : 220 10% 98% ;
6568
66- --popover : 220 50 % 8% ;
67- --popover-foreground : 220 25 % 95 % ;
69+ --popover : 220 15 % 8% ;
70+ --popover-foreground : 220 10 % 98 % ;
6871
72+ /* Vibrant primary blue */
6973 --primary : 217 91% 60% ;
7074 --primary-foreground : 0 0% 100% ;
7175 --primary-glow : 217 91% 75% ;
7276
73- --secondary : 220 40% 15% ;
74- --secondary-foreground : 220 25% 95% ;
77+ /* Dark secondary */
78+ --secondary : 220 20% 12% ;
79+ --secondary-foreground : 220 10% 95% ;
7580
76- --muted : 220 40% 15% ;
77- --muted-foreground : 220 20% 60% ;
81+ /* Muted elements */
82+ --muted : 220 15% 14% ;
83+ --muted-foreground : 220 10% 55% ;
7884
79- --accent : 270 80% 65% ;
80- --accent-foreground : 0 0% 100% ;
85+ /* Electric cyan accent */
86+ --accent : 185 90% 55% ;
87+ --accent-foreground : 0 0% 0% ;
8188
82- --success : 142 76% 36 % ;
89+ --success : 142 76% 42 % ;
8390 --success-foreground : 0 0% 100% ;
8491
85- --destructive : 0 62.8% 30.6 % ;
86- --destructive-foreground : 220 25 % 95 % ;
92+ --destructive : 0 62.8% 50 % ;
93+ --destructive-foreground : 220 10 % 98 % ;
8794
88- --border : 220 40% 20% ;
89- --input : 220 40% 20% ;
95+ /* Subtle borders */
96+ --border : 220 15% 14% ;
97+ --input : 220 15% 14% ;
9098 --ring : 217 91% 60% ;
9199
92- --gradient-primary : linear-gradient (135deg , hsl (217 91% 60% ), hsl (270 80% 65% ));
93- --gradient-card : linear-gradient (180deg , hsl (220 50% 8% ), hsl (220 60% 5% ));
94- --gradient-hero : linear-gradient (135deg , hsl (217 91% 60% / 0.15 ), hsl (270 80% 65% / 0.08 ));
100+ /* Enhanced dark gradients */
101+ --gradient-primary : linear-gradient (135deg , hsl (217 91% 60% ), hsl (270 80% 65% ), hsl (185 90% 55% ));
102+ --gradient-accent : linear-gradient (135deg , hsl (185 90% 55% ), hsl (217 91% 60% ));
103+ --gradient-card : linear-gradient (145deg , hsl (220 15% 9% ), hsl (220 20% 4% ));
104+ --gradient-hero : linear-gradient (135deg , hsl (217 91% 60% / 0.12 ), hsl (270 80% 65% / 0.08 ), hsl (185 90% 55% / 0.06 ));
95105
96- --shadow-elegant : 0 10px 40px -10px hsl (217 91% 60% / 0.3 );
97- --shadow-card : 0 4px 20px -2px hsl (0 0% 0% / 0.3 );
98- --shadow-glow : 0 0 80px hsl (217 91% 75% / 0.3 );
106+ /* Animated border gradient */
107+ --gradient-border : linear-gradient (90deg , hsl (217 91% 60% ), hsl (270 80% 65% ), hsl (185 90% 55% ), hsl (217 91% 60% ));
108+
109+ /* Enhanced glow effects */
110+ --shadow-elegant : 0 10px 40px -10px hsl (217 91% 60% / 0.25 );
111+ --shadow-card : 0 4px 24px -4px hsl (0 0% 0% / 0.4 );
112+ --shadow-glow : 0 0 80px hsl (217 91% 60% / 0.2 ), 0 0 120px hsl (185 90% 55% / 0.1 );
99113 }
100114}
101115
@@ -109,3 +123,111 @@ All colors MUST be HSL.
109123 transition : background-color 0.3s ease, color 0.3s ease;
110124 }
111125}
126+
127+ @layer components {
128+ /* Glassmorphism card effect */
129+ .glass-card {
130+ @apply bg-card/70 backdrop-blur-xl border border-border/50;
131+ box-shadow :
132+ 0 8px 32px rgba (0 , 0 , 0 , 0.2 ),
133+ inset 0 1px 0 rgba (255 , 255 , 255 , 0.05 );
134+ }
135+
136+ .dark .glass-card {
137+ @apply bg-card/60;
138+ box-shadow :
139+ 0 8px 32px rgba (0 , 0 , 0 , 0.4 ),
140+ inset 0 1px 0 rgba (255 , 255 , 255 , 0.03 );
141+ }
142+
143+ /* Animated gradient border effect */
144+ .gradient-border {
145+ position : relative;
146+ background : hsl (var (--card ));
147+ border-radius : var (--radius );
148+ }
149+
150+ .gradient-border ::before {
151+ content : '' ;
152+ position : absolute;
153+ inset : 0 ;
154+ border-radius : inherit;
155+ padding : 1px ;
156+ background : var (--gradient-border , var (--gradient-primary ));
157+ background-size : 300% 300% ;
158+ -webkit-mask : linear-gradient (# fff 0 0 ) content-box, linear-gradient (# fff 0 0 );
159+ mask : linear-gradient (# fff 0 0 ) content-box, linear-gradient (# fff 0 0 );
160+ mask-composite : exclude;
161+ -webkit-mask-composite : xor;
162+ opacity : 0.4 ;
163+ transition : opacity 0.4s ease;
164+ animation : gradient-shift 4s ease infinite;
165+ }
166+
167+ .gradient-border : hover ::before {
168+ opacity : 1 ;
169+ }
170+
171+ /* Background mesh gradient pattern */
172+ .bg-mesh {
173+ background-image :
174+ radial-gradient (at 40% 20% , hsl (217 91% 60% / 0.12 ) 0px , transparent 50% ),
175+ radial-gradient (at 80% 0% , hsl (270 80% 65% / 0.08 ) 0px , transparent 50% ),
176+ radial-gradient (at 0% 50% , hsl (185 90% 55% / 0.06 ) 0px , transparent 50% ),
177+ radial-gradient (at 80% 80% , hsl (217 91% 60% / 0.05 ) 0px , transparent 40% );
178+ }
179+
180+ /* Text gradient enhancement */
181+ .text-gradient {
182+ background : var (--gradient-primary );
183+ -webkit-background-clip : text;
184+ -webkit-text-fill-color : transparent;
185+ background-clip : text;
186+ }
187+
188+ /* Glow effect for buttons and interactive elements */
189+ .glow-effect {
190+ box-shadow : 0 0 20px hsl (217 91% 60% / 0.3 );
191+ transition : box-shadow 0.3s ease;
192+ }
193+
194+ .glow-effect : hover {
195+ box-shadow : 0 0 40px hsl (217 91% 60% / 0.5 ), 0 0 60px hsl (185 90% 55% / 0.2 );
196+ }
197+
198+ /* Accent glow */
199+ .accent-glow {
200+ box-shadow : 0 0 20px hsl (185 90% 55% / 0.3 );
201+ }
202+
203+ .accent-glow : hover {
204+ box-shadow : 0 0 40px hsl (185 90% 55% / 0.5 );
205+ }
206+
207+ /* Shimmer effect for loading states */
208+ .shimmer {
209+ background : linear-gradient (
210+ 90deg ,
211+ hsl (var (--muted )) 0% ,
212+ hsl (var (--muted-foreground ) / 0.1 ) 50% ,
213+ hsl (var (--muted )) 100%
214+ );
215+ background-size : 200% 100% ;
216+ animation : shimmer 1.5s infinite;
217+ }
218+ }
219+
220+ @layer utilities {
221+ /* 3D transform utilities for card flips */
222+ .perspective-1000 {
223+ perspective : 1000px ;
224+ }
225+
226+ .preserve-3d {
227+ transform-style : preserve-3d;
228+ }
229+
230+ .backface-hidden {
231+ backface-visibility : hidden;
232+ }
233+ }
0 commit comments