/* A single low-contrast sweep fills the screen; no pretend UI or content. */
.content-skeleton{--sk-shine:rgb(255 255 255 / .55);position:absolute;inset:0;box-sizing:border-box;overflow:hidden;border-radius:inherit;background:#f6f6f6;pointer-events:none}
.content-skeleton.sk-dark{--sk-shine:rgb(255 255 255 / .035);background:#151515}
.content-skeleton::after{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 20%,var(--sk-shine) 50%,transparent 80%);transform:translate3d(-100%,0,0);animation:screen-loading-shimmer 3.2s linear infinite}
@keyframes screen-loading-shimmer{to{transform:translate3d(100%,0,0)}}
.app-loading:has(>.content-skeleton){position:absolute;inset:0;min-height:100%;padding:0;background:transparent}
.app-loading>.content-skeleton{z-index:0}
.app-loading>.sk-status{position:absolute;z-index:1;bottom:4%;left:0;right:0;margin:auto;width:max-content;max-width:90%;padding:7px 12px;border-radius:99px;background:#fafafa;color:#757575;font:12px/1.4 system-ui}
.story-screen>.content-skeleton{z-index:0}
.showcase-loading-host{position:relative}
.showcase-loading-host>.showcase-frame,.showcase-loading{transition:opacity 180ms cubic-bezier(.23,1,.32,1)}
.showcase-loading{z-index:2}.showcase-loading.is-ready{opacity:0;pointer-events:none}
.showcase-loading .app-retry{border:0;background:transparent;color:#246bfe;font:inherit;padding:8px;cursor:pointer;border-radius:8px}
.showcase-loading .app-retry:focus-visible{outline:2px solid #246bfe;outline-offset:2px}
/* Keep loading announcements available without adding visible copy. Retry UI
   stays visible when a load fails or takes too long. */
.app-loading>.sk-status:not(:has(.app-retry)){width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
[data-loading-active=false] .content-skeleton::after,.showcase-loading.is-ready .content-skeleton::after{animation-play-state:paused}
.app-loading:has(.app-retry) .content-skeleton::after{animation:none;opacity:0}
@media(prefers-reduced-motion:reduce){
 .content-skeleton::after{animation:none;opacity:0}
 .showcase-loading-host>.showcase-frame,.showcase-loading{transition:none}
}
@media(forced-colors:active){.content-skeleton{background:Canvas}.content-skeleton::after{display:none}}
