diff --git a/src/frontend/app/notes/note-editor.component.html b/src/frontend/app/notes/note-editor.component.html
index fbe3570b692e56b80ad63cf6581116f280831c6e..d1e4176121a967f03457c223b162c9ede1e20833 100644
--- a/src/frontend/app/notes/note-editor.component.html
+++ b/src/frontend/app/notes/note-editor.component.html
@@ -45,7 +45,7 @@
         <mat-icon fontSet="far" fontIcon="fa-paper-plane fa-2x"></mat-icon>
     </button>
 </mat-form-field>
-<div style="overflow: auto;max-height: 75px;">
+<div style="overflow: auto;max-height: 75px;margin-top: -15px;margin-bottom: 10px;">
     <ng-container *ngFor="let entity of entities | sortBy: 'entity_label';let i=index;">
         <span *ngIf="entitiesRestriction.indexOf(entity.id) > -1" class="label label-default noteRestriction"
             (click)="removeEntityRestriction(entitiesRestriction.indexOf(entity.id), i)"
diff --git a/src/frontend/app/signature-book.component.html b/src/frontend/app/signature-book.component.html
index b7aa93063fcc44e850143fa815aa55a4d617c51b..1daa99c5c21ee42c7704ea0995683fb50077b432 100755
--- a/src/frontend/app/signature-book.component.html
+++ b/src/frontend/app/signature-book.component.html
@@ -95,6 +95,12 @@
             <div *ngIf="headerTab == 'visaCircuit'" class="contentShow" style="width:98%;overflow-x: hidden;">
                 <app-visa-workflow #appVisaWorkflow [resId]="resId"
                     [adminMode]="privilegeService.hasCurrentUserPrivilege('config_visa_workflow')"></app-visa-workflow>
+                <div style="position: sticky;bottom: 0px;text-align:right;">
+                    <button mat-fab [title]="lang.saveModifications" *ngIf="appVisaWorkflow !== undefined && appVisaWorkflow.isModified()" (click)="saveVisaWorkflow()"
+                        color="accent">
+                        <mat-icon style="height:auto;font-size:20px;" class="fas fa-check"></mat-icon>
+                    </button>
+                </div>
             </div>
             <div *ngIf="headerTab == 'history'" class="contentShow" style="width:98%;">
                 <app-history-list #appHistoryList [resId]="resId"></app-history-list>
diff --git a/src/frontend/app/signature-book.component.scss b/src/frontend/app/signature-book.component.scss
index 5dfd80e544b78ca60209d433adb1d9bfc15dd26e..6a4485014f26a2cbc93e833a77202b0bc98ee3d9 100755
--- a/src/frontend/app/signature-book.component.scss
+++ b/src/frontend/app/signature-book.component.scss
@@ -510,7 +510,7 @@ img.panelSelectedThumbnail,img:hover.panelSelectedThumbnail{
     display: block;
     width: 100%;
     height:93vh;
-    white-space: nowrap;
+    // white-space: nowrap;
     overflow: hidden;
     background-color: #fbfbfb;
 }
diff --git a/src/frontend/app/signature-book.component.ts b/src/frontend/app/signature-book.component.ts
index d1039a9a70f4e4ac926ee78d9060773b04519f9a..1373019f22af1898778924efc455cc9f9831fe31 100755
--- a/src/frontend/app/signature-book.component.ts
+++ b/src/frontend/app/signature-book.component.ts
@@ -11,6 +11,7 @@ import { MatDialogRef, MatDialog } from '@angular/material';
 import { AttachmentCreateComponent } from './attachments/attachment-create/attachment-create.component';
 import { FunctionsService } from '../service/functions.service';
 import { AttachmentPageComponent } from './attachments/attachments-page/attachment-page.component';
+import { VisaWorkflowComponent } from './visa/visa-workflow.component';
 
 declare function lockDocument(resId: number) : void;
 declare function unlockDocument(resId: number) : void;
@@ -98,6 +99,8 @@ export class SignatureBookComponent implements OnInit {
         }
     ];
 
+    @ViewChild('appVisaWorkflow', { static: false }) appVisaWorkflow: VisaWorkflowComponent;
+
     constructor(
         public http: HttpClient, 
         private route: ActivatedRoute, 
@@ -533,4 +536,8 @@ export class SignatureBookComponent implements OnInit {
         }
     }
 
+    saveVisaWorkflow() {
+        this.appVisaWorkflow.saveVisaWorkflow();
+    }
+
 }