:root{--loading-background: #f6f9f7;--loading-foreground: #52605a;--loading-dot: #7c8781}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--loading-background: #10191c;--loading-foreground: #afbbb5;--loading-dot: #a6b2ac}}:root[data-theme=dark]{--loading-background: #10191c;--loading-foreground: #afbbb5;--loading-dot: #a6b2ac}body:has(#initial-loading){margin:0;background:var(--loading-background)}.initial-loading{min-height:100dvh;display:grid;place-items:center;position:relative;color:var(--loading-foreground);background:var(--loading-background);font:13px/1.6 system-ui,Microsoft YaHei,sans-serif}.loading-state{display:grid;place-content:center;justify-items:center;gap:14px;color:var(--muted, var(--loading-foreground));text-align:center}.loading-dots{height:12px;display:inline-flex;align-items:center;gap:7px;color:var(--loading-dot)}.loading-dots i{display:block;width:6px;height:6px;flex:0 0 auto;border-radius:50%;background:currentColor;opacity:.42;animation:quiet-loading-dot 1.5s ease-in-out infinite}.loading-dots i:nth-child(2){animation-delay:.16s}.loading-dots i:nth-child(3){animation-delay:.32s}.loading-state__label{font-size:12px;line-height:1.6}.loading-state__label--quiet{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.initial-loading__hint,.initial-loading__noscript{position:absolute;bottom:max(28px,env(safe-area-inset-bottom));padding:0 20px;text-align:center}.initial-loading__hint{visibility:hidden;animation:reveal-loading-hint 0s 8s forwards}.initial-loading:has(.initial-loading__noscript) .initial-loading__hint{display:none}.initial-loading__hint a{color:inherit;text-underline-offset:3px}.initial-loading[data-state=failed] .initial-loading__hint{visibility:visible;animation:none}.initial-loading[data-state=failed] .loading-dots i,.initial-loading:has(.initial-loading__noscript) .loading-dots i,.loading-dots--still i{animation:none}@keyframes quiet-loading-dot{0%,60%,to{opacity:.42;transform:translateY(0)}30%{opacity:.85;transform:translateY(-2px)}}@keyframes reveal-loading-hint{to{visibility:visible}}@media(prefers-reduced-motion:reduce){.loading-dots i{animation:none;transform:none;opacity:.65}}
