diff --git a/kjvstudy_org/templates/chapter.html b/kjvstudy_org/templates/chapter.html
index c0d3acb..caa7926 100644
--- a/kjvstudy_org/templates/chapter.html
+++ b/kjvstudy_org/templates/chapter.html
@@ -47,14 +47,6 @@
cursor: pointer;
transition: all 0.3s ease;
position: relative;
- user-select: none;
-}
-
-.sidenote::selection,
-.marginnote::selection,
-.sidenote *::selection,
-.marginnote *::selection {
- background: transparent;
}
label.sidenote-number {
@@ -741,12 +733,22 @@ document.addEventListener('DOMContentLoaded', function() {
});
// Clean copied text to exclude sidenotes, verse numbers, and margin elements
+ // But allow copying if selection is entirely within a sidenote
document.addEventListener('copy', function(e) {
const selection = window.getSelection();
if (!selection.rangeCount) return;
- // Create a document fragment from the selection
const range = selection.getRangeAt(0);
+
+ // Check if selection is entirely within a sidenote or marginnote
+ const container = range.commonAncestorContainer;
+ const parentEl = container.nodeType === Node.TEXT_NODE ? container.parentElement : container;
+ if (parentEl && parentEl.closest('.sidenote, .marginnote')) {
+ // Allow normal copy behavior for sidenote content
+ return;
+ }
+
+ // Create a document fragment from the selection
const fragment = range.cloneContents();
// Create a temporary container