+
+ {questions.map((question, index) => (
+
+ onUpdateQuestion(question.questionId, patch)
+ }
+ onRemove={() => onRemoveQuestion(question.questionId)}
+ />
+ ))}
+
+
+
+ }
+ onClick={onAddQuestion}
+ >
+ 질문 추가
+
+
+
+ );
+};
+
+export default FormBuilderSection;
diff --git a/src/domain/admin/blog/magnet/form/QuestionCard.tsx b/src/domain/admin/blog/magnet/form/QuestionCard.tsx
new file mode 100644
index 000000000..1a43c95d0
--- /dev/null
+++ b/src/domain/admin/blog/magnet/form/QuestionCard.tsx
@@ -0,0 +1,165 @@
+import QuestionItemList from '@/domain/admin/blog/magnet/form/QuestionItemList';
+import {
+ FormQuestion,
+ FormQuestionItem,
+ FormQuestionType,
+ FormResponseRequired,
+ FormSelectionMethod,
+} from '@/domain/admin/blog/magnet/types';
+import {
+ FormControlLabel,
+ IconButton,
+ Radio,
+ RadioGroup,
+ TextField,
+} from '@mui/material';
+import { Trash } from 'lucide-react';
+
+interface QuestionCardProps {
+ questionNumber: number;
+ question: FormQuestion;
+ onUpdate: (patch: Partial