#storyboard-page[data-project-preview] .storyboard-main > [data-storyboard-panel] { display: none; }
#project-local-preview p { white-space: pre-wrap; overflow-wrap: anywhere; line-height: 1.8; }
#project-local-preview [role="status"] { color: #8b5e34; font-size: 13px; }
.project-restore-shell{display:none;padding:20px;background:var(--dz-page);min-width:0}
#storyboard-page .storyboard-main{position:relative}
#storyboard-page:not([data-project-restoring]):has([data-storyboard-panel="asset"]:not(.hidden) iframe[data-loading="true"]) .project-restore-shell{display:block;position:absolute;inset:0;z-index:2;pointer-events:none}
#asset-workspace-frame[data-loading="true"]{opacity:0}
#storyboard-page[data-project-restoring] .storyboard-main > [data-storyboard-panel],#storyboard-page[data-project-restoring] #project-local-preview{display:none!important}
#storyboard-page[data-project-restoring] .project-restore-shell{display:block}
.project-restore-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr));gap:16px}
.project-restore-grid>div{position:relative;overflow:hidden;border:1px solid var(--dz-border);border-radius:12px;background:var(--dz-surface);padding-bottom:120px}
.project-restore-grid>div:before{content:'';display:block;aspect-ratio:220/156;margin:10px;background:linear-gradient(100deg,var(--dz-subtle) 20%,var(--dz-surface) 50%,var(--dz-subtle) 80%);background-size:200% 100%;border-radius:8px;animation:project-restore-sweep 1.8s ease-in-out infinite}
.project-restore-grid>div:after{content:'';position:absolute;left:14px;right:14px;bottom:20px;height:90px;background:linear-gradient(var(--dz-subtle),var(--dz-subtle)) left top/45% 14px no-repeat,linear-gradient(var(--dz-subtle),var(--dz-subtle)) left 32px/90% 8px no-repeat,linear-gradient(var(--dz-subtle),var(--dz-subtle)) left 51px/65% 8px no-repeat,linear-gradient(var(--dz-subtle),var(--dz-subtle)) left bottom/30% 8px no-repeat}
#project-restore-error:not([hidden]){display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:18px;color:var(--dz-secondary);font-size:13px}
#project-restore-retry{border:1px solid var(--dz-border);border-radius:7px;padding:6px 12px;background:var(--dz-surface);color:var(--dz-accent)}
.project-restore-shell:has(#project-restore-error:not([hidden])) .project-restore-grid>div:before{animation:none}
@keyframes project-restore-sweep{to{background-position:-200% 0}}
@media(prefers-reduced-motion:reduce){.project-restore-grid>div:before{animation:none}}
