.at-reading-text { white-space: pre-wrap; overflow-wrap: anywhere; line-height: 1.7; }
.at-reading-text ruby, .rtmd-translation ruby { ruby-position: over; ruby-align: center; }
.at-reading-text rt, .rtmd-translation rt { font-size: 0.55em; font-weight: 400; user-select: none; }
.at-reading-controls { display: flex; flex-wrap: wrap; align-items: center; gap: 0.45rem; margin-top: 0.5rem; }
.at-reading-button, .at-reading-language select {
    border: 1px solid var(--at-border, #416071); border-radius: 0.75rem;
    background: var(--at-surface, #15252f); color: var(--at-text-primary, #f1f7fa);
    font: inherit; font-size: 0.8rem; padding: 0.45rem 0.65rem; min-height: 2.4rem;
}
.at-reading-button[aria-pressed="true"] { border-color: var(--at-accent, #46d9c4); background: #204a46; }
.at-reading-button:disabled, .at-reading-language select:disabled { opacity: 0.55; }
.at-reading-button:focus-visible, .at-reading-language select:focus-visible { outline: 2px solid #46d9c4; outline-offset: 2px; }
.at-reading-language { display: flex; flex-wrap: wrap; align-items: center; gap: 0.4rem; font-size: 0.75rem; }
.at-reading-language select { max-width: min(100%, 14rem); }
.at-reading-pronunciation { margin-top: 0.5rem; font-size: 1rem; white-space: pre-wrap; overflow-wrap: anywhere; }
.at-reading-note { margin-top: 0.3rem; color: var(--at-text-secondary, #b9cbd5); font-size: 0.78rem; white-space: pre-wrap; overflow-wrap: anywhere; }
.rtmd-feed .rtmd-translation.has-furigana { line-height: 1.9; white-space: pre-wrap; }
@media (max-width: 420px) { .at-reading-language { flex-basis: 100%; } }
