.site-speech-reader, .site-speech-reader * { box-sizing: border-box; }
.site-speech-reader {
    position: fixed; z-index: 9998;
    bottom: max(18px, env(safe-area-inset-bottom));
    left: max(18px, env(safe-area-inset-left));
}
.site-speech-toggle {
    display: inline-flex; align-items: center; justify-content: center;
    width: 46px; min-width: 46px; height: 46px; min-height: 46px;
    padding: 0; border: 2px solid #ffffff; border-radius: 50%;
    background: var(--site-button, #047857); color: #ffffff;
    box-shadow: 0 3px 12px rgba(15,23,42,.25); cursor: pointer;
}
.site-speech-toggle:focus-visible { outline: 3px solid #0f172a; outline-offset: 3px; }
.site-speech-toggle:disabled { cursor: not-allowed; opacity: .6; }
.site-speech-toggle-icon { display: inline-flex; font-size: 18px; line-height: 1; }
html body #siteSpeechToggle .site-speech-toggle-icon,
html body #siteSpeechToggle i, html body #siteSpeechToggle i::before {
    color: #ffffff !important; -webkit-text-fill-color: #ffffff !important;
}
/* Announce playback/errors to assistive technology without a visible popup. */
.site-speech-announcement {
    position: absolute !important; width: 1px !important; height: 1px !important;
    padding: 0 !important; margin: -1px !important; overflow: hidden !important;
    clip: rect(0,0,0,0) !important; clip-path: inset(50%) !important;
    white-space: nowrap !important; border: 0 !important;
}
@media (max-width: 640px) {
    .site-speech-reader { bottom: max(12px, env(safe-area-inset-bottom)); left: max(12px, env(safe-area-inset-left)); }
    .site-speech-toggle { width: 44px; min-width: 44px; height: 44px; min-height: 44px; }
}
@media print { .site-speech-reader { display: none !important; } }
