/* Always-visible no-WebGL animation; real Three.js canvas fades in after first rendered frame. */
.stage #scene-fallback { position:absolute;inset:0;width:100%;height:100%;display:block;z-index:0;cursor:grab;touch-action:pan-y;opacity:1;transition:opacity .35s ease; }
.stage #scene {z-index:1;visibility:hidden;}
.stage.fm-webgl-ready #scene {visibility:visible;}
.stage.fm-webgl-ready #scene-fallback {opacity:0;pointer-events:none;}
.stage #tags{z-index:2;pointer-events:none}
.stage .hint {z-index:3}
.stage .picker{z-index:5}
.stage #fallback{display:none !important}
.stage .fm-canvas-help {position:absolute;left:16px;right:16px;top:52px;font:600 10px/1.45 system-ui,sans-serif;color:#bcbcbc;letter-spacing:.06em;opacity:.8;pointer-events:none;z-index:1;text-align:center}
@media (prefers-reduced-motion:reduce){ .stage #scene-fallback{transition:none} }
