diff --git a/kjvstudy_org/jinja_filters.py b/kjvstudy_org/jinja_filters.py
index 4799697..f779963 100644
--- a/kjvstudy_org/jinja_filters.py
+++ b/kjvstudy_org/jinja_filters.py
@@ -147,7 +147,11 @@ def link_verse_references_in_text(text):
def inject_word_markers(text, word_studies, verse_num):
- """Inject sidenote markers into verse text next to annotated words"""
+ """Inject sidenote markers into verse text next to annotated words.
+
+ Word studies are collapsed by default, showing only the word and Greek/Hebrew term.
+ Clicking expands to show transliteration and full definition.
+ """
if not word_studies:
return text
@@ -159,7 +163,15 @@ def inject_word_markers(text, word_studies, verse_num):
term_html = f'{study["term"]}'
else:
term_html = study["term"]
- marker = f'{word}: {term_html} ({study["translit"]}). {study["note"]}'
+ # Wrap details (translit + note) in a span that's hidden by default
+ marker = (
+ f''
+ f''
+ f''
+ f'{word}: {term_html}'
+ f' ({study["translit"]}). {study["note"]}'
+ f''
+ )
pattern = re.compile(r'\b(' + re.escape(word) + r')(?!\'[sS])\b', re.IGNORECASE)
text = pattern.sub(r'\1' + marker, text, count=1)
diff --git a/kjvstudy_org/templates/chapter.html b/kjvstudy_org/templates/chapter.html
index e3d72d7..6a6e8dc 100644
--- a/kjvstudy_org/templates/chapter.html
+++ b/kjvstudy_org/templates/chapter.html
@@ -101,6 +101,32 @@
margin-bottom: 1rem;
}
+/* Word studies: collapsed by default, show only word + Greek term */
+.sidenote.word-study {
+ max-height: none;
+ overflow: visible;
+ cursor: pointer;
+}
+
+.sidenote.word-study .word-study-details {
+ display: none;
+}
+
+.sidenote.word-study.expanded .word-study-details {
+ display: inline;
+}
+
+/* Show expand indicator for collapsed word studies */
+.sidenote.word-study:not(.expanded)::after {
+ content: " ▸";
+ font-size: 0.8em;
+ color: var(--text-secondary);
+}
+
+.sidenote.word-study.expanded::after {
+ content: "";
+}
+
@media (max-width: 760px) {
.sidenote,
.marginnote {