diff --git a/src/core/features/settings/pages/about/about.html b/src/core/features/settings/pages/about/about.html
index 6b931e527..807d240ce 100644
--- a/src/core/features/settings/pages/about/about.html
+++ b/src/core/features/settings/pages/about/about.html
@@ -10,33 +10,35 @@
 </ion-header>
 
 <ion-content>
-    <ion-item class="ion-text-wrap">
-        <ion-label><h2>{{ appName }} {{ versionName }}</h2></ion-label>
-    </ion-item>
-    <ion-item button class="ion-text-wrap" (click)="openPage('deviceinfo')" detail="true">
-        <ion-icon name="fas-mobile" slot="start" aria-hidden="true"></ion-icon>
-        <ion-label>{{ 'core.settings.deviceinfo' | translate }}</ion-label>
-    </ion-item>
-    <ion-item button class="ion-text-wrap" (click)="openPage('licenses')" detail="true">
-        <ion-icon name="far-copyright" slot="start" aria-hidden="true"></ion-icon>
-        <ion-label>{{ 'core.settings.opensourcelicenses' | translate }}</ion-label>
-    </ion-item>
-    <ion-item
-        *ngIf="privacyPolicy"
-        class="ion-text-wrap"
-        button core-link auto-login="no" [href]="privacyPolicy"
-        detail="true" detailIcon="open-outline"
-    >
-        <ion-icon name="fas-user-shield" slot="start" aria-hidden="true"></ion-icon>
-        <ion-label>{{ 'core.settings.privacypolicy' | translate }}</ion-label>
-    </ion-item>
-    <ion-item
-        *ngIf="feedbackFormUrl"
-        class="ion-text-wrap"
-        button core-link [href]="feedbackFormUrl"
-        detail="true" detailIcon="open-outline"
-    >
-        <ion-icon name="fas-bullhorn" slot="start" aria-hidden="true"></ion-icon>
-        <ion-label>{{ 'core.settings.helpusimprove' | translate }}</ion-label>
-    </ion-item>
+    <ion-list>
+        <ion-item class="ion-text-wrap">
+            <ion-label><h2>{{ appName }} {{ versionName }}</h2></ion-label>
+        </ion-item>
+        <ion-item button class="ion-text-wrap" (click)="openPage('deviceinfo')" detail="true">
+            <ion-icon name="fas-mobile" slot="start" aria-hidden="true"></ion-icon>
+            <ion-label>{{ 'core.settings.deviceinfo' | translate }}</ion-label>
+        </ion-item>
+        <ion-item button class="ion-text-wrap" (click)="openPage('licenses')" detail="true">
+            <ion-icon name="far-copyright" slot="start" aria-hidden="true"></ion-icon>
+            <ion-label>{{ 'core.settings.opensourcelicenses' | translate }}</ion-label>
+        </ion-item>
+        <ion-item
+            *ngIf="privacyPolicy"
+            class="ion-text-wrap"
+            button core-link auto-login="no" [href]="privacyPolicy"
+            detail="true" detailIcon="open-outline"
+        >
+            <ion-icon name="fas-user-shield" slot="start" aria-hidden="true"></ion-icon>
+            <ion-label>{{ 'core.settings.privacypolicy' | translate }}</ion-label>
+        </ion-item>
+        <ion-item
+            *ngIf="feedbackFormUrl"
+            class="ion-text-wrap"
+            button core-link [href]="feedbackFormUrl"
+            detail="true" detailIcon="open-outline"
+        >
+            <ion-icon name="fas-bullhorn" slot="start" aria-hidden="true"></ion-icon>
+            <ion-label>{{ 'core.settings.helpusimprove' | translate }}</ion-label>
+        </ion-item>
+    </ion-list>
 </ion-content>
diff --git a/src/core/features/settings/pages/deviceinfo/deviceinfo.html b/src/core/features/settings/pages/deviceinfo/deviceinfo.html
index 3e3054d5f..162c08fce 100644
--- a/src/core/features/settings/pages/deviceinfo/deviceinfo.html
+++ b/src/core/features/settings/pages/deviceinfo/deviceinfo.html
@@ -15,128 +15,134 @@
 </ion-header>
 
 <ion-content>
