
.shayos-voice-field-host{position:var(--shayos-voice-host-position,relative)!important}
.shayos-voice-field{box-sizing:border-box!important}
.shayos-voice-field[dir="rtl"],html[dir="rtl"] .shayos-voice-field{padding-left:42px!important}
.shayos-voice-field[dir="ltr"],html[dir="ltr"] .shayos-voice-field{padding-right:42px!important}
.shayos-voice-transcribe{position:absolute!important;transform:none!important;width:32px!important;height:32px!important;min-width:32px!important;padding:0!important;border:0!important;border-radius:50%!important;background:transparent!important;box-shadow:none!important;color:#174b7a!important;display:grid!important;place-items:center!important;z-index:3!important;cursor:pointer!important;font:inherit!important}
.shayos-voice-transcribe.is-listening{outline:2px solid currentColor!important;outline-offset:1px!important}
.shayos-voice-transcribe svg{width:21px!important;height:21px!important;display:block!important}
.shayos-read-inline-host{position:relative!important}
.shayos-read-inline{float:inline-end!important;margin-inline-start:7px!important;margin-block-start:2px!important;width:27px!important;height:27px!important;padding:0!important;border:0!important;border-radius:50%!important;background:transparent!important;box-shadow:none!important;color:#174b7a!important;display:inline-grid!important;place-items:center!important;cursor:pointer!important;vertical-align:text-top!important}
.shayos-read-inline svg{width:19px!important;height:19px!important;display:block!important}
.shayos-read-inline.is-speaking{outline:2px solid currentColor!important;outline-offset:1px!important}

/* 1.60.0 - compact non-layout read controls for textual buttons, grids and notes. */
.shayos-read-control-host{position:relative!important;}
.shayos-read-control{position:absolute!important;z-index:8!important;inset-block-start:3px!important;inset-inline-end:3px!important;width:18px!important;height:18px!important;display:grid!important;place-items:center!important;padding:0!important;margin:0!important;border:0!important;border-radius:50%!important;background:rgba(255,255,255,.72)!important;box-shadow:0 1px 3px rgba(20,63,105,.14)!important;color:#174b7a!important;cursor:pointer!important;line-height:1!important;}
.shayos-read-control svg{display:block!important;width:13px!important;height:13px!important;}
.shayos-read-control.is-compact{width:14px!important;height:14px!important;inset-block-start:2px!important;inset-inline-end:2px!important;background:rgba(255,255,255,.58)!important;}
.shayos-read-control.is-compact svg{width:10px!important;height:10px!important;}
.shayos-read-control.is-tiny{width:11px!important;height:11px!important;inset-block-start:1px!important;inset-inline-end:1px!important;background:rgba(255,255,255,.5)!important;}
.shayos-read-control.is-tiny svg{width:8px!important;height:8px!important;stroke-width:1.5!important;}
.shayos-read-control.is-speaking{outline:1px solid currentColor!important;outline-offset:1px!important;}
body.shayos-a11y-reading-disabled .shayos-read-inline,body.shayos-a11y-reading-disabled .shayos-read-control{display:none!important;}
body.shayos-a11y-transcription-disabled .shayos-voice-transcribe{display:none!important;}


/* 1.60.1 - interactive speaker is vertically centered and remains an overlay. */
.shayos-read-control{inset-block-start:50%!important;transform:translateY(-50%)!important;inset-inline-end:4px!important;}
.shayos-read-control.is-compact{inset-block-start:50%!important;transform:translateY(-50%)!important;inset-inline-end:3px!important;}
.shayos-read-control.is-tiny{inset-block-start:50%!important;transform:translateY(-50%)!important;inset-inline-end:2px!important;}

/* 1.60.9 - button speech controls reserve their own edge area and never sit on label text. */
.shayos-read-control-host:not([data-shayos-read-layout="overlay"]){padding-inline-end:calc(var(--shayos-read-original-padding-end,0px) + 30px)!important}
.shayos-read-control-host .shayos-read-control{inset-inline-end:7px!important}
.shayos-read-control-host .shayos-read-control.is-compact{inset-inline-end:6px!important}
.shayos-read-control-host .shayos-read-control.is-tiny{inset-inline-end:5px!important}

/* 1.61.1 - visual grid cards may request a non-layout, fully transparent read control overlay. */
.shayos-read-control-host[data-shayos-read-layout="overlay"]{padding-inline-end:var(--shayos-read-original-padding-end,0px)!important}
.shayos-read-control-host[data-shayos-read-layout="overlay"]>.shayos-read-control,
.shayos-read-control-host[data-shayos-read-layout="overlay"]>.shayos-read-control.is-compact,
.shayos-read-control-host[data-shayos-read-layout="overlay"]>.shayos-read-control.is-tiny{
  inset-block-start:4px!important;inset-inline-end:4px!important;transform:none!important;
  background:transparent!important;box-shadow:none!important;border:0!important;outline-offset:1px!important;
}


/* 1.61.4 - speech controls are layout-isolated from host plugin button/span rules. */
button.shayos-voice-transcribe{box-sizing:border-box!important;flex:0 0 32px!important;order:2147483647!important;min-height:32px!important;max-height:32px!important;max-width:32px!important;line-height:1!important;overflow:visible!important;-webkit-text-fill-color:currentColor!important;appearance:none!important;-webkit-appearance:none!important}
button.shayos-read-inline{box-sizing:border-box!important;flex:0 0 27px!important;order:2147483647!important;min-width:27px!important;max-width:27px!important;min-height:27px!important;max-height:27px!important;line-height:1!important;overflow:visible!important;-webkit-text-fill-color:currentColor!important;appearance:none!important;-webkit-appearance:none!important}
span.shayos-read-control{box-sizing:border-box!important;flex:0 0 auto!important;order:2147483647!important;min-width:0!important;min-height:0!important;max-width:none!important;max-height:none!important;-webkit-text-fill-color:currentColor!important}
.shayos-voice-transcribe svg,.shayos-read-inline svg,.shayos-read-control svg{flex:none!important;pointer-events:none!important}


/* 1.61.6 - ShaySport global button skin must never style generic speech controls. */
html body.shaysport-shell-global button.shayos-voice-transcribe{position:absolute!important;top:50%!important;transform:translateY(-50%)!important;box-sizing:border-box!important;width:32px!important;min-width:32px!important;max-width:32px!important;height:32px!important;min-height:32px!important;max-height:32px!important;margin:0!important;padding:0!important;border:0!important;border-radius:50%!important;background:transparent!important;background-image:none!important;box-shadow:none!important;color:#174b7a!important;-webkit-text-fill-color:#174b7a!important;display:grid!important;place-items:center!important;line-height:1!important;overflow:visible!important;appearance:none!important;-webkit-appearance:none!important}
html body.shaysport-shell-global button.shayos-read-inline{box-sizing:border-box!important;width:27px!important;min-width:27px!important;max-width:27px!important;height:27px!important;min-height:27px!important;max-height:27px!important;margin-inline-start:7px!important;margin-block-start:2px!important;padding:0!important;border:0!important;border-radius:50%!important;background:transparent!important;background-image:none!important;box-shadow:none!important;color:#174b7a!important;-webkit-text-fill-color:#174b7a!important;display:inline-grid!important;place-items:center!important;line-height:1!important;overflow:visible!important;appearance:none!important;-webkit-appearance:none!important}
html body.shaysport-shell-global .shayos-voice-field-host[dir="rtl"]>button.shayos-voice-transcribe{left:5px!important;right:auto!important}
html body.shaysport-shell-global .shayos-voice-field-host[dir="ltr"]>button.shayos-voice-transcribe{right:5px!important;left:auto!important}


/* 1.64.0 - global transcription listening state */
.shayos-voice-transcribe.is-listening,html body.shaysport-shell-global button.shayos-voice-transcribe.is-listening{color:#c62828!important;-webkit-text-fill-color:#c62828!important;outline-color:#c62828!important;animation:shayosVoiceListeningBlink 1.4s ease-in-out infinite!important}
@keyframes shayosVoiceListeningBlink{0%,100%{opacity:1}50%{opacity:.35}}


/* 1.69.0 - canonical voice controls honor motion reduction */
body.shayos-a11y-reduce-motion .shayos-voice-transcribe.is-listening,
html body.shayos-a11y-reduce-motion button.shayos-voice-transcribe.is-listening{animation:none!important;opacity:1!important}
@media (prefers-reduced-motion: reduce){
  .shayos-voice-transcribe.is-listening,html body.shaysport-shell-global button.shayos-voice-transcribe.is-listening{animation:none!important;opacity:1!important}
}

/* 1.69.0 - voice decoration never reparents editable controls; Samsung/Android IME keeps native composition ownership */
