diff --git a/app/web/templates/_summary_cards.html b/app/web/templates/_summary_cards.html
new file mode 100644
index 0000000..036a8c4
--- /dev/null
+++ b/app/web/templates/_summary_cards.html
@@ -0,0 +1,9 @@
+
+ {% for card in summary_cards %}
+
+ {{ card.label }}
+ {{ card.value }}
+ {{ card.caption }}
+
+ {% endfor %}
+
diff --git a/app/web/templates/_selector_form.html b/app/web/templates/_team_selector_form.html
similarity index 90%
rename from app/web/templates/_selector_form.html
rename to app/web/templates/_team_selector_form.html
index 53abacd..75ce4f2 100644
--- a/app/web/templates/_selector_form.html
+++ b/app/web/templates/_team_selector_form.html
@@ -1,6 +1,6 @@
-{# Shared team/season/window controls. Both metric pages post to their own path
- via form_action, so one selector serves both without a second selection
- system. The route validates the team-season pair on every request. #}
+{# Team-only GET controls for team_id, season, and window. Each Team metric
+ supplies form_action; the Team-season catalog supports season-selector.js.
+ Routes validate the Team-season pair even without JavaScript. #}