-    <ion-item (longPress)="copyItemInfo($event)">
-        <ion-label class="ion-text-wrap">
-            <h2>{{ 'core.settings.appversion' | translate}}</h2>
-            <p>{{ deviceInfo.versionName }} ({{ deviceInfo.versionCode }})</p>
-        </ion-label>
-    </ion-item>
-    <ion-item (longPress)="copyItemInfo($event)">
-        <ion-label class="ion-text-wrap">
-            <h2>{{ 'core.settings.compilationinfo' | translate }}</h2>
-            <p *ngIf="deviceInfo.compilationTime">{{ deviceInfo.compilationTime | coreFormatDate: "LLL Z": false }}</p>
-            <p *ngIf="deviceInfo.lastCommit">{{ deviceInfo.lastCommit }}</p>
-        </ion-label>
-    </ion-item>
-    <ion-item *ngIf="deviceInfo.siteUrl" (longPress)="copyItemInfo($event)">
-        <ion-label class="ion-text-wrap">
-            <h2>{{ 'core.settings.siteinfo' | translate }}<ng-container *ngIf="deviceInfo.isPrefixedUrl"> *</ng-container></h2>
-            <p><a [href]="deviceInfo.siteUrl" core-link auto-login="yes">{{ deviceInfo.siteUrl }}</a></p>
-            <p *ngIf="deviceInfo.siteVersion">{{ deviceInfo.siteVersion }}</p>
-            <p *ngIf="deviceInfo.siteId">{{ deviceInfo.siteId }}</p>
-        </ion-label>
-    </ion-item>
-    <ion-item *ngIf="deviceInfo.fileSystemRoot" (longPress)="copyItemInfo($event)">
-        <ion-label class="ion-text-wrap">
-            <h2>{{ 'core.settings.filesystemroot' | translate }}</h2>
-            <p><a *ngIf="fsClickable" [href]="deviceInfo.fileSystemRoot" core-link auto-login="no">{{ deviceInfo.fileSystemRoot }}</a></p>
-            <p *ngIf="!fsClickable">{{ deviceInfo.fileSystemRoot }}</p>
-        </ion-label>
-    </ion-item>
-    <ion-item *ngIf="deviceInfo.userAgent" (longPress)="copyItemInfo($event)">
-        <ion-label class="ion-text-wrap">
-            <h2>{{ 'core.settings.navigatoruseragent' | translate }}</h2>
-            <p>{{ deviceInfo.userAgent }}</p>
-        </ion-label>
-    </ion-item>
-    <ion-item *ngIf="deviceInfo.browserLanguage" (longPress)="copyItemInfo($event)">
-        <ion-label class="ion-text-wrap">
-            <h2>{{ 'core.settings.navigatorlanguage' | translate }}</h2>
-            <p>{{ deviceInfo.browserLanguage }}</p>
-        </ion-label>
-    </ion-item>
-    <ion-item *ngIf="deviceInfo.currentLanguage" (longPress)="copyItemInfo($event)">
-        <ion-label class="ion-text-wrap">
-            <h2>{{ 'core.settings.currentlanguage' | translate }}</h2>
-            <p>{{ currentLangName }} ({{ deviceInfo.currentLanguage }})</p>
-        </ion-label>
-    </ion-item>
-    <ion-item *ngIf="deviceInfo.locationHref" (longPress)="copyItemInfo($event)">
-        <ion-label class="ion-text-wrap">
-            <h2>{{ 'core.settings.locationhref' | translate }}</h2>
-            <p>{{ deviceInfo.locationHref }}</p>
-        </ion-label>
-    </ion-item>
-    <ion-item *ngIf="deviceInfo.deviceType" (longPress)="copyItemInfo($event)">
-        <ion-label class="ion-text-wrap">
-            <h2>{{ 'core.settings.displayformat' | translate }}</h2>
-            <p>{{ 'core.' + deviceInfo.deviceType | translate }}</p>
-        </ion-label>
-    </ion-item>
-    <ion-item *ngIf="deviceInfo.deviceOs && deviceOsTranslated" (longPress)="copyItemInfo($event)">
-        <ion-label class="ion-text-wrap">
-            <h2>{{ 'core.settings.deviceos' | translate}}</h2>
-            <p>{{ deviceOsTranslated }}</p>
-        </ion-label>
-    </ion-item>
-    <ion-item *ngIf="deviceInfo.screen" (longPress)="copyItemInfo($event)">
-        <ion-label class="ion-text-wrap">
-            <h2>{{ 'core.settings.screen' | translate }}</h2>
-            <p>{{ deviceInfo.screen }}</p>
-        </ion-label>
-    </ion-item>
-    <ion-item (longPress)="copyItemInfo($event)">
-        <ion-label class="ion-text-wrap">
-            <h2>{{ 'core.settings.networkstatus' | translate}}</h2>
-            <p>{{ 'core.' + deviceInfo.networkStatus | translate }}</p>
-        </ion-label>
-    </ion-item>
-    <ion-item (longPress)="copyItemInfo($event)">
-        <ion-label class="ion-text-wrap">
-            <h2>{{ 'core.settings.wificonnection' | translate}}</h2>
-            <p>{{ 'core.' + deviceInfo.wifiConnection | translate }}</p>
-        </ion-label>
-    </ion-item>
-    <ion-item *ngIf="deviceInfo.cordovaVersion" (longPress)="copyItemInfo($event)">
-        <ion-label class="ion-text-wrap">
-            <h2>{{ 'core.settings.cordovaversion' | translate }}</h2>
-            <p>{{ deviceInfo.cordovaVersion }}</p>
-        </ion-label>
-    </ion-item>
-    <ion-item *ngIf="deviceInfo.platform" (longPress)="copyItemInfo($event)">
-        <ion-label class="ion-text-wrap">
-            <h2>{{ 'core.settings.cordovadeviceplatform' | translate }}</h2>
-            <p>{{ deviceInfo.platform }}</p>
-        </ion-label>
-    </ion-item>
-    <ion-item *ngIf="deviceInfo.osVersion" (longPress)="copyItemInfo($event)">
-        <ion-label class="ion-text-wrap">
-            <h2>{{ 'core.settings.cordovadeviceosversion' | translate }}</h2>
-            <p>{{ deviceInfo.osVersion }}</p>
-        </ion-label>
-    </ion-item>
-    <ion-item *ngIf="deviceInfo.model" (longPress)="copyItemInfo($event)">
-        <ion-label class="ion-text-wrap">
-            <h2>{{ 'core.settings.cordovadevicemodel' | translate}}</h2>
-            <p>{{ deviceInfo.model }}</p>
-        </ion-label>
-    </ion-item>
-    <ion-item *ngIf="deviceInfo.uuid" (longPress)="copyItemInfo($event)">
-        <ion-label class="ion-text-wrap">
-            <h2>{{ 'core.settings.cordovadeviceuuid' | translate}}</h2>
-            <p>{{ deviceInfo.uuid }}</p>
-        </ion-label>
-    </ion-item>
-    <ion-item *ngIf="deviceInfo.pushId" (longPress)="copyItemInfo($event)">
-        <ion-label class="ion-text-wrap">
-            <h2>{{ 'core.settings.pushid' | translate }}</h2>
-            <p>{{ deviceInfo.pushId }}</p>
-        </ion-label>
-    </ion-item>
-    <ion-item (longPress)="copyItemInfo($event)">
-        <ion-label class="ion-text-wrap">
-            <h2>{{ 'core.settings.localnotifavailable' | translate }}</h2>
-            <p>{{ 'core.' + deviceInfo.localNotifAvailable | translate }}</p>
-        </ion-label>
-    </ion-item>
+    <ion-list>
+        <ion-item (longPress)="copyItemInfo($event)">
+            <ion-label class="ion-text-wrap">
+                <h2>{{ 'core.settings.appversion' | translate}}</h2>
+                <p>{{ deviceInfo.versionName }} ({{ deviceInfo.versionCode }})</p>
+            </ion-label>
+        </ion-item>
+        <ion-item (longPress)="copyItemInfo($event)">
+            <ion-label class="ion-text-wrap">
+                <h2>{{ 'core.settings.compilationinfo' | translate }}</h2>
+                <p *ngIf="deviceInfo.compilationTime">{{ deviceInfo.compilationTime | coreFormatDate: "LLL Z": false }}</p>
+                <p *ngIf="deviceInfo.lastCommit">{{ deviceInfo.lastCommit }}</p>
+            </ion-label>
+        </ion-item>
+        <ion-item *ngIf="deviceInfo.siteUrl" (longPress)="copyItemInfo($event)">
+            <ion-label class="ion-text-wrap">
+                <h2>{{ 'core.settings.siteinfo' | translate }}<ng-container *ngIf="deviceInfo.isPrefixedUrl"> *</ng-container></h2>
+                <p><a [href]="deviceInfo.siteUrl" core-link auto-login="yes">{{ deviceInfo.siteUrl }}</a></p>
+                <p *ngIf="deviceInfo.siteVersion">{{ deviceInfo.siteVersion }}</p>
+                <p *ngIf="deviceInfo.siteId">{{ deviceInfo.siteId }}</p>
+            </ion-label>
+        </ion-item>
+        <ion-item *ngIf="deviceInfo.fileSystemRoot" (longPress)="copyItemInfo($event)">
+            <ion-label class="ion-text-wrap">
+                <h2>{{ 'core.settings.filesystemroot' | translate }}</h2>
+                <p>
+                    <a *ngIf="fsClickable" [href]="deviceInfo.fileSystemRoot" core-link auto-login="no">
+                        {{ deviceInfo.fileSystemRoot }}
+                    </a>
+                </p>
+                <p *ngIf="!fsClickable">{{ deviceInfo.fileSystemRoot }}</p>
+            </ion-label>
+        </ion-item>
+        <ion-item *ngIf="deviceInfo.userAgent" (longPress)="copyItemInfo($event)">
+            <ion-label class="ion-text-wrap">
+                <h2>{{ 'core.settings.navigatoruseragent' | translate }}</h2>
+                <p>{{ deviceInfo.userAgent }}</p>
+            </ion-label>
+        </ion-item>
+        <ion-item *ngIf="deviceInfo.browserLanguage" (longPress)="copyItemInfo($event)">
+            <ion-label class="ion-text-wrap">
+                <h2>{{ 'core.settings.navigatorlanguage' | translate }}</h2>
+                <p>{{ deviceInfo.browserLanguage }}</p>
+            </ion-label>
+        </ion-item>
+        <ion-item *ngIf="deviceInfo.currentLanguage" (longPress)="copyItemInfo($event)">
+            <ion-label class="ion-text-wrap">
+                <h2>{{ 'core.settings.currentlanguage' | translate }}</h2>
+                <p>{{ currentLangName }} ({{ deviceInfo.currentLanguage }})</p>
+            </ion-label>
+        </ion-item>
+        <ion-item *ngIf="deviceInfo.locationHref" (longPress)="copyItemInfo($event)">
+            <ion-label class="ion-text-wrap">
+                <h2>{{ 'core.settings.locationhref' | translate }}</h2>
+                <p>{{ deviceInfo.locationHref }}</p>
+            </ion-label>
+        </ion-item>
+        <ion-item *ngIf="deviceInfo.deviceType" (longPress)="copyItemInfo($event)">
+            <ion-label class="ion-text-wrap">
+                <h2>{{ 'core.settings.displayformat' | translate }}</h2>
+                <p>{{ 'core.' + deviceInfo.deviceType | translate }}</p>
+            </ion-label>
+        </ion-item>
+        <ion-item *ngIf="deviceInfo.deviceOs && deviceOsTranslated" (longPress)="copyItemInfo($event)">
+            <ion-label class="ion-text-wrap">
+                <h2>{{ 'core.settings.deviceos' | translate}}</h2>
+                <p>{{ deviceOsTranslated }}</p>
+            </ion-label>
+        </ion-item>
+        <ion-item *ngIf="deviceInfo.screen" (longPress)="copyItemInfo($event)">
+            <ion-label class="ion-text-wrap">
+                <h2>{{ 'core.settings.screen' | translate }}</h2>
+                <p>{{ deviceInfo.screen }}</p>
+            </ion-label>
+        </ion-item>
+        <ion-item (longPress)="copyItemInfo($event)">
+            <ion-label class="ion-text-wrap">
+                <h2>{{ 'core.settings.networkstatus' | translate}}</h2>
+                <p>{{ 'core.' + deviceInfo.networkStatus | translate }}</p>
+            </ion-label>
+        </ion-item>
+        <ion-item (longPress)="copyItemInfo($event)">
+            <ion-label class="ion-text-wrap">
+                <h2>{{ 'core.settings.wificonnection' | translate}}</h2>
+                <p>{{ 'core.' + deviceInfo.wifiConnection | translate }}</p>
+            </ion-label>
+        </ion-item>
+        <ion-item *ngIf="deviceInfo.cordovaVersion" (longPress)="copyItemInfo($event)">
+            <ion-label class="ion-text-wrap">
+                <h2>{{ 'core.settings.cordovaversion' | translate }}</h2>
+                <p>{{ deviceInfo.cordovaVersion }}</p>
+            </ion-label>
+        </ion-item>
+        <ion-item *ngIf="deviceInfo.platform" (longPress)="copyItemInfo($event)">
+            <ion-label class="ion-text-wrap">
+                <h2>{{ 'core.settings.cordovadeviceplatform' | translate }}</h2>
+                <p>{{ deviceInfo.platform }}</p>
+            </ion-label>
+        </ion-item>
+        <ion-item *ngIf="deviceInfo.osVersion" (longPress)="copyItemInfo($event)">
+            <ion-label class="ion-text-wrap">
+                <h2>{{ 'core.settings.cordovadeviceosversion' | translate }}</h2>
+                <p>{{ deviceInfo.osVersion }}</p>
+            </ion-label>
+        </ion-item>
+        <ion-item *ngIf="deviceInfo.model" (longPress)="copyItemInfo($event)">
+            <ion-label class="ion-text-wrap">
+                <h2>{{ 'core.settings.cordovadevicemodel' | translate}}</h2>
+                <p>{{ deviceInfo.model }}</p>
+            </ion-label>
+        </ion-item>
+        <ion-item *ngIf="deviceInfo.uuid" (longPress)="copyItemInfo($event)">
+            <ion-label class="ion-text-wrap">
+                <h2>{{ 'core.settings.cordovadeviceuuid' | translate}}</h2>
+                <p>{{ deviceInfo.uuid }}</p>
+            </ion-label>
+        </ion-item>
+        <ion-item *ngIf="deviceInfo.pushId" (longPress)="copyItemInfo($event)">
+            <ion-label class="ion-text-wrap">
+                <h2>{{ 'core.settings.pushid' | translate }}</h2>
+                <p>{{ deviceInfo.pushId }}</p>
+            </ion-label>
+        </ion-item>
+        <ion-item (longPress)="copyItemInfo($event)">
+            <ion-label class="ion-text-wrap">
+                <h2>{{ 'core.settings.localnotifavailable' | translate }}</h2>
+                <p>{{ 'core.' + deviceInfo.localNotifAvailable | translate }}</p>
+            </ion-label>
+        </ion-item>
+    </ion-list>
 </ion-content>
