diff --git a/ml/monitor.html b/ml/monitor.html
index 9a4e757..f3bc05a 100644
--- a/ml/monitor.html
+++ b/ml/monitor.html
@@ -56,6 +56,14 @@
.step.done .ic { background: #34d39922; border-color: var(--ok); color: var(--ok); }
.step.active .ic { background: #5aa9ff22; border-color: var(--accent); color: var(--accent); box-shadow: 0 0 0 4px #5aa9ff1f; }
.step.fail .ic { background: #f8717122; border-color: var(--bad); color: var(--bad); }
+ .step.fail .ds { color: var(--bad); font-weight: 650; font-size: 12px; }
+ .alert { border-radius: 12px; padding: 13px 16px; margin: 2px 0 0; border: 1px solid; }
+ .alert.bad { background: linear-gradient(180deg,#7f1d1d66,#450a0a55); border-color: #f8717199; box-shadow: 0 0 0 1px #f8717122, 0 8px 26px #00000066; }
+ .alert.warn { background: #78350f55; border-color: #fbbf2488; }
+ .alert .alerth { font-size: 17px; font-weight: 700; color: #ffe3e3; letter-spacing: .2px; }
+ .alert.warn .alerth { color: #ffeccd; }
+ .alert .alerterr { font: 500 12.5px/1.5 var(--mono); color: #ffb4b4; margin-top: 7px; word-break: break-all; }
+ .alert .alerttip { font-size: 12.5px; color: #f0d9d9cc; margin-top: 7px; }
.step .nm { font-size: 12.5px; color: var(--text); white-space: nowrap; } .step .ds { font-size: 11px; color: var(--dim2); white-space: nowrap; }
.step .ds.big { font-size: 14px; font-weight: 650; color: var(--accent); }
.step.pending .nm { color: var(--dim); }
@@ -171,6 +179,7 @@
+
@@ -211,6 +220,27 @@
+
+