.request-spinner{display:inline-block;width:1em;height:1em;margin-inline-end:.5em;vertical-align:-.12em;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:request-spin .8s linear infinite;flex-shrink:0}
.request-status{display:block;margin-top:.65rem;font:inherit;font-size:.875rem;line-height:1.5;color:inherit;overflow-wrap:anywhere}
.request-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;white-space:nowrap!important;border:0!important}
.icon-btn .request-spinner{margin:0}
.request-busy button:disabled,.request-busy:disabled{cursor:wait;opacity:.7}
a.request-busy{pointer-events:none;opacity:.7}
@keyframes request-spin{to{transform:rotate(360deg)}}
@media(prefers-reduced-motion:reduce){.request-spinner{animation:none}}
.image-processing-error{color:#a32036;font:inherit;font-size:14px;margin:16px 0;overflow-wrap:anywhere}