diff --git a/src/core/features/settings/pages/general/general.html b/src/core/features/settings/pages/general/general.html
index faaded554..a859ca45f 100644
--- a/src/core/features/settings/pages/general/general.html
+++ b/src/core/features/settings/pages/general/general.html
@@ -8,73 +8,75 @@
     </ion-toolbar>
 </ion-header>
 <ion-content>
-    <ion-item class="ion-text-wrap">
-        <ion-label>
-            <h2>{{ 'core.settings.language' | translate }}</h2>
-        </ion-label>
-        <ion-select [(ngModel)]="selectedLanguage" (ionChange)="languageChanged()" interface="action-sheet"
-            [interfaceOptions]="{header: 'core.settings.language' | translate}">
-            <ion-select-option *ngFor="let entry of languages" [value]="entry.code">{{ entry.name }}</ion-select-option>
-        </ion-select>
-    </ion-item>
-    <ion-item class="ion-text-wrap core-settings-general-font-size item-interactive">
-        <ion-label>
-            <h2>{{ 'core.settings.fontsize' | translate }}</h2>
-        </ion-label>
-        <ion-segment [(ngModel)]="selectedZoomLevel" (ionChange)="zoomLevelChanged()" color="primary">
-            <ion-segment-button *ngFor="let zoomLevel of zoomLevels" [value]="zoomLevel.value"
-                [ngStyle]="{'font-size.px': zoomLevel.style}">
-                <ion-label>
-                    {{ 'core.settings.fontsizecharacter' | translate }}
-                    <!-- Empty element styled with the largest font size, so all buttons share a common baseline. -->
-                    <span [ngStyle]="{'font-size.px': zoomLevels[zoomLevels.length - 1].style}"></span>
-                </ion-label>
-            </ion-segment-button>
-        </ion-segment>
-    </ion-item>
-    <ion-item class="ion-text-wrap core-settings-general-color-scheme" *ngIf="colorSchemes.length > 0"
-        [lines]="selectedScheme=='system' && isAndroid ? 'none' : 'inset'">
-        <ion-label>
-            <h2>{{ 'core.settings.colorscheme' | translate }}</h2>
-            <p *ngIf="colorSchemeDisabled" class="text-danger">{{ 'core.settings.forcedsetting' | translate }}</p>
-        </ion-label>
-        <ion-select [(ngModel)]="selectedScheme" (ionChange)="colorSchemeChanged()" interface="action-sheet"
-            [disabled]="colorSchemeDisabled" [interfaceOptions]="{header: 'core.settings.colorscheme' | translate}">
-            <ion-select-option *ngFor="let scheme of colorSchemes" [value]="scheme">
-                {{ 'core.settings.colorscheme-' + scheme | translate }}</ion-select-option>
-        </ion-select>
-    </ion-item>
-    <ion-item text-wrap *ngIf="colorSchemes.length > 0 && selectedScheme=='system' && isAndroid">
-        <ion-label><p>{{ 'core.settings.colorscheme-system-notice' | translate }}</p></ion-label>
-    </ion-item>
-    <ion-item class="ion-text-wrap">
-        <ion-label>
-            <h2>{{ 'core.settings.enablerichtexteditor' | translate }}</h2>
-            <p>{{ 'core.settings.enablerichtexteditordescription' | translate }}</p>
-        </ion-label>
-        <ion-toggle [(ngModel)]="richTextEditor" (ionChange)="richTextEditorChanged()"></ion-toggle>
-    </ion-item>
-    <ion-item class="ion-text-wrap" *ngIf="displayIframeHelp">
-        <ion-label>
-            <h2>{{ 'core.settings.ioscookies' | translate }}</h2>
-            <p>{{ 'core.settings.ioscookiesdescription' | translate }}</p>
-            <ion-button expand="block" (click)="openNativeSettings()">
-                {{ 'core.opensettings' | translate }}
-            </ion-button>
-        </ion-label>
-    </ion-item>
-    <ion-item class="ion-text-wrap">
-        <ion-label>
-            <h2>{{ 'core.settings.debugdisplay' | translate }}</h2>
-            <p>{{ 'core.settings.debugdisplaydescription' | translate }}</p>
-        </ion-label>
-        <ion-toggle [(ngModel)]="debugDisplay" (ionChange)="debugDisplayChanged()"></ion-toggle>
-    </ion-item>
-    <ion-item class="ion-text-wrap" *ngIf="analyticsSupported">
-        <ion-label>
-            <h2>{{ 'core.settings.enablefirebaseanalytics' | translate }}</h2>
-            <p>{{ 'core.settings.enablefirebaseanalyticsdescription' | translate }}</p>
-        </ion-label>
-        <ion-toggle [(ngModel)]="analyticsEnabled" (ionChange)="analyticsEnabledChanged()"></ion-toggle>
-    </ion-item>
+    <ion-list>
+        <ion-item class="ion-text-wrap">
+            <ion-label>
+                <h2>{{ 'core.settings.language' | translate }}</h2>
+            </ion-label>
+            <ion-select [(ngModel)]="selectedLanguage" (ionChange)="languageChanged()" interface="action-sheet"
+                [interfaceOptions]="{header: 'core.settings.language' | translate}">
+                <ion-select-option *ngFor="let entry of languages" [value]="entry.code">{{ entry.name }}</ion-select-option>
+            </ion-select>
+        </ion-item>
+        <ion-item class="ion-text-wrap core-settings-general-font-size item-interactive">
+            <ion-label>
+                <h2>{{ 'core.settings.fontsize' | translate }}</h2>
+            </ion-label>
+            <ion-segment [(ngModel)]="selectedZoomLevel" (ionChange)="zoomLevelChanged()" color="primary">
+                <ion-segment-button *ngFor="let zoomLevel of zoomLevels" [value]="zoomLevel.value"
+                    [ngStyle]="{'font-size.px': zoomLevel.style}">
+                    <ion-label>
+                        {{ 'core.settings.fontsizecharacter' | translate }}
+                        <!-- Empty element styled with the largest font size, so all buttons share a common baseline. -->
+                        <span [ngStyle]="{'font-size.px': zoomLevels[zoomLevels.length - 1].style}"></span>
+                    </ion-label>
+                </ion-segment-button>
+            </ion-segment>
+        </ion-item>
+        <ion-item class="ion-text-wrap core-settings-general-color-scheme" *ngIf="colorSchemes.length > 0"
+            [lines]="selectedScheme=='system' && isAndroid ? 'none' : 'inset'">
+            <ion-label>
+                <h2>{{ 'core.settings.colorscheme' | translate }}</h2>
+                <p *ngIf="colorSchemeDisabled" class="text-danger">{{ 'core.settings.forcedsetting' | translate }}</p>
+            </ion-label>
+            <ion-select [(ngModel)]="selectedScheme" (ionChange)="colorSchemeChanged()" interface="action-sheet"
+                [disabled]="colorSchemeDisabled" [interfaceOptions]="{header: 'core.settings.colorscheme' | translate}">
+                <ion-select-option *ngFor="let scheme of colorSchemes" [value]="scheme">
+                    {{ 'core.settings.colorscheme-' + scheme | translate }}</ion-select-option>
+            </ion-select>
+        </ion-item>
+        <ion-item text-wrap *ngIf="colorSchemes.length > 0 && selectedScheme=='system' && isAndroid">
+            <ion-label><p>{{ 'core.settings.colorscheme-system-notice' | translate }}</p></ion-label>
+        </ion-item>
+        <ion-item class="ion-text-wrap">
+            <ion-label>
+                <h2>{{ 'core.settings.enablerichtexteditor' | translate }}</h2>
+                <p>{{ 'core.settings.enablerichtexteditordescription' | translate }}</p>
+            </ion-label>
+            <ion-toggle [(ngModel)]="richTextEditor" (ionChange)="richTextEditorChanged()"></ion-toggle>
+        </ion-item>
+        <ion-item class="ion-text-wrap" *ngIf="displayIframeHelp">
+            <ion-label>
+                <h2>{{ 'core.settings.ioscookies' | translate }}</h2>
+                <p>{{ 'core.settings.ioscookiesdescription' | translate }}</p>
+                <ion-button expand="block" (click)="openNativeSettings()">
+                    {{ 'core.opensettings' | translate }}
+                </ion-button>
+            </ion-label>
+        </ion-item>
+        <ion-item class="ion-text-wrap">
+            <ion-label>
+                <h2>{{ 'core.settings.debugdisplay' | translate }}</h2>
+                <p>{{ 'core.settings.debugdisplaydescription' | translate }}</p>
+            </ion-label>
+            <ion-toggle [(ngModel)]="debugDisplay" (ionChange)="debugDisplayChanged()"></ion-toggle>
+        </ion-item>
+        <ion-item class="ion-text-wrap" *ngIf="analyticsSupported">
+            <ion-label>
+                <h2>{{ 'core.settings.enablefirebaseanalytics' | translate }}</h2>
+                <p>{{ 'core.settings.enablefirebaseanalyticsdescription' | translate }}</p>
+            </ion-label>
+            <ion-toggle [(ngModel)]="analyticsEnabled" (ionChange)="analyticsEnabledChanged()"></ion-toggle>
+        </ion-item>
+    </ion-list>
 </ion-content>
