diff --git a/components/CardDetailDeckModal.js b/components/CardDetailDeckModal.js
new file mode 100644
index 0000000..d270bda
--- /dev/null
+++ b/components/CardDetailDeckModal.js
@@ -0,0 +1,75 @@
+export default function CardDetailDeckModal({
+ isOpen,
+ card,
+ decks,
+ selectedDeck,
+ onSelectedDeckChange,
+ onAdd,
+ onClose,
+}) {
+ if (!isOpen || !card) {
+ return null;
+ }
+
+ return (
+
+
+
+ Add to Deck
+
+
+
+
+
+
+
+
+
+
+
+ );
+}
diff --git a/pages/card/[id].js b/pages/card/[id].js
index 058b0e7..aa1b700 100644
--- a/pages/card/[id].js
+++ b/pages/card/[id].js
@@ -5,6 +5,7 @@ import Layout from '../../components/Layout';
import { useAuth } from '../../lib/use-auth';
import CollectionSelectionModal from '../../components/CollectionSelectionModal';
import CardDetailQuantityModal from '../../components/CardDetailQuantityModal';
+import CardDetailDeckModal from '../../components/CardDetailDeckModal';
import { ManaCost, ColorIdentity, AdvancedManaCost } from '../../components/ManaSymbols';
import ManaSymbolSettings from '../../components/ManaSymbolSettings';
import { VOCAB, collectionDisplayName } from '../../lib/collection-vocabulary.js';
@@ -801,66 +802,18 @@ export default function CardDetail() {
}}
/>
- {/* Deck Modal */}
- {showDeckModal && (
-
-
-
- Add to Deck
-
-
-
-
-
-
-
-
-
-
-
- )}
+ {
+ setShowDeckModal(false);
+ setSelectedDeck('');
+ }}
+ />
);