diff --git a/backend/frontend/index.html b/backend/frontend/index.html
index 4e2eafe..1bacab4 100644
--- a/backend/frontend/index.html
+++ b/backend/frontend/index.html
@@ -4,7 +4,7 @@
Admin Operations Center
-
+
@@ -184,7 +184,11 @@
-
+
+
+ +
+ −
+
@@ -670,13 +674,19 @@
this.loadEvents();
},
- filterByService(service) {
+ addServiceFilter(service) {
if (!service) return;
if (!this.filters.selectedServices.includes(service)) {
- this.filters.selectedServices = [service];
- } else {
- this.filters.selectedServices = this.filters.selectedServices.filter((s) => s !== service);
+ this.filters.selectedServices.push(service);
+ this.saveFilters();
+ this.resetPagination();
+ this.loadEvents();
}
+ },
+
+ removeServiceFilter(service) {
+ if (!service) return;
+ this.filters.selectedServices = this.filters.selectedServices.filter((s) => s !== service);
this.saveFilters();
this.resetPagination();
this.loadEvents();
diff --git a/backend/frontend/style.css b/backend/frontend/style.css
index ebb07b1..693e689 100644
--- a/backend/frontend/style.css
+++ b/backend/frontend/style.css
@@ -376,6 +376,31 @@ input {
background: rgba(249, 115, 22, 0.25);
}
+.pill__action {
+ display: inline-flex;
+ align-items: center;
+ justify-content: center;
+ width: 16px;
+ height: 16px;
+ border-radius: 4px;
+ margin-left: 4px;
+ font-size: 11px;
+ font-weight: 700;
+ line-height: 1;
+ cursor: pointer;
+ color: var(--muted);
+ background: rgba(255, 255, 255, 0.06);
+ border: 1px solid transparent;
+ transition: all 0.12s ease;
+ vertical-align: middle;
+}
+
+.pill__action:hover {
+ color: var(--text);
+ background: rgba(125, 211, 252, 0.2);
+ border-color: rgba(125, 211, 252, 0.3);
+}
+
.event h3 {
margin: 0 0 6px;
font-size: 17px;