diff --git a/src/core/features/settings/pages/licenses/licenses.html b/src/core/features/settings/pages/licenses/licenses.html
index c6d1949a8..174475380 100644
--- a/src/core/features/settings/pages/licenses/licenses.html
+++ b/src/core/features/settings/pages/licenses/licenses.html
@@ -9,33 +9,34 @@
 </ion-header>
 <ion-content>
     <core-loading [hideUntil]="loaded">
-        <ion-item button *ngIf="error" class="ion-text-wrap" [href]="licensesUrl" core-link auto-login="no">
-            <ion-label>
-                {{ 'core.settings.opensourcelicenses' | translate }}
-            </ion-label>
-            <ion-button [href]="licensesUrl" target="_blank" fill="clear" slot="end" core-link auto-login="no">
-                {{ 'core.view' | translate }}</ion-button>
-        </ion-item>
-
-        <ng-container *ngIf="!error">
-            <ion-item *ngFor="let license of licenses" class="ion-text-wrap">
+        <ion-list>
+            <ion-item button *ngIf="error" class="ion-text-wrap" [href]="licensesUrl" core-link auto-login="no">
                 <ion-label>
-                    <p class="item-heading">
-                        <a *ngIf="license.repository" [href]="license.repository" core-link
-                            auto-login="no">{{ license.name }}</a>
-                        <ng-container *ngIf="!license.repository">{{ license.name }}</ng-container> - {{ license.version }}
-                    </p>
-                    <p class="item-heading" *ngIf="license.publisher">
-                        {{ 'core.settings.publisher' | translate }}{{ 'core.labelsep' | translate }} {{ license.publisher }}
-                    </p>
-                    <p>{{ 'core.settings.license' | translate }}{{ 'core.labelsep' | translate }} {{ license.licenses }}</p>
-                    <p><a *ngIf="license.url" [href]="license.url" core-link auto-login="no">{{ license.url }}</a></p>
-                    <p><a *ngIf="license.email" [href]="'mailto:' + license.email" core-link
-                            auto-login="no">{{ license.email }}</a></p>
+                    {{ 'core.settings.opensourcelicenses' | translate }}
                 </ion-label>
