.workspace-loading{box-sizing:border-box;min-height:calc(100svh - 180px);display:flex;justify-content:center;align-items:center;padding:24px 16px;color:var(--text,#183b52);text-align:center}
.workspace-loading-content{box-sizing:border-box;display:flex;flex-direction:column;align-items:stretch;gap:14px;width:min(100%,440px);min-width:0}
/* A definite block box keeps intrinsic artwork out of the text's flow region. */
.workspace-loading-art{box-sizing:border-box;display:block;flex:0 0 auto;width:100%;height:clamp(140px,32svh,280px);min-height:0;padding:4px;overflow:hidden}
.workspace-loading-art>img{box-sizing:border-box;display:block;position:static;width:100%;height:100%;max-width:100%;max-height:100%;min-height:0;object-fit:contain;animation:fowler-scene-breathe 4s ease-in-out infinite}
.workspace-loading-tagline,.workspace-loading-copy{position:static;flex:0 0 auto;min-width:0;max-width:100%;margin:0;white-space:normal;overflow-wrap:anywhere}
.workspace-loading-tagline{font-size:clamp(17px,2.5vw,21px);font-weight:700;line-height:1.4}
.workspace-loading-copy{font-size:16px;font-weight:500;line-height:1.5}
.workspace-loading-recovery{position:static;flex:0 0 auto;font-size:15px;line-height:1.5;overflow-wrap:anywhere}
.workspace-loading-recovery p{margin:0 0 12px}
.workspace-loading-recovery button{box-sizing:border-box;max-width:100%;min-height:48px;padding:8px 20px;border:1px solid currentColor;border-radius:10px;background:var(--surface,#fff);color:inherit;font:inherit;white-space:normal;cursor:pointer}
[data-theme=dark] .workspace-loading{color:#e8f2f8}[data-theme=dark] .workspace-loading-recovery button{background:#173449}
@keyframes fowler-scene-breathe{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
@media(prefers-reduced-motion:reduce){.workspace-loading-art>img{animation:none}}
@media(max-height:420px){.workspace-loading{min-height:0;padding:12px 16px}.workspace-loading-art{height:120px}.workspace-loading-content{gap:12px}}
/* Initial loading has no sidebar: center against the whole viewport. */
html:has(.crm-auth-host .workspace-loading):not(:has(.app-shell)){zoom:1}
.crm-auth-host:has(.workspace-loading):not(:has(.app-shell)) .crm-host-panel{margin:0;padding:0;width:100%}
.crm-auth-host:has(.workspace-loading):not(:has(.app-shell)) .workspace-loading{min-height:100svh}
@media(max-height:420px){.crm-auth-host:has(.workspace-loading):not(:has(.app-shell)) .workspace-loading{min-height:100svh}}

/* Align each unchanged sprite’s visible alpha bounds with the text center. */
@supports(container-type:size){
.workspace-loading-art{container-type:size}
.workspace-loading-art>img[src$="/scene-01.webp"]{object-position:calc(50% - min(100cqw,100.0000000cqh) * 0.003906250) 50%}
.workspace-loading-art>img[src$="/scene-03.webp"]{object-position:calc(50% - min(100cqw,100.0000000cqh) * 0.001562500) 50%}
.workspace-loading-art>img[src$="/scene-04.webp"]{object-position:calc(50% - min(100cqw,100.0000000cqh) * 0.002343750) 50%}
.workspace-loading-art>img[src$="/scene-05.webp"]{object-position:calc(50% - min(100cqw,100.0000000cqh) * 0.008593750) 50%}
.workspace-loading-art>img[src$="/scene-06.webp"]{object-position:calc(50% - min(100cqw,100.0000000cqh) * 0.011718750) 50%}
.workspace-loading-art>img[src$="/scene-07.webp"]{object-position:calc(50% + min(100cqw,100.0000000cqh) * 0.000781250) 50%}
.workspace-loading-art>img[src$="/scene-09.webp"]{object-position:calc(50% + min(100cqw,200.0000000cqh) * 0.010937500) 50%}
.workspace-loading-art>img[src$="/scene-10.webp"]{object-position:calc(50% - min(100cqw,149.8829040cqh) * 0.042187500) 50%}
.workspace-loading-art>img[src$="/scene-11.webp"]{object-position:calc(50% + min(100cqw,149.8829040cqh) * 0.000781250) 50%}
.workspace-loading-art>img[src$="/scene-12.webp"]{object-position:calc(50% - min(100cqw,149.8829040cqh) * 0.005468750) 50%}
}
