#loader-overlay {
  background:#0b1c2c20; backdrop-filter:blur(2px); -webkit-backdrop-filter:blur(2px);
  z-index:2147483100;
}
#loader-overlay .loader-box {
  box-sizing:border-box; width:min(340px,calc(100vw - 36px)); padding:26px 24px;
  gap:12px; border-radius:18px; border:1px solid var(--workspace-border,#dbe5ed);
  background:var(--workspace-surface,#fff); color:var(--workspace-text,#213547);
  box-shadow:0 20px 65px #00000025;
}
#loader-overlay .loader-sync {
  width:54px; height:54px; border-width:4px;
  border-color:var(--shell-line,#dbe5ed); border-top-color:var(--shell-accent,#168345);
}
html[data-theme="dark"] #loader-overlay .loader-sync {
  border-color:var(--shell-line,#304859); border-top-color:var(--shell-accent,#75dbbb);
}
#loader-overlay .loader-label { display:block; font-size:17px; line-height:1.5; font-weight:700; }
#loader-overlay .loader-subtle { display:block; font-size:13px; line-height:1.7; color:var(--workspace-muted,#64798a); }
#loader-overlay .loader-elapsed { color:var(--workspace-muted,#64798a); font-size:12px; min-height:18px; font-variant-numeric:tabular-nums; }
#loader-overlay .loader-progress { direction:ltr; width:100%; height:4px; overflow:hidden; border-radius:8px; background:var(--shell-line,#dbe5ed); }
#loader-overlay .loader-progress::after { content:''; display:block; height:100%; width:35%; background:var(--shell-accent,#168345); border-radius:inherit; animation:app-loading-progress 1.5s ease-in-out infinite alternate; }
@keyframes app-loading-progress { from { transform:translateX(-15%); } to { transform:translateX(200%); } }
@media (prefers-reduced-motion:reduce) {
  #loader-overlay .loader-progress::after,#loader-overlay .loader-sync { animation:none; }
}
