/* Shared content loader. Initial skeleton/shimmer styles remain separate. */
.sigma-dot-spinner,
i.fa-spinner.fa-spin,
i.fa-circle-notch.fa-spin {
    display:inline-block; flex:none; width:var(--sigma-loader-size,1em); height:var(--sigma-loader-size,1em);
    background:radial-gradient(circle at 50% 10%, rgba(0,0,0,.55) 0 6%, transparent 7%), radial-gradient(circle at 78% 22%, rgba(0,0,0,.48) 0 6%, transparent 7%), radial-gradient(circle at 90% 50%, rgba(0,0,0,.41) 0 6%, transparent 7%), radial-gradient(circle at 78% 78%, rgba(0,0,0,.34) 0 6%, transparent 7%), radial-gradient(circle at 50% 90%, rgba(0,0,0,.27) 0 6%, transparent 7%), radial-gradient(circle at 22% 78%, rgba(0,0,0,.20) 0 6%, transparent 7%), radial-gradient(circle at 10% 50%, rgba(0,0,0,.13) 0 6%, transparent 7%), radial-gradient(circle at 22% 22%, rgba(0,0,0,.08) 0 6%, transparent 7%); border:0; border-radius:0; vertical-align:middle;
    animation:sigma-dots-turn 1s steps(8,end) infinite;
}
i.fa-spinner.fa-spin::before,i.fa-circle-notch.fa-spin::before { content:none!important; }
.sigma-dot-spinner.hidden,i.fa-spinner.fa-spin.hidden,i.fa-circle-notch.fa-spin.hidden { display:none; }
.sigma-content-loading-host { position:relative; }
.sigma-content-loading-overlay { position:absolute; inset:0; z-index:20; display:flex; align-items:center; justify-content:center; background:var(--sigma-loading-background,#fff); border-radius:inherit; }
@keyframes sigma-dots-turn { to { transform:rotate(360deg); } }
@media(prefers-reduced-motion:reduce) { .sigma-dot-spinner,i.fa-spinner.fa-spin,i.fa-circle-notch.fa-spin { animation-duration:2.4s; } }

/* Paint before panel scripts execute; renderers replace these pending slots. */
.sigma-pending-content { display:flex; align-items:center; justify-content:center; width:100%; min-height:220px; box-sizing:border-box; }
.sigma-pending-content--compact { min-height:80px; }
.sigma-pending-content .sigma-dot-spinner { --sigma-loader-size:40px; }
.sigma-pending-content--compact .sigma-dot-spinner { --sigma-loader-size:24px; }
.sigma-pending-chart > :not([data-sigma-overview-loader]) { visibility:hidden; }
.sigma-overview-loader { position:absolute; inset:0; z-index:2; min-height:0; background:#fff; }

/* Keep the verification form's footprint while its content is busy, at every viewport size. */
.sigma-verification-pending > :not(.sigma-content-loading-overlay) { visibility:hidden; }
.sigma-verification-pending { min-width:0; width:100%; box-sizing:border-box; }
.sigma-verification-pending .sigma-content-loading-overlay { max-width:100%; }
#landing2faGlobalBackBtn:disabled { pointer-events:none; cursor:wait; }

/* Content refreshes share a centered dots-only loader. */
.sigma-content-loading-state { display:flex; width:100%; min-width:0; min-height:clamp(140px,22vh,220px); padding:24px 16px; box-sizing:border-box; flex-direction:column; align-items:center; justify-content:center; gap:16px; text-align:center; }
.sigma-content-loading-state .sigma-dot-spinner { --sigma-loader-size:36px; }
.sigma-content-loading-state--page { min-height:clamp(260px,55vh,560px); }
.sigma-content-loading-state--page .sigma-dot-spinner { --sigma-loader-size:64px; }
.sigma-content-loading-state--compact { min-height:100px; padding:16px 12px; gap:12px; }
.sigma-content-loading-state--inline { width:auto; min-height:0; padding:0; flex-direction:row; justify-content:flex-start; gap:8px; text-align:left; }
.sigma-content-loading-state--inline .sigma-dot-spinner { --sigma-loader-size:20px; }
