@@ -147,18 +147,50 @@ function ProfileContent({ profileId }: ProfileContentProps) {
147147 < Card className = "border border-border/20 bg-background/20 backdrop-blur-sm mb-8" >
148148 < CardContent className = "p-8" >
149149 < div className = "flex flex-col md:flex-row items-start md:items-center gap-6" >
150- < motion . div
151- initial = { { scale : 0 } }
152- animate = { { scale : 1 } }
153- transition = { { delay : 0.2 , type : "spring" , stiffness : 200 } }
154- >
155- < Avatar className = "w-24 h-24 border-4 border-primary/20" >
156- < AvatarImage src = { isOwnProfile ? session ?. user ?. image ?? profile . image ?? undefined : profile . image ?? undefined } alt = { profile . name } />
157- < AvatarFallback className = "text-2xl font-semibold bg-primary/10" >
158- { profile . name ?. split ( " " ) . map ( n => n [ 0 ] ) . join ( "" ) }
159- </ AvatarFallback >
160- </ Avatar >
161- </ motion . div >
150+ { /* Avatar and mobile action buttons row */ }
151+ < div className = "flex items-start justify-between w-full md:w-auto" >
152+ < motion . div
153+ initial = { { scale : 0 } }
154+ animate = { { scale : 1 } }
155+ transition = { { delay : 0.2 , type : "spring" , stiffness : 200 } }
156+ >
157+ < Avatar className = "w-24 h-24 border-4 border-primary/20" >
158+ < AvatarImage src = { isOwnProfile ? session ?. user ?. image ?? profile . image ?? undefined : profile . image ?? undefined } alt = { profile . name } />
159+ < AvatarFallback className = "text-2xl font-semibold bg-primary/10" >
160+ { profile . name ?. split ( " " ) . map ( n => n [ 0 ] ) . join ( "" ) }
161+ </ AvatarFallback >
162+ </ Avatar >
163+ </ motion . div >
164+
165+ { /* Mobile action buttons - visible only on small screens */ }
166+ { isOwnProfile && (
167+ < motion . div
168+ initial = { { opacity : 0 , scale : 0 } }
169+ animate = { { opacity : 1 , scale : 1 } }
170+ transition = { { delay : 0.5 } }
171+ className = "flex items-center gap-2 md:hidden"
172+ >
173+ < Button
174+ onClick = { ( ) => setIsEditModalOpen ( true ) }
175+ variant = "outline"
176+ size = "icon"
177+ className = "h-9 w-9 border-border/40 bg-background/50 rounded-sm hover:bg-primary/5 hover:border-primary/10 cursor-pointer"
178+ title = "Edit Profile"
179+ >
180+ < Edit3 className = "w-4 h-4" />
181+ </ Button >
182+ < Button
183+ onClick = { ( ) => signOut ( ) }
184+ variant = "outline"
185+ size = "icon"
186+ className = "h-9 w-9 border-border/40 bg-background/50 rounded-full cursor-pointer hover:bg-red-500/5 hover:border-red-500/10 hover:text-red-500"
187+ title = "Sign Out"
188+ >
189+ < LogOut className = "w-4 h-4" />
190+ </ Button >
191+ </ motion . div >
192+ ) }
193+ </ div >
162194
163195 < div className = "flex-1 space-y-4" >
164196 < div className = "flex flex-col sm:flex-row sm:items-center sm:justify-between gap-4" >
@@ -209,21 +241,25 @@ function ProfileContent({ profileId }: ProfileContentProps) {
209241 initial = { { opacity : 0 , scale : 0 } }
210242 animate = { { opacity : 1 , scale : 1 } }
211243 transition = { { delay : 0.5 } }
212- className = "flex flex-col gap-4 "
244+ className = "hidden md: flex items-center gap-2 "
213245 >
214246 < Button
215247 onClick = { ( ) => setIsEditModalOpen ( true ) }
216- className = "bg-primary/80 cursor-pointer hover:bg-primary/90 backdrop-blur-sm"
248+ variant = "outline"
249+ size = "icon"
250+ className = "h-9 w-9 border-border/40 bg-background/50 rounded-sm hover:bg-primary/5 hover:border-primary/10 cursor-pointer"
251+ title = "Edit Profile"
217252 >
218- < Edit3 className = "w-4 h-4 mr-2" />
219- Edit Profile
253+ < Edit3 className = "w-4 h-4" />
220254 </ Button >
221255 < Button
222256 onClick = { ( ) => signOut ( ) }
223- className = "bg-primary/80 hover:bg-primary/90 backdrop-blur-sm"
257+ variant = "outline"
258+ size = "icon"
259+ className = "h-9 w-9 border-border/40 bg-background/50 rounded-full cursor-pointer hover:bg-red-500/5 hover:border-red-500/10 hover:text-red-500"
260+ title = "Sign Out"
224261 >
225- < LogOut className = "w-4 h-4 mr-2" />
226- Sign-Out
262+ < LogOut className = "w-4 h-4" />
227263 </ Button >
228264 </ motion . div >
229265 ) }
@@ -247,7 +283,7 @@ function ProfileContent({ profileId }: ProfileContentProps) {
247283 animate = { { opacity : 1 , y : 0 } }
248284 transition = { { delay : 0.7 } }
249285 >
250- < h3 className = "text-sm font-medium text-foreground flex items-center gap-2" >
286+ < h3 className = "text-sm font-medium text-foreground flex items-center mb-3 gap-2" >
251287 < Code className = "w-4 h-4" />
252288 Skills
253289 </ h3 >
0 commit comments