Index: ReserveNGo-frontend/package-lock.json
===================================================================
--- ReserveNGo-frontend/package-lock.json	(revision 2be93d21c7af6b3d88433242e73e6c8075d49c83)
+++ ReserveNGo-frontend/package-lock.json	(revision a77580843ab09ab748ba1f7eca10ca48c82d4aca)
@@ -105,5 +105,4 @@
       "dev": true,
       "license": "MIT",
-      "peer": true,
       "dependencies": {
         "@ampproject/remapping": "^2.2.0",
@@ -658,5 +657,4 @@
       ],
       "license": "MIT",
-      "peer": true,
       "engines": {
         "node": ">=18"
@@ -682,5 +680,4 @@
       ],
       "license": "MIT",
-      "peer": true,
       "engines": {
         "node": ">=18"
@@ -1405,4 +1402,5 @@
       "integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==",
       "license": "MIT",
+      "peer": true,
       "dependencies": {
         "@jridgewell/gen-mapping": "^0.3.5",
@@ -1438,4 +1436,5 @@
       "dev": true,
       "license": "MIT",
+      "peer": true,
       "dependencies": {
         "@nodelib/fs.stat": "2.0.5",
@@ -1452,4 +1451,5 @@
       "dev": true,
       "license": "MIT",
+      "peer": true,
       "engines": {
         "node": ">= 8"
@@ -1462,4 +1462,5 @@
       "dev": true,
       "license": "MIT",
+      "peer": true,
       "dependencies": {
         "@nodelib/fs.scandir": "2.1.5",
@@ -2131,4 +2132,5 @@
       "integrity": "sha512-FXx2pKgId/WyYo2jXw63kk7/+TY7u7AziEJxJAnSFzHlqTAS3Ync6SvgYAN/k4/PQpnnVuzoMuVnByKK2qp0ag==",
       "license": "MIT",
+      "peer": true,
       "dependencies": {
         "@types/estree": "*",
@@ -2141,4 +2143,5 @@
       "integrity": "sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==",
       "license": "MIT",
+      "peer": true,
       "dependencies": {
         "@types/eslint": "*",
@@ -2163,4 +2166,5 @@
       "integrity": "sha512-v1DKRfUdyW+jJhZNEI1PYy29S2YRxMV5AOO/x/SjKmW0acCIOqmbj6Haf9eHAhsPmrhlHSxEhv/1WszcLWV4cg==",
       "license": "MIT",
+      "peer": true,
       "dependencies": {
         "undici-types": "~6.21.0"
@@ -2173,4 +2177,5 @@
       "dev": true,
       "license": "MIT",
+      "peer": true,
       "dependencies": {
         "@typescript-eslint/types": "8.21.0",
@@ -2191,4 +2196,5 @@
       "dev": true,
       "license": "MIT",
+      "peer": true,
       "engines": {
         "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -2205,4 +2211,5 @@
       "dev": true,
       "license": "MIT",
+      "peer": true,
       "dependencies": {
         "@typescript-eslint/types": "8.21.0",
@@ -2257,4 +2264,5 @@
       "dev": true,
       "license": "MIT",
+      "peer": true,
       "dependencies": {
         "@typescript-eslint/types": "8.21.0",
@@ -2275,4 +2283,5 @@
       "dev": true,
       "license": "Apache-2.0",
+      "peer": true,
       "engines": {
         "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
@@ -2705,4 +2714,5 @@
       "integrity": "sha512-nuBEDgQfm1ccRp/8bCQrx1frohyufl4JlbMMZ4P1wpeOfDhF6FQkxZJ1b/e+PLwr6X1Nhw6OLme5usuBWYBvuQ==",
       "license": "MIT",
+      "peer": true,
       "dependencies": {
         "@webassemblyjs/helper-numbers": "1.13.2",
@@ -2714,5 +2724,6 @@
       "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.13.2.tgz",
       "integrity": "sha512-6oXyTOzbKxGH4steLbLNOu71Oj+C8Lg34n6CqRvqfS2O71BxY6ByfMDRhBytzknj9yGUPVJ1qIKhRlAwO1AovA==",
-      "license": "MIT"
+      "license": "MIT",
+      "peer": true
     },
     "node_modules/@webassemblyjs/helper-api-error": {
@@ -2720,5 +2731,6 @@
       "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.13.2.tgz",
       "integrity": "sha512-U56GMYxy4ZQCbDZd6JuvvNV/WFildOjsaWD3Tzzvmw/mas3cXzRJPMjP83JqEsgSbyrmaGjBfDtV7KDXV9UzFQ==",
-      "license": "MIT"
+      "license": "MIT",
+      "peer": true
     },
     "node_modules/@webassemblyjs/helper-buffer": {
@@ -2726,5 +2738,6 @@
       "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.14.1.tgz",
       "integrity": "sha512-jyH7wtcHiKssDtFPRB+iQdxlDf96m0E39yb0k5uJVhFGleZFoNw1c4aeIcVUPPbXUVJ94wwnMOAqUHyzoEPVMA==",
-      "license": "MIT"
+      "license": "MIT",
+      "peer": true
     },
     "node_modules/@webassemblyjs/helper-numbers": {
@@ -2733,4 +2746,5 @@
       "integrity": "sha512-FE8aCmS5Q6eQYcV3gI35O4J789wlQA+7JrqTTpJqn5emA4U2hvwJmvFRC0HODS+3Ye6WioDklgd6scJ3+PLnEA==",
       "license": "MIT",
+      "peer": true,
       "dependencies": {
         "@webassemblyjs/floating-point-hex-parser": "1.13.2",
@@ -2743,5 +2757,6 @@
       "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.13.2.tgz",
       "integrity": "sha512-3QbLKy93F0EAIXLh0ogEVR6rOubA9AoZ+WRYhNbFyuB70j3dRdwH9g+qXhLAO0kiYGlg3TxDV+I4rQTr/YNXkA==",
-      "license": "MIT"
+      "license": "MIT",
+      "peer": true
     },
     "node_modules/@webassemblyjs/helper-wasm-section": {
@@ -2750,4 +2765,5 @@
       "integrity": "sha512-ds5mXEqTJ6oxRoqjhWDU83OgzAYjwsCV8Lo/N+oRsNDmx/ZDpqalmrtgOMkHwxsG0iI//3BwWAErYRHtgn0dZw==",
       "license": "MIT",
+      "peer": true,
       "dependencies": {
         "@webassemblyjs/ast": "1.14.1",
@@ -2762,4 +2778,5 @@
       "integrity": "sha512-4LtOzh58S/5lX4ITKxnAK2USuNEvpdVV9AlgGQb8rJDHaLeHciwG4zlGr0j/SNWlr7x3vO1lDEsuePvtcDNCkw==",
       "license": "MIT",
+      "peer": true,
       "dependencies": {
         "@xtuc/ieee754": "^1.2.0"
@@ -2771,4 +2788,5 @@
       "integrity": "sha512-Lde1oNoIdzVzdkNEAWZ1dZ5orIbff80YPdHx20mrHwHrVNNTjNr8E3xz9BdpcGqRQbAEa+fkrCb+fRFTl/6sQw==",
       "license": "Apache-2.0",
+      "peer": true,
       "dependencies": {
         "@xtuc/long": "4.2.2"
@@ -2779,5 +2797,6 @@
       "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.13.2.tgz",
       "integrity": "sha512-3NQWGjKTASY1xV5m7Hr0iPeXD9+RDobLll3T9d2AO+g3my8xy5peVyjSag4I50mR1bBSN/Ct12lo+R9tJk0NZQ==",
-      "license": "MIT"
+      "license": "MIT",
+      "peer": true
     },
     "node_modules/@webassemblyjs/wasm-edit": {
@@ -2786,4 +2805,5 @@
       "integrity": "sha512-RNJUIQH/J8iA/1NzlE4N7KtyZNHi3w7at7hDjvRNm5rcUXa00z1vRz3glZoULfJ5mpvYhLybmVcwcjGrC1pRrQ==",
       "license": "MIT",
+      "peer": true,
       "dependencies": {
         "@webassemblyjs/ast": "1.14.1",
@@ -2802,4 +2822,5 @@
       "integrity": "sha512-AmomSIjP8ZbfGQhumkNvgC33AY7qtMCXnN6bL2u2Js4gVCg8fp735aEiMSBbDR7UQIj90n4wKAFUSEd0QN2Ukg==",
       "license": "MIT",
+      "peer": true,
       "dependencies": {
         "@webassemblyjs/ast": "1.14.1",
@@ -2815,4 +2836,5 @@
       "integrity": "sha512-PTcKLUNvBqnY2U6E5bdOQcSM+oVP/PmrDY9NzowJjislEjwP/C4an2303MCVS2Mg9d3AJpIGdUFIQQWbPds0Sw==",
       "license": "MIT",
+      "peer": true,
       "dependencies": {
         "@webassemblyjs/ast": "1.14.1",
@@ -2827,4 +2849,5 @@
       "integrity": "sha512-JLBl+KZ0R5qB7mCnud/yyX08jWFw5MsoalJ1pQ4EdFlgj9VdXKGuENGsiCIjegI1W7p91rUlcB/LB5yRJKNTcQ==",
       "license": "MIT",
+      "peer": true,
       "dependencies": {
         "@webassemblyjs/ast": "1.14.1",
@@ -2841,4 +2864,5 @@
       "integrity": "sha512-kPSSXE6De1XOR820C90RIo2ogvZG+c3KiHzqUoO/F34Y2shGzesfqv7o57xrxovZJH/MetF5UjroJ/R/3isoiw==",
       "license": "MIT",
+      "peer": true,
       "dependencies": {
         "@webassemblyjs/ast": "1.14.1",
@@ -2850,5 +2874,6 @@
       "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz",
       "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==",
-      "license": "BSD-3-Clause"
+      "license": "BSD-3-Clause",
+      "peer": true
     },
     "node_modules/@xtuc/long": {
@@ -2856,5 +2881,6 @@
       "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz",
       "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==",
-      "license": "Apache-2.0"
+      "license": "Apache-2.0",
+      "peer": true
     },
     "node_modules/abbrev": {
@@ -2873,5 +2899,4 @@
       "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==",
       "license": "MIT",
-      "peer": true,
       "bin": {
         "acorn": "bin/acorn"
@@ -2923,4 +2948,5 @@
       "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==",
       "license": "MIT",
+      "peer": true,
       "dependencies": {
         "ajv": "^8.0.0"
@@ -2940,4 +2966,5 @@
       "integrity": "sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==",
       "license": "MIT",
+      "peer": true,
       "dependencies": {
         "fast-deep-equal": "^3.1.3",
@@ -2955,5 +2982,6 @@
       "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
       "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==",
-      "license": "MIT"
+      "license": "MIT",
+      "peer": true
     },
     "node_modules/ansi-regex": {
@@ -3076,5 +3104,4 @@
       ],
       "license": "MIT",
-      "peer": true,
       "dependencies": {
         "caniuse-lite": "^1.0.30001688",
@@ -3094,5 +3121,6 @@
       "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz",
       "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==",
-      "license": "MIT"
+      "license": "MIT",
+      "peer": true
     },
     "node_modules/bundle-name": {
@@ -3216,4 +3244,5 @@
       "integrity": "sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==",
       "license": "MIT",
+      "peer": true,
       "engines": {
         "node": ">=6.0"
@@ -3534,4 +3563,5 @@
       "integrity": "sha512-ZSW3ma5GkcQBIpwZTSRAI8N71Uuwgs93IezB7mf7R60tC8ZbJideoDNKjHn2O9KIlx6rkGTTEk1xUCK2E1Y2Yg==",
       "license": "MIT",
+      "peer": true,
       "dependencies": {
         "graceful-fs": "^4.2.4",
@@ -3639,5 +3669,4 @@
       "dev": true,
       "license": "MIT",
-      "peer": true,
       "dependencies": {
         "@eslint-community/eslint-utils": "^4.2.0",
@@ -3700,5 +3729,4 @@
       "dev": true,
       "license": "MIT",
-      "peer": true,
       "bin": {
         "eslint-config-prettier": "build/bin/cli.js"
@@ -3931,4 +3959,5 @@
       "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
       "license": "MIT",
+      "peer": true,
       "engines": {
         "node": ">=0.8.x"
@@ -3991,4 +4020,5 @@
       "dev": true,
       "license": "MIT",
+      "peer": true,
       "dependencies": {
         "@nodelib/fs.stat": "^2.0.2",
@@ -4008,4 +4038,5 @@
       "dev": true,
       "license": "ISC",
+      "peer": true,
       "dependencies": {
         "is-glob": "^4.0.1"
@@ -4043,5 +4074,6 @@
         }
       ],
-      "license": "BSD-3-Clause"
+      "license": "BSD-3-Clause",
+      "peer": true
     },
     "node_modules/fastq": {
@@ -4051,4 +4083,5 @@
       "dev": true,
       "license": "ISC",
+      "peer": true,
       "dependencies": {
         "reusify": "^1.0.4"
@@ -4262,5 +4295,6 @@
       "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz",
       "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==",
-      "license": "BSD-2-Clause"
+      "license": "BSD-2-Clause",
+      "peer": true
     },
     "node_modules/globals": {
@@ -4607,4 +4641,5 @@
       "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==",
       "license": "MIT",
+      "peer": true,
       "dependencies": {
         "@types/node": "*",
@@ -4621,4 +4656,5 @@
       "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==",
       "license": "MIT",
+      "peer": true,
       "dependencies": {
         "has-flag": "^4.0.0"
@@ -4758,5 +4794,6 @@
       "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
       "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==",
-      "license": "MIT"
+      "license": "MIT",
+      "peer": true
     },
     "node_modules/json-schema-traverse": {
@@ -4836,4 +4873,5 @@
       "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==",
       "license": "MIT",
+      "peer": true,
       "engines": {
         "node": ">=6.11.5"
@@ -4897,5 +4935,6 @@
       "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz",
       "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==",
-      "license": "MIT"
+      "license": "MIT",
+      "peer": true
     },
     "node_modules/merge2": {
@@ -4905,4 +4944,5 @@
       "dev": true,
       "license": "MIT",
+      "peer": true,
       "engines": {
         "node": ">= 8"
@@ -5379,5 +5419,4 @@
       "dev": true,
       "license": "MIT",
-      "peer": true,
       "bin": {
         "prettier": "bin/prettier.cjs"
@@ -5455,5 +5494,6 @@
         }
       ],
-      "license": "MIT"
+      "license": "MIT",
+      "peer": true
     },
     "node_modules/randombytes": {
@@ -5462,4 +5502,5 @@
       "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==",
       "license": "MIT",
+      "peer": true,
       "dependencies": {
         "safe-buffer": "^5.1.0"
@@ -5484,4 +5525,5 @@
       "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==",
       "license": "MIT",
+      "peer": true,
       "engines": {
         "node": ">=0.10.0"
@@ -5504,4 +5546,5 @@
       "dev": true,
       "license": "MIT",
+      "peer": true,
       "engines": {
         "iojs": ">=1.0.0",
@@ -5522,5 +5565,4 @@
       "dev": true,
       "license": "MIT",
-      "peer": true,
       "dependencies": {
         "@types/estree": "1.0.6"
@@ -5596,4 +5638,5 @@
       ],
       "license": "MIT",
+      "peer": true,
       "dependencies": {
         "queue-microtask": "^1.2.2"
@@ -5618,5 +5661,6 @@
         }
       ],
-      "license": "MIT"
+      "license": "MIT",
+      "peer": true
     },
     "node_modules/safer-buffer": {
@@ -5632,5 +5676,4 @@
       "integrity": "sha512-ld+kQU8YTdGNjOLfRWBzewJpU5cwEv/h5yyqlSeJcj6Yh8U4TDA9UA5FPicqDz/xgRPWRSYIQNiFks21TbA9KQ==",
       "license": "MIT",
-      "peer": true,
       "dependencies": {
         "chokidar": "^4.0.0",
@@ -5703,4 +5746,5 @@
       "integrity": "sha512-Gn/JaSk/Mt9gYubxTtSn/QCV4em9mpAPiR1rqy/Ocu19u/G9J5WWdNoUT4SiV6mFC3y6cxyFcFwdzPM3FgxGAQ==",
       "license": "MIT",
+      "peer": true,
       "dependencies": {
         "@types/json-schema": "^7.0.9",
@@ -5739,4 +5783,5 @@
       "integrity": "sha512-YCS/JNFAUyr5vAuhk1DWm1CBxRHW9LbJ2ozWeemrIqpbsqKjHVxYPyi5GC0rjZIT5JxJ3virVTS8wk4i/Z+krw==",
       "license": "MIT",
+      "peer": true,
       "dependencies": {
         "fast-deep-equal": "^3.1.3"
@@ -5750,5 +5795,6 @@
       "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
       "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==",
-      "license": "MIT"
+      "license": "MIT",
+      "peer": true
     },
     "node_modules/semver": {
@@ -5770,4 +5816,5 @@
       "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==",
       "license": "BSD-3-Clause",
+      "peer": true,
       "dependencies": {
         "randombytes": "^2.1.0"
@@ -5837,4 +5884,5 @@
       "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
       "license": "BSD-3-Clause",
+      "peer": true,
       "engines": {
         "node": ">=0.10.0"
@@ -5855,4 +5903,5 @@
       "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==",
       "license": "MIT",
+      "peer": true,
       "dependencies": {
         "buffer-from": "^1.0.0",
@@ -6075,4 +6124,5 @@
       "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==",
       "license": "MIT",
+      "peer": true,
       "engines": {
         "node": ">=6"
@@ -6084,4 +6134,5 @@
       "integrity": "sha512-yEPUmWve+VA78bI71BW70Dh0TuV4HHd+I5SHOAfS1+QBOmvmCiiffgjR8ryyEd3KIfvPGFqoADt8LdQ6XpXIvg==",
       "license": "BSD-2-Clause",
+      "peer": true,
       "dependencies": {
         "@jridgewell/source-map": "^0.3.3",
@@ -6102,4 +6153,5 @@
       "integrity": "sha512-vkZjpUjb6OMS7dhV+tILUW6BhpDR7P2L/aQSAv+Uwk+m8KATX9EccViHTJR2qDtACKPIYndLGCyl3FMo+r2LMw==",
       "license": "MIT",
+      "peer": true,
       "dependencies": {
         "@jridgewell/trace-mapping": "^0.3.25",
@@ -6135,5 +6187,6 @@
       "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
       "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==",
-      "license": "MIT"
+      "license": "MIT",
+      "peer": true
     },
     "node_modules/tinybench": {
@@ -6256,4 +6309,5 @@
       "dev": true,
       "license": "MIT",
+      "peer": true,
       "engines": {
         "node": ">=18.12"
@@ -6315,5 +6369,6 @@
       "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz",
       "integrity": "sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==",
-      "license": "MIT"
+      "license": "MIT",
+      "peer": true
     },
     "node_modules/unicorn-magic": {
@@ -6393,5 +6448,4 @@
       "dev": true,
       "license": "MIT",
-      "peer": true,
       "dependencies": {
         "esbuild": "^0.24.2",
@@ -6584,5 +6638,4 @@
       "dev": true,
       "license": "MIT",
-      "peer": true,
       "dependencies": {
         "@vitest/expect": "3.0.3",
@@ -6657,5 +6710,4 @@
       "integrity": "sha512-wmeiSMxkZCSc+PM2w2VRsOYAZC8GdipNFRTsLSfodVqI9mbejKeXEGr8SckuLnrQPGe3oJN5c3K0vpoU9q/wCQ==",
       "license": "MIT",
-      "peer": true,
       "dependencies": {
         "@vue/compiler-dom": "3.5.13",
@@ -6870,4 +6922,5 @@
       "integrity": "sha512-TnbFSbcOCcDgjZ4piURLCbJ3nJhznVh9kw6F6iokjiFPl8ONxe9A6nMDVXDiNbrSfLILs6vB07F7wLBrwPYzJw==",
       "license": "MIT",
+      "peer": true,
       "dependencies": {
         "glob-to-regexp": "^0.4.1",
@@ -6893,4 +6946,5 @@
       "integrity": "sha512-lQ3CPiSTpfOnrEGeXDwoq5hIGzSjmwD72GdfVzF7CQAI7t47rJG9eDWvcEkEn3CUQymAElVvDg3YNTlCYj+qUQ==",
       "license": "MIT",
+      "peer": true,
       "dependencies": {
         "@types/eslint-scope": "^3.7.7",
@@ -6940,4 +6994,5 @@
       "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==",
       "license": "MIT",
+      "peer": true,
       "engines": {
         "node": ">=10.13.0"
@@ -6949,4 +7004,5 @@
       "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==",
       "license": "BSD-2-Clause",
+      "peer": true,
       "dependencies": {
         "esrecurse": "^4.3.0",
@@ -6962,4 +7018,5 @@
       "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==",
       "license": "BSD-2-Clause",
+      "peer": true,
       "engines": {
         "node": ">=4.0"
Index: ReserveNGo-frontend/src/components/Project/Customer/EditReservationModal.vue
===================================================================
--- ReserveNGo-frontend/src/components/Project/Customer/EditReservationModal.vue	(revision 2be93d21c7af6b3d88433242e73e6c8075d49c83)
+++ ReserveNGo-frontend/src/components/Project/Customer/EditReservationModal.vue	(revision a77580843ab09ab748ba1f7eca10ca48c82d4aca)
@@ -1,6 +1,5 @@
 <script setup>
-import { ref, computed, watch, onMounted } from 'vue'
+import { ref, computed, onBeforeMount } from 'vue'
 import BaseModal from '@/components/Project/Utility/GeneralModal.vue'
-import { useTables } from '@/repository/Tables.ts'
 import { useReservations } from '@/repository/Reservations.ts'
 import { useToasts } from '@/composables/useToast.js'
@@ -21,9 +20,8 @@
 const { showToast } = useToasts()
 
-const availableTables = ref([])
-const selectedTableId = ref(null)
 const timeOfReservation = ref('')
+const capacity = ref(null)
+const description = ref('')
 const loading = ref(false)
-const loadingTables = ref(false)
 const submitting = ref(false)
 
@@ -34,33 +32,5 @@
 
 const canSubmit = computed(() => {
-  return !!props.reservation.id && !!timeOfReservation.value && selectedTableId.value !== null
-})
-
-async function loadTables() {
-  console.log("WHAT IS RESERVATION HERE", props.reservation)
-  if (!timeOfReservation.value) return
-  try {
-    loadingTables.value = true
-    const tables = await useTables.getAvailableTables(
-      props.reservation.id,
-      normalizeDateTime(timeOfReservation.value),
-    )
-    availableTables.value = Array.isArray(tables) ? tables : []
-    if (
-      selectedTableId.value &&
-      !availableTables.value.some((t) => String(t.id) === String(selectedTableId.value))
-    ) {
-      selectedTableId.value = null
-    }
-  } catch (err) {
-    console.error(err)
-    availableTables.value = []
-  } finally {
-    loadingTables.value = false
-  }
-}
-
-watch(timeOfReservation, async (newVal) => {
-  if (newVal) await loadTables()
+  return !!props.reservation.id && !!timeOfReservation.value
 })
 
@@ -71,5 +41,6 @@
     const payload = {
       timeOfReservation: normalizeDateTime(timeOfReservation.value),
-      tableId: String(selectedTableId.value),
+      capacity: capacity.value,
+      description: description.value,
     }
     const res = await useReservations.editReservation(props.reservation.id, payload)
@@ -85,4 +56,25 @@
   }
 }
+onBeforeMount(async () => {
+  if (!props.reservation?.id) return
+
+  try {
+    loading.value = true
+
+    const data = await useReservations.getReservationDetails(props.reservation.id)
+
+    timeOfReservation.value = data.timeOfReservation
+      ? data.timeOfReservation.slice(0, 16) // required for datetime-local
+      : ''
+
+    capacity.value = data.capacity ?? null
+    description.value = data.description ?? ''
+  } catch (err) {
+    console.error(err)
+    showToast('Failed to load reservation details.', 'error')
+  } finally {
+    loading.value = false
+  }
+})
 </script>
 
@@ -97,23 +89,12 @@
         <input type="datetime-local" v-model="timeOfReservation" />
       </label>
-
-      <div class="form-row">
-        <span>Available tables</span>
-        <div v-if="loadingTables">Loading tables...</div>
-        <div v-else>
-          <select v-model="selectedTableId">
-            <option :value="null" disabled>Select a table</option>
-            <option v-for="t in availableTables" :key="t.id" :value="t.id">
-              Table #{{ t.tableNumber ?? t.number ?? t.id }} (cap: {{ t.capacity ?? '-' }})
-            </option>
-          </select>
-          <div
-            v-if="!loadingTables && availableTables.length === 0 && timeOfReservation"
-            class="hint"
-          >
-            No tables for the chosen time.
-          </div>
-        </div>
-      </div>
+      <label class="form-row">
+        <span>Reservation for how many people?</span>
+        <input type="number" min="1" placeholder="eg. 4" v-model="capacity" />
+      </label>
+      <label class="form-row">
+        <span>Additional comments (optional)</span>
+        <input type="text" placeholder="eg. Outside table" v-model="description" />
+      </label>
     </div>
 
@@ -164,8 +145,5 @@
   cursor: pointer;
 }
-.hint {
-  color: #b45309;
-  font-size: 0.9rem;
-}
+
 select,
 input[type='datetime-local'] {
Index: ReserveNGo-frontend/src/components/Project/Customer/makeReservationModal.vue
===================================================================
--- ReserveNGo-frontend/src/components/Project/Customer/makeReservationModal.vue	(revision 2be93d21c7af6b3d88433242e73e6c8075d49c83)
+++ ReserveNGo-frontend/src/components/Project/Customer/makeReservationModal.vue	(revision a77580843ab09ab748ba1f7eca10ca48c82d4aca)
@@ -1,6 +1,5 @@
 <script setup>
-import { ref, computed, watch } from 'vue'
+import { ref, computed } from 'vue'
 import BaseModal from '@/components/Project/Utility/GeneralModal.vue'
-import { useTables } from '@/repository/Tables.ts'
 import { useReservations } from '@/repository/Reservations.ts'
 import { useToasts } from '@/composables/useToast.js'
@@ -19,7 +18,5 @@
 const reservationDateTime = ref('')
 const capacity = ref(null)
-const availableTables = ref([])
-const selectedTableId = ref(null)
-const loadingTables = ref(false)
+const description = ref('')
 const submitting = ref(false)
 const loadError = ref(null)
@@ -32,30 +29,5 @@
 
 const canSubmit = computed(() => {
-  return !!props.localId && !!reservationDateTime.value && selectedTableId.value !== null
-})
-
-// Fetch tables when date-time changes
-watch(reservationDateTime, async (newVal) => {
-  availableTables.value = []
-  selectedTableId.value = null
-  loadError.value = null
-  console.log("NEW VALUE", props.localId)
-  if (!newVal || !props.localId) return
-  try {
-    console.log("DOES IT GET HERE.")
-    loadingTables.value = true
-    // Use the raw datetime-local string for LocalDateTime parsing on backend
-    const tables = await useTables.getAvailableTables(props.localId, normalizeDateTime(newVal))
-    availableTables.value = Array.isArray(tables) ? tables : []
-    if (availableTables.value.length === 0) {
-      showToast('No tables available for the selected time.', 'error')
-    }
-  } catch (err) {
-    console.error(err)
-    loadError.value = err?.response?.message || 'Failed to load available tables.'
-    showToast(loadError.value, 'error')
-  } finally {
-    loadingTables.value = false
-  }
+  return !!props.localId && !!reservationDateTime.value
 })
 
@@ -64,13 +36,10 @@
   try {
     submitting.value = true
-    const selected = availableTables.value.find(t => String(t.id) === String(selectedTableId.value))
     const payload = {
-      localId: props.localId,
       timeOfReservation: normalizeDateTime(reservationDateTime.value),
-      tableId: String(selectedTableId.value || ''),
-      tableNumber: selected?.tableNumber,
-      capacity: capacity.value ?? selected?.capacity,
+      capacity: capacity.value,
+      description: description.value
     }
-    const res = await useReservations.makeReservation(payload)
+    const res = await useReservations.makeReservation(payload, props.localId)
     showToast('Reservation created successfully.', 'success')
     emit('reservationMade', res)
@@ -89,6 +58,4 @@
   reservationDateTime.value = ''
   capacity.value = null
-  availableTables.value = []
-  selectedTableId.value = null
   loadError.value = null
 }
@@ -97,37 +64,21 @@
 <template>
   <BaseModal :show="props.showModal" @close="emit('closeModal')">
-    <h2 style="margin-bottom: 1rem;">Make a Reservation</h2>
+    <h2 style="margin-bottom: 1rem">Make a Reservation</h2>
 
     <div class="form-grid">
       <label class="form-row">
         <span>Date and time</span>
-        <input
-          type="datetime-local"
-          v-model="reservationDateTime"
-          :max="''"
-          required
-        />
+        <input type="datetime-local" v-model="reservationDateTime" :max="''" required />
       </label>
 
       <label class="form-row">
-        <span>Capacity (optional)</span>
-        <input type="number" min="1" v-model.number="capacity" placeholder="e.g. 4" />
+        <span>Reservation for how many people?</span>
+        <input type="number" min="1" v-model.number="capacity" placeholder="eg. 4" />
       </label>
 
-      <div class="form-row">
-        <span>Available tables</span>
-        <div v-if="loadingTables">Loading tables...</div>
-        <div v-else>
-          <select v-model="selectedTableId">
-            <option :value="null" disabled>Select a table</option>
-            <option v-for="t in availableTables" :key="t.id" :value="t.id">
-              Table #{{ t.tableNumber ?? t.number ?? t.id }} (cap: {{ t.capacity ?? '-' }})
-            </option>
-          </select>
-          <div v-if="!loadingTables && availableTables.length === 0 && reservationDateTime" class="hint">
-            No tables for the chosen time.
-          </div>
-        </div>
-      </div>
+      <label class="form-row">
+        <span>Additional comments (optional)</span>
+        <input type="text" v-model.number="description" placeholder="eg. Outside table" />
+      </label>
     </div>
 
@@ -178,6 +129,11 @@
   cursor: pointer;
 }
-.hint { color: #b45309; font-size: 0.9rem; }
-select, input[type='datetime-local'], input[type='number'] {
+.hint {
+  color: #b45309;
+  font-size: 0.9rem;
+}
+select,
+input[type='datetime-local'],
+input[type='number'] {
   padding: 0.45rem 0.5rem;
   border: 1px solid #cbd5e1;
Index: ReserveNGo-frontend/src/components/Project/Reservation/reservation_.vue
===================================================================
--- ReserveNGo-frontend/src/components/Project/Reservation/reservation_.vue	(revision 2be93d21c7af6b3d88433242e73e6c8075d49c83)
+++ ReserveNGo-frontend/src/components/Project/Reservation/reservation_.vue	(revision a77580843ab09ab748ba1f7eca10ca48c82d4aca)
@@ -56,5 +56,6 @@
       if (status === 'CONFIRMED') return 'bg-success'
       if (status === 'PENDING') return 'bg-warning text-dark'
-      if (status === 'CANCELLED') return 'bg-secondary'
+      if (status === 'CANCELLED') return 'bg-danger'
+      if (status === 'EXPIRED') return 'bg-secondary'
       return 'bg-info'
     },
@@ -64,20 +65,23 @@
 
 <template>
-
   <div class="card shadow-sm mb-3">
     <div class="card-body d-flex align-items-center gap-3">
-      <img :src="logoUrl" alt="logo" class="rounded" style="width:64px;height:64px;object-fit:cover" />
+      <img
+        :src="logoUrl"
+        alt="logo"
+        class="rounded"
+        style="width: 64px; height: 64px; object-fit: cover"
+      />
       <div class="flex-grow-1">
         <div class="d-flex align-items-center justify-content-between flex-wrap gap-2">
           <h5 class="mb-0">{{ reservation.localName }}</h5>
-          <span class="badge" :class="statusBadgeClass">{{ reservation.status }}</span>
         </div>
         <div class="text-muted small mt-1">
           <span class="me-3"><i class="far fa-clock me-1"></i>{{ formattedDateTime }}</span>
-          <span class="me-3"><i class="fas fa-chair me-1"></i>Table {{ reservation.tableNumber }}</span>
-          <span><i class="fas fa-users me-1"></i>{{ reservation.capacity }} seats</span>
+          <span><i class="fas fa-users me-1"></i>For {{ reservation.capacity }} people</span>
         </div>
       </div>
       <div class="ms-auto d-flex align-items-center gap-2">
+        <span class="badge" :class="statusBadgeClass">{{ reservation.status }}</span>
         <template v-if="selectionMode && isActive">
           <div class="form-check m-0">
Index: ReserveNGo-frontend/src/repository/LocalWorker.ts
===================================================================
--- ReserveNGo-frontend/src/repository/LocalWorker.ts	(revision 2be93d21c7af6b3d88433242e73e6c8075d49c83)
+++ ReserveNGo-frontend/src/repository/LocalWorker.ts	(revision a77580843ab09ab748ba1f7eca10ca48c82d4aca)
@@ -10,5 +10,4 @@
   customerId?: number | string
   timeOfReservation: string
-  tableNumber: number
   tableCapacity: number
   reservationStatus: ReservationStatus
@@ -26,13 +25,13 @@
   }
 
-  acceptReservation(reservationId): Promise<any> {
+  acceptReservation(reservationId: number): Promise<any> {
     return this.httpClient.put(`reservations/${reservationId}/accept`)
   }
 
-  denyReservation(reservationId): Promise<any> {
+  denyReservation(reservationId: number): Promise<any> {
     return this.httpClient.put(`reservations/${reservationId}/deny`)
   }
 
-  finishReservation(reservationId): Promise<any> {
+  finishReservation(reservationId: number): Promise<any> {
     return this.httpClient.put(`reservations/${reservationId}/finish`)
   }
Index: ReserveNGo-frontend/src/repository/Reservations.ts
===================================================================
--- ReserveNGo-frontend/src/repository/Reservations.ts	(revision 2be93d21c7af6b3d88433242e73e6c8075d49c83)
+++ ReserveNGo-frontend/src/repository/Reservations.ts	(revision a77580843ab09ab748ba1f7eca10ca48c82d4aca)
@@ -5,9 +5,7 @@
 
 export type CreateReservationDTO = {
-  localId: number | string
   timeOfReservation: string // ISO string
-  tableId: number | string
-  tableNumber?: number
-  capacity?: number
+  capacity: number
+  description?: string
 }
 
@@ -20,17 +18,16 @@
 export type DisplayReservationDTO = {
   id?: number | string
-  localId?: number | string
   localName: string
   localLogo: string | null
   timeOfReservation: string
-  tableNumber: number
   capacity: number
+  description?: string
   status: ReservationStatus
-  tableId?: number | string
 }
 
 export type EditReservationDTO = {
   timeOfReservation: string // ISO string
-  tableId: number | string
+  capacity: number
+  description: string
 }
 
@@ -47,6 +44,6 @@
 
   // POST /api/reservations/make-reservation
-  makeReservation(dto: CreateReservationDTO): Promise<any> {
-    return this.httpClient.post('create', dto)
+  makeReservation( dto: CreateReservationDTO, localId: number ): Promise<any> {
+    return this.httpClient.post(`${localId}/create`, dto)
   }
 
@@ -74,9 +71,4 @@
   }
 
-  // GET /api/reservations/{id}/edit-info
-  getEditReservationInfo(reservationId: number | string): Promise<any> {
-    return this.httpClient.get(`${reservationId}/edit-info`)
-  }
-
   // DELETE /api/customer/reservations/delete
   deleteReservations(dto: DeleteReservationDTO): Promise<void> {
Index: serveNGo-frontend/src/repository/Tables.ts
===================================================================
--- ReserveNGo-frontend/src/repository/Tables.ts	(revision 2be93d21c7af6b3d88433242e73e6c8075d49c83)
+++ 	(revision )
@@ -1,24 +1,0 @@
-import { config } from '@/constants/Api_config'
-import { HttpClient } from '@/Api_Classes/HttpClient'
-
-const BASE_API_URL = config.API_BASE_URL
-
-class TablesRepository {
-  private readonly httpClient: HttpClient
-
-  constructor(baseUrl: string) {
-    this.httpClient = new HttpClient(baseUrl)
-  }
-
-  // GET /api/tables?localId=...&reservationTime=...
-  getAvailableTables(localId: number | string, reservationTimeIso: string): Promise<any[]> {
-    return this.httpClient.get(undefined, {
-      queryParams: {
-        localId: String(localId),
-        reservationTime: reservationTimeIso,
-      },
-    })
-  }
-}
-
-export const useTables = new TablesRepository(BASE_API_URL + '/api/tables')
