diff --git a/client/src/app/components/rdio-scanner/admin/admin.component.ts b/client/src/app/components/rdio-scanner/admin/admin.component.ts
index 21940f8f..6d432a33 100644
--- a/client/src/app/components/rdio-scanner/admin/admin.component.ts
+++ b/client/src/app/components/rdio-scanner/admin/admin.component.ts
@@ -25,6 +25,8 @@ import { AdminEvent, Config, RdioScannerAdminService } from './admin.service';
import { RdioScannerAdminLogsComponent } from './logs/logs.component';
import { RdioScannerAdminConfigComponent } from './config/config.component';
import { RdioScannerAdminToolsComponent } from './tools/tools.component';
+import { TransferUserDialogComponent } from './config/users/transfer-user-dialog.component';
+import { DeleteSystemDialogComponent } from './config/systems/delete-system-dialog.component';
export interface SearchResult {
label: string;
diff --git a/client/src/app/components/rdio-scanner/admin/admin.module.ts b/client/src/app/components/rdio-scanner/admin/admin.module.ts
index b241b844..9d7d5467 100644
--- a/client/src/app/components/rdio-scanner/admin/admin.module.ts
+++ b/client/src/app/components/rdio-scanner/admin/admin.module.ts
@@ -47,6 +47,7 @@ import { RdioScannerAdminUserRegistrationComponent } from './config/user-registr
import { RdioScannerAdminUsersComponent } from './config/users/users.component';
import { InviteUserDialogComponent, InvitationResultsDialogComponent, CreateUserDialogComponent, ResetPasswordDialogComponent } from './config/users/invite-user-dialog.component';
import { TransferUserDialogComponent } from './config/users/transfer-user-dialog.component';
+import { DeleteSystemDialogComponent } from './config/systems/delete-system-dialog.component';
import { RequestAPIKeyDialogComponent } from './config/options/request-api-key-dialog.component';
import { RecoverAPIKeyDialogComponent } from './config/options/recover-api-key-dialog.component';
import { RelayAccountDialogComponent } from './config/options/relay-account-dialog.component';
@@ -105,6 +106,7 @@ import { TalkgroupLocationDialogComponent } from './config/systems/system/talkgr
CreateUserDialogComponent,
ResetPasswordDialogComponent,
TransferUserDialogComponent,
+ DeleteSystemDialogComponent,
RequestAPIKeyDialogComponent,
RecoverAPIKeyDialogComponent,
RelayAccountDialogComponent,
diff --git a/client/src/app/components/rdio-scanner/admin/config/systems/delete-system-dialog.component.ts b/client/src/app/components/rdio-scanner/admin/config/systems/delete-system-dialog.component.ts
new file mode 100644
index 00000000..c9eeef7d
--- /dev/null
+++ b/client/src/app/components/rdio-scanner/admin/config/systems/delete-system-dialog.component.ts
@@ -0,0 +1,85 @@
+/*
+ * *****************************************************************************
+ * Copyright (C) 2025 Thinline Dynamic Solutions
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program. If not, see
+ * ****************************************************************************
+ */
+
+import { Component, Inject } from '@angular/core';
+import { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';
+import { FormBuilder, FormGroup } from '@angular/forms';
+
+export interface DeleteSystemDialogData {
+ /** The system's display name/label the operator must type back exactly. */
+ systemLabel: string;
+}
+
+@Component({
+ selector: 'rdio-scanner-delete-system-dialog',
+ template: `
+
Delete System
+
+
+ This permanently deletes {{ data.systemLabel }} — its talkgroups, sites,
+ units, tone sets, and all associated calls. This cannot be undone.
+