diff --git a/src/app/workspace-admin/files/files.component.css b/src/app/workspace-admin/files/files.component.css
index a418d995212fa45b762b1486a0218c304c220411..4ab7cd552562e508af1ef2f3f3f94027dd0be209 100644
--- a/src/app/workspace-admin/files/files.component.css
+++ b/src/app/workspace-admin/files/files.component.css
@@ -9,10 +9,15 @@
 
 .filelist {
   flex:  10 0 400px;
+  margin-top: 0.7em;
 }
 
-mat-table {
-  margin-bottom: 3em;
+mat-expansion-panel {
+  overflow: visible;
+}
+
+mat-cell:first-of-type, mat-header-cell:first-of-type, mat-footer-cell:first-of-type {
+  padding-left: 0
 }
 
 .checkboxcell {
@@ -24,10 +29,8 @@ mat-table {
   flex: 3 3 60px;
 }
 
-.namecell .mat-subheading-1 {
-  padding: 0 16px;
-  margin-bottom: 0;
-  color: black;
+.namecell.mat-header-cell {
+  padding-left: 16px;
 }
 
 .datecell {
@@ -40,7 +43,8 @@ mat-table {
 }
 
 .sidebar .buttons {
-  min-height: 56px;
+  margin-top: 0.7em;
+  margin-bottom: 0.7em;
   display: inline-flex;
   vertical-align: middle;
   align-items: center;
@@ -51,18 +55,15 @@ mat-table {
   font-size: 0.8em;
 }
 
-.report-error,
-.checkerror {
+.report-error {
   color: #821324;
 }
 
-.report-warning,
-.checkwarning {
-  color: goldenrod;
+.report-warning {
+  color: silver;
 }
 
-.report-info,
-.checkinfo {
+.report-info {
   color: blue;
 }
 
@@ -81,11 +82,12 @@ mat-table {
 
 .file-report:hover .full-file-report {
   display: block;
-  position: absolute;
+  position: absolute ;
   background: white;
   box-shadow: 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.14), 0 1px 5px 0 rgba(0, 0, 0, 0.12);
   z-index: 1000;
   cursor: default;
+  margin: 2px;
 }
 
 .full-file-report .mat-card-title,
diff --git a/src/app/workspace-admin/files/files.component.html b/src/app/workspace-admin/files/files.component.html
index 6a33e2d1db4068e3303cfeb1e593d314bee701ed..d5384ef81f632096d3186eb79f51ff470c122b16 100644
--- a/src/app/workspace-admin/files/files.component.html
+++ b/src/app/workspace-admin/files/files.component.html
@@ -1,80 +1,86 @@
 <div class="columnhost">
   <div class="filelist">
 
-    <ng-container *ngFor="let type of fileTypes">
-
-      <mat-table *ngIf="files && files[type]" [dataSource]="files[type]" matSort (matSortChange)="setTableSorting($event)">
-        <ng-container matColumnDef="checked">
-          <mat-header-cell *matHeaderCellDef class="checkboxcell">
-            <mat-checkbox (change)="checkAll($event.checked, type)"></mat-checkbox>
-          </mat-header-cell>
-          <mat-cell *matCellDef="let element" class="checkboxcell">
-            <mat-checkbox [checked]="element.isChecked" (change)="element.isChecked=$event.checked"></mat-checkbox>
-          </mat-cell>
-        </ng-container>
-
-        <ng-container matColumnDef="name">
-          <mat-header-cell *matHeaderCellDef mat-sort-header class="namecell">
-            <div class="mat-subheading-1">{{typeLabels[type]}}</div>
+    <mat-accordion class="example-headers-align" multi="true">
+      <mat-expansion-panel [expanded]="true" *ngFor="let type of fileTypes">
+        <mat-expansion-panel-header>
+          <mat-panel-title>{{typeLabels[type]}}</mat-panel-title>
+          <mat-panel-description>
             <span>{{files[type].data.length}} Datei{{files[type].data.length === 1 ? '' : 'en'}}</span>
             <span *ngIf="fileStats.invalid[type]">, davon {{fileStats.invalid[type]}} Fehlerhaft</span>
             <span *ngIf="type=='Testtakers'">, {{fileStats.testtakers}} Teilnehmer</span>
-          </mat-header-cell>
-          <mat-cell *matCellDef="let element" class="namecell">
-            <div class="file-report">
-              <button mat-button (click)="download(element)">{{element.name}}</button>
-              <span class="vertical-align-middle">
-                <ng-container *ngIf="element.report.error && element.report.error.length; else: noError">
-                  <mat-icon class="report-error">error</mat-icon>
-                </ng-container>
-                <ng-template #noError>
-                  <ng-container *ngIf="element.report.warning && element.report.warning.length">
-                    <mat-icon class="report-warning">warning</mat-icon>
-                  </ng-container>
-                </ng-template>
-              </span>
-              <mat-card class="full-file-report">
-                <mat-card-header *ngIf="element.info.label || element.id">
-                  <mat-card-title>
-                    {{element.info.label}}
-                    <span
-                        *ngIf="element.id !== element.name.toUpperCase()"
-                        style="{{element.info.label ? 'color:silver' : ''}}">
-                    #{{element.id}}
-                  </span>
-                  </mat-card-title>
-                  <mat-card-subtitle>{{element.info.description}}</mat-card-subtitle>
-                </mat-card-header>
-                <mat-card-content>
-                  <ng-container *ngFor="let level of ['error', 'warning', 'info']">
-                    <div *ngFor="let message of element.report[level]">
-                      <alert [level]="level" [text]="message"></alert>
-                    </div>
+          </mat-panel-description>
+        </mat-expansion-panel-header>
+
+        <mat-table *ngIf="files && files[type]" [dataSource]="files[type]" matSort (matSortChange)="setTableSorting($event)">
+          <ng-container matColumnDef="checked">
+            <mat-header-cell *matHeaderCellDef class="checkboxcell">
+              <mat-checkbox (change)="checkAll($event.checked, type)"></mat-checkbox>
+            </mat-header-cell>
+            <mat-cell *matCellDef="let element" class="checkboxcell">
+              <mat-checkbox [checked]="element.isChecked" (change)="element.isChecked=$event.checked"></mat-checkbox>
+            </mat-cell>
+          </ng-container>
+
+          <ng-container matColumnDef="name">
+            <mat-header-cell *matHeaderCellDef mat-sort-header class="namecell">Dateiname</mat-header-cell>
+            <mat-cell *matCellDef="let element" class="namecell">
+              <div class="file-report">
+                <button mat-button (click)="download(element)">{{element.name}}</button>
+                <span class="vertical-align-middle">
+                  <ng-container *ngIf="element.report.error && element.report.error.length; else: noError">
+                    <mat-icon class="report-error">error</mat-icon>
                   </ng-container>
-                </mat-card-content>
-              </mat-card>
-            </div>
-          </mat-cell>
-        </ng-container>
+                  <ng-template #noError>
+                    <ng-container *ngIf="element.report.warning && element.report.warning.length">
+                      <mat-icon class="report-warning">warning</mat-icon>
+                    </ng-container>
+                  </ng-template>
+                </span>
+                <mat-card class="full-file-report">
+                  <mat-card-header *ngIf="element.info.label || element.id">
+                    <mat-card-title>
+                      {{element.info.label}}
+                      <span
+                          *ngIf="element.id !== element.name.toUpperCase()"
+                          style="{{element.info.label ? 'color:silver' : ''}}">
+                      #{{element.id}}
+                    </span>
+                    </mat-card-title>
+                    <mat-card-subtitle>{{element.info.description}}</mat-card-subtitle>
+                  </mat-card-header>
+                  <mat-card-content>
+                    <ng-container *ngFor="let level of ['error', 'warning', 'info']">
+                      <div *ngFor="let message of element.report[level]">
+                        <alert [level]="level" [text]="message"></alert>
+                      </div>
+                    </ng-container>
+                  </mat-card-content>
+                </mat-card>
+              </div>
+            </mat-cell>
+          </ng-container>
+
+          <ng-container matColumnDef="modificationTime">
+            <mat-header-cell *matHeaderCellDef mat-sort-header class="datecell"> Letzte Änderung </mat-header-cell>
+            <mat-cell *matCellDef="let element" class="datecell">
+              {{(element.modificationTime * 1000) | date: 'dd.MM.yy hh:mm'}}
+            </mat-cell>
+          </ng-container>
 
-        <ng-container matColumnDef="modificationTime">
-          <mat-header-cell *matHeaderCellDef mat-sort-header class="datecell"> Letzte Änderung </mat-header-cell>
-          <mat-cell *matCellDef="let element" class="datecell">
-            {{(element.modificationTime * 1000) | date: 'dd.MM.yy hh:mm'}}
-          </mat-cell>
-        </ng-container>
+          <ng-container matColumnDef="size">
+            <mat-header-cell *matHeaderCellDef mat-sort-header> Volle Größe  </mat-header-cell>
+            <mat-cell *matCellDef="let element" style="white-space: nowrap;">
+              {{(element.info.totalSize || element.size) | bytes}}
+            </mat-cell>
+          </ng-container>
 
-        <ng-container matColumnDef="size">
-          <mat-header-cell *matHeaderCellDef mat-sort-header> Volle Größe  </mat-header-cell>
-          <mat-cell *matCellDef="let element" style="white-space: nowrap;">
-            {{(element.info.totalSize || element.size) | bytes}}
-          </mat-cell>
-        </ng-container>
+          <mat-header-row *matHeaderRowDef="displayedColumns"></mat-header-row>
+          <mat-row *matRowDef="let row; columns: displayedColumns;"></mat-row>
+        </mat-table>
 
-        <mat-header-row *matHeaderRowDef="displayedColumns"></mat-header-row>
-        <mat-row *matRowDef="let row; columns: displayedColumns;"></mat-row>
-      </mat-table>
-    </ng-container>
+      </mat-expansion-panel>
+    </mat-accordion>
   </div>
 
   <div class="sidebar">