<div class="d-flex align-items-center gap-2">
<div class="spinner-border " style="color:var(--primary-color);width:16px;height:16px;" role="status">
<span class="visually-hidden">Loading…</span>
</div>
</div>
<div class="d-flex align-items-center gap-2">
<div class="spinner-border {{size}}" style="color:var(--primary-color);width:{{px}}px;height:{{px}}px;" role="status">
<span class="visually-hidden">Loading…</span>
</div>
{{#if label}}<span style="font-family:'Satoshi';color:var(--paragraph);font-size:0.875rem;">{{label}}</span>{{/if}}
</div>
{
"px": 16,
"label": null
}
Bootstrap spinner-border. Always use --primary-color (purple). Include a visually-hidden “Loading…” text for screen readers. Use inline with a label for button loading states.
Appears in: Script Generator (while generating), Thumbnail Editor (while saving/removing background), bulk delete modal (while deleting), any async action where the user must wait for a result.