diff --git a/frontend/src/App.css b/frontend/src/App.css index 48a5859..06f6b5d 100644 --- a/frontend/src/App.css +++ b/frontend/src/App.css @@ -176,6 +176,60 @@ h2 { background: #e74c3c; } +.modal-overlay { + position: fixed; + top: 0; + left: 0; + right: 0; + bottom: 0; + background: rgba(0, 0, 0, 0.5); + display: flex; + justify-content: center; + align-items: center; + z-index: 100; +} + +.modal { + background: white; + border-radius: 8px; + padding: 1.5rem 2rem; + min-width: 300px; + text-align: center; +} + +.modal p { + font-size: 1.1rem; + margin-bottom: 1.5rem; +} + +.modal-actions { + display: flex; + gap: 0.75rem; + justify-content: center; +} + +.modal-actions button { + padding: 0.5rem 1.25rem; + font-size: 1rem; + cursor: pointer; + border: 1px solid #ccc; + border-radius: 4px; + background: #333; + color: white; +} + +.modal-actions button:hover { + background: #555; +} + +.modal-actions button.danger { + background: #c0392b; +} + +.modal-actions button.danger:hover { + background: #e74c3c; +} + .vpn-block { display: flex; justify-content: center; diff --git a/frontend/src/App.tsx b/frontend/src/App.tsx index 8fcdda2..d74d639 100644 --- a/frontend/src/App.tsx +++ b/frontend/src/App.tsx @@ -11,6 +11,28 @@ import { } from "./api"; import "./App.css"; +function ConfirmModal({ + message, + onConfirm, + onCancel, +}: { + message: string; + onConfirm: () => void; + onCancel: () => void; +}) { + return ( +
{message}
+