/* Separate loading presentation; approved artwork, scene sizing and controls stay intact. */
.scene-loading{display:none;position:absolute;inset-inline:0;inset-block-start:0;block-size:calc(100% - 46px);align-items:center;justify-content:center;flex-direction:column;gap:13px;pointer-events:none;color:var(--muted);font-size:.75rem;line-height:1.6;text-align:center;padding:24px}
.scene-loading-ring{display:block;inline-size:26px;block-size:26px;border:2px solid var(--line);border-block-start-color:var(--action);border-radius:50%;animation:logo-loading-turn .85s linear infinite}
.logo-loading [data-logo-scene]:not([data-logo-state]) .scene-poster,
.logo-loading [data-logo-scene][data-logo-state="loading"] .scene-poster{opacity:0;visibility:hidden;transition:none}
.logo-loading [data-logo-scene]:not([data-logo-state]) .scene-loading[hidden],
.logo-loading [data-logo-scene][data-logo-state="loading"] .scene-loading:not([hidden]){display:flex!important}
[data-logo-scene][data-logo-state="ready"] .model-canvas{transition:opacity .18s ease;animation:logo-loading-ready .18s ease both}
[data-logo-scene][data-logo-state="ready"] .scene-poster{opacity:0;visibility:hidden;transition:none}
[data-logo-scene][data-logo-state="static"] .scene-poster{transition:none}
@keyframes logo-loading-turn{to{transform:rotate(360deg)}}
@keyframes logo-loading-ready{from{opacity:0}to{opacity:1}}
@media(prefers-reduced-motion:reduce){.scene-loading-ring,[data-logo-scene][data-logo-state="ready"] .model-canvas{animation:none;transition:none}}
