// Minimal DOM polyfill so Three.js TextureLoader doesn't crash in Node.js global.document = { createElementNS: (ns, name) => ({ style: {}, addEventListener: () => {}, removeEventListener: () => {}, dispatchEvent: () => {}, src: '', onload: null, onerror: null }), createElement: (name) => ({ style: {}, addEventListener: () => {}, removeEventListener: () => {}, src: '', onload: null, onerror: null }) }; global.window = global;