-                <ion-button *ngIf="license.licenseUrl" [href]="license.licenseUrl" target="_blank"
-                    fill="clear" slot="end" core-link auto-login="no">{{ 'core.view' | translate }}</ion-button>
+                <ion-button [href]="licensesUrl" target="_blank" fill="clear" slot="end" core-link auto-login="no">
+                    {{ 'core.view' | translate }}</ion-button>
             </ion-item>
-        </ng-container>
+            <ng-container *ngIf="!error">
+                <ion-item *ngFor="let license of licenses" class="ion-text-wrap">
+                    <ion-label>
+                        <p class="item-heading">
+                            <a *ngIf="license.repository" [href]="license.repository" core-link
+                                auto-login="no">{{ license.name }}</a>
+                            <ng-container *ngIf="!license.repository">{{ license.name }}</ng-container> - {{ license.version }}
+                        </p>
+                        <p class="item-heading" *ngIf="license.publisher">
+                            {{ 'core.settings.publisher' | translate }}{{ 'core.labelsep' | translate }} {{ license.publisher }}
+                        </p>
+                        <p>{{ 'core.settings.license' | translate }}{{ 'core.labelsep' | translate }} {{ license.licenses }}</p>
+                        <p><a *ngIf="license.url" [href]="license.url" core-link auto-login="no">{{ license.url }}</a></p>
+                        <p><a *ngIf="license.email" [href]="'mailto:' + license.email" core-link
+                                auto-login="no">{{ license.email }}</a></p>
+                    </ion-label>
+                    <ion-button *ngIf="license.licenseUrl" [href]="license.licenseUrl" target="_blank"
+                        fill="clear" slot="end" core-link auto-login="no">{{ 'core.view' | translate }}</ion-button>
+                </ion-item>
+            </ng-container>
+        </ion-list>
     </core-loading>
 </ion-content>
