/* Pure circular API loading indicator. No visible loading copy. */
.api-loading-only{display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:0!important;font-size:0!important;line-height:0!important;color:transparent!important;vertical-align:middle}
.api-loading-only>span{display:none!important}
.api-loading-inline.api-loading-only{min-width:30px;min-height:30px}
.api-button-loading.api-loading-only{width:24px;height:24px;margin:auto}
.api-spinner{display:inline-block!important;width:26px!important;height:26px!important;flex:0 0 auto!important;border:3px solid rgba(81,70,229,.16)!important;border-top-color:#5146e5!important;border-radius:50%!important;box-sizing:border-box!important;animation:api-loading-spin .65s linear infinite!important;transform-origin:50% 50%!important;will-change:transform!important;backface-visibility:hidden!important}
.api-spinner.api-spinner-sm{width:17px!important;height:17px!important;border-width:2px!important}
.article-state-loading:before,.auth-message[data-type="loading"]:before{content:none!important;display:none!important}
.article-state-loading{display:grid!important;place-items:center!important}
.article-state-loading .api-spinner{width:30px!important;height:30px!important}
.course-state-loading .api-loading-only,.mock-empty.is-loading .api-loading-only,.orders-empty.is-loading .api-loading-only{margin:auto}
.payment-channel-status.is-loading.api-loading-only{display:flex!important;min-width:24px;min-height:24px;margin:auto}
.auth-message[data-type="loading"]{display:flex!important;align-items:center!important;min-height:24px}
@keyframes api-loading-spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}
