@@ -94,11 +94,15 @@ export function Header() {
9494 key = { item . name }
9595 href = { item . href }
9696 className = { cn (
97- "text-sm font-medium transition-colors hover:text-primary " ,
98- isActive ? "text-foreground" : "text-muted-foreground"
97+ "group relative text-sm font-medium transition-all duration-200 " ,
98+ isActive ? "text-foreground" : "text-muted-foreground hover:text-foreground "
9999 ) }
100100 >
101101 { item . name }
102+ < span className = { cn (
103+ "absolute -bottom-1 left-0 h-0.5 bg-foreground transition-all duration-300" ,
104+ isActive ? "w-full" : "w-0 group-hover:w-full"
105+ ) } />
102106 </ Link >
103107 )
104108 } ) }
@@ -113,20 +117,21 @@ export function Header() {
113117 createPortal (
114118 < div
115119 id = "mobile-nav"
116- className = "fixed inset-x-0 bottom-0 z-50 overflow-y-auto border-t border-border bg-background/95 shadow-lg backdrop-blur supports-[backdrop-filter]:bg-background/80 lg:hidden"
120+ className = "fixed inset-x-0 bottom-0 z-50 animate-slide-down overflow-y-auto border-t border-border bg-background/95 shadow-lg backdrop-blur supports-[backdrop-filter]:bg-background/80 lg:hidden"
117121 style = { { top : headerOffset } }
118122 >
119123 < div className = "section-container space-y-1 py-6" >
120- { navigation . map ( ( item ) => {
124+ { navigation . map ( ( item , index ) => {
121125 const isActive = pathname === item . href || pathname === `${ item . href } /`
122126 return (
123127 < Link
124128 key = { item . name }
125129 href = { item . href }
126130 className = { cn (
127- "block rounded-md px-3 py-2 text-base transition-colors hover:bg-accent" ,
131+ "block rounded-md px-3 py-2 text-base transition-all hover:bg-accent hover:pl-4 " ,
128132 isActive ? "bg-accent text-foreground" : "text-muted-foreground"
129133 ) }
134+ style = { { animationDelay : `${ index * 50 } ms` } }
130135 onClick = { ( ) => setMobileMenuOpen ( false ) }
131136 >
132137 { item . name }
0 commit comments