diff --git a/src/core/features/settings/pages/space-usage/space-usage.html b/src/core/features/settings/pages/space-usage/space-usage.html
index 54e988183..865cc082e 100644
--- a/src/core/features/settings/pages/space-usage/space-usage.html
+++ b/src/core/features/settings/pages/space-usage/space-usage.html
@@ -18,30 +18,32 @@
         <ion-refresher-content pullingText="{{ 'core.pulltorefresh' | translate }}"></ion-refresher-content>
     </ion-refresher>
     <core-loading [hideUntil]="loaded">
-        <ion-item *ngFor="let site of sites" [attr.aria-current]="site.id == currentSiteId ? 'page' : 'false'">
-            <ion-label class="ion-text-wrap">
-                <p class="item-heading">
-                    <core-format-text [text]="site.siteName" clean="true" [siteId]="site.id"></core-format-text>
+        <ion-list>
+            <ion-item *ngFor="let site of sites" [attr.aria-current]="site.id == currentSiteId ? 'page' : 'false'">
+                <ion-label class="ion-text-wrap">
+                    <p class="item-heading">
+                        <core-format-text [text]="site.siteName" clean="true" [siteId]="site.id"></core-format-text>
+                    </p>
+                    <p class="ion-text-wrap">{{ site.fullName }}</p>
+                    <p>{{ site.siteUrl }}</p>
+                </ion-label>
+                <p *ngIf="site.spaceUsage !== undefined" slot="end">
+                    {{ site.spaceUsage | coreBytesToSize }}
                 </p>
