1212
1313 & .clickable {
1414 cursor : pointer ;
15-
15+
1616 & :hover {
1717 transform : translateY (-4px );
1818 box-shadow : 0 6px 25px rgba (0 , 0 , 0 , 0.15 );
3838 display : flex ;
3939 align-items : center ;
4040 justify-content : center ;
41+ position : relative ;
42+ z-index : 1 ;
43+ transition : transform 0.3s ease ;
4144
4245 fa-icon {
4346 font-size : 24px ;
100103 font-weight : 600 ;
101104 color : #333 ;
102105 line-height : 1.2 ;
106+
107+ & .zero-state-cta {
108+ font-size : 20px ;
109+ font-weight : 600 ;
110+ line-height : 1.3 ;
111+ background : linear-gradient (135deg , #7f11e0 , #9333ea );
112+ -webkit-background-clip : text ;
113+ -webkit-text-fill-color : transparent ;
114+ background-clip : text ;
115+ padding : 8px 0 ;
116+ transition : all 0.3s ease ;
117+ }
103118 }
104119
105120 .card-subtitle {
120135 }
121136}
122137
123- // Prompt styling
138+ // Prompt styling - professional and clean
124139::ng-deep [prompt ] {
125- font-size : 14 px ;
126- color : #d32f2f ;
127- font-weight : 600 ;
140+ font-size : 13 px ;
141+ color : #666 ;
142+ font-weight : 400 ;
128143 display : flex ;
129144 align-items : center ;
130- gap : 6px ;
131- animation : urgent- pulse 1.5s infinite ;
132- text-shadow : 0 0 8px rgba (211 , 47 , 47 , 0.3 );
133- letter-spacing : 0.5px ;
145+ gap : 8px ;
146+ margin-top : 12px ;
147+ padding : 8px 12px ;
148+ background : rgba (127 , 17 , 224 , 0.04 );
149+ border-radius : 6px ;
150+ transition : all 0.2s ease ;
134151
135152 span {
136153 position : relative ;
137-
138- & ::after {
139- content : ' ' ;
140- position : absolute ;
141- bottom : -2px ;
142- left : 0 ;
143- right : 0 ;
144- height : 2px ;
145- background : linear-gradient (90deg , transparent , #d32f2f , transparent );
146- animation : underline- slide 2s infinite ;
147- }
148- }
149- }
150-
151- @keyframes urgent-pulse {
152- 0%,
153- 100% {
154- opacity : 0.9 ;
155- transform : scale (1 );
156- }
157- 50% {
158- opacity : 1 ;
159- transform : scale (1.02 );
160- }
161- }
162-
163- @keyframes underline-slide {
164- 0% {
165- transform : translateX (-100% );
166- }
167- 100% {
168- transform : translateX (100% );
154+ flex : 1 ;
169155 }
170156}
171157
172- @keyframes pulse {
173- 0% {
174- opacity : 0.8 ;
175- }
176- 50% {
177- opacity : 1 ;
178- }
179- 100% {
180- opacity : 0.8 ;
181- }
182- }
183-
184- // Zero value styling
158+ // Zero value styling - professional and inviting
185159.dashboard-card.zero-value {
186- background : linear-gradient ( 135 deg , #fff5f5 0 % , #ffe0e0 100 % ) ;
187- border : 2 px solid #ff6b6b ;
160+ background : #ffffff ;
161+ border : 1.5 px solid rgba ( 147 , 51 , 234 , 0.3 ) ;
188162 position : relative ;
189163 overflow : hidden ;
190- box-shadow : 0 0 20px rgba (255 , 107 , 107 , 0.2 );
191- animation : glow- pulse 2.5s infinite ;
164+ box-shadow : 0 2px 12px rgba (147 , 51 , 234 , 0.08 );
165+ cursor : pointer !important ;
166+ transition : all 0.3s cubic-bezier (0.4 , 0 , 0.2 , 1 );
192167
193168 & ::before {
194169 content : ' ' ;
195170 position : absolute ;
196- top : -2px ;
197- left : -2px ;
198- right : -2px ;
199- bottom : -2px ;
200- background : linear-gradient (
201- 90deg ,
202- transparent ,
203- rgba (255 , 107 , 107 , 0.3 ),
204- transparent
205- );
206- animation : shimmer 3s infinite ;
207- }
208-
209- .card-value {
210- color : #d32f2f !important ;
211- font-weight : 700 !important ;
212- text-shadow : 0 0 3px rgba (211 , 47 , 47 , 0.2 );
171+ top : 0 ;
172+ left : 0 ;
173+ right : 0 ;
174+ height : 2px ;
175+ background : linear-gradient (90deg , #7f11e0 , #9333ea );
176+ opacity : 1 ;
213177 }
214178
215179 .icon-container {
216- animation : attention- pulse 2s infinite ;
217- box-shadow : 0 0 15px rgba (255 , 107 , 107 , 0.3 );
180+ box-shadow : 0 3px 10px rgba (0 , 0 , 0 , 0.08 );
181+
182+ // Keep original colors for each icon type
183+ & .icon-primary {
184+ background : linear-gradient (135deg , #7f11e0 0% , #5c239a 100% );
185+ }
186+
187+ & .icon-success {
188+ background : linear-gradient (135deg , #4caf50 0% , #388e3c 100% );
189+ }
190+
191+ & .icon-info {
192+ background : linear-gradient (135deg , #2196f3 0% , #1976d2 100% );
193+ }
218194 }
219195
220- & :hover {
221- transform : translateY (-2px ) scale (1.02 );
222- box-shadow : 0 4px 30px rgba (255 , 107 , 107 , 0.3 );
196+ .card-value.zero-state-cta {
197+ position : relative ;
198+
199+ & ::after {
200+ content : ' →' ;
201+ position : absolute ;
202+ right : -25px ;
203+ top : 50% ;
204+ transform : translateY (-50% );
205+ font-size : 20px ;
206+ color : #9333ea ;
207+ opacity : 0 ;
208+ transition : all 0.3s ease ;
209+ }
223210 }
224- }
225211
226- @keyframes glow-pulse {
227- 0%,
228- 100% {
229- box-shadow : 0 0 20px rgba (255 , 107 , 107 , 0.2 );
230- }
231- 50% {
232- box-shadow : 0 0 30px rgba (255 , 107 , 107 , 0.4 );
212+ ::ng- deep [prompt] {
213+ background : rgba (127 , 17 , 224 , 0.06 );
214+ color : #7f11e0 ;
215+ font-weight : 500 ;
233216 }
234- }
235217
236- // Shake animation for zero value cards
237- .dashboard-card.shake-animation {
238- animation : subtle- shake 4s infinite ;
239- }
218+ & :hover {
219+ transform : translateY (-6px );
220+ box-shadow : 0 12px 28px rgba (147 , 51 , 234 , 0.15 );
221+ border-color : rgba (127 , 17 , 224 , 0.5 );
222+ background : linear-gradient (180deg , #ffffff 0% , #faf8ff 100% );
240223
241- @keyframes subtle-shake {
242- 0%,
243- 90%,
244- 100% {
245- transform : translateX (0 );
246- }
247- 92% {
248- transform : translateX (-2px ) rotate (-0.5deg );
249- }
250- 94% {
251- transform : translateX (2px ) rotate (0.5deg );
252- }
253- 96% {
254- transform : translateX (-1px ) rotate (-0.3deg );
255- }
256- 98% {
257- transform : translateX (1px ) rotate (0.3deg );
258- }
259- }
224+ .icon-container {
225+ transform : scale (1.08 );
226+ }
260227
261- @keyframes shimmer {
262- 0% {
263- transform : translateX ( -100 % );
264- }
265- 100% {
266- transform : translateX ( 200 % ) ;
267- }
268- }
228+ .card-value.zero-state-cta {
229+ transform : translateX ( -5 px );
230+
231+ & ::after {
232+ opacity : 1 ;
233+ right : -30 px ;
234+ }
235+ }
269236
270- @keyframes attention-pulse {
271- 0%,
272- 100% {
273- transform : scale ( 1 );
237+ ::ng - deep [prompt] {
238+ background : rgba ( 127 , 17 , 224 , 0.08 );
239+ transform : translateY ( -1 px );
240+ }
274241 }
275- 50% {
276- transform : scale (1.1 );
242+
243+ & :active {
244+ transform : translateY (-3px );
245+ box-shadow : 0 6px 16px rgba (147 , 51 , 234 , 0.12 );
277246 }
278247}
279248
289258
290259 .card-value {
291260 color : #fff ;
261+
262+ & .zero-state-cta {
263+ background : linear-gradient (135deg , #bb86fc , #9333ea );
264+ -webkit-background-clip : text ;
265+ -webkit-text-fill-color : transparent ;
266+ background-clip : text ;
267+ }
292268 }
293269
294270 .card-subtitle {
305281 }
306282
307283 & .zero-value {
308- background : linear-gradient (135deg , #4a1a1a 0% , #3d1515 100% );
309- border : 2px solid #ff6b6b ;
284+ background : #2e2e2e ;
285+ border : 1.5px solid rgba (147 , 51 , 234 , 0.4 );
286+ box-shadow : 0 2px 12px rgba (147 , 51 , 234 , 0.12 );
310287
311288 & ::before {
312- background : linear-gradient (
313- 90deg ,
314- transparent ,
315- rgba (255 , 107 , 107 , 0.2 ),
316- transparent
317- );
289+ background : linear-gradient (90deg , #bb86fc , #9333ea );
318290 }
319291
320- .card-value {
321- color : #ff8a80 !important ;
292+ .card-value.zero-state-cta {
293+ & ::after {
294+ color : #bb86fc ;
295+ }
296+ }
297+
298+ & :hover {
299+ background : linear-gradient (180deg , #2e2e2e 0% , #352840 100% );
300+ border-color : rgba (187 , 134 , 252 , 0.6 );
301+ box-shadow : 0 12px 28px rgba (187 , 134 , 252 , 0.2 );
302+ }
303+
304+ ::ng- deep [prompt] {
305+ background : rgba (187 , 134 , 252 , 0.08 );
306+ color : #bb86fc ;
322307 }
323308 }
324309 }
325310
326311 ::ng-deep [prompt ] {
327- color : #ff8a80 ;
328- text-shadow : 0 0 10px rgba (255 , 138 , 128 , 0.5 );
329-
330- span ::after {
331- background : linear-gradient (90deg , transparent , #ff8a80 , transparent );
332- }
312+ color : #aaa ;
313+ background : rgba (255 , 255 , 255 , 0.04 );
333314 }
334- }
315+ }
0 commit comments