diff --git a/server/templates/case_page.html b/server/templates/case_page.html
index 3ded4e4..5623b91 100644
--- a/server/templates/case_page.html
+++ b/server/templates/case_page.html
@@ -172,6 +172,15 @@
border-radius: 4px;
color: #842029;
}
+ .stale-banner {
+ margin: 1em 0;
+ padding: 0.7em 1em;
+ background: #fff7e6;
+ border: 1px solid #f5a623;
+ border-radius: 4px;
+ color: #8a5a00;
+ font-size: 0.95em;
+ }
.failure-banner strong {
font-size: 1.05em;
}
@@ -495,6 +504,9 @@
{% match document_html %} {% when Some with (html) %}
+ {% if analysis_stale_with_doc %}
+
Analyse nicht aktuell — neue Aufnahmen seit letztem Lauf.
+ {% endif %}
{% if can_analyze %}
diff --git a/server/templates/my_cases.html b/server/templates/my_cases.html
index f39baa2..69e625f 100644
--- a/server/templates/my_cases.html
+++ b/server/templates/my_cases.html
@@ -48,6 +48,11 @@ html.admin-view-off .case-list.has-bulk .case-row { grid-template-columns: 1fr a
.status-badge.open { background: #4a90e2; }
.status-badge.done { background: #7ed321; }
.status-badge.fehler { background: #e24a4a; }
+.status-badge.required { background: #f5a623; }
+
+.required-bar { margin: 1em 0; padding: 0.8em 1em; background: #fff7e6; border: 1px solid #f5a623; border-radius: 4px; display: flex; gap: 0.6em; align-items: center; }
+.required-bar button { font-size: 0.9em; padding: 0.5em 1em; }
+.required-bar .count { font-weight: bold; color: #8a5a00; }
.case-row .actions { display: flex; gap: 0.4em; align-items: center; }
.case-row .actions button { font-size: 0.85em; padding: 0.35em 0.8em; }
.case-row .actions .delete-btn { padding: 0.3em; background: transparent; border: none; color: #888; cursor: pointer; display: inline-flex; align-items: center; line-height: 0; border-radius: 4px; transition: color 0.15s, background 0.15s; }
@@ -101,6 +106,13 @@ try {
{% if total == 0 %}
{% if show_closed %}Keine offenen oder geschlossenen Fälle.{% else %}Keine Fälle.{% endif %}
{% else %}
+{% if required_count > 0 %}
+
+{% endif %}