diff --git a/src/app/vim-accounts/vim-account-details/VimAccountDetailsComponent.html b/src/app/vim-accounts/vim-account-details/VimAccountDetailsComponent.html
index 7feabe2..9838656 100644
--- a/src/app/vim-accounts/vim-account-details/VimAccountDetailsComponent.html
+++ b/src/app/vim-accounts/vim-account-details/VimAccountDetailsComponent.html
@@ -15,12 +15,12 @@
 
 Author: KUMARAN M (kumaran.m@tataelxsi.co.in), RAJESH S (rajesh.s@tataelxsi.co.in), BARATH KUMAR R (barath.r@tataelxsi.co.in)
 -->
-<div class="row d-flex align-items-center justify-content-between">
+<div class="d-flex align-items-center justify-content-between">
     <div class="col-sm-4">
         <div class="d-flex align-items-center header-style">{{'VIMACCOUNTS' | translate}}</div>
     </div>
-    <div class="col-sm-8 text-right">
-        <div class="btn-group list mr-2" role="group">
+    <div class="col-sm-8 text-end">
+        <div class="btn-group list me-2" role="group">
             <button class="btn btn-primary" type="button" (click)="mapView()" placement="top" container="body"
                 ngbTooltip="{{'MAPVIEW' | translate}}" [hidden]="showList" [disabled]="vimData.length == 0">
                 <i class="fas fa-map-marker-alt"></i>&nbsp;
@@ -41,15 +41,15 @@
         </span>
     </div>
 </div>
-<div class="row mt-2 mb-0 list-utilites-actions" [hidden]="showList">
-    <div class="col-auto mr-auto">
+<div class="mt-2 mb-0 list-utilites-actions" [hidden]="showList">
+    <div class="col-auto me-auto">
         <nav class="custom-items-config">
             <span><i class="fas fa-clock text-warning"></i>{{operationalStateFirstStep}}</span>
             <span><i class="fas fa-check-circle text-success"></i>{{operationalStateSecondStep}}</span>
             <span><i class="fas fa-times-circle text-danger"></i>{{operationalStateThirdStep}}</span>
         </nav>
     </div>
-    <page-per-row class="mr-2" (pagePerRow)="onChange($event)"></page-per-row>
+    <page-per-row class="me-2" (pagePerRow)="onChange($event)"></page-per-row>
     <page-reload></page-reload>
 </div>
 <div class="smarttable-style bg-white mt-1" [hidden]="showList">
diff --git a/src/app/vim-accounts/vim-account-details/VimAccountDetailsComponent.scss b/src/app/vim-accounts/vim-account-details/VimAccountDetailsComponent.scss
index aeb086e..b79a921 100644
--- a/src/app/vim-accounts/vim-account-details/VimAccountDetailsComponent.scss
+++ b/src/app/vim-accounts/vim-account-details/VimAccountDetailsComponent.scss
@@ -22,13 +22,13 @@
     width: 100%;
     .ol-popup {
         @include background(null, $white, null, null, null);
-        -webkit-filter: drop-shadow(0 1px 4px rgba(0,0,0,0.2));
-        filter: drop-shadow(0 1px 4px rgba(0,0,0,0.2));
+        -webkit-filter: drop-shadow(0 1px 4px rgba(0, 0, 0, 0.2));
+        filter: drop-shadow(0 1px 4px rgba(0, 0, 0, 0.2));
         @include border(all, 1, solid, $gray-80);
         @include position_value(absolute, $top: null, $right: null, $bottom: 12px, $left: -50px);
         @include wh-value(280px, null);
         @include font-style(normal);
-        @include font(null, .765625rem, 400);
+        @include font(null, 0.765625rem, 400);
         @include line-height(1.5);
         text-align: start;
         text-decoration: none;
@@ -39,7 +39,8 @@
         line-break: auto;
         word-wrap: break-word;
         @include roundedCorners(2px);
-        &:after, &:before{
+        &:after,
+        &:before {
             top: 100%;
             @include border(all, 1, solid, transparent);
             content: " ";
@@ -70,4 +71,13 @@
             content: "✖";
         }
     }
+    .close {
+        opacity: 1;
+        background-color: transparent;
+        border: 0;
+        position: absolute;
+        right: 10px;
+        bottom: 213px;
+        font-size: 1.31rem;
+    }
 }
\ No newline at end of file
diff --git a/src/app/vim-accounts/vim-account-details/VimAccountDetailsComponent.ts b/src/app/vim-accounts/vim-account-details/VimAccountDetailsComponent.ts
index ac0b502..20081c4 100644
--- a/src/app/vim-accounts/vim-account-details/VimAccountDetailsComponent.ts
+++ b/src/app/vim-accounts/vim-account-details/VimAccountDetailsComponent.ts
@@ -169,16 +169,16 @@
                 valuePrepareFunction: (cell: VIMData, row: VIMData): string => {
                     if (row.operationalState === this.operationalStateFirstStep) {
                         return `<span class="icon-label" title="${row.operationalState}">
-                        <i class="fas fa-clock text-warning"></i>
-                        </span>`;
+                         <i class="fas fa-clock text-warning"></i>
+                         </span>`;
                     } else if (row.operationalState === this.operationalStateSecondStep) {
                         return `<span class="icon-label" title="${row.operationalState}">
-                        <i class="fas fa-check-circle text-success"></i>
-                        </span>`;
+                         <i class="fas fa-check-circle text-success"></i>
+                         </span>`;
                     } else if (row.operationalState === this.operationalStateThirdStep) {
                         return `<span class="icon-label" title="${row.operationalState}">
-                        <i class="fas fa-times-circle text-danger"></i>
-                        </span>`;
+                         <i class="fas fa-times-circle text-danger"></i>
+                         </span>`;
                     } else {
                         return `<span>${row.operationalState}</span>`;
                     }
@@ -360,7 +360,7 @@
                 }
             }
         });
-        if (this.getLocation !== []) {
+        if (this.getLocation.length) {
             this.getLocation.filter((loc: GetLocation) => {
                 if (loc.location !== '') {
                     if (loc.location !== ',,') {
@@ -456,7 +456,7 @@
         this.popupData += '<ul class="list-unstyled m-2">';
         const instnaceData: NSInstanceDetails[] = this.nsData.filter((item: NSInstanceDetails) => {
             if (item.datacenter === feature.values_.Id) {
-                this.popupData += '<li class="m-2"><a class="d-block text-truncate" target="_parent" href="instances/ns/' + item._id + '"><i class="fa-sitemap fas icons mr-1"></i>'
+                this.popupData += '<li class="m-2"><a class="d-block text-truncate" target="_parent" href="instances/ns/' + item._id + '"><i class="fa-sitemap fas icons me-1"></i>'
                     + item.name + '</a></li>';
                 return item;
             }