-                <p class="ion-text-wrap">{{ site.fullName }}</p>
-                <p>{{ site.siteUrl }}</p>
-            </ion-label>
-            <p *ngIf="site.spaceUsage !== undefined" slot="end">
-                {{ site.spaceUsage | coreBytesToSize }}
-            </p>
-            <ion-button fill="clear" color="danger" slot="end" (click)="deleteSiteStorage(site)"
-                [hidden]="site.spaceUsage! + site.cacheEntries! <= 0"
-                [attr.aria-label]="'core.settings.deletesitefilestitle' | translate">
-                <ion-icon name="fas-trash" slot="icon-only" aria-hidden="true"></ion-icon>
-            </ion-button>
-        </ion-item>
-        <ion-item-divider>
-            <ion-label>
-                <h2>{{ 'core.settings.total' | translate }}</h2>
-            </ion-label>
-            <p slot="end" class="ion-margin-end">
-                {{ totals.spaceUsage | coreBytesToSize }}
-            </p>
-        </ion-item-divider>
+                <ion-button fill="clear" color="danger" slot="end" (click)="deleteSiteStorage(site)"
+                    [hidden]="site.spaceUsage! + site.cacheEntries! <= 0"
+                    [attr.aria-label]="'core.settings.deletesitefilestitle' | translate">
+                    <ion-icon name="fas-trash" slot="icon-only" aria-hidden="true"></ion-icon>
+                </ion-button>
+            </ion-item>
+            <ion-item-divider>
+                <ion-label>
+                    <h2>{{ 'core.settings.total' | translate }}</h2>
+                </ion-label>
+                <p slot="end" class="ion-margin-end">
+                    {{ totals.spaceUsage | coreBytesToSize }}
+                </p>
+            </ion-item-divider>
+        </ion-list>
     </core-loading>
 </ion-content>
