diff --git a/assets/haditha/font-icons/close-circle.svg b/assets/haditha/font-icons/close-circle.svg
new file mode 100644
index 0000000..a92e4d6
--- /dev/null
+++ b/assets/haditha/font-icons/close-circle.svg
@@ -0,0 +1,5 @@
+<svg width="32" height="33" viewBox="0 0 32 33" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M0 16.7158C0 7.87926 7.16344 0.71582 16 0.71582C24.8366 0.71582 32 7.87926 32 16.7158C32 25.5524 24.8366 32.7158 16 32.7158C7.16344 32.7158 0 25.5524 0 16.7158Z" fill="#F0F1F4"/>
+<path d="M11 21.7158L21 11.7158" stroke="#1B2132" stroke-linecap="round"/>
+<path d="M11 11.7158L21 21.7158" stroke="#1B2132" stroke-linecap="round"/>
+</svg>
diff --git a/components/haditha/AutoComplation.vue b/components/haditha/AutoComplation.vue
index c184877..f43c75f 100644
--- a/components/haditha/AutoComplation.vue
+++ b/components/haditha/AutoComplation.vue
@@ -57,6 +57,7 @@ const search_type = ref("normal");
 const type_key = ref("hadith");
 const typeModelValue = ref("normal");
 const typeModelValueFa = ref("");
+const showclearButton = ref(false);
 
 // If you want to share state across multiple components,
 // you can use the same key in useState. Nuxt will ensure
