@@ -35,68 +35,70 @@ export function KBArticleCard({
3535 < Link href = { `/kb/${ article . categorySlug } /${ article . slug } ` } >
3636 < article
3737 className = { cn (
38- "group flex items-start gap-4 p-4 rounded-lg border bg-card hover:bg-accent/50 hover:border-primary/50 transition-all duration-200 " ,
38+ "group relative flex items-start gap-4 p-5 rounded-xl border bg-card hover:border-primary/40 hover:shadow-md hover:-translate-y-0.5 transition-all duration-300 " ,
3939 className
4040 ) }
4141 >
42- < div className = "p-2 rounded-lg bg-primary/10 text-primary group-hover:bg-primary group-hover:text-primary-foreground transition-colors shrink-0" >
42+ < div className = "p-2.5 rounded-xl bg-primary/10 text-primary group-hover:bg-primary group-hover:text-primary-foreground group-hover:shadow-sm group-hover:scale-105 transition-all duration-300 shrink-0" >
4343 < FileText className = "h-5 w-5" />
4444 </ div >
4545
4646 < div className = "flex-1 min-w-0" >
47- < div className = "flex items-center gap-2 flex-wrap mb-1" >
48- < h3 className = "font-semibold group-hover:text-primary transition-colors line-clamp-1" >
47+ < div className = "flex items-center gap-2 flex-wrap mb-1.5 " >
48+ < h3 className = "font-semibold text-foreground group-hover:text-primary transition-colors duration-300 line-clamp-1" >
4949 { article . title }
5050 </ h3 >
5151 { showCategory && (
52- < Badge variant = "secondary" className = "text-xs capitalize" >
52+ < Badge variant = "secondary" className = "text-xs capitalize px-2 py-0.5 " >
5353 { article . category . replace ( / - / g, " " ) }
5454 </ Badge >
5555 ) }
5656 </ div >
5757
58- < p className = "text-sm text-muted-foreground line-clamp-2 mb-3" >
58+ < p className = "text-sm text-muted-foreground line-clamp-2 mb-3.5 leading-relaxed group-hover:text-foreground/80 transition-colors duration-300 " >
5959 { article . description }
6060 </ p >
6161
62- < div className = "flex items-center gap-4 text-xs text-muted-foreground flex-wrap" >
63- < span className = "flex items-center gap-1" >
64- < Clock className = "h-3 w-3" />
62+ < div className = "flex items-center gap-x-4 gap-y-2 text-xs text-muted-foreground flex-wrap" >
63+ < span className = "flex items-center gap-1.5 font-medium " >
64+ < Clock className = "h-3.5 w-3.5 text-primary/70 " />
6565 { article . readingTime } { translations ?. minRead || "min read" }
6666 </ span >
67- < span className = "flex items-center gap-1" >
68- < Calendar className = "h-3 w-3" />
67+ < span className = "flex items-center gap-1.5 font-medium " >
68+ < Calendar className = "h-3.5 w-3.5 text-primary/70 " />
6969 { new Date ( article . lastUpdated ) . toLocaleDateString ( "en-US" , {
7070 year : "numeric" ,
7171 month : "short" ,
7272 day : "numeric" ,
7373 } ) }
7474 </ span >
7575 { article . author && (
76- < span className = "flex items-center gap-1" >
77- < User className = "h-3 w-3" />
76+ < span className = "flex items-center gap-1.5 font-medium " >
77+ < User className = "h-3.5 w-3.5 text-primary/70 " />
7878 { article . author }
7979 </ span >
8080 ) }
8181 </ div >
8282
8383 { article . tags && article . tags . length > 0 && (
84- < div className = "flex items-center gap-1 mt-2 flex-wrap" >
84+ < div className = "flex items-center gap-1.5 mt-3.5 flex-wrap" >
8585 { article . tags . slice ( 0 , 4 ) . map ( ( tag ) => (
86- < Badge key = { tag } variant = "outline" className = "text-xs " >
86+ < Badge key = { tag } variant = "outline" className = "text-[10px] font-medium px-2 py-0.5 group-hover:border-primary/30 group-hover:bg-primary/5 transition-colors duration-300 " >
8787 { tag }
8888 </ Badge >
8989 ) ) }
9090 { article . tags . length > 4 && (
91- < span className = "text-xs text-muted-foreground" >
91+ < span className = "text-[10px] font-medium text-muted-foreground bg-muted/50 px-2 py-0.5 rounded-full " >
9292 +{ article . tags . length - 4 } more
9393 </ span >
9494 ) }
9595 </ div >
9696 ) }
9797 </ div >
9898
99- < ChevronRight className = "h-5 w-5 text-muted-foreground group-hover:text-primary transition-colors shrink-0" />
99+ < div className = "flex items-center justify-center p-1 rounded-full group-hover:bg-primary/10 transition-colors duration-300 shrink-0" >
100+ < ChevronRight className = "h-5 w-5 text-muted-foreground group-hover:text-primary group-hover:translate-x-0.5 transition-all duration-300" />
101+ </ div >
100102 </ article >
101103 </ Link >
102104 ) ;
0 commit comments