/* Real pending actions, not a simulated percentage. */
.pos-action-busy{position:relative!important;cursor:wait!important;opacity:.82;background-image:linear-gradient(110deg,transparent 25%,rgba(127,170,180,.3) 45%,transparent 65%)!important;background-size:240% 100%!important;animation:pos-action-sweep 1.2s linear infinite!important}
button.pos-action-busy::after,a.pos-action-busy::after{content:"";display:inline-block;vertical-align:middle;width:12px;height:12px;margin-inline-start:8px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:pos-action-spin .8s linear infinite}
/* Keep progress announcements available to screen readers without a visible overlay. */
.pos-action-status{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;pointer-events:none!important}
.pos-action-status[hidden]{display:none!important}
button,a.pos-btn,a.pos-admin-button,input[type=submit]{transition:filter .15s ease,box-shadow .15s ease}
button:active,a.pos-btn:active,a.pos-admin-button:active,input[type=submit]:active{filter:brightness(.9)}
@keyframes pos-action-spin{to{transform:rotate(360deg)}}
@keyframes pos-action-sweep{from{background-position:140% 0}to{background-position:-100% 0}}
@media(prefers-reduced-motion:reduce){.pos-action-busy,.pos-action-busy::after{animation:none!important}button,a.pos-btn,a.pos-admin-button,input[type=submit]{transition:none}}
