/* Cloud reading controls stay in the current document flow. */
.speech-player-host[hidden] {display:none!important;}
html body .speech-player,html body .speech-settings {min-width:0;border:1px solid var(--line,#e8e4e7);background:#fff;border-radius:12px;padding:22px;margin:20px 0;color:var(--ink,#292b36);overflow:visible;}
html body :is(.speech-player,.speech-settings) * {box-sizing:border-box;min-width:0;}
html body :is(.speech-player,.speech-settings)>header {display:flex;justify-content:space-between;align-items:start;gap:16px;}
html body :is(.speech-player,.speech-settings) h2 {font-size:22px;line-height:1.6;font-weight:500;margin:6px 0 12px;}
html body :is(.speech-message,.speech-settings-message) {font-size:17px;line-height:1.8;white-space:pre-wrap;overflow-wrap:anywhere;}
html body :is(.speech-message,.speech-settings-message):empty {display:none;}
html body :is(.speech-segment,.speech-note,.speech-settings-facts,.speech-settings label) {font-size:16px;line-height:1.85;overflow-wrap:anywhere;}
html body .speech-note {color:var(--muted,#817887);margin:12px 0;}
html body .speech-actions {display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:14px 0;}
html body .speech-text {border-top:1px solid var(--line,#e8e4e7);padding-top:13px;margin-top:18px;}
html body .speech-text summary {font-size:16px;line-height:1.8;cursor:pointer;}
html body .speech-text p {font-size:18px;line-height:2;white-space:pre-wrap;overflow-wrap:anywhere;max-height:none;overflow:visible;}
html body .speech-settings-facts {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:20px 0;}
html body .speech-settings-facts dt {color:var(--muted,#817887);}
html body .speech-settings-facts dd {margin:6px 0 0;}
html body [data-speech-settings-form] {display:grid;gap:18px;}
html body .speech-settings label {display:grid;gap:8px;}
html body .speech-settings :is(select,textarea) {width:100%;max-width:100%;font:inherit;color:inherit;background:#fff;border:1px solid var(--line,#e8e4e7);border-radius:8px;padding:12px;}
html body .speech-settings select {height:auto;white-space:normal;text-overflow:clip;}
html body .speech-settings textarea {min-height:120px;resize:vertical;overflow:hidden;line-height:1.9;}
html body .speech-settings .speech-setting-toggle {display:flex;align-items:center;gap:10px;}
html body .speech-setting-toggle input {width:20px;height:20px;}
html body :is(.speech-settings-unknown,.speech-settings-conflict) {padding:16px;border:1px solid #ead9df;border-radius:9px;background:#fcf6f8;color:var(--accent,#983451);font-size:16px;line-height:1.9;overflow-wrap:anywhere;}
html body .admin-speech-entry {border-top:1px solid var(--line,#e8e4e7);margin-top:24px;padding-top:24px;}
html body :is(.speech-player,.speech-settings) :is(button,a,select,textarea):focus-visible {outline:2px solid var(--blue,#456dab);outline-offset:3px;}
@media(max-width:650px){html body :is(.speech-player,.speech-settings){padding:16px;margin:16px 0;}html body :is(.speech-player,.speech-settings)>header {flex-direction:column;}html body :is(.speech-player,.speech-settings) h2 {font-size:20px;}html body .speech-settings-facts {grid-template-columns:1fr;gap:12px;}html body .speech-text p {font-size:17px;}html body .speech-actions .btn {flex:1 1 auto;}}
@media(prefers-reduced-motion:reduce){html body .speech-player,html body .speech-settings{animation:none!important;transition:none!important;}}
