diff --git a/android/app/.cxx/Debug/k6q1g3c4/arm64-v8a/configure_fingerprint.bin b/android/app/.cxx/Debug/k6q1g3c4/arm64-v8a/configure_fingerprint.bin
index 1d87a76..8a104e2 100644
--- a/android/app/.cxx/Debug/k6q1g3c4/arm64-v8a/configure_fingerprint.bin
+++ b/android/app/.cxx/Debug/k6q1g3c4/arm64-v8a/configure_fingerprint.bin
@@ -2,27 +2,27 @@ C/C++ Structured Logz
 x
 v/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/arm64-v8a/additional_project_files.txtC
 A
-?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint	î²©ŸÖ2 ž•‚ŽÑ2w
+?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint	³ûÛÌÖ2 ž•‚ŽÑ2w
 u
-s/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/arm64-v8a/android_gradle_build.json	î²©ŸÖ2Í Ç•‚ŽÑ2|
+s/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/arm64-v8a/android_gradle_build.json	³ûÛÌÖ2Í Ç•‚ŽÑ2|
 z
-x/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/arm64-v8a/android_gradle_build_mini.json	î²©ŸÖ2æ ò•‚ŽÑ2i
+x/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/arm64-v8a/android_gradle_build_mini.json	³ûÛÌÖ2æ ò•‚ŽÑ2i
 g
-e/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/arm64-v8a/build.ninja	î²©ŸÖ2 º ¾”‚ŽÑ2m
+e/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/arm64-v8a/build.ninja	³ûÛÌÖ2 º ¾”‚ŽÑ2m
 k
-i/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/arm64-v8a/build.ninja.txt	î²©ŸÖ2r
+i/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/arm64-v8a/build.ninja.txt	³ûÛÌÖ2r
 p
-n/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/arm64-v8a/build_file_index.txt	î²©ŸÖ2
^ ô•‚ŽÑ2s
+n/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/arm64-v8a/build_file_index.txt	³ûÛÌÖ2
^ ô•‚ŽÑ2s
 q
-o/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/arm64-v8a/compile_commands.json	î²©ŸÖ2w
+o/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/arm64-v8a/compile_commands.json	³ûÛÌÖ2w
 u