diff --git a/src/core/features/settings/pages/synchronization/synchronization.html b/src/core/features/settings/pages/synchronization/synchronization.html
index a7bc6f784..1808a9cc7 100644
--- a/src/core/features/settings/pages/synchronization/synchronization.html
+++ b/src/core/features/settings/pages/synchronization/synchronization.html
@@ -15,35 +15,37 @@
 </ion-header>
 <ion-content>
     <core-loading [hideUntil]="sitesLoaded">
-        <ion-item-divider>
-            <ion-label>
-                <h2>{{ 'core.settings.syncsettings' | translate }}</h2>
-            </ion-label>
-        </ion-item-divider>
-        <ion-item class="ion-text-wrap">
-            <ion-label>{{ 'core.settings.enablesyncwifi' | translate }}</ion-label>
-            <ion-toggle slot="end" [(ngModel)]="syncOnlyOnWifi" (ngModelChange)="syncOnlyOnWifiChanged()">
-            </ion-toggle>
-        </ion-item>
-        <ion-item-divider>
-            <ion-label>
-                <h2>{{ 'core.settings.sites' | translate }}</h2>
-            </ion-label>
-        </ion-item-divider>
-        <ion-item *ngFor="let site of sites" [attr.aria-current]="site.id == currentSiteId ? 'page' : 'false'" class="ion-text-wrap">
-            <ion-label>
-                <p class="item-heading">
-                    <core-format-text [text]="site.siteName" clean="true" [siteId]="site.id"></core-format-text>
-                </p>
-                <p>{{ site.fullName }}</p>
-                <p>{{ site.siteUrl }}</p>
-            </ion-label>
-            <core-button-with-spinner [loading]="isSynchronizing(site.id)" slot="end">
-                <ion-button fill="clear"  (click)="synchronize(site.id)"
-                    [title]="site.siteName" [attr.aria-label]="'core.settings.synchronizenow' | translate">
-                    <ion-icon name="fas-sync-alt" slot="icon-only" aria-hidden="true"></ion-icon>
-                </ion-button>
-            </core-button-with-spinner>
-        </ion-item>
+        <ion-list>
+            <ion-item-divider>
+                <ion-label>
+                    <h2>{{ 'core.settings.syncsettings' | translate }}</h2>
+                </ion-label>
+            </ion-item-divider>
+            <ion-item class="ion-text-wrap">
+                <ion-label>{{ 'core.settings.enablesyncwifi' | translate }}</ion-label>
+                <ion-toggle slot="end" [(ngModel)]="syncOnlyOnWifi" (ngModelChange)="syncOnlyOnWifiChanged()">
+                </ion-toggle>
+            </ion-item>
+            <ion-item-divider>
+                <ion-label>
+                    <h2>{{ 'core.settings.sites' | translate }}</h2>
+                </ion-label>
+            </ion-item-divider>
+            <ion-item *ngFor="let site of sites" [attr.aria-current]="site.id == currentSiteId ? 'page' : 'false'" class="ion-text-wrap">
+                <ion-label>
+                    <p class="item-heading">
+                        <core-format-text [text]="site.siteName" clean="true" [siteId]="site.id"></core-format-text>
+                    </p>
+                    <p>{{ site.fullName }}</p>
+                    <p>{{ site.siteUrl }}</p>
+                </ion-label>
+                <core-button-with-spinner [loading]="isSynchronizing(site.id)" slot="end">
+                    <ion-button fill="clear"  (click)="synchronize(site.id)"
+                        [title]="site.siteName" [attr.aria-label]="'core.settings.synchronizenow' | translate">
+                        <ion-icon name="fas-sync-alt" slot="icon-only" aria-hidden="true"></ion-icon>
+                    </ion-button>
+                </core-button-with-spinner>
+            </ion-item>
+        </ion-list>
     </core-loading>
 </ion-content>
diff --git a/src/theme/theme.light.scss b/src/theme/theme.light.scss
index 9016cbe1c..5c4114512 100644
--- a/src/theme/theme.light.scss
+++ b/src/theme/theme.light.scss
@@ -87,7 +87,7 @@
     --core-bottom-tabs-background: var(--black);
     --core-bottom-tabs-color: var(--gray-lighter);
     --core-bottom-tabs-color-selected: var(--brand-color);
-    --core-bottom-tabs-background-selected: var(--core-bottom-tabs-background);
+    --core-bottom-tabs-background-selected: transparent;
     --core-bottom-tabs-badge-color: var(--brand-color);
     --core-bottom-tabs-badge-text-color: var(--brand-color-contrast);
     --bottom-tabs-size: 56px;