Index: components/BuildDetailsDialog.tsx
===================================================================
--- components/BuildDetailsDialog.tsx	(revision 6270fa4254de7b79fae1a259f8b1e52881514dfd)
+++ components/BuildDetailsDialog.tsx	(revision d07d68c7500082e36ef6253479f265f924ccb1f4)
@@ -2,5 +2,5 @@
 import {
     Dialog, DialogTitle, DialogContent, DialogActions, Button, Box, Typography,
-    IconButton, Tab, Tabs, Table, TableBody, TableCell, TableRow, Rating, TextField, Avatar, Chip, Alert
+    IconButton, Tab, Tabs, Table, TableBody, TableCell, TableRow, Rating, TextField, Avatar, Chip, Alert, Snackbar
 } from '@mui/material';
 import CloseIcon from '@mui/icons-material/Close';
@@ -34,4 +34,14 @@
     const [ratingVal, setRatingVal] = useState(5);
 
+    const [snackbar, setSnackbar] = useState<{
+        open: boolean;
+        message: string;
+        severity: 'error' | 'warning' | 'info' | 'success';
+    }>({
+        open: false,
+        message: '',
+        severity: 'warning'
+    });
+
     useEffect(() => {
         if (open && buildId !== null) {
@@ -95,4 +105,9 @@
         if (!cloningBuildId) return;
 
+        if(!currentUser){
+            window.location.href="/auth/login";
+            return;
+        }
+
         try {
             const newBuildId = await onCloneBuild({buildId: cloningBuildId});
@@ -101,7 +116,23 @@
             setCloningBuildId(null);
         } catch (e) {
-            alert("Failed to clone build. Please try again.");
+            // alert("Failed to clone build. Please try again.");
+            setCloneDialogOpen(false);
+            setSnackbar({
+                open: true,
+                message: 'Failed to clone build. Please try again!',
+                severity: 'error'
+            })
         }
     };
+
+    const handleCloneClick = () => {
+        if(!currentUser){
+            window.location.href="/auth/login";
+            return;
+        }
+
+        setCloningBuildId(details.id);
+        setCloneDialogOpen(true);
+    }
 
     if (!open) return null;
@@ -242,8 +273,5 @@
                                                         size="large"
                                                         startIcon={<AutoFixHighIcon/>}
-                                                        onClick={() => {
-                                                            setCloningBuildId(details.id);
-                                                            setCloneDialogOpen(true);
-                                                        }}
+                                                        onClick={handleCloneClick}
                                                     >
                                                         Clone & Edit
@@ -362,4 +390,19 @@
                 </DialogActions>
             </Dialog>
+            <Snackbar
+                open={snackbar.open}
+                autoHideDuration={5000}
+                onClose={() => setSnackbar(prev => ({...prev, open: false}))}
+                anchorOrigin={{vertical: 'bottom', horizontal: 'center'}}
+            >
+                <Alert
+                    onClose={() => setSnackbar(prev => ({...prev, open: false}))}
+                    severity={snackbar.severity}
+                    variant="filled"
+                    sx={{width: '100%'}}
+                >
+                    {snackbar.message}
+                </Alert>
+            </Snackbar>
         </>
     );
Index: components/ComponentDialog.tsx
===================================================================
--- components/ComponentDialog.tsx	(revision 6270fa4254de7b79fae1a259f8b1e52881514dfd)
+++ components/ComponentDialog.tsx	(revision d07d68c7500082e36ef6253479f265f924ccb1f4)
@@ -308,5 +308,13 @@
                                 Browsing:
                             </Box>
-                            <b> {category === 'gpu' ? 'GRAPHICS CARDS' : category === 'memory_card' ? 'STORAGE EXPANSION CARDS' : category?.toUpperCase()}</b>
+                            <b> {
+                                category === 'gpu' ? 'GRAPHICS CARDS'
+                                    : category === 'memory_card' ? 'STORAGE EXPANSION CARDS'
+                                        : category === 'power_supply' ? 'POWER SUPPLIES'
+                                            : category === 'network_card' ? 'NETWORK CARDS'
+                                                : category === 'network_adapters' ? 'NETWORK ADAPTERS'
+                                                    : category === 'sound_card' ? 'SOUND CARDS'
+                                                        : category === 'optical_drive' ? 'OPTICAL DRIVES'
+                                                            : category?.toUpperCase()}</b>
                             {mode === 'forge' && currentBuildId && (
                                 <Typography
Index: pages/dashboard/admin/+Page.tsx
===================================================================
--- pages/dashboard/admin/+Page.tsx	(revision 6270fa4254de7b79fae1a259f8b1e52881514dfd)
+++ pages/dashboard/admin/+Page.tsx	(revision d07d68c7500082e36ef6253479f265f924ccb1f4)
@@ -97,8 +97,12 @@
         setApprovalLoading(true);
         try {
-            await onSetBuildApprovalStatus({buildId: buildApprovalDialog.buildId, isApproved: false});
+            await onSetBuildApprovalStatus({
+                buildId: buildApprovalDialog.buildId,
+                isApproved: false,
+            });
             setBuildApprovalDialog({open: false, buildId: null, buildName: ''});
             loadData();
         } catch (e) {
+            console.error("Reject error:", e); // 🔧 add this
             alert("Reject failed");
         } finally {
Index: pages/forge/+Page.tsx
===================================================================
--- pages/forge/+Page.tsx	(revision 6270fa4254de7b79fae1a259f8b1e52881514dfd)
+++ pages/forge/+Page.tsx	(revision d07d68c7500082e36ef6253479f265f924ccb1f4)
@@ -491,65 +491,67 @@
 
                                 <TableCell align="right" width="15%" sx={{verticalAlign: 'top', pt: 2}}>
-                                    {slot.component && (
-                                        <Box sx={{
-                                            display: 'flex',
-                                            gap: 1,
-                                            justifyContent: 'flex-end',
-                                            alignItems: 'center'
-                                        }}>
-                                            {(slot.type === 'memory' || slot.type === 'storage') && (
-                                                <>
-                                                    <IconButton
-                                                        size="small"
-                                                        color="primary"
-                                                        onClick={() => handleDecrementComponent(slot.id)}
-                                                        disabled={(slot.component.quantity || 1) <= 1}
-                                                        sx={{
-                                                            bgcolor: 'action.hover',
-                                                            '&:disabled': {bgcolor: 'action.disabledBackground'}
-                                                        }}
-                                                    >
-                                                        <RemoveIcon/>
-                                                    </IconButton>
-
-                                                    <Typography
-                                                        variant="body2"
-                                                        sx={{
-                                                            minWidth: '20px',
-                                                            textAlign: 'center',
-                                                            fontWeight: 'bold'
-                                                        }}
-                                                    >
-                                                        {slot.component.quantity || 1}
-                                                    </Typography>
-
-                                                    <IconButton
-                                                        size="small"
-                                                        color="primary"
-                                                        onClick={() => handleIncrementComponent(slot.id)}
-                                                        sx={{bgcolor: 'action.hover'}}
-                                                    >
-                                                        <AddIcon/>
-                                                    </IconButton>
-                                                </>
-                                            )}
-
+                                    <Box sx={{
+                                        display: 'flex',
+                                        gap: 1,
+                                        justifyContent: 'flex-end',
+                                        alignItems: 'center'
+                                    }}>
+                                        {slot.component && (
+                                            <>
+                                                {(slot.type === 'memory' || slot.type === 'storage') && (
+                                                    <>
+                                                        <IconButton
+                                                            size="small"
+                                                            color="primary"
+                                                            onClick={() => handleDecrementComponent(slot.id)}
+                                                            disabled={(slot.component.quantity || 1) <= 1}
+                                                            sx={{
+                                                                bgcolor: 'action.hover',
+                                                                '&:disabled': {bgcolor: 'action.disabledBackground'}
+                                                            }}
+                                                        >
+                                                            <RemoveIcon/>
+                                                        </IconButton>
+
+                                                        <Typography
+                                                            variant="body2"
+                                                            sx={{
+                                                                minWidth: '20px',
+                                                                textAlign: 'center',
+                                                                fontWeight: 'bold'
+                                                            }}
+                                                        >
+                                                            {slot.component.quantity || 1}
+                                                        </Typography>
+
+                                                        <IconButton
+                                                            size="small"
+                                                            color="primary"
+                                                            onClick={() => handleIncrementComponent(slot.id)}
+                                                            sx={{bgcolor: 'action.hover'}}
+                                                        >
+                                                            <AddIcon/>
+                                                        </IconButton>
+                                                    </>
+                                                )}
+
+                                                <IconButton
+                                                    color="error"
+                                                    onClick={() => handleRemovePart(slot.id)}
+                                                >
+                                                    <DeleteIcon/>
+                                                </IconButton>
+                                            </>
+                                        )}
+
+                                        {!slot.required && (
                                             <IconButton
-                                                color="error"
-                                                onClick={() => handleRemovePart(slot.id)}
+                                                color="warning"
+                                                onClick={() => handleDeleteSlot(slot.id)}
                                             >
-                                                <DeleteIcon/>
+                                                <CloseIcon/>
                                             </IconButton>
-
-                                            {!slot.required && (
-                                                <IconButton
-                                                    color="warning"
-                                                    onClick={() => handleDeleteSlot(slot.id)}
-                                                >
-                                                    <CloseIcon/>
-                                                </IconButton>
-                                            )}
-                                        </Box>
-                                    )}
+                                        )}
+                                    </Box>
                                 </TableCell>
                             </TableRow>
@@ -631,5 +633,5 @@
                     disabled={isSubmitting}
                 >
-                    {isSubmitting ? <CircularProgress size={24}/> : 'Submit Build For Review'}
+                    {isSubmitting ? <CircularProgress size={24}/> : 'Save Build'}
                 </Button>
             </Box>
