Index: pages/dashboard/admin/+Page.tsx
===================================================================
--- pages/dashboard/admin/+Page.tsx	(revision 958bc89ea8bee009837593ad11242676e8d031f1)
+++ pages/dashboard/admin/+Page.tsx	(revision a744c9059a60bfc8e0fdf8994f5a9496d9122748)
@@ -51,4 +51,9 @@
     const [adminComment, setAdminComment] = useState("");
 
+    const [createComponentDialog, setCreateComponentDialog] = useState<{
+        open: boolean;
+        suggestion: any | null;
+    }>({open: false, suggestion: null});
+
     const loadData = () => {
         setLoading(true);
@@ -143,6 +148,13 @@
     if (loading) {
         return (
-            <Container maxWidth="xl" sx={{mt: 4, mb: 10, display: 'flex', justifyContent: 'center', alignItems: 'center', minHeight: '50vh'}}>
-                <CircularProgress />
+            <Container maxWidth="xl" sx={{
+                mt: 4,
+                mb: 10,
+                display: 'flex',
+                justifyContent: 'center',
+                alignItems: 'center',
+                minHeight: '50vh'
+            }}>
+                <CircularProgress/>
             </Container>
         );
@@ -196,7 +208,7 @@
                                 size="large"
                                 fullWidth
-                                startIcon={<BuildIcon />}
+                                startIcon={<BuildIcon/>}
                                 onClick={() => setAddDialogOpen(true)}
-                                sx={{ mb: 2 }}
+                                sx={{mb: 2}}
                             >
                                 Add Component
@@ -213,10 +225,10 @@
                                     <MemoryIcon color="secondary" sx={{mr: 1}}/>
                                     <Typography variant="h6" fontWeight="bold">
-                                        Suggested Components ({data.componentSuggestions?.length || 0})
+                                        Component Suggestions ({data.componentSuggestions?.length || 0})
                                     </Typography>
                                 </Box>
 
                                 {data.componentSuggestions?.length === 0 ? (
-                                    <Typography color="text.secondary">No pending suggestions.</Typography>
+                                    <Typography color="text.secondary">No suggestions.</Typography>
                                 ) : (
                                     <Table size="small">
@@ -226,4 +238,5 @@
                                                 <TableCell>Type</TableCell>
                                                 <TableCell>User</TableCell>
+                                                <TableCell>Status</TableCell>
                                                 <TableCell align="right">Actions</TableCell>
                                             </TableRow>
@@ -245,19 +258,51 @@
                                                     <TableCell>{sug.componentType?.toUpperCase()}</TableCell>
                                                     <TableCell>{sug.userId}</TableCell>
+                                                    <TableCell>
+                                                        <Chip
+                                                            label={sug.status || 'pending'}
+                                                            size="small"
+                                                            color={
+                                                                sug.status === 'approved' ? 'success' :
+                                                                    sug.status === 'rejected' ? 'error' :
+                                                                        'default'
+                                                            }
+                                                        />
+                                                    </TableCell>
                                                     <TableCell align="right">
-                                                        <IconButton
-                                                            size="small"
-                                                            color="success"
-                                                            onClick={() => openSuggestionReview(sug.id, 'approved')}
-                                                        >
-                                                            <CheckCircleIcon/>
-                                                        </IconButton>
-                                                        <IconButton
-                                                            size="small"
-                                                            color="error"
-                                                            onClick={() => openSuggestionReview(sug.id, 'rejected')}
-                                                        >
-                                                            <CancelIcon/>
-                                                        </IconButton>
+                                                        {sug.status === 'pending' ? (
+                                                            <>
+                                                                <IconButton
+                                                                    size="small"
+                                                                    color="success"
+                                                                    onClick={() => openSuggestionReview(sug.id, 'approved')}
+                                                                >
+                                                                    <CheckCircleIcon/>
+                                                                </IconButton>
+                                                                <IconButton
+                                                                    size="small"
+                                                                    color="error"
+                                                                    onClick={() => openSuggestionReview(sug.id, 'rejected')}
+                                                                >
+                                                                    <CancelIcon/>
+                                                                </IconButton>
+                                                            </>
+                                                        ) : sug.status === 'approved' ? (
+                                                            <Button
+                                                                size="small"
+                                                                variant="contained"
+                                                                color="warning"
+                                                                startIcon={<AddIcon/>}
+                                                                onClick={() => setCreateComponentDialog({
+                                                                    open: true,
+                                                                    suggestion: sug
+                                                                })}
+                                                            >
+                                                                Create
+                                                            </Button>
+                                                        ) : (
+                                                            <Typography variant="caption" color="text.secondary">
+                                                                {sug.adminComment || 'Rejected'}
+                                                            </Typography>
+                                                        )}
                                                     </TableCell>
                                                 </TableRow>
@@ -299,5 +344,5 @@
                                                             color="warning"
                                                             size="small"
-                                                            startIcon={<BuildIcon />}
+                                                            startIcon={<BuildIcon/>}
                                                             onClick={(e) => {
                                                                 e.stopPropagation();
@@ -337,5 +382,5 @@
                                                             color="error"
                                                             size="small"
-                                                            startIcon={<DeleteIcon />}
+                                                            startIcon={<DeleteIcon/>}
                                                             onClick={(e) => {
                                                                 e.stopPropagation();
@@ -358,5 +403,6 @@
             </Grid>
 
-            <Dialog open={suggestionDialog.open} onClose={() => setSuggestionDialog({...suggestionDialog, open: false})}>
+            <Dialog open={suggestionDialog.open}
+                    onClose={() => setSuggestionDialog({...suggestionDialog, open: false})}>
                 <DialogTitle>Review Component Suggestion</DialogTitle>
                 <DialogContent>
@@ -369,5 +415,5 @@
                         value={adminComment}
                         onChange={(e) => setAdminComment(e.target.value)}
-                        sx={{ mt: 2 }}
+                        sx={{mt: 2}}
                     />
                 </DialogContent>
@@ -448,5 +494,5 @@
                         color="error"
                         disabled={deleteLoading}
-                        startIcon={deleteLoading ? <CircularProgress size={20}/> : <DeleteIcon />}
+                        startIcon={deleteLoading ? <CircularProgress size={20}/> : <DeleteIcon/>}
                     >
                         {deleteLoading ? 'Deleting...' : 'Delete Build'}
@@ -471,4 +517,18 @@
                 }}
             />
+
+            <AddComponentDialog
+                open={createComponentDialog.open}
+                onClose={() => setCreateComponentDialog({ open: false, suggestion: null })}
+                onSuccess={() => {
+                    loadData();
+                    setCreateComponentDialog({ open: false, suggestion: null });
+                }}
+                prefillData={createComponentDialog.suggestion ? {
+                    type: createComponentDialog.suggestion.componentType,
+                    suggestionLink: createComponentDialog.suggestion.link,
+                    suggestionDescription: createComponentDialog.suggestion.description
+                } : undefined}
+            />
         </Container>
     );
