diff --git a/src/components/ui/modal/modal.jsx b/src/components/ui/modal/modal.jsx
index 66ae46b..6ddf2a8 100644
--- a/src/components/ui/modal/modal.jsx
+++ b/src/components/ui/modal/modal.jsx
@@ -1,23 +1,23 @@
-import styles from "./modal.module.css"
+import { createPortal } from "react-dom";
+import styles from "./modal.module.css";
import Button from "../button/button.jsx";
const Modal = ({ open, onClose, children, title }) => {
- if(!open) return null;
+ if (!open) return null;
- return
+ return createPortal(
+
+
+ {title &&
{title}
}
+ {children}
+
+
+
+
+
,
+ document.body
+ );
+};
-
-
- {title &&
{title}
}
-
- {children}
-
-
-
-
-
-
-}
-
-export default Modal;
\ No newline at end of file
+export default Modal;
diff --git a/src/components/ui/modal/modal.module.css b/src/components/ui/modal/modal.module.css
index faf857f..fa3566f 100644
--- a/src/components/ui/modal/modal.module.css
+++ b/src/components/ui/modal/modal.module.css
@@ -7,8 +7,10 @@
background-color: rgba(0, 0, 0, 0.25);
display: flex;
justify-content: center;
- align-items: center;
z-index: 1000;
+ align-items: flex-start;
+ overflow-y: auto;
+ padding: 40px 0;
}
.modal {
@@ -16,6 +18,7 @@
border-radius: 8px;
min-width: 300px;
max-width: 70%;
+ max-height: none;
position: relative;
box-shadow: 0 4px 15px rgba(0,0,0,0.2);
width: clamp(300px, 50vw, 600px);