-s/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/arm64-v8a/compile_commands.json.bin	î²©ŸÖ2	}
+s/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/arm64-v8a/compile_commands.json.bin	³ûÛÌÖ2	}
 {
-y/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/arm64-v8a/metadata_generation_command.txt	î²©ŸÖ2
+y/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/arm64-v8a/metadata_generation_command.txt	³ûÛÌÖ2
 Ã ô•‚ŽÑ2p
 n
-l/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/arm64-v8a/prefab_config.json	î²©ŸÖ2
( ô•‚ŽÑ2u
+l/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/arm64-v8a/prefab_config.json	³ûÛÌÖ2
( ô•‚ŽÑ2u
 s
-q/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/arm64-v8a/symbol_folder_index.txt	î²©ŸÖ2
h ô•‚ŽÑ2b
+q/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/arm64-v8a/symbol_folder_index.txt	³ûÛÌÖ2
h ô•‚ŽÑ2b
 `
-^/home/patrick/fvm/versions/3.29.0/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txt	î²©ŸÖ2
¤ ˆÈ¼�Ñ2
\ No newline at end of file
+^/home/patrick/fvm/versions/3.29.0/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txt	³ûÛÌÖ2
¤ ˆÈ¼�Ñ2
\ No newline at end of file
diff --git a/android/app/.cxx/Debug/k6q1g3c4/armeabi-v7a/configure_fingerprint.bin b/android/app/.cxx/Debug/k6q1g3c4/armeabi-v7a/configure_fingerprint.bin
index 23dfed3..cb3e68c 100644
--- a/android/app/.cxx/Debug/k6q1g3c4/armeabi-v7a/configure_fingerprint.bin
+++ b/android/app/.cxx/Debug/k6q1g3c4/armeabi-v7a/configure_fingerprint.bin
@@ -2,27 +2,27 @@ C/C++ Structured Log|
 z
 x/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/armeabi-v7a/additional_project_files.txtC
 A
-?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint	´³©ŸÖ2 Åî‚ŽÑ2y
+?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint	¦üÛÌÖ2 Åî‚ŽÑ2y
 w
-u/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/armeabi-v7a/android_gradle_build.json	´³©ŸÖ2Ñ Æî‚ŽÑ2~
+u/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/armeabi-v7a/android_gradle_build.json	§üÛÌÖ2Ñ Æî‚ŽÑ2~
 |
-z/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/armeabi-v7a/android_gradle_build_mini.json	´³©ŸÖ2ê Çî‚ŽÑ2k
+z/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/armeabi-v7a/android_gradle_build_mini.json	§üÛÌÖ2ê Çî‚ŽÑ2k
 i
-g/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/armeabi-v7a/build.ninja	´³©ŸÖ2ªº ¼î‚ŽÑ2o
+g/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/armeabi-v7a/build.ninja	§üÛÌÖ2ªº ¼î‚ŽÑ2o
 m
-k/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/armeabi-v7a/build.ninja.txt	´³©ŸÖ2t
+k/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/armeabi-v7a/build.ninja.txt	§üÛÌÖ2t
 r
-p/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/armeabi-v7a/build_file_index.txt	´³©ŸÖ2
^ Èî‚ŽÑ2u
+p/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/armeabi-v7a/build_file_index.txt	§üÛÌÖ2
^ Èî‚ŽÑ2u
 s
-q/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/armeabi-v7a/compile_commands.json	´³©ŸÖ2y
+q/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/armeabi-v7a/compile_commands.json	§üÛÌÖ2y
 w
-u/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/armeabi-v7a/compile_commands.json.bin	´³©ŸÖ2	
+u/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/armeabi-v7a/compile_commands.json.bin	§üÛÌÖ2	
 }
-{/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/armeabi-v7a/metadata_generation_command.txt	´³©ŸÖ2
+{/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/armeabi-v7a/metadata_generation_command.txt	§üÛÌÖ2
 Í Èî‚ŽÑ2r
 p
-n/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/armeabi-v7a/prefab_config.json	´³©ŸÖ2
( Èî‚ŽÑ2w
+n/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/armeabi-v7a/prefab_config.json	§üÛÌÖ2
( Èî‚ŽÑ2w
 u
-s/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/armeabi-v7a/symbol_folder_index.txt	´³©ŸÖ2
j Èî‚ŽÑ2b
+s/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/armeabi-v7a/symbol_folder_index.txt	§üÛÌÖ2
j Èî‚ŽÑ2b
 `
-^/home/patrick/fvm/versions/3.29.0/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txt	´³©ŸÖ2
¤ ˆÈ¼�Ñ2
\ No newline at end of file
+^/home/patrick/fvm/versions/3.29.0/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txt	§üÛÌÖ2
¤ ˆÈ¼�Ñ2
\ No newline at end of file
diff --git a/android/app/.cxx/Debug/k6q1g3c4/x86/configure_fingerprint.bin b/android/app/.cxx/Debug/k6q1g3c4/x86/configure_fingerprint.bin
index b136a8c..5a75711 100644
--- a/android/app/.cxx/Debug/k6q1g3c4/x86/configure_fingerprint.bin
+++ b/android/app/.cxx/Debug/k6q1g3c4/x86/configure_fingerprint.bin
@@ -2,27 +2,27 @@ C/C++ Structured Logt
 r
 p/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86/additional_project_files.txtC
 A
-?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint	ä³©ŸÖ2 –ð‚ŽÑ2q
+?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint	ÆüÛÌÖ2 –ð‚ŽÑ2q
 o
-m/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86/android_gradle_build.json	ä³©ŸÖ2Á ˜ð‚ŽÑ2v
+m/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86/android_gradle_build.json	ÆüÛÌÖ2Á ˜ð‚ŽÑ2v
 t
-r/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86/android_gradle_build_mini.json	ä³©ŸÖ2Ú šð‚ŽÑ2c
+r/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86/android_gradle_build_mini.json	ÆüÛÌÖ2Ú šð‚ŽÑ2c
 a
-_/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86/build.ninja	ä³©ŸÖ2‚º Žð‚ŽÑ2g
+_/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86/build.ninja	ÆüÛÌÖ2‚º Žð‚ŽÑ2g
 e
-c/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86/build.ninja.txt	å³©ŸÖ2l
+c/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86/build.ninja.txt	ÆüÛÌÖ2l
 j
-h/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86/build_file_index.txt	å³©ŸÖ2
^ ›ð‚ŽÑ2m
+h/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86/build_file_index.txt	ÆüÛÌÖ2
^ ›ð‚ŽÑ2m
 k
-i/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86/compile_commands.json	å³©ŸÖ2q
+i/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86/compile_commands.json	ÆüÛÌÖ2q
 o
-m/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86/compile_commands.json.bin	å³©ŸÖ2	w
+m/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86/compile_commands.json.bin	ÆüÛÌÖ2	w
 u
-s/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86/metadata_generation_command.txt	å³©ŸÖ2
+s/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86/metadata_generation_command.txt	ÆüÛÌÖ2
 ¥ ›ð‚ŽÑ2j
 h
-f/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86/prefab_config.json	å³©ŸÖ2
( ›ð‚ŽÑ2o
+f/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86/prefab_config.json	ÆüÛÌÖ2
( ›ð‚ŽÑ2o
 m
-k/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86/symbol_folder_index.txt	å³©ŸÖ2
b ›ð‚ŽÑ2b
+k/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86/symbol_folder_index.txt	ÆüÛÌÖ2
b ›ð‚ŽÑ2b
 `
-^/home/patrick/fvm/versions/3.29.0/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txt	å³©ŸÖ2
¤ ˆÈ¼�Ñ2
\ No newline at end of file
+^/home/patrick/fvm/versions/3.29.0/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txt	ÆüÛÌÖ2
¤ ˆÈ¼�Ñ2
\ No newline at end of file
diff --git a/android/app/.cxx/Debug/k6q1g3c4/x86_64/configure_fingerprint.bin b/android/app/.cxx/Debug/k6q1g3c4/x86_64/configure_fingerprint.bin
index 8a8fd73..a462a68 100644
--- a/android/app/.cxx/Debug/k6q1g3c4/x86_64/configure_fingerprint.bin
+++ b/android/app/.cxx/Debug/k6q1g3c4/x86_64/configure_fingerprint.bin
@@ -2,27 +2,27 @@ C/C++ Structured Logw
 u
 s/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86_64/additional_project_files.txtC
 A
-?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint	ý³©ŸÖ2 ßñ‚ŽÑ2t
+?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint	ØüÛÌÖ2 ßñ‚ŽÑ2t
 r
-p/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86_64/android_gradle_build.json	ý³©ŸÖ2Ç àñ‚ŽÑ2y
+p/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86_64/android_gradle_build.json	ØüÛÌÖ2Ç àñ‚ŽÑ2y
 w
-u/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86_64/android_gradle_build_mini.json	ý³©ŸÖ2à áñ‚ŽÑ2f
+u/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86_64/android_gradle_build_mini.json	ØüÛÌÖ2à áñ‚ŽÑ2f
 d
-b/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86_64/build.ninja	ý³©ŸÖ2‘º Úñ‚ŽÑ2j
+b/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86_64/build.ninja	ØüÛÌÖ2‘º Úñ‚ŽÑ2j
 h
-f/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86_64/build.ninja.txt	ý³©ŸÖ2o
+f/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86_64/build.ninja.txt	ØüÛÌÖ2o
 m
-k/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86_64/build_file_index.txt	ý³©ŸÖ2
^ âñ‚ŽÑ2p
+k/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86_64/build_file_index.txt	ØüÛÌÖ2
^ âñ‚ŽÑ2p
 n
-l/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86_64/compile_commands.json	ý³©ŸÖ2t
+l/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86_64/compile_commands.json	ØüÛÌÖ2t
 r
-p/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86_64/compile_commands.json.bin	ý³©ŸÖ2	z
+p/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86_64/compile_commands.json.bin	ØüÛÌÖ2	z
 x
-v/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86_64/metadata_generation_command.txt	ý³©ŸÖ2
+v/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86_64/metadata_generation_command.txt	ØüÛÌÖ2
 ´ âñ‚ŽÑ2m
 k
-i/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86_64/prefab_config.json	ý³©ŸÖ2
( âñ‚ŽÑ2r
+i/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86_64/prefab_config.json	ØüÛÌÖ2
( âñ‚ŽÑ2r
 p
-n/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86_64/symbol_folder_index.txt	ý³©ŸÖ2
e âñ‚ŽÑ2b
+n/home/patrick/Documents/WebApps/pharmacy_mobile/android/app/.cxx/Debug/k6q1g3c4/x86_64/symbol_folder_index.txt	ØüÛÌÖ2
e âñ‚ŽÑ2b
 `
-^/home/patrick/fvm/versions/3.29.0/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txt	ý³©ŸÖ2
¤ ˆÈ¼�Ñ2
\ No newline at end of file
+^/home/patrick/fvm/versions/3.29.0/packages/flutter_tools/gradle/src/main/groovy/CMakeLists.txt	ØüÛÌÖ2
¤ ˆÈ¼�Ñ2
\ No newline at end of file
diff --git a/lib/pages/add_category_page.dart b/lib/pages/add_category_page.dart
index 46566a2..1faa73a 100644
--- a/lib/pages/add_category_page.dart
+++ b/lib/pages/add_category_page.dart
@@ -5,6 +5,7 @@ import 'package:pharmacy_mobile/functions/checkexisting_function.dart';
 import 'package:pharmacy_mobile/tables/ref_categories.dart';
 import 'package:pharmacy_mobile/widgets/buttonwithprogress_widget.dart';
 import 'package:pharmacy_mobile/widgets/form_border_widget2.dart';
+import 'package:pharmacy_mobile/widgets/input_form_widget.dart';
 import 'package:pharmacy_mobile/widgets/input_widget.dart';
 import 'package:pharmacy_mobile/widgets/page_background_widget.dart';
 import 'package:pharmacy_mobile/widgets/snackbar_widget.dart';
@@ -92,7 +93,7 @@ class _AddCategoryPageState extends State<AddCategoryPage> {
                   child: Center(
                     child: Column(
                       children: [
-                        InputWidget(label: 'Category Name', controller: _categoryController),
+                        InputFormWidget(label: 'Category Name', controller: _categoryController),
                         const Gap(32),
                         // if (_isLoading)
                         //   const Center(child: CircularProgressIndicator(color: Colors.white))
diff --git a/lib/pages/add_generics_page.dart b/lib/pages/add_generics_page.dart
index a923145..e3b4072 100644
--- a/lib/pages/add_generics_page.dart
+++ b/lib/pages/add_generics_page.dart
@@ -8,6 +8,7 @@ import 'package:pharmacy_mobile/widgets/buttonwithprogress_widget.dart';
 import 'package:pharmacy_mobile/widgets/dropdown_widget.dart';
 import 'package:pharmacy_mobile/widgets/dropdown_wrappermulti_widget.dart';
 import 'package:pharmacy_mobile/widgets/form_border_widget2.dart';
+import 'package:pharmacy_mobile/widgets/input_form_widget.dart';
 import 'package:pharmacy_mobile/widgets/input_widget.dart';
 import 'package:pharmacy_mobile/widgets/page_background_widget.dart';
 import 'package:pharmacy_mobile/widgets/snackbar_widget.dart';
@@ -157,7 +158,7 @@ class _AddGenericsPageState extends State<AddGenericsPage> {
                   child: DropdownWrapperMultiWidget(list: _categoryList, text: 'List', children: [
                     Column(
                       children: [
-                        InputWidget(label: 'Name', controller: _nameController),
+                        InputFormWidget(label: 'Name', controller: _nameController),
                         const Gap(16),
                         DropDownWidget(
                           label: 'Category',
diff --git a/lib/pages/add_manufacturer.dart b/lib/pages/add_manufacturer.dart
index 7b9145c..a981d9c 100644
--- a/lib/pages/add_manufacturer.dart
+++ b/lib/pages/add_manufacturer.dart
@@ -7,6 +7,7 @@ import 'package:pharmacy_mobile/tables/ref_manufactorers.dart';
 import 'package:pharmacy_mobile/widgets/button_widget.dart';
 import 'package:pharmacy_mobile/widgets/buttonwithprogress_widget.dart';
 import 'package:pharmacy_mobile/widgets/form_border_widget2.dart';
+import 'package:pharmacy_mobile/widgets/input_form_widget.dart';
 import 'package:pharmacy_mobile/widgets/input_widget.dart';
 import 'package:pharmacy_mobile/widgets/page_background_widget.dart';
 import 'package:pharmacy_mobile/widgets/snackbar_widget.dart';
@@ -87,7 +88,7 @@ class _AddManufactorerPageState extends State<AddManufacturerPage> {
             ),
             const Gap(32),
             const TextWidget(
-              text: 'Add Manufactorer',
+              text: 'Add Manufacturer',
               title: true,
             ),
             const Gap(16),
@@ -97,9 +98,9 @@ class _AddManufactorerPageState extends State<AddManufacturerPage> {
                     key: _formKey,
                     child: Column(
                       children: [
-                        InputWidget(label: 'Name', controller: _nameController),
+                        InputFormWidget(label: 'Name', controller: _nameController),
                         const Gap(16),
-                        InputWidget(label: 'Address', controller: _addressController),
+                        InputFormWidget(label: 'Address', controller: _addressController),
                         const Gap(32),
                         // if (_isLoading)
                         //   const Center(child: CircularProgressIndicator(color: Colors.white))
diff --git a/lib/pages/add_medicine_page.dart b/lib/pages/add_medicine_page.dart
index a0afe4a..2ef494c 100644
--- a/lib/pages/add_medicine_page.dart
+++ b/lib/pages/add_medicine_page.dart
@@ -17,6 +17,7 @@ import 'package:pharmacy_mobile/widgets/dropdown_widget.dart';
 import 'package:pharmacy_mobile/widgets/dropdown_wrappermulti_widget.dart';
 import 'package:pharmacy_mobile/widgets/form_border_widget2.dart';
 import 'package:pharmacy_mobile/widgets/image_widget.dart';
+import 'package:pharmacy_mobile/widgets/input_form_widget.dart';
 import 'package:pharmacy_mobile/widgets/input_widget.dart';
 import 'package:pharmacy_mobile/widgets/page_background_widget.dart';
 import 'package:pharmacy_mobile/widgets/scanbarcode_widget.dart';
@@ -243,7 +244,7 @@ class _AddMedicinePageState extends State<AddMedicinePage> {
                       key: _formKey,
                       child: DropdownWrapperMultiWidget(list: _genericNameList, text: 'Data', children: [
                         Column(crossAxisAlignment: CrossAxisAlignment.start, children: [
-                          InputWidget(label: 'Name', controller: _nameController),
+                          InputFormWidget(label: 'Name', controller: _nameController),
                           const Gap(16),
                           DropDownWidget(
                             label: 'Generic Name',
@@ -271,7 +272,7 @@ class _AddMedicinePageState extends State<AddMedicinePage> {
                             onChanged: _updateManufactorer,
                           ),
                           const Gap(16),
-                          InputWidget(label: 'Barcode', controller: _barcodeController),
+                          InputFormWidget(label: 'Barcode', controller: _barcodeController),
                           ScanbarcodeWidget(onTap: _scanBarcode),
                           const Gap(16),
                           if (imageUrl.isNotEmpty)
diff --git a/lib/pages/add_stock_page.dart b/lib/pages/add_stock_page.dart
index e95f068..17cf949 100644
--- a/lib/pages/add_stock_page.dart
+++ b/lib/pages/add_stock_page.dart
@@ -12,6 +12,7 @@ import 'package:pharmacy_mobile/widgets/datepicker_widget.dart';
 import 'package:pharmacy_mobile/widgets/dropdown_widget.dart';
 import 'package:pharmacy_mobile/widgets/dropdown_wrappermulti_widget.dart';
 import 'package:pharmacy_mobile/widgets/form_border_widget2.dart';
+import 'package:pharmacy_mobile/widgets/input_form_widget.dart';
 import 'package:pharmacy_mobile/widgets/input_widget.dart';
 import 'package:pharmacy_mobile/widgets/page_background_widget.dart';
 import 'package:pharmacy_mobile/widgets/snackbar_widget.dart';
@@ -196,7 +197,7 @@ class _AddStockPageState extends State<AddStockPage> with WidgetsBindingObserver
                         ],
                       ),
                       const Gap(16),
-                      InputWidget(label: 'Quantity', controller: _quantityController),
+                      InputFormWidget(label: 'Quantity', controller: _quantityController),
                       const Gap(16),
                       DatePickerWidget(
                         label: 'Date Expiration',
diff --git a/lib/pages/add_type_page.dart b/lib/pages/add_type_page.dart
index 77a3d7f..6a25199 100644
--- a/lib/pages/add_type_page.dart
+++ b/lib/pages/add_type_page.dart
@@ -6,6 +6,7 @@ import 'package:pharmacy_mobile/tables/ref_types.dart';
 import 'package:pharmacy_mobile/widgets/button_widget.dart';
 import 'package:pharmacy_mobile/widgets/buttonwithprogress_widget.dart';
 import 'package:pharmacy_mobile/widgets/form_border_widget2.dart';
+import 'package:pharmacy_mobile/widgets/input_form_widget.dart';
 import 'package:pharmacy_mobile/widgets/input_widget.dart';
 import 'package:pharmacy_mobile/widgets/page_background_widget.dart';
 import 'package:pharmacy_mobile/widgets/snackbar_widget.dart';
@@ -96,7 +97,7 @@ class _AddTypePageState extends State<AddTypePage> {
                     child: Center(
                       child: Column(
                         children: [
-                          InputWidget(label: 'Type Name', controller: _typeController),
+                          InputFormWidget(label: 'Type Name', controller: _typeController),
                           const Gap(32),
                           // if (_isLoading)
                           //   const Center(child: CircularProgressIndicator(color: Colors.white))
diff --git a/lib/pages/delete_stock_page.dart b/lib/pages/delete_stock_page.dart
index 5c37d00..c395fd0 100644
--- a/lib/pages/delete_stock_page.dart
+++ b/lib/pages/delete_stock_page.dart
@@ -6,6 +6,7 @@ import 'package:pharmacy_mobile/widgets/button_widget.dart';
 import 'package:pharmacy_mobile/widgets/dropdown_widget.dart';
 import 'package:pharmacy_mobile/widgets/dropdown_wrappermulti_widget.dart';
 import 'package:pharmacy_mobile/widgets/form_border_widget2.dart';
+import 'package:pharmacy_mobile/widgets/input_form_widget.dart';
 import 'package:pharmacy_mobile/widgets/input_widget.dart';
 import 'package:pharmacy_mobile/widgets/page_background_widget.dart';
 import 'package:pharmacy_mobile/widgets/snackbar_widget.dart';
@@ -145,7 +146,7 @@ class _DeleteStockPageState extends State<DeleteStockPage> {
                       // value: _selectedStock,
                     ),
                     const Gap(16),
-                    InputWidget(label: 'Quantity', controller: _quantityController, onChanged: _setQuantity),
+                    InputFormWidget(label: 'Quantity', controller: _quantityController, onChanged: _setQuantity),
                     const Gap(32),
                     if (_noStock)
                       const WarningWidget(
diff --git a/lib/pages/login_page.dart b/lib/pages/login_page.dart
index 9a4de43..83dd961 100644
--- a/lib/pages/login_page.dart
+++ b/lib/pages/login_page.dart
@@ -1,12 +1,10 @@
 import 'package:flutter/material.dart';
-import 'package:flutter/services.dart';
-import 'package:glossy/glossy.dart';
 import 'package:go_router/go_router.dart';
 import 'package:gap/gap.dart';
 import 'package:pharmacy_mobile/auth/auth_service.dart';
 import 'package:pharmacy_mobile/widgets/buttonwithprogress_widget.dart';
 import 'package:pharmacy_mobile/widgets/glossy_container_widget.dart';
-import 'package:pharmacy_mobile/widgets/input_widget.dart';
+import 'package:pharmacy_mobile/widgets/input_form_widget.dart';
 import 'package:pharmacy_mobile/widgets/page_background_widget.dart';
 import 'package:pharmacy_mobile/widgets/snackbar_widget.dart';
 import 'package:pharmacy_mobile/widgets/text_widget.dart';
@@ -128,28 +126,23 @@ class _LoginPageState extends State<LoginPage> {
                 Padding(
                   padding: const EdgeInsets.only(left: 32, right: 32),
                   child: GlossyContainerWidget(
-                    height: containerHeight,
+                    // height: containerHeight,
                     child: Form(
                         child: Column(
                       children: [
-                        InputWidget(label: 'Email', controller: _emailController),
+                        InputFormWidget(label: 'Email', controller: _emailController),
                         const Gap(16),
-                        KeyboardListener(
-                          focusNode: _focusNode,
-                          onKeyEvent: (event) {
-                            if (event is KeyDownEvent && event.logicalKey == LogicalKeyboardKey.enter) {
-                              _signIn();
-                            }
+                        InputFormWidget(
+                          label: 'Password',
+                          controller: _passwordController,
+                          password: true,
+                          onSubmitted: (String password) {
+                            _signIn();
                           },
-                          child: InputWidget(
-                            label: 'Password',
-                            controller: _passwordController,
-                            password: true,
-                          ),
                         ),
                         const Gap(40),
                         ButtonWithProgressWidget(
-                            trigger: _isLoading, progressText: 'Logging In', buttonText: 'Login', onPressed: _signIn)
+                            trigger: _isLoading, progressText: 'Logging In', buttonText: 'Login', onPressed: _signIn),
                       ],
                     )),
                   ),
diff --git a/lib/pages/register_page.dart b/lib/pages/register_page.dart
index 31b7828..a1e6951 100644
--- a/lib/pages/register_page.dart
+++ b/lib/pages/register_page.dart
@@ -1,11 +1,10 @@
 import 'package:flutter/material.dart';
 import 'package:gap/gap.dart';
-import 'package:glossy/glossy.dart';
 import 'package:internet_connection_checker/internet_connection_checker.dart';
 import 'package:pharmacy_mobile/auth/auth_service.dart';
 import 'package:pharmacy_mobile/widgets/buttonwithprogress_widget.dart';
 import 'package:pharmacy_mobile/widgets/glossy_container_widget.dart';
-import 'package:pharmacy_mobile/widgets/input_widget.dart';
+import 'package:pharmacy_mobile/widgets/input_form_widget.dart';
 import 'package:pharmacy_mobile/widgets/page_background_widget.dart';
 import 'package:pharmacy_mobile/widgets/snackbar_widget.dart';
 import 'package:pharmacy_mobile/widgets/text_widget.dart';
@@ -108,81 +107,77 @@ class _RegisterPageState extends State<RegisterPage> {
   @override
   Widget build(BuildContext context) {
     return Scaffold(
-      body: PageBackgroundWidget(
-          page: 'register',
-          child: Center(
-            child: Column(
-              mainAxisAlignment: MainAxisAlignment.start,
-              children: [
-                const Gap(96),
-                const TitleWidget(
-                  firstTextSize: 14,
-                  secondTextSize: 24,
-                  logoSize: 90,
-                ),
-                const Gap(32),
-                const TextWidget(
-                  text: 'Register',
-                  title: true,
-                ),
-                const Gap(16),
-                Padding(
-                  padding: const EdgeInsets.only(left: 32, right: 32),
-                  child: GlossyContainerWidget(
-                    height: containerHeight,
-                    child: Form(
-                        child: Column(
-                      children: [
-                        InputWidget(label: 'Email', controller: _emailController),
-                        const Gap(16),
-                        InputWidget(
-                          label: 'Password',
-                          controller: _passwordController,
-                          password: true,
-                        ),
-                        const Gap(16),
-                        InputWidget(
-                          label: 'Confirm Password',
-                          controller: _confirmPasswordController,
-                          password: true,
-                        ),
-                        const Gap(40),
-                        // TextButton(onPressed: () => {_signIn()}, child: const Text('Login'))
-                        // if (_isLoading)
-                        //   const Center(child: CircularProgressIndicator(color: Colors.white))
-                        // else
-                        //   ButtonWidget(text: 'Create Account', onPressed: _signUp)
-                        ButtonWithProgressWidget(
-                            trigger: _isLoading,
-                            progressText: 'Registering',
-                            buttonText: 'Register',
-                            onPressed: _signUp)
-                      ],
-                    )),
-                  ),
-                ),
-                const Gap(16),
-                Row(
-                  mainAxisAlignment: MainAxisAlignment.center,
-                  children: [
-                    const TextWidget(
-                      text: "Already have an account?",
-                      size: 14,
-                    ),
-                    const Gap(8),
-                    GestureDetector(
-                      onTap: () => {context.push('/login')},
-                      child: const TextWidget(
-                        text: 'Login here',
-                        size: 14,
-                        underlined: true,
+        body: PageBackgroundWidget(
+            page: 'register',
+            child: Center(
+                child: Column(mainAxisAlignment: MainAxisAlignment.start, children: [
+              const Gap(96),
+              const TitleWidget(
+                firstTextSize: 14,
+                secondTextSize: 24,
+                logoSize: 90,
+              ),
+              const Gap(32),
+              const TextWidget(
+                text: 'Register',
+                title: true,
+              ),
+              const Gap(16),
+              Padding(
+                padding: const EdgeInsets.only(left: 32, right: 32),
+                child: GlossyContainerWidget(
+                  // height: containerHeight,
+                  child: Form(
+                      child: Column(
+                    children: [
+                      InputFormWidget(label: 'Email', controller: _emailController),
+                      const Gap(16),
+                      InputFormWidget(
+                        label: 'Password',
+                        controller: _passwordController,
+                        password: true,
+                        validator: (value) {
+                          if (value == null || value.isEmpty) {
+                            showNotification(context, 'Error: Please enter a password', false);
+                          }
+                          return null;
+                        },
                       ),
-                    )
-                  ],
-                )
-              ],
-            ),
-          )),
-    );
+                      const Gap(16),
+                      InputFormWidget(
+                        label: 'Confirm Password',
+                        controller: _confirmPasswordController,
+                        password: true,
+                        onSubmitted: (String? password) {
+                          _signUp();
+                        },
+                      ),
+                      const Gap(40),
+                      ButtonWithProgressWidget(
+                          trigger: _isLoading, progressText: 'Registering', buttonText: 'Register', onPressed: _signUp)
+                    ],
+                  )),
+                ),
+              ),
+              const Gap(16),
+              Row(
+                mainAxisAlignment: MainAxisAlignment.center,
+                children: [
+                  const TextWidget(
+                    text: "Already have an account?",
+                    size: 14,
+                  ),
+                  const Gap(8),
+                  GestureDetector(
+                    onTap: () => {context.push('/login')},
+                    child: const TextWidget(
+                      text: 'Login here',
+                      size: 14,
+                      underlined: true,
+                    ),
+                  )
+                ],
+              )
+            ]))));
   }
 }
diff --git a/lib/widgets/customized_pub/glossy_container.dart b/lib/widgets/customized_pub/glossy_container.dart
new file mode 100644
index 0000000..601044b
--- /dev/null
+++ b/lib/widgets/customized_pub/glossy_container.dart
@@ -0,0 +1,184 @@
+import 'dart:ui';
+import 'package:flutter/material.dart';
+
+class GlossyContainer extends StatelessWidget {
+  // final double? height; // Height of the container
+  final double width; // Width of the container
+  final BorderRadiusGeometry? borderRadius; // Border radius of the container
+  final Color? color; // Background color of the container
+  final double? opacity; // Opacity of the container
+  final Widget? child; // Child widget inside the container
+  final double? strengthX; // Strength of blur in the horizontal direction
+  final double? strengthY; // Strength of blur in the vertical direction
+  final BoxBorder? border; // Border of the container
+  final BlendMode? blendMode; // Blend mode for applying filter
+  final GlossyGradient? gradient; // Gradient of the container
+  final List<BoxShadow>? boxShadow; // Box shadows for the container
+  final DecorationImage? image; // Background image of the container
+  final double? imageOpacity;
+  final EdgeInsets? padding;
+  final EdgeInsets? margin;
+
+  const GlossyContainer(
+      {super.key,
+      // this.height,
+      required this.width,
+      this.margin,
+      this.padding,
+      this.opacity,
+      this.strengthX,
+      this.strengthY,
+      this.borderRadius,
+      this.border,
+      this.color,
+      this.blendMode,
+      this.gradient,
+      this.child,
+      this.image,
+      this.imageOpacity,
+      this.boxShadow});
+
+  @override
+  Widget build(BuildContext context) {
+    late Gradient gradientToApply; // Gradient to apply based on the type
+
+    // Check if the gradient is linear
+    if (gradient is GlossyLinearGradient) {
+      final GlossyLinearGradient glg = gradient as GlossyLinearGradient;
+      gradientToApply = glg.getLinearGradient(); // Get the linear gradient
+    }
+    // Check if the gradient is radial
+    if (gradient is GlossyRadialGradient) {
+      final GlossyRadialGradient glg = gradient as GlossyRadialGradient;
+      gradientToApply = glg.getRadialGradient(); // Get the radial gradient
+    }
+
+    return Container(
+      decoration: BoxDecoration(
+        boxShadow: boxShadow, // Apply box shadows
+        borderRadius: borderRadius, // Apply border radius
+      ),
+      child: ClipRRect(
+        borderRadius: borderRadius == null ? BorderRadius.circular(0) : borderRadius!,
+        child: Container(
+          // height: height,
+          width: width,
+          margin: margin,
+          padding: padding,
+          color: Colors.transparent,
+          child: Stack(children: [
+            // Apply backdrop filter for blurring effect
+            BackdropFilter(
+              blendMode: blendMode != null ? blendMode! : BlendMode.srcOver,
+              filter: ImageFilter.blur(
+                sigmaX: strengthX == null ? 15 : strengthX!,
+                sigmaY: strengthY == null ? 15 : strengthY!,
+              ),
+              child: Container(),
+            ),
+            Container(
+              // height: height,
+              width: width,
+              decoration: BoxDecoration(
+                boxShadow: boxShadow,
+                borderRadius: borderRadius,
+                border: border ??
+                    Border.all(
+                      color: Colors.white54,
+                      width: 0.5,
+                    ),
+                gradient: gradient == null
+                    ? LinearGradient(
+                        tileMode: TileMode.mirror,
+                        begin: Alignment.topLeft,
+                        end: Alignment.bottomRight,
+                        colors: [
+                            color == null
+                                ? const Color.fromARGB(255, 138, 137, 137).withValues(alpha: opacity ?? 0.15)
+                                : color!.withValues(alpha: opacity ?? 0.15),
+                            color == null
+                                ? const Color.fromARGB(255, 121, 120, 120).withValues(alpha: opacity ?? 0.15)
+                                : color!.withValues(alpha: opacity ?? 0.15),
+                          ])
+                    : gradientToApply,
+              ),
+            ),
+            // Apply background image if available
+            image != null
+                ? Opacity(
+                    opacity: imageOpacity == null ? 1 : imageOpacity!,
+                    child: Container(
+                      // height: height,
+                      width: width,
+                      decoration: BoxDecoration(image: image),
+                    ),
+                  )
+                : const SizedBox(),
+            Container(
+              child: child,
+            )
+          ]),
+        ),
+      ),
+    );
+  }
+}
+
+// Abstract class for defining glossy gradients
+abstract class GlossyGradient {
+  const GlossyGradient({required this.colors, required this.opacity});
+  final List<Color> colors;
+  final double opacity;
+}
+
+// Class for defining glossy linear gradients
+class GlossyLinearGradient extends GlossyGradient {
+  const GlossyLinearGradient({
+    this.begin = Alignment.centerLeft,
+    this.end = Alignment.centerRight,
+    required super.colors,
+    this.tileMode = TileMode.clamp,
+    required super.opacity,
+  });
+
+  final AlignmentGeometry begin;
+  final AlignmentGeometry end;
+  final TileMode tileMode;
+
+  // Get linear gradient
+  LinearGradient getLinearGradient() {
+    return LinearGradient(
+        colors: colors.map((e) => e.withValues(alpha: opacity)).toList(), begin: begin, end: end, tileMode: tileMode);
+  }
+}
+
+// Class for defining glossy radial gradients
+class GlossyRadialGradient extends GlossyGradient {
+  const GlossyRadialGradient({
+    this.center = Alignment.center,
+    this.radius = 0.5,
+    required super.colors,
+    required super.opacity,
+    this.tileMode = TileMode.clamp,
+    this.focal,
+    this.focalRadius = 0.0,
+  });
+  final AlignmentGeometry center;
+  final double radius;
+  final TileMode tileMode;
+
+  final AlignmentGeometry? focal;
+  final double focalRadius;
+
+  // Get radial gradient
+  RadialGradient getRadialGradient() {
+    return RadialGradient(
+      colors: colors.map((e) => e.withValues(alpha: opacity)).toList(),
+      center: center,
+      focal: focal,
+      focalRadius: focalRadius,
+      radius: radius,
+      tileMode: tileMode,
+    );
+  }
+}
diff --git a/lib/widgets/glossy_container_widget.dart b/lib/widgets/glossy_container_widget.dart
index 2f807c3..51cd609 100644
--- a/lib/widgets/glossy_container_widget.dart
+++ b/lib/widgets/glossy_container_widget.dart
@@ -1,15 +1,17 @@
 import 'package:flutter/material.dart';
-import 'package:glossy/glossy.dart';
+// import 'package:glossy/glossy.dart';
+import 'package:pharmacy_mobile/widgets/customized_pub/glossy_container.dart';
 
 class GlossyContainerWidget extends StatelessWidget {
-  final double height;
   final Widget child;
-  const GlossyContainerWidget({super.key, required this.height, required this.child});
+  const GlossyContainerWidget({
+    super.key,
+    required this.child,
+  });
 
   @override
   Widget build(BuildContext context) {
     return GlossyContainer(
-        height: MediaQuery.of(context).size.height * height,
         width: MediaQuery.of(context).size.width,
         borderRadius: const BorderRadius.all(Radius.circular(16)),
         color: const Color.fromRGBO(20, 13, 22, 1),
diff --git a/lib/widgets/input_form_widget.dart b/lib/widgets/input_form_widget.dart
new file mode 100644
index 0000000..e1964c0
--- /dev/null
+++ b/lib/widgets/input_form_widget.dart
@@ -0,0 +1,60 @@
+import 'package:flutter/material.dart';
+import 'package:gap/gap.dart';
+import 'package:google_fonts/google_fonts.dart';
+import 'package:pharmacy_mobile/widgets/dropdown_widget.dart';
+
+class InputFormWidget extends StatelessWidget {
+  final String label;
+  final TextEditingController controller;
+  final bool? password;
+  final OnChangedCallback? onChanged;
+  final String? placeholder;
+  final ValueChanged<String>? onSubmitted;
+  final FormFieldValidator? validator;
+
+  const InputFormWidget(
+      {super.key,
+      required this.label,
+      required this.controller,
+      this.password,
+      this.onChanged,
+      this.placeholder,
+      this.onSubmitted,
+      this.validator});
+
+  @override
+  Widget build(BuildContext context) {
+    return Column(
+      crossAxisAlignment: CrossAxisAlignment.start,
+      children: [
+        if (label.isNotEmpty)
+          Text('$label:',
+              style: GoogleFonts.inter(
+                textStyle:
+                    const TextStyle(color: Color.fromRGBO(255, 255, 255, 1), fontSize: 12, fontWeight: FontWeight.w500),
+              )),
+        const Gap(8),
+        TextFormField(
+          textInputAction: TextInputAction.go,
+          controller: controller,
+          decoration: InputDecoration(
+              filled: true,
+              fillColor: const Color.fromRGBO(255, 255, 255, 1),
+              border: OutlineInputBorder(borderRadius: BorderRadius.circular(4)),
+              contentPadding: const EdgeInsets.symmetric(vertical: 0, horizontal: 14),
+              prefixIcon: placeholder != null ? Icon(Icons.search, color: Colors.grey) : null,
+              hintText: placeholder),
+          style: GoogleFonts.inter(
+              textStyle: const TextStyle(
+            color: Color.fromRGBO(0, 0, 0, 1),
+            fontSize: 16,
+          )),
+          obscureText: password ?? false,
+          onChanged: onChanged,
+          onFieldSubmitted: onSubmitted,
+          validator: validator,
+        ),
+      ],
+    );
+  }
+}
diff --git a/lib/widgets/input_widget.dart b/lib/widgets/input_widget.dart
index 846c4ce..ab54890 100644
--- a/lib/widgets/input_widget.dart
+++ b/lib/widgets/input_widget.dart
@@ -1,17 +1,18 @@
 import 'package:flutter/material.dart';
 import 'package:gap/gap.dart';
 import 'package:google_fonts/google_fonts.dart';
-import 'package:pharmacy_mobile/widgets/dropdown_widget.dart';
 
 class InputWidget extends StatelessWidget {
   final String label;
   final TextEditingController controller;
-  final bool? password;
-  final OnChangedCallback? onChanged;
-  final String? placeholder;
+  final String placeholder;
 
-  const InputWidget(
-      {super.key, required this.label, required this.controller, this.password, this.onChanged, this.placeholder});
+  const InputWidget({
+    super.key,
+    required this.label,
+    required this.controller,
+    required this.placeholder,
+  });
 
   @override
   Widget build(BuildContext context) {
@@ -26,7 +27,6 @@ class InputWidget extends StatelessWidget {
               )),
         const Gap(8),
         TextField(
-          textInputAction: TextInputAction.go,
           controller: controller,
           decoration: InputDecoration(
               filled: true,
@@ -40,8 +40,6 @@ class InputWidget extends StatelessWidget {
             color: Color.fromRGBO(0, 0, 0, 1),
             fontSize: 16,
           )),
-          obscureText: password ?? false,
-          onChanged: onChanged,
         ),
       ],
     );
diff --git a/pubspec.lock b/pubspec.lock
index eb1f8d1..5653249 100644
--- a/pubspec.lock
+++ b/pubspec.lock
@@ -13,10 +13,10 @@ packages:
     dependency: transitive
     description:
       name: app_links
-      sha256: "433df2e61b10519407475d7f69e470789d23d593f28224c38ba1068597be7950"
+      sha256: "85ed8fc1d25a76475914fff28cc994653bd900bc2c26e4b57a49e097febb54ba"
       url: "https://pub.dev"
     source: hosted
-    version: "6.3.3"
+    version: "6.4.0"
   app_links_linux:
     dependency: transitive
     description:
@@ -45,10 +45,10 @@ packages:
     dependency: transitive
     description:
       name: archive
-      sha256: "6199c74e3db4fbfbd04f66d739e72fe11c8a8957d5f219f1f4482dbde6420b5a"
+      sha256: "0c64e928dcbefddecd234205422bcfc2b5e6d31be0b86fef0d0dd48d7b4c9742"
       url: "https://pub.dev"
     source: hosted
-    version: "4.0.2"
+    version: "4.0.4"
   args:
     dependency: transitive
     description:
@@ -117,10 +117,10 @@ packages:
     dependency: transitive
     description:
       name: connectivity_plus
-      sha256: "8a68739d3ee113e51ad35583fdf9ab82c55d09d693d3c39da1aebab87c938412"
+      sha256: "04bf81bb0b77de31557b58d052b24b3eee33f09a6e7a8c68a3e247c7df19ec27"
       url: "https://pub.dev"
     source: hosted
-    version: "6.1.2"
+    version: "6.1.3"
   connectivity_plus_platform_interface:
     dependency: transitive
     description:
@@ -189,10 +189,10 @@ packages:
     dependency: transitive
     description:
       name: ffi
-      sha256: "16ed7b077ef01ad6170a3d0c57caa4a112a38d7a2ed5602e0aca9ca6f3d98da6"
+      sha256: "289279317b4b16eb2bb7e271abccd4bf84ec9bdcbe999e278a94b804f5630418"
       url: "https://pub.dev"
     source: hosted
-    version: "2.1.3"
+    version: "2.1.4"
   file:
     dependency: transitive
     description:
@@ -229,10 +229,10 @@ packages:
     dependency: transitive
     description:
       name: file_selector_windows
-      sha256: "8f5d2f6590d51ecd9179ba39c64f722edc15226cc93dcc8698466ad36a4a85a4"
+      sha256: "320fcfb6f33caa90f0b58380489fc5ac05d99ee94b61aa96ec2bff0ba81d3c2b"
       url: "https://pub.dev"
     source: hosted
-    version: "0.9.3+3"
+    version: "0.9.3+4"
   fixnum:
     dependency: transitive
     description:
@@ -314,10 +314,10 @@ packages:
     dependency: transitive
     description:
       name: flutter_plugin_android_lifecycle
-      sha256: "615a505aef59b151b46bbeef55b36ce2b6ed299d160c51d84281946f0aa0ce0e"
+      sha256: "5a1e6fb2c0561958d7e4c33574674bda7b77caaca7a33b758876956f2902eea3"
       url: "https://pub.dev"
     source: hosted
-    version: "2.0.24"
+    version: "2.0.27"
   flutter_svg:
     dependency: transitive
     description:
@@ -348,10 +348,10 @@ packages:
     dependency: transitive
     description:
       name: functions_client
-      sha256: "61597ed93be197b1be6387855e4b760e6aac2355fcfc4df6d20d2b4579982158"
+      sha256: a49876ebae32a50eb62483c5c5ac80ed0d8da34f98ccc23986b03a8d28cee07c
       url: "https://pub.dev"
     source: hosted
-    version: "2.4.0"
+    version: "2.4.1"
   gap:
     dependency: "direct main"
     description:
@@ -360,22 +360,14 @@ packages:
       url: "https://pub.dev"
     source: hosted
     version: "3.0.1"
-  glossy:
-    dependency: "direct main"
-    description:
-      name: glossy
-      sha256: "70c7626430a23b903755766d161f024d93334f2b06d7b96f6b6c7204aa0b8941"
-      url: "https://pub.dev"
-    source: hosted
-    version: "0.0.5"
   go_router:
     dependency: "direct main"
     description:
       name: go_router
-      sha256: "7c2d40b59890a929824f30d442e810116caf5088482629c894b9e4478c67472d"
+      sha256: f02fd7d2a4dc512fec615529824fdd217fecb3a3d3de68360293a551f21634b3
       url: "https://pub.dev"
     source: hosted
-    version: "14.6.3"
+    version: "14.8.1"
   google_fonts:
     dependency: "direct main"
     description:
@@ -404,10 +396,10 @@ packages:
     dependency: transitive
     description:
       name: http
-      sha256: b9c29a161230ee03d3ccf545097fccd9b87a5264228c5d348202e0f0c28f9010
+      sha256: fe7ab022b76f3034adc518fb6ea04a82387620e19977665ea18d30a1cf43442f
       url: "https://pub.dev"
     source: hosted
-    version: "1.2.2"
+    version: "1.3.0"
   http_parser:
     dependency: transitive
     description:
@@ -420,10 +412,10 @@ packages:
     dependency: transitive
     description:
       name: image
-      sha256: "8346ad4b5173924b5ddddab782fc7d8a6300178c8b1dc427775405a01701c4a6"
+      sha256: "13d3349ace88f12f4a0d175eb5c12dcdd39d35c4c109a8a13dfeb6d0bd9e31c3"
       url: "https://pub.dev"
     source: hosted
-    version: "4.5.2"
+    version: "4.5.3"
   image_picker:
     dependency: "direct main"
     description:
@@ -436,10 +428,10 @@ packages:
     dependency: transitive
     description:
       name: image_picker_android
-      sha256: b62d34a506e12bb965e824b6db4fbf709ee4589cf5d3e99b45ab2287b008ee0c
+      sha256: "82652a75e3dd667a91187769a6a2cc81bd8c111bbead698d8e938d2b63e5e89a"
       url: "https://pub.dev"
     source: hosted
-    version: "0.8.12+20"
+    version: "0.8.12+21"
   image_picker_for_web:
     dependency: transitive
     description:
@@ -740,10 +732,10 @@ packages:
     dependency: transitive
     description:
       name: petitparser
-      sha256: c15605cd28af66339f8eb6fbe0e541bfe2d1b72d5825efc6598f3e0a31b9ad27
+      sha256: "07c8f0b1913bcde1ff0d26e57ace2f3012ccbf2b204e070290dad3bb22797646"
       url: "https://pub.dev"
     source: hosted
-    version: "6.0.2"
+    version: "6.1.0"
   platform:
     dependency: transitive
     description:
@@ -788,10 +780,10 @@ packages:
     dependency: transitive
     description:
       name: realtime_client
-      sha256: "1bfcb7455fdcf15953bf18ac2817634ea5b8f7f350c7e8c9873141a3ee2c3e9c"
+      sha256: e3089dac2121917cc0c72d42ab056fea0abbaf3c2229048fc50e64bafc731adf
       url: "https://pub.dev"
     source: hosted
-    version: "2.4.1"
+    version: "2.4.2"
   redacted:
     dependency: "direct main"
     description:
@@ -828,10 +820,10 @@ packages:
     dependency: transitive
     description:
       name: shared_preferences_android
-      sha256: "138b7bbbc7f59c56236e426c37afb8f78cbc57b094ac64c440e0bb90e380a4f5"
+      sha256: "9f9f3d372d4304723e6136663bb291c0b93f5e4c8a4a6314347f481a33bda2b1"
       url: "https://pub.dev"
     source: hosted
-    version: "2.4.2"
+    version: "2.4.7"
   shared_preferences_foundation:
     dependency: transitive
     description:
@@ -860,10 +852,10 @@ packages:
     dependency: transitive
     description:
       name: shared_preferences_web
-      sha256: d2ca4132d3946fec2184261726b355836a82c33d7d5b67af32692aff18a4684e
+      sha256: c49bd060261c9a3f0ff445892695d6212ff603ef3115edbb448509d407600019
       url: "https://pub.dev"
     source: hosted
-    version: "2.4.2"
+    version: "2.4.3"
   shared_preferences_windows:
     dependency: transitive
     description:
@@ -913,10 +905,10 @@ packages:
     dependency: transitive
     description:
       name: storage_client
-      sha256: d80d34f0aa60e5199646bc301f5750767ee37310c2ecfe8d4bbdd29351e09ab0
+      sha256: "9f9ed283943313b23a1b27139bb18986e9b152a6d34530232c702c468d98e91a"
       url: "https://pub.dev"
     source: hosted
-    version: "2.3.0"
+    version: "2.3.1"
   stream_channel:
     dependency: transitive
     description:
@@ -937,18 +929,18 @@ packages:
     dependency: transitive
     description:
       name: supabase
-      sha256: "270f63cd87a16578fee87e40cbf61062e8cdbce68d5e723e665f4651d70ddd8c"
+      sha256: c3ebddba69ddcf16d8b78e8c44c4538b0193d1cf944fde3b72eb5b279892a370
       url: "https://pub.dev"
     source: hosted
-    version: "2.6.2"
+    version: "2.6.3"
   supabase_flutter:
     dependency: "direct main"
     description:
       name: supabase_flutter
-      sha256: ca8dfe3d4b109e7338cdf7778f3ec2c660a0178006876bfac343eb39b0f3d1e3
+      sha256: "3b5b5b492e342f63f301605d0c66f6528add285b5744f53c9fd9abd5ffdbce5b"
       url: "https://pub.dev"
     source: hosted
-    version: "2.8.3"
+    version: "2.8.4"
   term_glyph:
     dependency: transitive
     description:
@@ -1089,10 +1081,10 @@ packages:
     dependency: transitive
     description:
       name: web
-      sha256: cd3543bd5798f6ad290ea73d210f423502e71900302dde696f8bff84bf89a1cb
+      sha256: "868d88a33d8a87b18ffc05f9f030ba328ffefba92d6c127917a2ba740f9cfe4a"
       url: "https://pub.dev"
     source: hosted
-    version: "1.1.0"
+    version: "1.1.1"
   web_socket:
     dependency: transitive
     description:
@@ -1105,10 +1097,10 @@ packages:
     dependency: transitive
     description:
       name: web_socket_channel
-      sha256: "9f187088ed104edd8662ca07af4b124465893caf063ba29758f97af57e61da8f"
+      sha256: "0b8e2457400d8a859b7b2030786835a28a8e80836ef64402abef392ff4f1d0e5"
       url: "https://pub.dev"
     source: hosted
-    version: "3.0.1"
+    version: "3.0.2"
   webview_windows:
     dependency: transitive
     description:
@@ -1150,5 +1142,5 @@ packages:
     source: hosted
     version: "2.0.3"
 sdks:
-  dart: ">=3.7.0-0 <4.0.0"
+  dart: ">=3.7.0 <4.0.0"
   flutter: ">=3.27.0"
diff --git a/pubspec.yaml b/pubspec.yaml
index f218e8f..a84a176 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -13,7 +13,7 @@ dependencies:
 
   google_fonts: ^6.2.1
   gap: ^3.0.1
-  go_router: ^14.6.3
+  go_router: ^14.8.1
   supabase_flutter: ^2.8.3
   font_awesome_flutter: ^10.8.0
   uuid: ^4.5.1
@@ -26,14 +26,13 @@ dependencies:
   lazyxchacha: ^1.0.1
   pull_to_refresh: ^2.0.0
   redacted: ^1.0.13
-  glossy: ^0.0.5
 
 dev_dependencies:
   flutter_test:
     sdk: flutter
 
   flutter_lints: ^5.0.0
-  flutter_launcher_icons: "^0.14.3"
+  flutter_launcher_icons: ^0.14.3
 
 flutter_icons:
   android: true
