.story-vocabulary-controls { display: flex; flex-wrap: wrap; align-items: center; gap: .5rem 1rem; margin: 1.25rem 0; font: inherit; }
.story-vocabulary-controls label { display: inline-flex; align-items: center; gap: .5rem; cursor: pointer; font-weight: 600; }
.story-vocabulary-controls input { width: 1rem; height: 1rem; accent-color: var(--color-primary, #164e63); }
.story-vocabulary-controls span { font-size: .875rem; }
.story-reading .story-vocabulary-mark { font-weight: inherit; }
#unit-story .story-reading .story-vocabulary-word { appearance: none; display: inline; margin: 0; padding: 0; border: 0; background: none; font: inherit !important; font-size: 1em !important; color: inherit; text-align: inherit; text-transform: none; letter-spacing: inherit; vertical-align: baseline; text-decoration-line: underline; text-decoration-style: dotted; text-decoration-thickness: 1px; text-underline-offset: .2em; cursor: help; border-radius: 2px; }
.story-reading .story-vocabulary-word:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
.story-reading .story-vocabulary-word:disabled { cursor: text; }
.story-vocabulary-tooltip { position: fixed; z-index: 1000; box-sizing: border-box; max-width: min(20rem, calc(100vw - 24px)); padding: .55rem .85rem; border-radius: .5rem; background: #173d46; color: #fff; box-shadow: 0 4px 16px #0003; font: 500 1rem/1.45 system-ui, sans-serif; overflow-wrap: anywhere; }
.story-vocabulary-tooltip[hidden] { display: none; }