@@ -168,17 +169,27 @@ const clearSimilar = () => {
 // const onUpdateModel = (newVal: boolean | InputMenuItem | any) => {
 //   console.info("onUpdateModel", newVal);
 // };
+const searchButtonIcon = computed(() => {
+  return showclearButton.value ? "i-lucide-x" : "i-haditha-search";
+});
+
+const handleSearchClearButton = ()=>{
+  showclearButton.value = true;
+  sendQuery();
+}
 
 const onKeyDown = () => {
-  clearTimeout(typingTimer.value);
-};
-const onKeyUp = () => {
-  clearTimeout(typingTimer.value);
-  typingTimer.value = setTimeout(() => {
-    if (props.autoRedirection) sendQuery();
-  }, doneTypingInterval.value);
+  showclearButton.value = false;
+  // clearTimeout(typingTimer.value);
 };
 
+// const onKeyUp = () => {
+//   clearTimeout(typingTimer.value);
+//   typingTimer.value = setTimeout(() => {
+//     if (props.autoRedirection) sendQuery();
+//   }, doneTypingInterval.value);
+// };
+
 const setType = (type: string) => {
   search_type.value = type;
   sendQuery();
@@ -225,11 +236,6 @@ const sendQuery = async (payload = {}) => {
     .postRequest(url, payload)
     .then((res) => {
       // pass res and search query to the parent.
-      emit("response-ready", {
-        res: res,
-        searchQuery: searchTerm.value,
-        disableAutoRedirect: true,
-      });
 
       loading.value = false;
       // check if search term is not empty
@@ -238,6 +244,32 @@ const sendQuery = async (payload = {}) => {
       // close the history dropdown menu
       open.value = false;
 
+
+      
+      // show clear button
+      if (showclearButton.value) {
+        searchTerm.value = "";
+
+        emit("response-ready", {
+          res: {
+            hits:{
+              total:0,
+              hits:[]
+            }
+          },
+          searchQuery: searchTerm.value,
+          disableAutoRedirect: true,
+        });
+      } else {
+        emit("response-ready", {
+          res: res,
+          searchQuery: searchTerm.value,
+          disableAutoRedirect: true,
+        });
+      }
+      
+      showclearButton.value = !showclearButton.value;
+
       // store search phrase
       useStorage("searchPhrase", searchTerm.value);
     })
@@ -405,7 +437,6 @@ onMounted(() => {
           @blur="open = false"
           @change="sendQuery"
           @keydown="onKeyDown"
-          @keyup="onKeyUp"
           @keydown.enter="sendQuery"
         >
           <!-- @update:modelValue="onUpdateModel" -->
@@ -414,8 +445,9 @@ onMounted(() => {
       </div>
       <UButton
         class="my-trailing-button"
-        @click.prevent="sendQuery"
-        icon="i-haditha-search"
+        :class="{ 'close-mode': showclearButton }"
+        @click.prevent="handleSearchClearButton"
+        :icon="searchButtonIcon"
       >
         <!-- <UIcon  name="i-lucide-search" /> -->
       </UButton>
@@ -765,6 +797,13 @@ onMounted(() => {
       ); */
     }
   }
+  .close-mode {
+    background: #f0f1f4;
+    color: #000; /* رنگ خاکستری */
+    &:hover {
+      background: #e0e0e0; /* رنگ خاکستری */
+    }
+  }
   .haditha-search-input {
     z-index: 0;
 
diff --git a/components/haditha/search-page/SearchList.vue b/components/haditha/search-page/SearchList.vue
index d909a49..10241d1 100644
--- a/components/haditha/search-page/SearchList.vue
+++ b/components/haditha/search-page/SearchList.vue
@@ -23,11 +23,18 @@ const router = useRouter();
 function openModal(selectedItem) {
   // modal.open(SearchShow, { title: "Welcome" });
   // isModalOpen.value = true;
+
+  const slug = selectedItem._source.content.split(' ').filter((v,i)=>i<4).join('-');
+
   router.push({
     name: "hadithaSearchShow",
     params: {
-      id: selectedItem._id,
-      slug: "no-slug",
+      id: selectedItem._source.id,
+      slug: slug,
+    },
+    query: {
+      firstPage: 1,
+      page_count:props.total
     },
   });
 }
diff --git a/pages/haditha/search/[id]/[slug]/index.vue b/pages/haditha/search/[id]/[slug]/index.vue
index 952f81d..f0ec899 100644
--- a/pages/haditha/search/[id]/[slug]/index.vue
+++ b/pages/haditha/search/[id]/[slug]/index.vue
@@ -228,10 +228,14 @@ const handlePagination = (prevNextIndicator: string) => {
     .getRequest(url)
     .then((res) => {
       state.selectedItem = res.hits.hits?.[0];
+      page_num.value = res.hits.hits[0]._source.address.page_num ?? 1;
     })
     .finally(() => (loading.value = false));
 };
-
+const page_num = ref(1);
+const handlePageChange = () => {
+  handlePagination(1, page_num.value);
+};
 // const localCopyTextToClipboard = (text: string) => {
 //   copyTextToClipboard(text);
 // };
@@ -413,24 +417,24 @@ const handlePagination = (prevNextIndicator: string) => {
 
       <div class="body-footer">
         <div class="mt-5 z-2">
-          <div class="flex justify-between actions">
-            <UButton
+          <!-- <div class="flex justify-between actions"> -->
+          <!-- <UButton
               disabled
               class="similar-btn"
               icon="i-haditha-search-3"
               label="مشابه"
               color="neutral"
               variant="outline"
-            />
-            <!-- @click.prevent="goToTheSearch('similar')" -->
-            <UButton
+            /> -->
+          <!-- @click.prevent="goToTheSearch('similar')" -->
+          <!-- <UButton
               class="explore-btn"
               trailing-icon="i-haditha-explore"
               label="کاوش"
               variant="solid"
               @click.prevent="goToTheChatbot"
-            />
-          </div>
+            /> -->
+          <!-- </div> -->
           <div class="flex justify-between pagination">
             <UButton
               @click="handlePagination('-1')"
@@ -440,6 +444,27 @@ const handlePagination = (prevNextIndicator: string) => {
               variant="soft"
               icon="i-haditha-chevron-right"
             />
+            <div class="flex items-center">
+                <span class="total-pages">{{ route.query.page_count }}</span>
+                <span class="mx-2">/</span>
+                <UInput
+                  :disabled="loading"
+                  color="neutral"
+                  variant="outline"
+                  v-model="page_num"
+                  @change="handlePageChange"
+                  :ui="{
+                    root: 'root ',
+                    base: 'base page-number-input',
+                    leading: 'leading',
+                    leadingIcon: 'leadingIcon',
+                    leadingAvatar: 'leadingAvatar',
+                    leadingAvatarSize: 'leadingAvatarSize',
+                    trailing: 'trailing',
+                    trailingIcon: 'trailingIcon',
+                  }"
+                />
+              </div>
             <UButton
               @click="handlePagination('1')"
               class="next-haditha"
@@ -778,6 +803,15 @@ const handlePagination = (prevNextIndicator: string) => {
         text-align: right;
         color: var(--ui-color-two);
       }
+      .total-pages {
+          font-family: IRANSansX;
+          font-weight: 400;
+          font-size: 12px;
+          line-height: 100%;
+          letter-spacing: 0%;
+          text-align: right;
+          color: #8a92a8;
+        }
     }
   }
 }
diff --git a/pages/haditha/search/index.vue b/pages/haditha/search/index.vue
index e4b7efa..a25b7a4 100644
--- a/pages/haditha/search/index.vue
+++ b/pages/haditha/search/index.vue
@@ -90,7 +90,7 @@ const SearchList = defineAsyncComponent(() =>
           </div>
           <div
             v-if="searchQuery?.length == 0"
-            class="flex justify-center flex-col items-center"
+            class="flex justify-center flex-col items-center mt-10"
           >
             <img
               fit="auto"
@@ -100,7 +100,7 @@ const SearchList = defineAsyncComponent(() =>
             />
             <div class="title">
               کاوش با
-              <span class="badge-style"> هوش مصنوعی </span>
+              <span class="badge-style mx-1">هوش مصنوعی</span>
               در احادیث اسلامی
             </div>
           </div>