body.app-is-loading{overflow:hidden}.app-loader-overlay{z-index:9999;background:var(--app-bg-gradient);justify-content:center;align-items:center;padding:1.5rem;animation:.25s ease-out app-loader-overlay-in;display:flex;position:fixed;inset:0}.app-loader-card{-webkit-backdrop-filter:blur(16px);background:#ffffff14;border:1px solid #ffffff24;border-radius:1.25rem;flex-direction:column;align-items:center;gap:1.25rem;min-width:min(100%,280px);padding:2rem 2.25rem;display:flex;box-shadow:0 24px 64px #00000059}.app-loader-ring-wrap{width:96px;height:96px;position:relative}.app-loader-ring{border:3px solid #0000;border-radius:50%;position:absolute;inset:0}.app-loader-ring-outer{border-top-color:var(--app-primary);border-right-color:#38bdf840;animation:1.1s cubic-bezier(.5,0,.5,1) infinite app-loader-spin}.app-loader-ring-inner{border-bottom-color:var(--app-accent);border-left-color:#0ea5e933;animation:.85s cubic-bezier(.5,0,.5,1) infinite reverse app-loader-spin;inset:10px}.app-loader-core{background:#fffffff2;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;inset:22px;box-shadow:0 4px 20px #00000026}.app-loader-logo{-o-object-fit:contain;object-fit:contain;border-radius:50%}.app-loader-label{color:#f8fafc;letter-spacing:.02em;margin:0;font-size:1.05rem;font-weight:600;animation:1.6s ease-in-out infinite app-loader-pulse-text}.app-loader-bar{background:#ffffff26;border-radius:999px;width:100%;max-width:200px;height:4px;overflow:hidden}.app-loader-bar-fill{background:linear-gradient(90deg, var(--app-primary), var(--app-accent));border-radius:999px;width:40%;height:100%;animation:1.4s ease-in-out infinite app-loader-bar-slide}.app-loader-inline{vertical-align:middle;align-items:center;gap:.35rem;display:inline-flex}.app-loader-inline-dot{background:currentColor;border-radius:50%;width:7px;height:7px;animation:1s ease-in-out infinite app-loader-dot-bounce}.app-loader-inline-dot:nth-child(2){animation-delay:.15s}.app-loader-inline-dot:nth-child(3){animation-delay:.3s}@keyframes app-loader-overlay-in{0%{opacity:0}to{opacity:1}}@keyframes app-loader-spin{to{transform:rotate(360deg)}}@keyframes app-loader-pulse-text{0%,to{opacity:.75}50%{opacity:1}}@keyframes app-loader-bar-slide{0%{transform:translate(-120%)}to{transform:translate(320%)}}@keyframes app-loader-dot-bounce{0%,80%,to{opacity:.45;transform:scale(.65)}40%{opacity:1;transform:scale(1)}}@media (max-width:480px){.app-loader-card{padding:1.5rem 1.75rem}.app-loader-ring-wrap{width:80px;height:80px}.app-loader-core{inset:18px}.app-loader-logo{width:36px;height:36px}.app-loader-label{font-size:.95rem}}
