@volter/game-editor 0.5.67 → 0.5.69

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (568) hide show
  1. package/BUNDLED_NOTICES +10954 -5077
  2. package/LICENSE +1 -1
  3. package/LICENSE-BLENDER +2 -2
  4. package/NOTICE +2 -2
  5. package/additions/canvas/package.json +8 -0
  6. package/additions/canvas/src/canvas-mount.ts +46 -0
  7. package/additions/canvas/src/scene2d.tsx +18 -0
  8. package/catalog/entries/bake.json +1 -1
  9. package/catalog/entries/blender.json +3 -3
  10. package/catalog/entries/music.json +6 -6
  11. package/catalog/project-source/LICENSE +1 -1
  12. package/catalog/project-source/src/contributions/bake.kind.ts +2 -2
  13. package/catalog/project-source/src/contributions/builder-document.tsx +1 -1
  14. package/catalog/project-source/src/contributions/builder-ui.tsx +3 -3
  15. package/catalog/project-source/src/contributions/module-source.ts +4 -4
  16. package/catalog/project-source/src/lib/music/music-player.ts +18 -12
  17. package/catalog/project-source/src/lib/reflections/volume-reflection-material.ts +59 -59
  18. package/catalog/project-source/src/lib/static-batch/Frozen.tsx +1 -1
  19. package/catalog/project-source/src/lib/static-batch/mutation-watch.ts +1 -1
  20. package/catalog/project-source/src/tools/bake-preview.tool.ts +9 -9
  21. package/dist/.vite/manifest.json +4106 -3965
  22. package/dist/assets/{AssetBudgetPanel-x_FNJbfZ.js → AssetBudgetPanel-BMR3AQhc.js} +10 -10
  23. package/dist/assets/AudioViewer-DESxi7pU.js +1 -0
  24. package/dist/assets/CanvasBoardDocument-Q_nrYFlB.js +1 -0
  25. package/dist/assets/CanvasSceneViewport-WZMoKy_F.js +1 -0
  26. package/dist/assets/ColorInput-C2EK-OnD.js +1 -0
  27. package/dist/assets/{EntityModelDocument-CzUHsH9E.js → EntityModelDocument-B_4ENTCq.js} +1 -1
  28. package/dist/assets/{EnvironmentAssetDocument-ByEB7_4A.js → EnvironmentAssetDocument-BZBp6OFJ.js} +1 -1
  29. package/dist/assets/{GameplaySessionTimeline-dhG-oiqd.js → GameplaySessionTimeline-1ivaucpv.js} +1 -1
  30. package/dist/assets/ImageViewer-D16OExYu.js +1 -0
  31. package/dist/assets/{InspectorCanvasPreview-CEr_Kxna.js → InspectorCanvasPreview-BrFjhoiD.js} +1 -1
  32. package/dist/assets/InspectorObjectPreview-CY5xVsPR.js +1 -0
  33. package/dist/assets/JsonAssetDocument-CvjTlcdr.js +2 -0
  34. package/dist/assets/{LiveModuleDocument-DL8QHSlk.js → LiveModuleDocument-ne1o9giX.js} +1 -1
  35. package/dist/assets/{LutAssetDocument-BImiug2M.js → LutAssetDocument-Cp0v-O7q.js} +1 -1
  36. package/dist/assets/ModelAssetDocument-Ceu7OIN9.js +1 -0
  37. package/dist/assets/{NonThreeAuthoringBootstrap-B40qmGGS.js → NonThreeAuthoringBootstrap-DiElZf-e.js} +1 -1
  38. package/dist/assets/Object3DDocumentToolbar-BLNamqii.js +1 -0
  39. package/dist/assets/Object3DDocumentViewport-D6QoHfa_.js +2 -0
  40. package/dist/assets/{Object3DPreview-ClYDoH2L.js → Object3DPreview-ZVokr044.js} +1 -1
  41. package/dist/assets/OnlineAssetDetail-Dnckd7zB.js +1 -0
  42. package/dist/assets/PlayBar-DsMitSgy.js +1 -0
  43. package/dist/assets/{QuarksAssetDocument-B-VOj-n4.js → QuarksAssetDocument-B5J8uHFM.js} +1 -1
  44. package/dist/assets/ReactCanvasControls-CmfvxJYY.js +1 -0
  45. package/dist/assets/RootSelectionOverlay-BWsNiSuM.js +1 -0
  46. package/dist/assets/{ShaderAssetDocument-Kn8IvRGV.js → ShaderAssetDocument-CT7XzsZq.js} +5 -5
  47. package/dist/assets/ShadowEditor-YO5KEfnz.js +1 -0
  48. package/dist/assets/{SourceAssetViewer-CLQ95VSD.js → SourceAssetViewer-FSLup2km.js} +1 -1
  49. package/dist/assets/StageHost-DYfGYwvq.js +2 -0
  50. package/dist/assets/{StoryPreviewMount-D2lg37et.js → StoryPreviewMount-BhvT5QlB.js} +1 -1
  51. package/dist/assets/ThreeBoardDocument-B-z2nwnH.js +2 -0
  52. package/dist/assets/{ThreeIsolationSceneContent-DbYIylZQ.js → ThreeIsolationSceneContent-B5pU4Y6k.js} +1 -1
  53. package/dist/assets/{ToolObject3DPreview-WEi6C9uU.js → ToolObject3DPreview-VtraiQ4Q.js} +1 -1
  54. package/dist/assets/Toolbar-M62Gob9T.js +1 -0
  55. package/dist/assets/{TransientHint-BpDLhRLd.js → TransientHint-Cc40mHWE.js} +1 -1
  56. package/dist/assets/VideoViewer-BxcUwXQm.js +1 -0
  57. package/dist/assets/ViewportShadingMenu-BoMPnTVh.js +1 -0
  58. package/dist/assets/active-ingest-0QjJWb7i.js +3 -0
  59. package/dist/assets/{animation-clock-Bm80XdqP.js → animation-clock-BXEwUJtz.js} +1 -1
  60. package/dist/assets/animation-mixers.service-C-Ko4KzM.js +1 -0
  61. package/dist/assets/animation-timeline.utility-Bl15-rYb.js +1 -0
  62. package/dist/assets/{asset-budget-asset.menu-CEgP0Kiw.js → asset-budget-asset.menu-BUa3g0Wy.js} +1 -1
  63. package/dist/assets/{asset-budget.action-D4R1c3wi.js → asset-budget.action-Dl5eVPIo.js} +1 -1
  64. package/dist/assets/{asset-budget.document-Syzjn1U1.js → asset-budget.document-DJylQ-0h.js} +1 -1
  65. package/dist/assets/{asset-budget.menu-BbRiqXeM.js → asset-budget.menu-BJtvNMLj.js} +1 -1
  66. package/dist/assets/asset-editor-persistence-BIbf5u0Q.js +1 -0
  67. package/dist/assets/asset-loaders-DoNflsHL.js +2 -0
  68. package/dist/assets/{asset-preview-B1tDziF1.js → asset-preview-DxlSdRZn.js} +1 -1
  69. package/dist/assets/{audio-unlock.service-ucMfCVBw.js → audio-unlock.service-CTaiyXF9.js} +1 -1
  70. package/dist/assets/audio.utility-CEmNc68t.js +1 -0
  71. package/dist/assets/autoplay.service-BZLSUyL8.js +1 -0
  72. package/dist/assets/{babylon-authoring-adapter-C8mFMXSr.js → babylon-authoring-adapter-BZvV2bz_.js} +1 -1
  73. package/dist/assets/binding-resolver-DGbk9_XR.js +2 -0
  74. package/dist/assets/blender-emscripten-engine-B7lfg-RX.js +2 -0
  75. package/dist/assets/{blender-node-editor.document-C1YmwWls.js → blender-node-editor.document-wXJobGNH.js} +1 -1
  76. package/dist/assets/{blender-properties-tab-B8lyjgj3.js → blender-properties-tab-7GFf80ev.js} +1 -1
  77. package/dist/assets/{blender-runtime-host-CyQlImSR.js → blender-runtime-host-CILxrx5T.js} +2 -2
  78. package/dist/assets/{blender-runtime-skin-BK7ShZ6z.js → blender-runtime-skin-Cd5lQYsC.js} +7 -7
  79. package/dist/assets/{blender-runtime.document-B0nVQs0P.js → blender-runtime.document-C0r_R49S.js} +7 -7
  80. package/dist/assets/{blender-timeline.document-CMcdE2CK.js → blender-timeline.document-BaISZMBc.js} +1 -1
  81. package/dist/assets/{blender-uv-editor.document-CjqNo4sZ.js → blender-uv-editor.document-CT_fsyyA.js} +1 -1
  82. package/dist/assets/blender-version.status-DzEx7u7k.js +1 -0
  83. package/dist/assets/blender-wali-engine-DOiQCBXH.js +2 -0
  84. package/dist/assets/{blender.command-C6NmRBo5.js → blender.command-DdiKd8mZ.js} +1 -1
  85. package/dist/assets/blender.keymap-BmOBRY7p.js +1 -0
  86. package/dist/assets/blender.status-BMETIbb2.js +1 -0
  87. package/dist/assets/board-guides-CjHQ9Ynm.js +1 -0
  88. package/dist/assets/body-marks-C1LxJtQb.js +1 -0
  89. package/dist/assets/bridge.command-DXUeavn5.js +3 -0
  90. package/dist/assets/{browserAll-lF_dLQVz.js → browserAll-Dg46xT22.js} +1 -1
  91. package/dist/assets/build-player.document-BHwVV3K0.js +1 -0
  92. package/dist/assets/build-profiles.document-HkpS-Kxa.js +2 -0
  93. package/dist/assets/build-progress.status-u1J0Rm1D.js +1 -0
  94. package/dist/assets/build-session-BLboUUbw.js +9 -0
  95. package/dist/assets/{build.action-DRX2IcYt.js → build.action-C00DL83N.js} +1 -1
  96. package/dist/assets/{build.command-BGvLaLG0.js → build.command-Cjk_NY75.js} +1 -1
  97. package/dist/assets/build.header-BWNmNWFT.js +1 -0
  98. package/dist/assets/{build.menu-UenrjPWS.js → build.menu-BBYtqCIq.js} +1 -1
  99. package/dist/assets/{build.service-BIUoTY6l.js → build.service-DOU15tKN.js} +1 -1
  100. package/dist/assets/{camera-DrvaM47S.js → camera-7DGyYW7Y.js} +1 -1
  101. package/dist/assets/{camera-runtime.inspector-CjJALNO8.js → camera-runtime.inspector-n-jiOR-3.js} +1 -1
  102. package/dist/assets/canvas-design-mount-CSRHU-ag.js +6 -0
  103. package/dist/assets/canvas-entry-runtime-BST8yRuK.js +2 -0
  104. package/dist/assets/{canvas-preview-frames-C0QTagA3.js → canvas-preview-frames-Cja32aW2.js} +1 -1
  105. package/dist/assets/{canvas-story-capture.service-Dgjr-rT1.js → canvas-story-capture.service-D5R5HJ8n.js} +2 -2
  106. package/dist/assets/capability-coverage-ByWftxk4.js +7 -0
  107. package/dist/assets/{collaboration-presence-BVIQuN1l.js → collaboration-presence-D6MC9xJN.js} +1 -1
  108. package/dist/assets/{collider-C7SbIYKY.js → collider-B78EcUc9.js} +1 -1
  109. package/dist/assets/{component-board.service-BEsFAw4_.js → component-board.service-BaQI5Oas.js} +2 -2
  110. package/dist/assets/component-board.service-CkjrsD8x.js +2 -0
  111. package/dist/assets/{component-board.service-CWFaGMCO.js → component-board.service-Dvjz_g-x.js} +2 -2
  112. package/dist/assets/component-contracts.service-C3-AXQp7.js +1 -0
  113. package/dist/assets/component-instance-root-DLI40MiB.js +1 -0
  114. package/dist/assets/{component-verbs.command-oNtGgzQL.js → component-verbs.command-Brr_WcaR.js} +1 -1
  115. package/dist/assets/component-verbs.service-DC2sC3j3.js +1 -0
  116. package/dist/assets/{config-_wCzzlM_.js → config-BI_7osdR.js} +3 -3
  117. package/dist/assets/{configurations-BXU4GGbV.js → configurations-XP9YLkrt.js} +1 -1
  118. package/dist/assets/connection.status-BhRwcFx0.js +1 -0
  119. package/dist/assets/{constraint-5KLYpGm7.js → constraint-Bp1l8hY-.js} +1 -1
  120. package/dist/assets/constraints.inspector-Dm1cycK3.js +1 -0
  121. package/dist/assets/{content-bounds-BeuIXKYu.js → content-bounds-DROIchTa.js} +1 -1
  122. package/dist/assets/{contract-system-adapters-Bic_7sev.js → contract-system-adapters-Cn7OW_ay.js} +1 -1
  123. package/dist/assets/coverage.service-l42ty7lr.js +3 -0
  124. package/dist/assets/create-runtime-B_uTwsmi.js +3 -0
  125. package/dist/assets/curve-THOUsg-j.js +1 -0
  126. package/dist/assets/{data-asset-DfQ2Pjse.js → data-asset-DAANayR6.js} +1 -1
  127. package/dist/assets/data-check-core-CHqar_E8.js +1 -0
  128. package/dist/assets/data-ref-CN34UeVw.js +1 -0
  129. package/dist/assets/debug-bridge-BD1XVAIB.js +1 -0
  130. package/dist/assets/debug-registry-ggQWxtu-.js +1 -0
  131. package/dist/assets/{deferred-ingest-play-BdR4qGk6.js → deferred-ingest-play-B2JUlwlT.js} +2 -2
  132. package/dist/assets/{design-time-canvas-mount-DPQeHSN2.js → design-time-canvas-mount-as9cN9I6.js} +2 -2
  133. package/dist/assets/design-time-layers-BRseeSmV.js +1 -0
  134. package/dist/assets/{design-time-mount.service-Ks-5Wkcs.js → design-time-mount.service-BTVu3yKo.js} +2 -2
  135. package/dist/assets/{design-time-mount.service-Ca-DZGFV.js → design-time-mount.service-DKvc7lVK.js} +2 -2
  136. package/dist/assets/design-time-react-mount-C7rB56QD.js +1 -0
  137. package/dist/assets/{document-preview-three-DThkjI1S.js → document-preview-three-CxmRhCcV.js} +1 -1
  138. package/dist/assets/{dom-authoring-adapter-BrLU8IJ_.js → dom-authoring-adapter-L8OzXfmE.js} +1 -1
  139. package/dist/assets/{draco3d-B2cwv46o.js → draco3d-BjNuXv66.js} +1 -1
  140. package/dist/assets/{edit-mode-audio.service-D4ITNbsm.js → edit-mode-audio.service-BwI5u845.js} +1 -1
  141. package/dist/assets/edit-mode-authoring-D5f7aHHl.js +1 -0
  142. package/dist/assets/{edit-mode-networking.service-BNv-FTRh.js → edit-mode-networking.service-DqP_4lbI.js} +1 -1
  143. package/dist/assets/editor-api-BM7H_F4G.js +1 -0
  144. package/dist/assets/{editor-layers-BDJnAAzj.js → editor-layers-D-CTUqco.js} +1 -1
  145. package/dist/assets/editor-presentation-activity-CqJH4G9t.js +1 -0
  146. package/dist/assets/{editor-shell-store-ChLcVeNB.js → editor-shell-store-DHVWS8cE.js} +1 -1
  147. package/dist/assets/{entity-object-JmYMfLsx.js → entity-object-MKYemTFM.js} +1 -1
  148. package/dist/assets/{extend-Cc-nEa_A.js → extend-BrgqZiMY.js} +1 -1
  149. package/dist/assets/fork-menu-DE2MK3Nq.js +1 -0
  150. package/dist/assets/{frame-debugger-store-DaCbAYSW.js → frame-debugger-store-BXoLKTdZ.js} +1 -1
  151. package/dist/assets/game-audio-BeCyd0Ha.js +1 -0
  152. package/dist/assets/{game-contract-seams-BnPFGLll.js → game-contract-seams-tyKDsfaP.js} +1 -1
  153. package/dist/assets/{game-css-scope-transform-D_p7cVgW.js → game-css-scope-transform-DcjrwtVc.js} +2 -2
  154. package/dist/assets/game-document.service-CTb2itHQ.js +1 -0
  155. package/dist/assets/game-eval.command-CpDKXOQU.js +2 -0
  156. package/dist/assets/game-module-access-BTInp2NG.js +1 -0
  157. package/dist/assets/game-network-DW5ARz4R.js +22 -0
  158. package/dist/assets/{gameplay-export-BzYzLZPi.js → gameplay-export-cHk3v9y-.js} +1 -1
  159. package/dist/assets/gameplay-replay-HRenPTtU.js +1 -0
  160. package/dist/assets/gameplay.command-DcY2lKKX.js +1 -0
  161. package/dist/assets/generation-CdOATubd.css +1 -0
  162. package/dist/assets/{generation-jobs-BZhOMrp-.js → generation-jobs-CJBehuUp.js} +1 -1
  163. package/dist/assets/generation.service-BMOc-C9i.js +1 -0
  164. package/dist/assets/{generations-DVDht_31.js → generations-ssgVOe_6.js} +1 -1
  165. package/dist/assets/generations.status-B_SmPReI.js +1 -0
  166. package/dist/assets/hierarchy-marks-BuCO8Ke-.js +1 -0
  167. package/dist/assets/hierarchy-marks-CsTaTkc7.js +1 -0
  168. package/dist/assets/hosted-asset-materialization-CiXZI85V.js +2 -0
  169. package/dist/assets/{ibl-override-material-CiKkaOTW.js → ibl-override-material-CMo_a49U.js} +1 -1
  170. package/dist/assets/index-B0S4fQQV.js +1 -0
  171. package/dist/assets/{index-C3Pw-9So.js → index-B9bd4k-t.js} +1 -1
  172. package/dist/assets/index-BMxv2MNV.js +1 -0
  173. package/dist/assets/{index-DUZeuA7g.js → index-Bm4_DmRO.js} +1 -1
  174. package/dist/assets/{index-cNc-iFbq.js → index-BvBlIRwM.js} +1 -1
  175. package/dist/assets/{index-Ck3JFh48.js → index-BweKDdi_.js} +1 -1
  176. package/dist/assets/{index-BRJMIUK0.js → index-C5ZAyrKq.js} +346 -345
  177. package/dist/assets/index-CPiRKiDC.css +1 -0
  178. package/dist/assets/index-CfpGZrbC.js +1 -0
  179. package/dist/assets/index-Czvj6whv.js +1 -0
  180. package/dist/assets/{index-SS9EugVg.js → index-DgPDGGSV.js} +2 -2
  181. package/dist/assets/{inference-diagnostics-xecGdohW.js → inference-diagnostics-DLt9ql9I.js} +1 -1
  182. package/dist/assets/{ingest-boot-viewport-DAt8WFSy.js → ingest-boot-viewport-BXVXjYpG.js} +1 -1
  183. package/dist/assets/ingest-siblings-DWJ7OGB_.js +1 -0
  184. package/dist/assets/ingest-source-persistence-6ShMoSCa.js +1 -0
  185. package/dist/assets/ingest.service-BBbX8ibg.js +1 -0
  186. package/dist/assets/{inspect-Dr4qvDpJ.js → inspect-Cz3Zyx_1.js} +1 -1
  187. package/dist/assets/inspection-D8fZOHCM.js +1 -0
  188. package/dist/assets/instances.command-BrdlngrL.js +1 -0
  189. package/dist/assets/{json-history-resource-DwS10tqD.js → json-history-resource-Uqrihfc8.js} +1 -1
  190. package/dist/assets/layered-pick-CAVQMPI7.js +1 -0
  191. package/dist/assets/{light-DcFqVCmv.js → light-CqzsCWeJ.js} +1 -1
  192. package/dist/assets/{live-project-verbs-C3LzprCe.js → live-project-verbs-CdFmLYOo.js} +1 -1
  193. package/dist/assets/{machine.document-BzZxubYQ.js → machine.document-DRIFOVaa.js} +1 -1
  194. package/dist/assets/{machines.finder-BR02bfVG.js → machines.finder-DPCT6few.js} +1 -1
  195. package/dist/assets/material-BVApn1V_.js +1 -0
  196. package/dist/assets/{material-factory-COz7qZhC.js → material-factory-B_75xxFD.js} +1 -1
  197. package/dist/assets/{mesh-DcmO-mWI.js → mesh-DdA3mExo.js} +1 -1
  198. package/dist/assets/model-asset-sections-D1uxOu2v.css +1 -0
  199. package/dist/assets/model-asset-sections.service-CJnSIckZ.js +1 -0
  200. package/dist/assets/{model-inspection-CXHxrafK.js → model-inspection-DvspbmJl.js} +1 -1
  201. package/dist/assets/{model-thumbnail-BEKPWg4l.js → model-thumbnail-BmQs-h6t.js} +1 -1
  202. package/dist/assets/{models.finder-c1I0tp2M.js → models.finder-Qv_Hsccy.js} +1 -1
  203. package/dist/assets/module-mode-MJ4Gbsry.js +2 -0
  204. package/dist/assets/mount-canvas-ingest-root-BxtM8OaB.js +2 -0
  205. package/dist/assets/mount-dom-ingest-root-pGatqO46.js +2 -0
  206. package/dist/assets/mount-ingest-root-C7jb-mCl.js +2 -0
  207. package/dist/assets/mount-manifest-BfoHBuzn.js +1 -0
  208. package/dist/assets/mount-readiness-DyAd17pe.js +4 -0
  209. package/dist/assets/mount-three-ingest-root-Boa5mcaF.js +1 -0
  210. package/dist/assets/{mounted-authoring-Clftxx0x.js → mounted-authoring-DxMISwvR.js} +1 -1
  211. package/dist/assets/{mounted-story-viewport-source-B4-eAYGI.js → mounted-story-viewport-source-DfnLxI1f.js} +1 -1
  212. package/dist/assets/{native-debug-module-2_HVupdg.js → native-debug-module-BlrALjM3.js} +1 -1
  213. package/dist/assets/{navigation-CH3-zr1n.js → navigation-CqG5o5AR.js} +1 -1
  214. package/dist/assets/{navmesh.menu-Dfi-Pk-8.js → navmesh.menu-D4TdVDhe.js} +1 -1
  215. package/dist/assets/{navmesh.service-Cz7QFY-M.js → navmesh.service-DWKT5ruQ.js} +1 -1
  216. package/dist/assets/network-observer.service-ZRAquNq4.js +1 -0
  217. package/dist/assets/network.utility-DjeOEvAY.js +1 -0
  218. package/dist/assets/object-marks-BnvSuCTt.js +1 -0
  219. package/dist/assets/{object3d-authoring-subject-BDrxd1GA.js → object3d-authoring-subject-XccsO0xG.js} +1 -1
  220. package/dist/assets/{object3d-document-session-registry-DJDEDM0p.js → object3d-document-session-registry-CMRJdFp6.js} +2 -2
  221. package/dist/assets/{oid-transform-D5Kxt6ij.js → oid-transform-DaA6yW6o.js} +1 -1
  222. package/dist/assets/{particles-vRp0Lf3o.js → particles-DsQRcDBY.js} +1 -1
  223. package/dist/assets/{performance-profiler-OwnXQX0M.js → performance-profiler-CMbwGBuk.js} +1 -1
  224. package/dist/assets/pixi-authoring-adapter-BoBt8bB5.js +1 -0
  225. package/dist/assets/pixi-live-write-target-CYZgvC6U.js +1 -0
  226. package/dist/assets/play.command-D9JGJP-e.js +2 -0
  227. package/dist/assets/pose-guard-CLabLSzf.js +1 -0
  228. package/dist/assets/presentation-COhHQdmR.js +1 -0
  229. package/dist/assets/{product-CxmUIxmr.js → product-CaRGoiIH.js} +1 -1
  230. package/dist/assets/{profiler.action-Dzy9DuAc.js → profiler.action-Cz7HYWjh.js} +1 -1
  231. package/dist/assets/{profiler.menu-jLDO3U6N.js → profiler.menu-D5aR_FBy.js} +1 -1
  232. package/dist/assets/profiler.utility-KwxlIPKb.js +1 -0
  233. package/dist/assets/{project-authoring-session-C3eusefK.js → project-authoring-session-DKXHVwxO.js} +2 -2
  234. package/dist/assets/project-provenance-BGnJXJwa.js +1 -0
  235. package/dist/assets/{properties-bone-constraints.inspector-B_PbSMV7.js → properties-bone-constraints.inspector-Bo-sU8eR.js} +1 -1
  236. package/dist/assets/{properties-bone.inspector-CMDEQuBd.js → properties-bone.inspector-BQiWplQv.js} +1 -1
  237. package/dist/assets/{properties-collection.inspector-D7Ay8yRj.js → properties-collection.inspector-C5BnR-GE.js} +1 -1
  238. package/dist/assets/{properties-constraints.inspector-DS1fZgXK.js → properties-constraints.inspector-CyheU12R.js} +1 -1
  239. package/dist/assets/{properties-data.inspector-k2pGN2Mp.js → properties-data.inspector-CkycARja.js} +1 -1
  240. package/dist/assets/{properties-material.inspector-Bb3yAGUx.js → properties-material.inspector-Bl_PUmY-.js} +1 -1
  241. package/dist/assets/{properties-modifiers.inspector-BcJfe-Wy.js → properties-modifiers.inspector-j7SnOxQq.js} +1 -1
  242. package/dist/assets/{properties-object.inspector-CUSfXJuq.js → properties-object.inspector-DcR3MGLK.js} +1 -1
  243. package/dist/assets/{properties-output.inspector-BTVW2kn1.js → properties-output.inspector-BLjw6K4b.js} +1 -1
  244. package/dist/assets/{properties-particles.inspector-Cw0fxx3B.js → properties-particles.inspector-BUIm2-Jf.js} +1 -1
  245. package/dist/assets/{properties-physics.inspector-C-0bD2bu.js → properties-physics.inspector-DNvRcxb6.js} +1 -1
  246. package/dist/assets/{properties-render.inspector-C8D5UpjX.js → properties-render.inspector-8FMZ-qoZ.js} +1 -1
  247. package/dist/assets/{properties-scene.inspector-HjK6QHGg.js → properties-scene.inspector-Dx7_z75k.js} +1 -1
  248. package/dist/assets/{properties-texture.inspector-CckZgUaI.js → properties-texture.inspector-WT15951-.js} +1 -1
  249. package/dist/assets/{properties-view-layer.inspector-C1ajtVSk.js → properties-view-layer.inspector-P7VNTdqr.js} +1 -1
  250. package/dist/assets/{properties-world.inspector-BiT_EdT-.js → properties-world.inspector-B3t1q8TF.js} +1 -1
  251. package/dist/assets/r3f-design-session-lsbFnoWH.js +2 -0
  252. package/dist/assets/{r3f-physics-binding-DzrbpqjM.js → r3f-physics-binding-Cx8yhuwt.js} +1 -1
  253. package/dist/assets/{r3f-source-authoring-adapter-DbbeRcvt.js → r3f-source-authoring-adapter-jH3G0TeH.js} +2 -2
  254. package/dist/assets/react-canvas-navigation-B_gOe3CI.js +1 -0
  255. package/dist/assets/react-inspector.service-CZf1vfdX.js +1 -0
  256. package/dist/assets/react-story-board-CCm2Opwn.js +1 -0
  257. package/dist/assets/{react-three-rapier.esm-U8J7g6tH.js → react-three-rapier.esm-CHXGG51p.js} +1 -1
  258. package/dist/assets/react-world-authoring-adapter-CnzxMtYz.js +1 -0
  259. package/dist/assets/{realm-services-CnY105XU.js → realm-services-Do9J6nsb.js} +1 -1
  260. package/dist/assets/reflection-probe-capture.inspector-BAjjIybz.js +1 -0
  261. package/dist/assets/{reflection-probe-BHNGwVyz.js → reflection-probe-sIto9mh0.js} +1 -1
  262. package/dist/assets/registry-Xnduk02T.js +1 -0
  263. package/dist/assets/{relative-import-specifier-BFKIWEWs.js → relative-import-specifier-CPFTrxi4.js} +1 -1
  264. package/dist/assets/{render-env-BkKZ4uMA.js → render-env-YJlI8K0i.js} +1 -1
  265. package/dist/assets/{render-features-rxbawsRb.js → render-features-DMSV2qKJ.js} +1 -1
  266. package/dist/assets/{render-settings-DS5leCed.js → render-settings-CRyDhHyz.js} +1 -1
  267. package/dist/assets/{resolve-three-CVnMRHxw.js → resolve-three-D27rMc37.js} +19 -19
  268. package/dist/assets/root-seam-contract-gjWUd5uu.js +1 -0
  269. package/dist/assets/run-selection-B0jOdyYt.js +2 -0
  270. package/dist/assets/scene-capture-Di9cM1p4.js +1 -0
  271. package/dist/assets/scene-document.service-XxGs4HHE.js +2 -0
  272. package/dist/assets/{scene-framing-BQt72ZCw.js → scene-framing-DkZKDwH3.js} +1 -1
  273. package/dist/assets/{scene-index--lRWLEmW.js → scene-index-DHeKmalD.js} +1 -1
  274. package/dist/assets/{scene-query-s1y04OVB.js → scene-query-ByZtXA2m.js} +1 -1
  275. package/dist/assets/seeded-random-BJthDRMu.js +1 -0
  276. package/dist/assets/{session-CTXsU1lK.js → session-x8E_NJk2.js} +34 -34
  277. package/dist/assets/{setup-renderer-Cwkl1Ar6.js → setup-renderer-F9mG7t6r.js} +1 -1
  278. package/dist/assets/{source-object3d-authoring-adapter-DF679Ncb.js → source-object3d-authoring-adapter-CvmFpSUj.js} +1 -1
  279. package/dist/assets/{source-persistence-backend-CwLYVPXj.js → source-persistence-backend-au3WtEn6.js} +1 -1
  280. package/dist/assets/{spark-renderer-lifecycle-DfYpvEJa.js → spark-renderer-lifecycle-B6Axb6jm.js} +1 -1
  281. package/dist/assets/{stage-keyboard-B8BEW592.js → stage-keyboard-BQkndG_D.js} +1 -1
  282. package/dist/assets/stage-overlay-set-g6eWhuRv.js +1 -0
  283. package/dist/assets/stage-presence-markers-0CDfO5f4.js +1 -0
  284. package/dist/assets/stage-transform-tools-BzPl7OIo.js +1 -0
  285. package/dist/assets/standard-viewport-dressing-BW-dM_1h.js +24 -0
  286. package/dist/assets/{state-watch.action-DnR5Zjr-.js → state-watch.action-Z1nQ5awu.js} +1 -1
  287. package/dist/assets/{state-watch.menu-wYLCLsAw.js → state-watch.menu-CQHGUF3W.js} +1 -1
  288. package/dist/assets/state-watch.utility-DCIg2i79.js +1 -0
  289. package/dist/assets/{story-capture-BmnwHGDV.js → story-capture-BIrjDKeY.js} +1 -1
  290. package/dist/assets/story-documents-BvG2xeaR.js +3 -0
  291. package/dist/assets/{story-documents.service-B6v7Z-WE.js → story-documents.service-DOSEa3ja.js} +1 -1
  292. package/dist/assets/{story-documents.service-yagl1wGp.js → story-documents.service-y1m7XGMJ.js} +1 -1
  293. package/dist/assets/{story-media-presence-BqRMu572.js → story-media-presence-HLV-KaMj.js} +1 -1
  294. package/dist/assets/{story-pixi-preview-Da6afqLg.js → story-pixi-preview-CMhho2gG.js} +1 -1
  295. package/dist/assets/{story-presentation-DMSYRWaz.js → story-presentation-CYhVv8Ku.js} +1 -1
  296. package/dist/assets/story-three-preview-CgcLF5lE.js +2 -0
  297. package/dist/assets/{structural-ids-Br2zjINh.js → structural-ids-BOo2BRoY.js} +1 -1
  298. package/dist/assets/studio-environment-R9qXUUcC.js +2 -0
  299. package/dist/assets/{surface-state-1lTOi8FD.js → surface-state-D8Qnowo6.js} +1 -1
  300. package/dist/assets/{syntactic-prop-specs-eiQXwMIc.js → syntactic-prop-specs-8gkBuc5j.js} +1 -1
  301. package/dist/assets/team-playtest.service-BBMZ2iyk.js +1 -0
  302. package/dist/assets/{three-TCuY32m_.js → three-DiL6vMXq.js} +1 -1
  303. package/dist/assets/three-authoring-adapter-CkLR2zGf.js +1 -0
  304. package/dist/assets/three-authoring.service-CovhlCGx.js +2 -0
  305. package/dist/assets/{three-ingest-runtime-B7rtg3QE.js → three-ingest-runtime-CwTqAHgX.js} +1 -1
  306. package/dist/assets/{three-integration-BdN5Nhsg.js → three-integration-DXOFI88n.js} +2 -2
  307. package/dist/assets/three-integration.service-rCAqpqSp.js +1 -0
  308. package/dist/assets/three-projection-core-B7Lf8tOp.js +1 -0
  309. package/dist/assets/{three-state-DwFE3ay2.js → three-state-BCACvUtm.js} +1 -1
  310. package/dist/assets/{three-story-capture.service-CvpV3v5a.js → three-story-capture.service-rTFKNtHA.js} +2 -2
  311. package/dist/assets/{three-story-model-C2r2BuiA.js → three-story-model-BjKr7OMn.js} +1 -1
  312. package/dist/assets/three-viewport-presentation-CBzvc2v2.js +141 -0
  313. package/dist/assets/tools-DfctM216.js +1 -0
  314. package/dist/assets/transform-mode-request-DlEApNrA.js +1 -0
  315. package/dist/assets/transport-strip-xCg94CuI.js +1 -0
  316. package/dist/assets/transport.header-BRtdky0x.js +1 -0
  317. package/dist/assets/{trigger-volume-DP0G1VBe.js → trigger-volume-BLkHmfm9.js} +1 -1
  318. package/dist/assets/tuples-BDz3wbQL.js +1 -0
  319. package/dist/assets/ui-board-document-DvbK_HVN.js +2 -0
  320. package/dist/assets/{user-data-Bpj7diUS.js → user-data-C84W0V47.js} +1 -1
  321. package/dist/assets/user-data-CODoGZqA.js +1 -0
  322. package/dist/assets/{utility-view-state-CAfbFbKQ.js → utility-view-state-CDRxZSo-.js} +1 -1
  323. package/dist/assets/viewport-door-BARIpMu-.js +1 -0
  324. package/dist/assets/{viewport-root-presentation-vgxsTyj4.js → viewport-root-presentation-hRLF0BeO.js} +1 -1
  325. package/dist/assets/{viewport-surface-status-cwCiBGa7.js → viewport-surface-status-TUfhXKR9.js} +1 -1
  326. package/dist/assets/{webworkerAll-Cm3gTjWi.js → webworkerAll-PJtcQ1FD.js} +1 -1
  327. package/dist/assets/worker-BtXrsgFy.js +2 -0
  328. package/dist/assets/workspace-arrangement-DqG5sUns.js +1 -0
  329. package/dist/assets/world-documents-D69XaqUX.js +1 -0
  330. package/dist/assets/world-root-stage-binding-BgZWZEuD.js +1 -0
  331. package/dist/assets/{xstate-animation-binding-BGLxcZT_.js → xstate-animation-binding-CIyLzGHs.js} +1 -1
  332. package/dist/assets/{xstate-animation-meta-D_T441Ru.js → xstate-animation-meta-CbYWup3R.js} +1 -1
  333. package/dist/volter-shared-react.json +10 -0
  334. package/dist/volter-shared-three.json +3 -0
  335. package/dist-node/cli.js +253 -210
  336. package/dist-node/create.js +103 -82
  337. package/package.json +23 -20
  338. package/src/contributions.d.ts +1 -1
  339. package/src/index.ts +10 -10
  340. package/starter/cube.py +1 -1
  341. package/template/.agents/references/project-manual.md +17 -17
  342. package/template/.agents/skills/editor/SKILL.md +6 -6
  343. package/template/.agents/skills/editor/agents/openai.yaml +3 -3
  344. package/template/.agents/skills/editor/references/editor-control.md +62 -62
  345. package/template/{.claude/skills/vgai-3d-models → .agents/skills/volter-3d-models}/SKILL.md +3 -3
  346. package/template/{.github/skills/vgai-ingest-existing-game → .agents/skills/volter-ingest-existing-game}/SKILL.md +2 -2
  347. package/template/.agents/skills/{vgai-music → volter-music}/SKILL.md +35 -11
  348. package/template/{.claude/skills/vgai-threejs-authoring → .agents/skills/volter-threejs-authoring}/SKILL.md +9 -9
  349. package/template/.agents/skills/volter-threejs-authoring/agents/openai.yaml +4 -0
  350. package/template/{.github/skills/vgai-threejs-authoring → .agents/skills/volter-threejs-authoring}/references/helper-catalog.md +1 -1
  351. package/template/.claude/skills/editor/SKILL.md +6 -6
  352. package/template/.claude/skills/editor/agents/openai.yaml +3 -3
  353. package/template/.claude/skills/editor/references/editor-control.md +62 -62
  354. package/template/{.agents/skills/vgai-3d-models → .claude/skills/volter-3d-models}/SKILL.md +3 -3
  355. package/template/{.agents/skills/vgai-ingest-existing-game → .claude/skills/volter-ingest-existing-game}/SKILL.md +2 -2
  356. package/template/{.github/skills/vgai-threejs-authoring → .claude/skills/volter-threejs-authoring}/SKILL.md +9 -9
  357. package/template/.claude/skills/volter-threejs-authoring/agents/openai.yaml +4 -0
  358. package/template/.claude/skills/{vgai-threejs-authoring → volter-threejs-authoring}/references/helper-catalog.md +1 -1
  359. package/template/.github/copilot-instructions.md +1 -1
  360. package/template/.github/skills/editor/SKILL.md +6 -6
  361. package/template/.github/skills/editor/agents/openai.yaml +3 -3
  362. package/template/.github/skills/editor/references/editor-control.md +62 -62
  363. package/template/.github/skills/{vgai-3d-models → volter-3d-models}/SKILL.md +3 -3
  364. package/template/{.claude/skills/vgai-ingest-existing-game → .github/skills/volter-ingest-existing-game}/SKILL.md +2 -2
  365. package/template/{.agents/skills/vgai-threejs-authoring → .github/skills/volter-threejs-authoring}/SKILL.md +9 -9
  366. package/template/.github/skills/volter-threejs-authoring/agents/openai.yaml +4 -0
  367. package/template/{.agents/skills/vgai-threejs-authoring → .github/skills/volter-threejs-authoring}/references/helper-catalog.md +1 -1
  368. package/template/.mcp.json +3 -3
  369. package/template/AGENTS.md +24 -23
  370. package/template/DEVLOG.md +1 -1
  371. package/template/IDIOMS.md +3 -3
  372. package/template/LICENSE +3 -3
  373. package/template/README.md +12 -12
  374. package/template/check-idioms.ts +51 -51
  375. package/template/manifest-entry-modules-plugin.ts +17 -4
  376. package/template/package.json +12 -12
  377. package/template/server/loopback.ts +1 -1
  378. package/template/server/main.ts +4 -4
  379. package/template/server/rooms/arena-room.ts +8 -8
  380. package/template/server/rooms/game-room.ts +8 -8
  381. package/template/server/rooms.ts +2 -2
  382. package/template/src/bot/QaTester.tsx +1 -1
  383. package/template/src/bot/bot-station.ts +2 -2
  384. package/template/src/bot/tester-station.ts +1 -1
  385. package/template/src/contributions/README.md +1 -1
  386. package/template/src/contributions/analytics.analytics.tsx +1 -1
  387. package/template/src/contributions/data.document.tsx +2 -2
  388. package/template/src/contributions/pages.finder.ts +1 -1
  389. package/template/src/contributions/tester.inspector.tsx +2 -2
  390. package/template/src/contributions/use-game-modules.ts +1 -1
  391. package/template/src/input.ts +2 -2
  392. package/template/src/lib/reflections/volume-reflection-material.ts +59 -59
  393. package/template/src/lib/static-batch/Frozen.tsx +1 -1
  394. package/template/src/lib/static-batch/mutation-watch.ts +1 -1
  395. package/template/src/main.ts +58 -6
  396. package/template/src/manifest-entry-modules.d.ts +12 -1
  397. package/template/src/prefabs/HeroBox.stories.tsx +1 -1
  398. package/template/src/world.tsx +1 -1
  399. package/template/tsconfig.json +1 -1
  400. package/template/validate-manifest.ts +3 -3
  401. package/template/vite.config.ts +11 -11
  402. package/template/{vgai.adapter.ts → volter.adapter.ts} +1 -1
  403. package/template/{vgai.project.json → volter.project.json} +2 -2
  404. package/template-dotfiles/gitignore +27 -27
  405. package/workbench/src/media/game-cover.css +11 -11
  406. package/workbench/src/product.contribution.ts +28 -28
  407. package/workbench/src/{vgaiGameSkew.ts → volterGameSkew.ts} +16 -16
  408. package/dist/assets/AudioViewer-BDPqHDfU.js +0 -1
  409. package/dist/assets/CanvasBoardDocument-mxL0oJ3N.js +0 -1
  410. package/dist/assets/CanvasSceneViewport-C_mapCwC.js +0 -1
  411. package/dist/assets/ColorInput-QUPS1pEB.js +0 -1
  412. package/dist/assets/ImageViewer-tlVvkdM4.js +0 -1
  413. package/dist/assets/InspectorObjectPreview-W-y079DS.js +0 -1
  414. package/dist/assets/JsonAssetDocument-CPmcWFPW.js +0 -2
  415. package/dist/assets/ModelAssetDocument-De1HKuxG.js +0 -1
  416. package/dist/assets/Object3DDocumentToolbar-Cks81kCS.js +0 -1
  417. package/dist/assets/Object3DDocumentViewport-DCwiSY3O.js +0 -2
  418. package/dist/assets/OnlineAssetDetail-CNuwSQRQ.js +0 -1
  419. package/dist/assets/PlayBar-bT8Xdrap.js +0 -1
  420. package/dist/assets/ReactCanvasControls-CnJrPj-B.js +0 -1
  421. package/dist/assets/RootSelectionOverlay-CpaGluQu.js +0 -1
  422. package/dist/assets/ShadowEditor-CVtMlALn.js +0 -1
  423. package/dist/assets/StageHost-B89HKcvd.js +0 -2
  424. package/dist/assets/ThreeBoardDocument-BAgHrbtu.js +0 -2
  425. package/dist/assets/Toolbar-DkTHnQto.js +0 -1
  426. package/dist/assets/VideoViewer-DMV8lf4P.js +0 -1
  427. package/dist/assets/ViewportShadingMenu-CXPi6fl8.js +0 -1
  428. package/dist/assets/active-ingest-DA426a81.js +0 -3
  429. package/dist/assets/adapter-runtime-bindings-4cmsRvRh.js +0 -2
  430. package/dist/assets/animation-mixers.service-DK64IuYq.js +0 -1
  431. package/dist/assets/animation-timeline.utility-D-g0zrOl.js +0 -1
  432. package/dist/assets/asset-editor-persistence-BGWIqZdk.js +0 -1
  433. package/dist/assets/asset-loaders-C0KQI5eY.js +0 -2
  434. package/dist/assets/audio.utility-BmE9WMUg.js +0 -1
  435. package/dist/assets/autoplay.service-CjPnv3QW.js +0 -1
  436. package/dist/assets/binding-resolver-dE0GnZT5.js +0 -2
  437. package/dist/assets/blender-emscripten-engine-BeWFjMn-.js +0 -2
  438. package/dist/assets/blender-version.status-OsFoc9SA.js +0 -1
  439. package/dist/assets/blender-wali-engine-da698rDf.js +0 -2
  440. package/dist/assets/blender.keymap-_rF_vRX8.js +0 -1
  441. package/dist/assets/blender.status-ujwGU6dU.js +0 -1
  442. package/dist/assets/board-guides-BEKPgD9M.js +0 -1
  443. package/dist/assets/body-marks-RKb_LTwL.js +0 -1
  444. package/dist/assets/bridge.command-BF00Iefm.js +0 -3
  445. package/dist/assets/build-profiles.document-CqNrDdh9.js +0 -2
  446. package/dist/assets/build-progress.status-Bo1ZgJcb.js +0 -1
  447. package/dist/assets/build-session-GZcSAfPN.js +0 -9
  448. package/dist/assets/build.header-Bt1kwHWl.js +0 -1
  449. package/dist/assets/canvas-design-mount-BbLW_Nci.js +0 -6
  450. package/dist/assets/canvas-entry-runtime-UNYuSfG0.js +0 -2
  451. package/dist/assets/capability-coverage-DZ-onC5j.js +0 -7
  452. package/dist/assets/component-board.service-q_TM9BCw.js +0 -2
  453. package/dist/assets/component-contracts.service-CPbfXE1h.js +0 -1
  454. package/dist/assets/component-instance-root-B0C5oNEm.js +0 -1
  455. package/dist/assets/component-verbs.service-CnA11bJq.js +0 -1
  456. package/dist/assets/connection.status-Yvt0bX0r.js +0 -1
  457. package/dist/assets/constraints.inspector-4r8jWq5a.js +0 -1
  458. package/dist/assets/coverage.service-DcpEoBuf.js +0 -3
  459. package/dist/assets/create-runtime-DBfUy0SO.js +0 -3
  460. package/dist/assets/curve-DVd18iAX.js +0 -1
  461. package/dist/assets/data-check-core-CQEjuFyt.js +0 -1
  462. package/dist/assets/data-ref-CWnkj-HX.js +0 -1
  463. package/dist/assets/debug-bridge-D3_-EgRE.js +0 -1
  464. package/dist/assets/debug-registry-P0_YQGWd.js +0 -1
  465. package/dist/assets/design-time-layers-ChswRUJt.js +0 -1
  466. package/dist/assets/design-time-react-mount-C85KfXOd.js +0 -1
  467. package/dist/assets/edit-mode-authoring-DeCxPcHM.js +0 -1
  468. package/dist/assets/editor-api-BFTIRlWa.js +0 -1
  469. package/dist/assets/editor-presentation-activity-C7SNSmTd.js +0 -1
  470. package/dist/assets/entry-adjudication-Dc18TIqT.js +0 -1
  471. package/dist/assets/fork-menu-DpKqRhF5.js +0 -1
  472. package/dist/assets/game-audio-CaGKzia4.js +0 -1
  473. package/dist/assets/game-document.service-Chmt4065.js +0 -1
  474. package/dist/assets/game-eval.command-DRSvOJ_1.js +0 -2
  475. package/dist/assets/game-module-access-o3iXZpCA.js +0 -1
  476. package/dist/assets/game-network-Ct2FQYmu.js +0 -1
  477. package/dist/assets/gameplay-replay-BwdxV4oF.js +0 -1
  478. package/dist/assets/gameplay.command-Boqv1hnc.js +0 -1
  479. package/dist/assets/generation-DhwCUHPf.css +0 -1
  480. package/dist/assets/generation.service-o9aXlsx4.js +0 -1
  481. package/dist/assets/generations.status-BvzgHlyk.js +0 -1
  482. package/dist/assets/hierarchy-marks-BLPfSIym.js +0 -1
  483. package/dist/assets/hierarchy-marks-Cc_3lxw6.js +0 -1
  484. package/dist/assets/hosted-asset-materialization-BpbnhJac.js +0 -2
  485. package/dist/assets/index-0Lm0Nf1M.css +0 -1
  486. package/dist/assets/index-BHoAKyAC.js +0 -1
  487. package/dist/assets/index-BeK4RPgj.js +0 -1
  488. package/dist/assets/index-C1c3eOmm.js +0 -1
  489. package/dist/assets/index.module-Ycad3DJq.js +0 -1
  490. package/dist/assets/ingest-siblings-BtiEXLnh.js +0 -1
  491. package/dist/assets/ingest-source-persistence-Dmdo-UBp.js +0 -1
  492. package/dist/assets/ingest.service-vbCucMz7.js +0 -1
  493. package/dist/assets/inspection-CObLhnrs.js +0 -1
  494. package/dist/assets/instances.command-BwayrqNm.js +0 -1
  495. package/dist/assets/layered-pick-kiQf53t5.js +0 -1
  496. package/dist/assets/material-B_V78pTt.js +0 -1
  497. package/dist/assets/model-asset-sections-CFvvihfx.css +0 -1
  498. package/dist/assets/model-asset-sections.service-CqSclZGY.js +0 -1
  499. package/dist/assets/module-mode-BH2R93XP.js +0 -2
  500. package/dist/assets/mount-canvas-ingest-root-D1z9i5B3.js +0 -2
  501. package/dist/assets/mount-dom-ingest-root-BAmmNxlm.js +0 -2
  502. package/dist/assets/mount-ingest-root-DYR0TMIt.js +0 -2
  503. package/dist/assets/mount-manifest-DdkFYdVA.js +0 -1
  504. package/dist/assets/mount-readiness-Ds0HvvLH.js +0 -4
  505. package/dist/assets/mount-three-ingest-root-DVbACDUy.js +0 -1
  506. package/dist/assets/network-observer.service-Ce83TdsU.js +0 -1
  507. package/dist/assets/network.utility-DFDul2Xb.js +0 -1
  508. package/dist/assets/object-marks-DwvIEBOK.js +0 -1
  509. package/dist/assets/pixi-authoring-adapter-BChknIdC.js +0 -1
  510. package/dist/assets/pixi-live-write-target-BjDsBQbp.js +0 -1
  511. package/dist/assets/play-mode-DICV4cKP.js +0 -22
  512. package/dist/assets/play.command-NHyi5rzF.js +0 -2
  513. package/dist/assets/pose-guard-DILO6gGq.js +0 -1
  514. package/dist/assets/presentation-BeNFBfKg.js +0 -1
  515. package/dist/assets/profiler.utility-Do2Bw7MY.js +0 -1
  516. package/dist/assets/project-provenance-4ldz-EOG.js +0 -1
  517. package/dist/assets/r3f-design-session-B5GsZI5M.js +0 -2
  518. package/dist/assets/react-canvas-navigation-Cp3cOHJa.js +0 -1
  519. package/dist/assets/react-inspector.service-Bm0OnanU.js +0 -1
  520. package/dist/assets/react-story-board-GaXqr03H.js +0 -1
  521. package/dist/assets/react-world-authoring-adapter-DOjv2pYm.js +0 -1
  522. package/dist/assets/reflection-probe-capture.inspector-DqSW9p1v.js +0 -1
  523. package/dist/assets/registry-CaCdF63N.js +0 -1
  524. package/dist/assets/root-seam-contract-CxLZaRio.js +0 -1
  525. package/dist/assets/run-selection-DzEkGesJ.js +0 -2
  526. package/dist/assets/scene-capture-0a-bTjT8.js +0 -1
  527. package/dist/assets/scene-document.service-CeDwVA7t.js +0 -2
  528. package/dist/assets/seeded-random-BgCwIAAU.js +0 -1
  529. package/dist/assets/stage-overlay-set-BGE03mqb.js +0 -1
  530. package/dist/assets/stage-presence-markers-DIP7YMcO.js +0 -1
  531. package/dist/assets/stage-transform-tools-BQB7EY4l.js +0 -1
  532. package/dist/assets/standard-viewport-dressing-BCA51Tum.js +0 -24
  533. package/dist/assets/state-watch.utility-CFG1Tu1m.js +0 -1
  534. package/dist/assets/story-documents-BTo90DiA.js +0 -3
  535. package/dist/assets/story-three-preview-R1JvrggS.js +0 -2
  536. package/dist/assets/studio-environment-DRxxq_QX.js +0 -2
  537. package/dist/assets/team-playtest.service-hLfjgScx.js +0 -1
  538. package/dist/assets/three-authoring-adapter-htbnVej2.js +0 -1
  539. package/dist/assets/three-authoring.service-BIQAtVdX.js +0 -2
  540. package/dist/assets/three-integration.service-CS8Nvbd2.js +0 -1
  541. package/dist/assets/three-projection-core-CG01r5Ta.js +0 -1
  542. package/dist/assets/three-viewport-presentation-B0z_cECu.js +0 -141
  543. package/dist/assets/tools-B_NJsk05.js +0 -1
  544. package/dist/assets/transform-mode-request-DzD9aUNA.js +0 -1
  545. package/dist/assets/transport-strip-CUjNltnb.js +0 -1
  546. package/dist/assets/transport.header-Bb4FpQ8J.js +0 -1
  547. package/dist/assets/tuples-DfWSY2tr.js +0 -1
  548. package/dist/assets/ui-board-document-CCiiXjX9.js +0 -2
  549. package/dist/assets/user-data-dHvLdpwM.js +0 -1
  550. package/dist/assets/viewport-door-Bj_ZIP85.js +0 -1
  551. package/dist/assets/worker-CC9Ug5Ei.js +0 -2
  552. package/dist/assets/workspace-arrangement-BdAlBwvd.js +0 -1
  553. package/dist/assets/world-documents-DBybpBq8.js +0 -1
  554. package/dist/assets/world-root-stage-binding-ZVYIgr74.js +0 -1
  555. package/dist/vgai-shared-react.json +0 -10
  556. package/dist/vgai-shared-three.json +0 -3
  557. package/template/.agents/skills/vgai-threejs-authoring/agents/openai.yaml +0 -4
  558. package/template/.claude/skills/vgai-threejs-authoring/agents/openai.yaml +0 -4
  559. package/template/.github/skills/vgai-threejs-authoring/agents/openai.yaml +0 -4
  560. /package/dist/assets/{vgai-shared-fontawesome-CU65D4Ij.js → volter-shared-fontawesome-CU65D4Ij.js} +0 -0
  561. /package/dist/assets/{vgai-shared-jsx-dev-runtime-DFDKL7fx.js → volter-shared-jsx-dev-runtime-DFDKL7fx.js} +0 -0
  562. /package/dist/assets/{vgai-shared-jsx-runtime-DIqBpTut.js → volter-shared-jsx-runtime-DIqBpTut.js} +0 -0
  563. /package/dist/assets/{vgai-shared-react-BT7rMc2H.js → volter-shared-react-BT7rMc2H.js} +0 -0
  564. /package/dist/assets/{vgai-shared-react-dom-DFajMqMT.js → volter-shared-react-dom-DFajMqMT.js} +0 -0
  565. /package/dist/assets/{vgai-shared-react-dom-client-S0ozfl6_.js → volter-shared-react-dom-client-S0ozfl6_.js} +0 -0
  566. /package/dist/assets/{vgai-shared-three-DH4yxKwt.js → volter-shared-three-DH4yxKwt.js} +0 -0
  567. /package/template/{.vgai → .volter}/assets.json +0 -0
  568. /package/template/{.vgai → .volter}/provenance.json +0 -0
@@ -0,0 +1 @@
1
+ .volter-console{display:flex;height:100%;flex-direction:column}.volter-console .volter-toolbar{flex:0 0 auto}.volter-console-filter{width:140px;margin-left:auto}.volter-console-list{min-height:0;flex:1;overflow-y:auto;font-family:var(--volter-font-mono);font-size:var(--volter-font-base);line-height:18px}.volter-console-empty{padding:var(--volter-space-6) var(--volter-space-4);color:var(--volter-content-dim);font-style:italic}.volter-console-row{display:flex;align-items:flex-start;padding:1px var(--volter-space-4);border-bottom:var(--volter-stroke-resting) solid var(--volter-boundary-default)}.volter-console-row[data-level=error]{background:var(--volter-danger-faint)}.volter-console-row:hover{background:var(--volter-neutral-hover)}.volter-console-count{flex:0 0 auto;margin-left:var(--volter-space-3);padding:0 var(--volter-space-2);color:var(--volter-content-muted);background:var(--volter-surface-raised);border-radius:var(--volter-radius-lg);font-size:var(--volter-font-sm)}.volter-console [data-console-level=info][aria-pressed=true]{color:var(--volter-content-primary)}.volter-console [data-console-level=warn][aria-pressed=true]{color:var(--volter-warn)}.volter-console [data-console-level=error][aria-pressed=true]{color:var(--volter-danger)}.volter-model-document-header{display:flex;align-items:center;gap:var(--volter-space-2);flex:1 1 auto;min-width:0}.volter-model-viewport-toolbar{position:static;min-height:auto;padding:0;border:0;background:transparent;box-shadow:none}.volter-model-viewport-toolbar--preview{margin-left:auto}.volter-model-viewport-toolbar>*{flex:0 0 auto}.volter-model-toolbar-labelled-control{display:inline-flex;align-items:center;gap:var(--volter-space-1);white-space:nowrap}.volter-model-preview-menu{width:250px;padding:var(--volter-space-3);gap:var(--volter-space-3)}.volter-model-preview-menu>label{display:grid;grid-template-columns:68px minmax(0,1fr) auto;align-items:center;gap:var(--volter-space-2);color:var(--volter-text-2);font-size:var(--volter-font-xs)}.volter-model-preview-menu select{grid-column:2 / -1}.volter-model-preview-menu input[type=range]{width:120px}.volter-model-capture-preview{position:absolute;z-index:var(--volter-z-sticky);top:calc(var(--volter-space-3) + var(--volter-control-default-height) + var(--volter-space-2));right:var(--volter-space-3);width:min(420px,calc(100% - 2 * var(--volter-space-3)));padding:var(--volter-space-3)}.volter-model-capture-preview>div{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--volter-space-3)}.volter-model-capture-preview img{display:block;width:100%}.volter-model-toolbar-error{position:absolute;z-index:var(--volter-z-sticky);right:var(--volter-space-3);bottom:var(--volter-space-3);max-width:420px}@media(width<=720px){.volter-model-toolbar-labelled-control>span{display:none}}.volter-viewport-shading-segments{display:inline-flex}.volter-viewport-shading-segments>*{display:inline-flex}.volter-viewport-shading-segments>:not(:first-child) .volter-btn,.volter-viewport-shading-segments>.volter-btn:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0;border-left-width:0}.volter-viewport-shading-segments>:not(:last-child) .volter-btn,.volter-viewport-shading-segments>.volter-btn:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.volter-viewport-shading-segments .volter-btn[aria-pressed=true]{position:relative;z-index:1}.volter-viewport-shading-glyph{width:var(--volter-icon-md);height:var(--volter-icon-md);overflow:visible}.volter-viewport-shading-options{display:grid;gap:var(--volter-space-2);padding:var(--volter-space-2) var(--volter-space-3)}.volter-viewport-shading-options>label{display:grid;grid-template-columns:68px minmax(0,1fr) auto;align-items:center;gap:var(--volter-space-2);color:var(--volter-text-2);font-size:var(--volter-font-xs)}.volter-viewport-shading-options select{grid-column:2 / -1}.volter-viewport-shading-options input[type=range]{width:120px}.volter-viewport-overlays-glyph{width:var(--volter-icon-md);height:var(--volter-icon-md);overflow:visible}.volter-project-header{position:relative;display:flex;height:var(--volter-command-bar-height);flex:0 0 auto;align-items:center;padding:0 var(--volter-space-3);color:var(--volter-content-primary);background:var(--volter-surface-shell);border-bottom:var(--volter-stroke-resting) solid var(--volter-boundary-area);font-size:var(--volter-font-base);pointer-events:auto;user-select:none;box-sizing:border-box}.volter-project-header-left{position:relative;display:flex;min-width:0;flex:1;align-self:stretch;align-items:center}.volter-menu-trigger.volter-project-trigger{position:relative;display:flex;width:14px;min-width:0;align-items:center;justify-content:flex-start;padding:0;overflow:visible;white-space:nowrap}.volter-project-menu-name{display:block;max-width:320px;padding:var(--volter-space-3) var(--volter-space-4) var(--volter-space-1)}.volter-project-header-right .volter-btn[data-variant=ghost]{color:var(--volter-content-primary)}.volter-project-header-left .volter-text[data-variant=label]{font-weight:400}.volter-project-app-menus,.volter-project-transport{flex:0 0 auto}.volter-project-menu{position:absolute;top:100%;left:0;min-width:190px;margin-top:var(--volter-space-1)}.volter-project-path{display:block;max-width:320px;padding:var(--volter-space-2) var(--volter-space-4)}.volter-project-versions{display:grid;grid-template-columns:1fr auto;gap:var(--volter-space-2) var(--volter-space-6);padding:var(--volter-space-3) var(--volter-space-4) var(--volter-space-4);color:var(--volter-content-dim);font-size:var(--volter-font-sm)}.volter-project-header-right{min-width:0;flex:1;gap:var(--volter-space-2)}@media(max-width:680px){.volter-project-header{height:auto;min-height:var(--volter-command-bar-height);flex-wrap:wrap;gap:var(--volter-space-2) var(--volter-space-4);padding-block:4px}.volter-project-header-left{flex:1 1 100%}.volter-project-header-right{flex:1 1 auto;flex-wrap:wrap}}.volter-header-telemetry{min-width:0;flex:0 0 auto;overflow:visible}.volter-header-telemetry-button.volter-btn{min-width:0;height:var(--volter-control-compact-height);gap:var(--volter-space-2);padding-inline:var(--volter-space-2);font-variant-numeric:tabular-nums}.volter-header-audio{position:relative}.volter-audio-vu{display:flex;width:34px;height:12px;align-items:stretch;gap:var(--volter-space-1)}.volter-audio-vu>i{width:2px;flex:1 1 0;border-radius:1px;background:var(--volter-boundary-strong)}.volter-header-audio[data-available=true] .volter-audio-vu>i[data-filled=true]{background:var(--volter-accent)}.volter-header-audio[data-muted=true] .volter-audio-vu>i[data-filled=true]{background:var(--volter-content-muted)}.volter-header-performance{border-left:var(--volter-stroke-resting) solid var(--volter-boundary-default)}.volter-header-performance svg{display:block;overflow:visible}.volter-performance-graph{border-radius:var(--volter-radius-sm);background:color-mix(in srgb,var(--volter-surface-panel) 72%,transparent)}.volter-performance-budget{stroke:var(--volter-boundary-strong);stroke-dasharray:2 2;stroke-width:1}.volter-performance-sparkline{fill:none;stroke:var(--volter-accent);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5;vector-effect:non-scaling-stroke}.volter-header-performance[data-performance-tone=warning] .volter-performance-sparkline,.volter-header-performance[data-performance-tone=warning] .volter-header-fps{color:var(--volter-warn);stroke:var(--volter-warn)}.volter-header-performance[data-performance-tone=danger] .volter-performance-sparkline,.volter-header-performance[data-performance-tone=danger] .volter-header-fps{color:var(--volter-danger);stroke:var(--volter-danger)}.volter-performance-readout{display:grid;min-width:48px;line-height:1.05;text-align:right}.volter-header-fps{color:var(--volter-content-primary);font-family:var(--volter-font-mono);font-size:var(--volter-font-sm);font-weight:600}.volter-header-frame-ms{color:var(--volter-content-dim);font-family:var(--volter-font-mono);font-size:var(--volter-font-xs)}@media(max-width:1120px){.volter-header-performance svg,.volter-audio-vu{display:none}}.volter-project-header-cluster{display:flex;min-width:0}.volter-project-header-left .volter-project-header-cluster{flex:0 0 auto}.volter-project-header-right .volter-project-header-cluster{align-items:center;gap:var(--volter-space-2)}[data-volter-chrome=islands] .volter-project-header{z-index:var(--volter-z-sticky);align-items:flex-start;padding-top:var(--volter-space-4);background:transparent;border-bottom-color:transparent;pointer-events:none}[data-volter-chrome=islands] .volter-editor-shell:has(.volter-workspace-dock[data-volter-backdrop]) .volter-project-header{position:absolute;top:0;left:0;right:0}[data-volter-chrome=islands] .volter-project-header .volter-chrome-island{height:38px;align-items:center;padding:0 var(--volter-space-3)}[data-volter-chrome=islands] .volter-project-menu{pointer-events:auto}.volter-project-header{transition:margin-top var(--volter-duration-slow) var(--volter-ease-standard)}[data-volter-play-chrome=hidden] .volter-project-header{margin-top:calc(-1 * var(--volter-command-bar-height));background:transparent;border-bottom-color:transparent;pointer-events:none;transition:margin-top var(--volter-duration-base) var(--volter-ease-standard)}[data-volter-play-chrome=hidden] .volter-project-header-left,[data-volter-play-chrome=hidden] .volter-project-transport,[data-volter-play-chrome=hidden] .volter-project-header-right>:not(.volter-header-telemetry){transform:translateY(calc(-100% - 12px));opacity:0;visibility:hidden;pointer-events:none;transition:transform var(--volter-duration-base) var(--volter-ease-standard),opacity var(--volter-duration-base) var(--volter-ease-standard) .1s,visibility 0s linear .28s}[data-volter-play-chrome=hidden] .volter-header-telemetry{position:fixed;top:12px;right:12px;z-index:var(--volter-z-sticky);height:32px;padding:0 var(--volter-space-2);border:var(--volter-stroke-resting) solid var(--volter-boundary-default);border-radius:var(--volter-radius-lg);background:var(--volter-surface-chrome);box-shadow:var(--volter-shadow-sm);pointer-events:auto}[data-volter-play-chrome=hidden][data-volter-play-revealed] .volter-project-header{margin-top:0;background:var(--volter-surface-shell);border-bottom-color:var(--volter-boundary-default);pointer-events:auto;transition:margin-top var(--volter-duration-base) var(--volter-ease-standard)}[data-volter-play-chrome=hidden][data-volter-play-revealed] .volter-project-header-left,[data-volter-play-chrome=hidden][data-volter-play-revealed] .volter-project-transport,[data-volter-play-chrome=hidden][data-volter-play-revealed] .volter-project-header-right>:not(.volter-header-telemetry){transform:none;opacity:1;visibility:visible;pointer-events:auto;transition:transform var(--volter-duration-base) var(--volter-ease-standard),opacity var(--volter-duration-fast) var(--volter-ease-standard),visibility 0s}[data-volter-play-chrome=hidden][data-volter-play-revealed] .volter-header-telemetry{position:static;height:auto;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}@media(prefers-reduced-motion:reduce){.volter-project-header,[data-volter-play-chrome=hidden] .volter-project-header,[data-volter-play-chrome=hidden] .volter-project-header-left,[data-volter-play-chrome=hidden] .volter-project-transport,[data-volter-play-chrome=hidden] .volter-project-header-right>*{transition:none}}.volter-divider.volter-project-menu-rule{align-self:center;margin-inline:var(--volter-space-4);background:var(--volter-boundary-divider)}.volter-workspace-tabs{display:flex;background:var(--volter-surface-chrome);height:22px;align-items:center;align-self:flex-start;margin-top:var(--volter-space-1);flex:1 1 0;min-width:0;overflow-x:auto;overflow-y:hidden;box-shadow:var(--volter-widget-emboss-shadow)}.volter-project-header .volter-project-header-left .volter-workspace-tabs{scrollbar-width:none}.volter-project-header .volter-project-header-left .volter-workspace-tabs::-webkit-scrollbar{display:none}.volter-workspace-tab{appearance:none;border:0;margin:0;flex:0 0 auto;height:var(--volter-control-compact-height);padding:0 var(--volter-space-5);background:transparent;color:var(--volter-content-dim);font:inherit;font-size:var(--volter-font-base);white-space:nowrap;border-radius:var(--volter-radius-sm) var(--volter-radius-sm) 0 0;cursor:default}.volter-workspace-tab:hover{color:var(--volter-content-primary)}.volter-workspace-tab[aria-selected=true]{background:var(--volter-surface-panel);color:var(--volter-content-primary)}.volter-worktree-switcher{display:flex;min-width:0;flex:0 0 auto;margin-left:var(--volter-space-2);align-items:center}.volter-menu-trigger.volter-worktree-trigger{position:relative;display:inline-flex;width:14px;min-width:0;align-items:center;justify-content:center;padding:0;gap:var(--volter-space-2)}.volter-worktree-dirty-dot{width:6px;height:6px;flex:0 0 auto;border-radius:var(--volter-radius-full);background:var(--volter-warn)}.volter-worktree-trigger .volter-worktree-dirty-dot{position:absolute;top:2px;right:1px;width:5px;height:5px}.volter-worktree-menu{width:min(520px,calc(100vw - 24px));padding:var(--volter-space-2)}.volter-worktree-version-control{max-height:min(460px,48vh);overflow:auto;padding:0 var(--volter-space-3) var(--volter-space-2)}.volter-worktree-version-control details>summary{padding-block:var(--volter-space-2)}.volter-worktree-search{display:flex;align-items:center;gap:var(--volter-space-2);padding:var(--volter-space-1) var(--volter-space-1) var(--volter-space-2)}.volter-worktree-search .volter-input{min-width:0;flex:1}.volter-worktree-results{max-height:min(420px,60vh);overflow:auto}.volter-worktree-section-label{padding:var(--volter-space-2) var(--volter-space-4) var(--volter-space-1);font-weight:600;letter-spacing:.02em;text-transform:uppercase}.volter-worktree-menu-item[data-current]:disabled{color:var(--volter-content-primary)}.volter-worktree-menu-item[data-current]:disabled:hover{background:var(--volter-selection-bg)}.volter-worktree-menu-item,.volter-worktree-create-command{min-width:0;min-height:46px;align-items:center;gap:var(--volter-space-2);padding-block:var(--volter-space-2);padding-inline:var(--volter-space-3);white-space:normal}.volter-worktree-row-shell{display:flex;min-width:0;align-items:center}.volter-worktree-row-shell>.volter-worktree-menu-item{min-width:0;flex:1}.volter-worktree-row-icon{display:inline-flex;width:18px;flex:0 0 18px;align-items:center;justify-content:center;color:var(--volter-content-muted)}.volter-worktree-row-copy{display:grid;min-width:0;flex:1;gap:1px}.volter-worktree-row-title,.volter-worktree-row-detail{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.volter-worktree-presence{display:inline-flex;flex:0 0 auto;align-items:center;padding-left:5px}.volter-worktree-avatar{--volter-participant-color: var(--volter-content-muted);display:inline-flex;width:22px;height:22px;margin-left:-5px;align-items:center;justify-content:center;border:2px solid var(--volter-surface-overlay);border-radius:var(--volter-radius-full);background:var(--volter-participant-color);color:#fff;font-size:8px;font-weight:700;letter-spacing:-.01em}.volter-worktree-avatar[data-kind=agent]{border-radius:7px}.volter-worktree-avatar[data-status=needs-input]{box-shadow:0 0 0 2px var(--volter-warn)}.volter-worktree-avatar[data-status=idle],.volter-worktree-avatar[data-status=done]{opacity:.62}.volter-worktree-avatar-more{--volter-participant-color: var(--volter-surface-raised);color:var(--volter-content-muted)}.volter-worktree-row-title{display:flex;align-items:center;gap:var(--volter-space-2);font-size:var(--volter-font-base)}.volter-worktree-row-detail{color:var(--volter-content-dim);font-size:var(--volter-font-xs)}.volter-worktree-empty,.volter-worktree-error,.volter-worktree-more{padding:var(--volter-space-3) var(--volter-space-4)}.volter-worktree-delegate{display:grid;gap:var(--volter-space-2);padding:var(--volter-space-3)}.volter-worktree-delegate textarea{min-height:72px;resize:vertical}.volter-worktree-delegate label{display:grid;grid-template-columns:70px minmax(0,1fr);align-items:center;gap:var(--volter-space-2);color:var(--volter-content-dim);font-size:var(--volter-font-xs)}.volter-worktree-delegate select{min-width:0}.volter-worktree-delegate-open{width:100%;justify-content:center}.volter-collaboration-header{display:flex;min-width:0;align-items:center}.volter-collaboration-header-trigger{display:inline-flex;flex:0 0 auto;align-items:center;gap:var(--volter-space-2)}.volter-collaboration-header-count{min-width:1ch;color:var(--volter-content-dim);font-variant-numeric:tabular-nums;text-align:center}.volter-collaboration-header-menu{width:min(360px,calc(100vw - 24px));padding:var(--volter-space-2)}.volter-session-access-control{padding:var(--volter-space-2)}.volter-collaboration-header-label{padding:var(--volter-space-2) var(--volter-space-3);font-weight:600;text-transform:uppercase}.volter-collaboration-header-person{display:flex;min-width:0;align-items:center;gap:var(--volter-space-2);padding-block:var(--volter-space-2)}.volter-collaboration-header-elsewhere{padding-inline:var(--volter-space-3)}.volter-collaboration-header-dot{width:9px;height:9px;flex:0 0 auto;border-radius:var(--volter-radius-full)}.volter-collaboration-header-copy{display:grid;min-width:0;flex:1}.volter-collaboration-header-copy>span{overflow:hidden;color:var(--volter-content-dim);font-size:var(--volter-font-xs);text-overflow:ellipsis;white-space:nowrap}.volter-collaboration-header-actions{display:flex;flex-wrap:wrap;gap:var(--volter-space-2);padding:var(--volter-space-2)}.volter-shell,.volter-splash,.volter-account{--volter-shell-radius: 12px;--volter-shell-radius-sm: 8px;--volter-shell-font-xs: 11px;--volter-shell-font-sm: 12px;--volter-shell-font-base: 13px;--volter-shell-font-md: 14px;--volter-shell-font-lg: 16px;--volter-shell-font-xl: 20px;--volter-shell-font-display: 36px;--volter-shell-line: 1.55;--volter-shell-card-highlight: inset 0 1px 0 rgb(255 255 255 / 5%);--volter-shell-ease: cubic-bezier(.2, .85, .25, 1)}.volter-shell{position:absolute;inset:0;overflow:auto;color:var(--volter-content-primary);background:color-mix(in srgb,var(--volter-surface-shell) 42%,black);font-size:var(--volter-shell-font-base);line-height:var(--volter-shell-line);pointer-events:auto;-webkit-font-smoothing:antialiased}.volter-shell:before{content:"";position:fixed;inset:0;background:radial-gradient(1150px 640px at 50% -16%,color-mix(in srgb,var(--volter-accent) 22%,transparent),transparent 62%),radial-gradient(720px 420px at 50% -4%,rgb(255 255 255 / 5%),transparent 58%),radial-gradient(900px 560px at -12% 112%,color-mix(in srgb,var(--volter-accent) 5%,transparent),transparent 55%),radial-gradient(135% 105% at 50% 40%,transparent 50%,rgb(0 0 0 / 50%) 100%);pointer-events:none}.volter-shell:after{content:"";position:fixed;inset:0;background-image:radial-gradient(rgb(255 255 255 / 5%) 1px,transparent 1px);background-size:26px 26px;mask-image:linear-gradient(180deg,rgb(0 0 0 / 65%),transparent 52%);pointer-events:none}.volter-shell-container{position:relative;z-index:var(--volter-z-base);width:100%;max-width:1120px;margin:0 auto;padding:0 40px 96px;box-sizing:border-box}.volter-shell-header{display:flex;align-items:center;justify-content:space-between;gap:var(--volter-space-8);min-height:72px;margin-bottom:40px}.volter-shell .volter-btn.volter-shell-brand{display:inline-flex;height:auto;align-items:center;gap:var(--volter-space-5);padding:var(--volter-space-2) var(--volter-space-3);margin-left:-6px}.volter-shell-brand-mark{display:grid;place-items:center;width:30px;height:30px}.volter-shell-wordmark{color:var(--volter-content-primary);font-size:15px;font-weight:var(--volter-font-weight-bold);letter-spacing:.22em}.volter-shell-header-actions{display:flex;align-items:center;gap:var(--volter-space-4)}.volter-shell .volter-btn.volter-shell-account-pill{height:32px;padding:0 14px;border-radius:var(--volter-radius-full);font-size:var(--volter-shell-font-sm)}.volter-shell-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--volter-space-10);margin-bottom:32px;flex-wrap:wrap}.volter-shell-hero-heading{margin:0;font-size:var(--volter-shell-font-display);font-weight:650;letter-spacing:-.03em;line-height:var(--volter-leading-snug);color:#fff;text-shadow:0 2px 24px color-mix(in srgb,var(--volter-accent) 24%,transparent)}.volter-shell-hero-actions{display:flex;align-items:center;gap:var(--volter-space-5)}.volter-shell .volter-chip,.volter-account .volter-chip{display:inline-flex;width:fit-content;align-items:center;gap:var(--volter-space-3);height:22px;padding:0 var(--volter-space-5);color:var(--volter-content-muted);background:var(--volter-surface-inset);border:1px solid var(--volter-boundary-default);border-radius:var(--volter-radius-full);font-family:var(--volter-font-mono);font-size:var(--volter-shell-font-xs);letter-spacing:.02em;white-space:nowrap;box-sizing:border-box}.volter-shell .volter-chip[data-variant=tag],.volter-account .volter-chip[data-variant=tag]{padding:0 7px;border-radius:var(--volter-radius-sm)}.volter-shell .volter-chip[data-tone=accent],.volter-account .volter-chip[data-tone=accent]{color:var(--volter-accent);background:var(--volter-accent-muted);border-color:transparent}.volter-shell .volter-chip[data-tone=success],.volter-account .volter-chip[data-tone=success]{color:var(--volter-success);background:var(--volter-success-muted);border-color:transparent}.volter-shell .volter-chip[data-tone=warn],.volter-account .volter-chip[data-tone=warn]{color:var(--volter-warn);background:var(--volter-warn-muted);border-color:transparent}.volter-shell .volter-btn.volter-shell-cta{height:32px;padding:0 14px;border-radius:var(--volter-shell-radius-sm);font-size:var(--volter-shell-font-base);font-weight:var(--volter-font-weight-semibold)}.volter-shell .volter-btn[data-variant=primary],.volter-account .volter-btn[data-variant=primary]{color:#fff;background:linear-gradient(180deg,#ffffff24,#fff0 52%),color-mix(in srgb,var(--volter-accent) 76%,#1d4ed8);border:1px solid color-mix(in srgb,var(--volter-accent) 74%,white 8%);box-shadow:inset 0 1px #ffffff38,0 1px 2px #0006,0 6px 16px #00000052}.volter-shell .volter-btn[data-variant=primary]:hover:not(:disabled),.volter-account .volter-btn[data-variant=primary]:hover:not(:disabled){filter:brightness(1.09);box-shadow:inset 0 1px #ffffff52,0 2px 4px #0000006b,0 8px 22px #0000006b}.volter-shell .volter-btn.volter-shell-cta-hero{height:38px;padding:0 18px;gap:var(--volter-space-4);border-radius:9px;font-size:var(--volter-font-lg)}.volter-shell .volter-btn.volter-shell-cta-hero[data-variant=primary]{color:#fff;background:linear-gradient(180deg,#ffffff24,#fff0 52%),color-mix(in srgb,var(--volter-accent) 76%,#1d4ed8);border:1px solid color-mix(in srgb,var(--volter-accent) 74%,white 8%);box-shadow:inset 0 1px #ffffff38,0 1px 2px #00000073,0 8px 20px #0006}.volter-shell .volter-btn.volter-shell-cta-hero[data-variant=primary]:hover:not(:disabled){filter:brightness(1.09);box-shadow:inset 0 1px #ffffff52,0 2px 4px #00000073,0 12px 28px #0000007f}.volter-shell .volter-btn:focus-visible,.volter-shell .volter-input:focus-visible,.volter-shell .volter-select:focus-visible,.volter-account .volter-btn:focus-visible,.volter-account .volter-input:focus-visible,.volter-account .volter-select:focus-visible{outline:var(--volter-focus-ring);outline-offset:2px}.volter-shell .volter-btn.volter-shell-cta[data-variant=ghost]{color:var(--volter-content-muted)}.volter-shell .volter-btn.volter-shell-cta[data-variant=ghost]:hover:not(:disabled){color:var(--volter-content-primary)}.volter-shell-card{position:relative;padding:28px;background:linear-gradient(180deg,#ffffff0d,#fff0 44%),color-mix(in srgb,white 3%,var(--volter-surface-panel));border:1px solid rgb(255 255 255 / 9%);border-radius:var(--volter-shell-radius);box-shadow:inset 0 1px #ffffff14,0 1px 2px #00000073,0 20px 48px #00000075;box-sizing:border-box}.volter-shell-section{margin-bottom:36px}.volter-shell-section-label{display:flex;align-items:center;gap:var(--volter-space-4);margin-bottom:14px;color:var(--volter-content-dim);font-size:var(--volter-shell-font-xs);font-weight:var(--volter-font-weight-semibold);letter-spacing:.09em;text-transform:uppercase}.volter-shell-section-label:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,var(--volter-boundary-default),transparent)}.volter-shell-count{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;color:var(--volter-content-muted);background:var(--volter-surface-raised);border-radius:var(--volter-radius-full);font-size:var(--volter-font-sm);font-weight:var(--volter-font-weight-semibold);letter-spacing:0;box-sizing:border-box}.volter-shell-empty{display:flex;flex-direction:column;align-items:center;gap:var(--volter-space-4);padding:72px 32px 64px;text-align:center}.volter-shell-empty-mark{position:relative;display:grid;place-items:center;padding:18px}.volter-shell-empty-mark:before{content:"";position:absolute;inset:-46px;background:radial-gradient(closest-side,color-mix(in srgb,var(--volter-accent) 22%,transparent),transparent 74%);border-radius:var(--volter-radius-full);pointer-events:none}.volter-shell-empty-mark:after{content:"";position:absolute;bottom:-10px;width:96px;height:18px;background:radial-gradient(closest-side,rgb(0 0 0 / 55%),transparent 75%);border-radius:var(--volter-radius-full);pointer-events:none}.volter-shell-empty-title{margin:14px 0 0;color:var(--volter-content-primary);font-size:22px;font-weight:650;letter-spacing:-.02em}.volter-shell-empty-actions{display:flex;gap:var(--volter-space-5);margin-top:18px}.volter-shell-footer{display:flex;justify-content:flex-end;margin-top:72px}.volter-shell-footer .volter-chip{height:20px;padding:0 7px;color:color-mix(in srgb,var(--volter-content-dim) 72%,transparent);background:#ffffff08;border-color:#ffffff12;font-size:var(--volter-font-sm)}.volter-shell-notice{display:flex;align-items:center;flex-wrap:wrap;gap:var(--volter-space-6);padding:var(--volter-space-6) var(--volter-space-8);margin-bottom:var(--volter-space-12);color:var(--volter-content-muted);background:var(--volter-accent-muted);border:1px solid color-mix(in srgb,var(--volter-accent) 18%,transparent);border-radius:var(--volter-shell-radius-sm);font-size:var(--volter-shell-font-sm)}.volter-shell-notice-icon{color:var(--volter-accent)}.volter-shell .volter-error-card{display:flex;gap:var(--volter-space-8);align-items:flex-start;padding:22px 24px;margin-bottom:28px;background:linear-gradient(180deg,color-mix(in srgb,var(--volter-danger) 7%,rgb(255 255 255 / 3%)),#fff0 46%),color-mix(in srgb,white 3%,var(--volter-surface-panel));border:1px solid color-mix(in srgb,var(--volter-danger) 28%,rgb(255 255 255 / 8%));border-radius:var(--volter-shell-radius);box-shadow:inset 0 1px color-mix(in srgb,var(--volter-danger) 20%,rgb(255 255 255 / 8%)),0 1px 2px #00000073,0 20px 48px #00000075}.volter-shell[data-testid=project-detection-error] .volter-error-card{max-width:880px;margin-inline:auto}.volter-shell .volter-shell-brand-static{display:inline-flex;align-items:center;gap:var(--volter-space-5)}.volter-shell[data-testid=project-detection-error] .volter-shell-notice,.volter-shell[data-testid=project-detection-error] .volter-startup-error-actions{max-width:880px;margin-inline:auto}.volter-shell[data-testid=project-detection-error]:before{background:radial-gradient(1150px 640px at 50% -16%,color-mix(in srgb,var(--volter-danger) 15%,transparent),transparent 62%),radial-gradient(720px 420px at 50% -4%,rgb(255 255 255 / 4%),transparent 58%),radial-gradient(900px 560px at -12% 112%,color-mix(in srgb,var(--volter-danger) 4%,transparent),transparent 55%),radial-gradient(135% 105% at 50% 40%,transparent 50%,rgb(0 0 0 / 52%) 100%)}.volter-shell .volter-error-card-icon{display:grid;place-items:center;flex:none;width:34px;height:34px;margin-top:var(--volter-space-1);color:var(--volter-danger);background:linear-gradient(180deg,rgb(255 255 255 / 8%),transparent 55%),var(--volter-danger-muted);border:1px solid color-mix(in srgb,var(--volter-danger) 34%,transparent);border-radius:var(--volter-shell-radius-sm);box-shadow:0 0 18px color-mix(in srgb,var(--volter-danger) 22%,transparent);font-size:var(--volter-shell-font-base);box-sizing:border-box}.volter-shell .volter-error-card-body{flex:1;min-width:0}.volter-shell .volter-error-card-title{margin:0 0 var(--volter-space-2);color:var(--volter-content-primary);font-size:15px;font-weight:var(--volter-font-weight-semibold);letter-spacing:-.01em;line-height:var(--volter-leading-normal)}.volter-shell .volter-error-card-guidance{margin:0 0 var(--volter-space-4);color:var(--volter-content-muted);font-size:var(--volter-shell-font-base)}.volter-shell .volter-error-card-message{max-height:176px;padding:var(--volter-space-5) var(--volter-space-6);overflow:auto;color:var(--volter-danger);background:color-mix(in srgb,black 30%,var(--volter-surface-inset));border:1px solid var(--volter-boundary-default);border-radius:var(--volter-shell-radius-sm);font-family:var(--volter-font-mono);font-size:var(--volter-shell-font-sm);line-height:1.6;overflow-wrap:anywhere;white-space:pre-wrap}.volter-shell .volter-error-card-recovery-label{margin:14px 0 6px;color:var(--volter-content-dim);font-size:var(--volter-shell-font-xs);font-weight:var(--volter-font-weight-semibold);letter-spacing:.09em;text-transform:uppercase}.volter-shell .volter-error-card-command{display:flex;align-items:center;gap:var(--volter-space-4);padding:8px 8px 8px 14px;background:var(--volter-surface-inset);border:1px solid var(--volter-boundary-default);border-radius:var(--volter-shell-radius-sm)}.volter-shell .volter-error-card-command>code{flex:1;color:var(--volter-content-primary);font-family:var(--volter-font-mono);font-size:var(--volter-shell-font-sm);overflow-wrap:anywhere}.volter-shell .volter-error-card-actions{display:flex;gap:var(--volter-space-5);margin-top:14px}.volter-splash{position:absolute;inset:0;display:grid;place-items:center;background:color-mix(in srgb,var(--volter-surface-shell) 42%,black);color:var(--volter-content-primary);pointer-events:auto;overflow:hidden}.volter-splash:before{content:"";position:absolute;inset:0;background:radial-gradient(1000px 640px at 50% 34%,color-mix(in srgb,var(--volter-accent) 18%,transparent),transparent 62%),radial-gradient(520px 340px at 50% 40%,rgb(255 255 255 / 5%),transparent 60%),radial-gradient(135% 105% at 50% 45%,transparent 48%,rgb(0 0 0 / 55%) 100%);pointer-events:none}.volter-splash:after{content:"";position:absolute;inset:0;background-image:radial-gradient(rgb(255 255 255 / 4%) 1px,transparent 1px);background-size:26px 26px;mask-image:radial-gradient(640px 420px at 50% 40%,rgb(0 0 0 / 80%),transparent 78%);pointer-events:none}.volter-splash-stack{position:relative;display:flex;flex-direction:column;align-items:center;gap:var(--volter-space-8);min-width:260px;animation:volter-shell-rise .6s var(--volter-shell-var(--volter-ease-standard)) both}.volter-splash-logo{position:relative;display:grid;place-items:center;width:72px;height:72px;margin-bottom:var(--volter-space-3)}.volter-splash-logo:before{content:"";position:absolute;inset:-42px;background:radial-gradient(closest-side,color-mix(in srgb,var(--volter-accent) 24%,transparent),transparent 74%);border-radius:var(--volter-radius-full)}.volter-splash-logo:after{content:"";position:absolute;bottom:-12px;width:84px;height:16px;background:radial-gradient(closest-side,rgb(0 0 0 / 55%),transparent 75%);border-radius:var(--volter-radius-full)}.volter-splash-title{color:#ffffffe0;font-size:var(--volter-font-xl);font-weight:var(--volter-font-weight-semibold);letter-spacing:.3em;text-indent:.3em;text-transform:uppercase;text-shadow:0 1px 18px color-mix(in srgb,var(--volter-accent) 30%,transparent)}.volter-splash-progress{position:relative;width:232px;height:3px;margin-top:var(--volter-space-3);overflow:hidden;background:color-mix(in srgb,var(--volter-accent) 14%,rgb(255 255 255 / 5%));border-radius:var(--volter-radius-full);box-shadow:0 0 18px color-mix(in srgb,var(--volter-accent) 38%,transparent)}.volter-splash-progress:after{content:"";position:absolute;inset:0;width:52%;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--volter-accent) 80%,white),transparent);border-radius:inherit;animation:volter-splash-sweep 1.4s ease-in-out infinite}.volter-splash-status{color:var(--volter-content-dim);font-size:var(--volter-shell-font-sm);letter-spacing:.01em}.volter-splash-note{max-width:42ch;color:var(--volter-content-dim);font-size:var(--volter-shell-font-xs, var(--volter-shell-font-sm));line-height:var(--volter-leading-relaxed);text-align:center;opacity:.8}@keyframes volter-splash-sweep{0%{transform:translate(-110%)}to{transform:translate(360%)}}.volter-shell-rise{animation:volter-shell-rise .48s var(--volter-shell-var(--volter-ease-standard)) both}.volter-shell-rise[data-rise="2"]{animation-delay:60ms}.volter-shell-rise[data-rise="3"]{animation-delay:.12s}.volter-shell-rise[data-rise="4"]{animation-delay:.18s}@keyframes volter-shell-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.volter-account{font-size:var(--volter-shell-font-base);line-height:var(--volter-shell-line)}.volter-account{height:100%;padding:32px 40px 64px;overflow:auto;box-sizing:border-box;color:var(--volter-content-primary);background:radial-gradient(1000px 560px at 50% -10%,color-mix(in srgb,var(--volter-accent) 20%,transparent),transparent 62%),radial-gradient(640px 380px at 50% -2%,rgb(255 255 255 / 5%),transparent 58%),radial-gradient(135% 105% at 50% 40%,transparent 50%,rgb(0 0 0 / 45%) 100%),color-mix(in srgb,var(--volter-surface-shell) 42%,black)}.volter-shell .volter-account{height:auto;padding:0;overflow:visible;background:none}[data-volter-chrome=islands] .volter-dock-document-content .volter-account{--volter-content-primary: var(--volter-content-primary-on-bright);--volter-content-muted: var(--volter-content-muted-on-bright);--volter-content-dim: var(--volter-content-dim-on-bright);--volter-content-text-shadow: var(--volter-content-text-shadow-on-bright);--volter-content-frost-bg: var(--volter-content-frost-bg-on-bright);--volter-text-1: var(--volter-content-primary);--volter-text-2: var(--volter-content-muted);--volter-text-3: var(--volter-content-dim);text-shadow:var(--volter-content-text-shadow, none);background:var(--volter-glass-regular-bg, var(--volter-surface-panel));backdrop-filter:var(--volter-glass-regular-backdrop-filter, none);-webkit-backdrop-filter:var(--volter-glass-regular-backdrop-filter, none)}[data-volter-chrome=islands] .volter-workspace-task-overlay .volter-dock-document-content .volter-account{background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none}[data-volter-chrome=islands] .volter-dock-document-content .volter-account .volter-account-card{background:color-mix(in srgb,currentColor 5%,transparent);border-color:color-mix(in srgb,currentColor 18%,transparent);box-shadow:none}.volter-account-stack{max-width:720px;margin:0 auto;display:flex;flex-direction:column;gap:var(--volter-space-10)}.volter-account-identity{display:flex;align-items:center;gap:var(--volter-space-8);padding:var(--volter-space-3) var(--volter-space-1) var(--volter-space-5);margin-bottom:var(--volter-space-3)}.volter-account-avatar{display:grid;place-items:center;flex:none;width:56px;height:56px;color:var(--volter-content-on-accent);background:linear-gradient(180deg,rgb(255 255 255 / 24%),transparent 55%),linear-gradient(135deg,color-mix(in srgb,var(--volter-accent) 88%,white),color-mix(in srgb,var(--volter-accent) 68%,black));border-radius:var(--volter-radius-full);font-size:22px;font-weight:var(--volter-font-weight-semibold);letter-spacing:.02em;text-transform:uppercase;box-shadow:inset 0 1px #ffffff4d,0 0 0 1px #ffffff1a,0 6px 18px #00000073,0 0 32px color-mix(in srgb,var(--volter-accent) 26%,transparent)}.volter-account-identity-main{flex:1;min-width:0}.volter-account-identity-row{display:flex;align-items:center;flex-wrap:wrap;gap:var(--volter-space-2) var(--volter-space-5)}.volter-account-identity-email{margin:0;color:#fff;font-size:20px;font-weight:650;letter-spacing:-.02em;line-height:var(--volter-leading-snug);overflow-wrap:anywhere;text-shadow:0 2px 18px color-mix(in srgb,var(--volter-accent) 22%,transparent)}.volter-account-plan-chips{display:inline-flex;align-items:center;flex-wrap:wrap;gap:var(--volter-space-4)}.volter-account-identity-note{margin:3px 0 0;color:var(--volter-content-dim);font-size:var(--volter-shell-font-xs);font-weight:var(--volter-font-weight-semibold);letter-spacing:.08em;text-transform:uppercase}.volter-account .volter-btn.volter-account-signout{flex:none;color:var(--volter-content-muted)}.volter-account .volter-btn.volter-account-signout:hover:not(:disabled){color:var(--volter-content-primary)}.volter-account .volter-chip{height:24px;padding:0 var(--volter-space-5);font-weight:var(--volter-font-weight-semibold);letter-spacing:0}.volter-account-signin-stack{display:flex;flex-direction:column;align-items:center;gap:var(--volter-space-10);max-width:720px;margin:0 auto;padding-top:var(--volter-space-8)}.volter-account-signin-stack>.volter-provider-connections{width:100%;box-sizing:border-box}.volter-account-signin-hero{display:flex;flex-direction:column;align-items:center;gap:var(--volter-space-2);padding-top:var(--volter-space-10);text-align:center}.volter-account-signin-mark{position:relative;display:grid;place-items:center;padding:var(--volter-space-8)}.volter-account-signin-mark:before{content:"";position:absolute;inset:-54px;background:radial-gradient(closest-side,color-mix(in srgb,var(--volter-accent) 28%,transparent),transparent 76%);border-radius:var(--volter-radius-full);pointer-events:none}.volter-account-signin-mark:after{content:"";position:absolute;bottom:-8px;width:84px;height:16px;background:radial-gradient(closest-side,rgb(0 0 0 / 55%),transparent 75%);border-radius:var(--volter-radius-full);pointer-events:none}.volter-account-signin-card{display:flex;flex-direction:column;gap:var(--volter-space-8);width:min(400px,100%);padding:28px;box-sizing:border-box}.volter-account-signin-title{margin:var(--volter-space-5) 0 0;color:#fff;font-size:var(--volter-font-heading);font-weight:650;letter-spacing:-.02em;line-height:var(--volter-leading-snug);text-shadow:0 2px 24px color-mix(in srgb,var(--volter-accent) 24%,transparent)}.volter-account .volter-btn[data-variant=primary]{color:#fff;background:linear-gradient(180deg,#ffffff24,#fff0 52%),color-mix(in srgb,var(--volter-accent) 76%,#1d4ed8);border:1px solid color-mix(in srgb,var(--volter-accent) 74%,white 8%);box-shadow:inset 0 1px #ffffff38,0 1px 2px #0006,0 6px 16px #00000052}.volter-account .volter-btn[data-variant=primary]:hover:not(:disabled){filter:brightness(1.09);box-shadow:inset 0 1px #ffffff52,0 2px 4px #0000006b,0 8px 22px #0000006b}.volter-account-signin-card .volter-btn[data-variant=primary]{width:100%;height:38px;border-radius:9px;font-size:var(--volter-shell-font-base);font-weight:var(--volter-font-weight-semibold)}.volter-account-signin-points{display:flex;flex-direction:column;gap:var(--volter-space-4);width:min(400px,100%);margin:0;padding:0 var(--volter-space-2);list-style:none;color:var(--volter-content-dim);font-size:var(--volter-shell-font-base);box-sizing:border-box}.volter-account-signin-points li{display:flex;align-items:baseline;gap:var(--volter-space-5)}.volter-account-signin-points li:before{content:"✓";flex:none;color:var(--volter-success);font-size:var(--volter-shell-font-sm);font-weight:var(--volter-font-weight-semibold)}.volter-account .volter-field{display:flex;flex-direction:column;gap:7px}.volter-account .volter-field-label{color:var(--volter-content-muted);font-size:var(--volter-shell-font-sm);font-weight:var(--volter-font-weight-semibold)}.volter-account .volter-input,.volter-account .volter-select{height:34px;padding:0 var(--volter-space-6);border-radius:var(--volter-shell-radius-sm);font-size:var(--volter-shell-font-base)}.volter-account .volter-select{padding-right:30px}.volter-account-help{margin:0;color:var(--volter-content-dim);font-size:var(--volter-shell-font-sm);line-height:var(--volter-leading-relaxed)}.volter-account-infostrip{display:flex;align-items:flex-start;gap:var(--volter-space-4);padding:0 var(--volter-space-1);color:var(--volter-content-dim);font-size:var(--volter-shell-font-xs);line-height:var(--volter-leading-relaxed);text-align:left}.volter-account-infostrip-icon{flex:none;margin-top:var(--volter-space-1);color:color-mix(in srgb,var(--volter-accent) 70%,var(--volter-content-dim))}.volter-account-card{padding:var(--volter-space-12);background:linear-gradient(180deg,#ffffff0d,#fff0 44%),color-mix(in srgb,white 3%,var(--volter-surface-panel));border:1px solid rgb(255 255 255 / 9%);border-radius:var(--volter-shell-radius);box-shadow:inset 0 1px #ffffff14,0 1px 2px #00000073,0 20px 48px #00000075;box-sizing:border-box}.volter-account-card-title{margin:0 0 var(--volter-space-2);color:var(--volter-content-primary);font-size:var(--volter-shell-font-md);font-weight:var(--volter-font-weight-semibold);letter-spacing:-.005em}.volter-account-card-sub{margin:0 0 var(--volter-space-8);color:var(--volter-content-dim);font-size:var(--volter-shell-font-sm);max-width:560px}.volter-account-card-head{display:flex;align-items:center;justify-content:space-between;gap:var(--volter-space-6)}.volter-account-card-head .volter-account-card-title{margin:0}.volter-account-credit-figure{display:flex;align-items:baseline;gap:var(--volter-space-4);margin:var(--volter-space-5) 0 var(--volter-space-6)}.volter-account-credit-number{color:#fff;font-size:28px;font-weight:650;letter-spacing:-.02em;line-height:var(--volter-leading-tight);font-variant-numeric:tabular-nums}.volter-account-credit-unit{color:var(--volter-content-dim);font-size:var(--volter-shell-font-sm)}.volter-account .volter-meter{position:relative;height:8px;margin:var(--volter-space-1) 0 var(--volter-space-5);overflow:hidden;background:#00000061;border-radius:var(--volter-radius-full);box-shadow:inset 0 1px 2px #0000007f,inset 0 0 0 1px #ffffff0d;box-sizing:border-box}.volter-account .volter-meter-fill{position:absolute;inset:0 auto 0 0;background:linear-gradient(180deg,color-mix(in srgb,var(--volter-accent) 78%,white),var(--volter-accent));border-radius:inherit;box-shadow:0 0 12px color-mix(in srgb,var(--volter-accent) 55%,transparent);transition:width var(--volter-duration-slow) var(--volter-shell-var(--volter-ease-standard))}.volter-account .volter-meter-fill[data-part=reserved]{background:color-mix(in srgb,var(--volter-accent) 38%,transparent);box-shadow:none}.volter-account .volter-meter[data-state=over] .volter-meter-fill{background:linear-gradient(180deg,color-mix(in srgb,var(--volter-danger) 80%,white),var(--volter-danger));box-shadow:0 0 12px color-mix(in srgb,var(--volter-danger) 55%,transparent)}.volter-account-cycle-line{margin:0 0 var(--volter-space-6);color:var(--volter-content-dim);font-size:var(--volter-shell-font-sm);font-variant-numeric:tabular-nums}.volter-account-cycle-over{color:var(--volter-danger);font-weight:var(--volter-font-weight-semibold)}.volter-account-legend{display:flex;align-items:center;flex-wrap:wrap;gap:var(--volter-space-3) var(--volter-space-8)}.volter-account-legend-item{display:inline-flex;align-items:center;gap:7px;color:var(--volter-content-muted);font-size:var(--volter-shell-font-sm);font-variant-numeric:tabular-nums}.volter-account-legend-dot{flex:none;width:8px;height:8px;border-radius:var(--volter-radius-full);box-sizing:border-box}.volter-account-legend-item[data-part=used] .volter-account-legend-dot{background:var(--volter-accent)}.volter-account-legend[data-state=over] .volter-account-legend-item[data-part=used] .volter-account-legend-dot{background:var(--volter-danger)}.volter-account-legend-item[data-part=reserved] .volter-account-legend-dot{background:color-mix(in srgb,var(--volter-accent) 38%,transparent)}.volter-account-legend-item[data-part=purchased] .volter-account-legend-dot{background:transparent;border:1px solid var(--volter-boundary-strong)}.volter-account-expiry{margin-top:var(--volter-space-5)}.volter-account-card-footer{display:flex;align-items:center;flex-wrap:wrap;gap:var(--volter-space-4);margin-top:18px;padding-top:14px;border-top:1px solid rgb(255 255 255 / 7%)}.volter-account .volter-btn.volter-account-quiet-danger{color:var(--volter-content-dim)}.volter-account .volter-btn.volter-account-quiet-danger:hover:not(:disabled){color:var(--volter-danger);background:var(--volter-danger-muted)}.volter-account-providers-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--volter-space-8)}.volter-account-providers-header .volter-status-dot{flex-shrink:0;white-space:nowrap}.volter-account-provider-list{display:flex;flex-direction:column;margin-top:var(--volter-space-2);border-top:1px solid rgb(255 255 255 / 7%)}.volter-account-provider{display:flex;align-items:center;gap:var(--volter-space-8);padding:14px 2px;border-top:1px solid rgb(255 255 255 / 7%)}.volter-account-provider:first-child{border-top:0}.volter-account-provider-monogram{display:grid;place-items:center;flex:none;width:38px;height:38px;color:var(--volter-content-primary);background:linear-gradient(180deg,rgb(255 255 255 / 6%),transparent 60%),var(--volter-surface-raised);border:1px solid var(--volter-boundary-default);border-radius:10px;font-size:var(--volter-shell-font-md);font-weight:var(--volter-font-weight-semibold)}.volter-account-provider[data-configured=true] .volter-account-provider-monogram{color:var(--volter-accent);border-color:#579eff59;background:linear-gradient(180deg,rgb(87 158 255 / 12%),transparent 70%),var(--volter-surface-raised)}.volter-account-provider-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:var(--volter-space-1)}.volter-account-provider-name{display:flex;align-items:center;gap:var(--volter-space-4);color:var(--volter-content-primary);font-size:var(--volter-shell-font-base);font-weight:var(--volter-font-weight-semibold)}.volter-account-provider-dot{flex:none;width:6px;height:6px;background:var(--volter-success);border-radius:var(--volter-radius-full)}.volter-account-provider-key{color:var(--volter-content-dim);font-family:var(--volter-font-mono);font-size:var(--volter-shell-font-xs)}.volter-account-provider-source{color:var(--volter-content-dim);font-size:var(--volter-shell-font-xs)}.volter-account-provider-warning{color:var(--volter-warn);font-size:var(--volter-shell-font-xs)}.volter-account-provider-actions{display:flex;align-items:center;gap:var(--volter-space-4)}.volter-account-provider-form{display:flex;flex-direction:column;gap:var(--volter-space-6);width:min(360px,48%)}.volter-account-provider-form .volter-tool-actions,.volter-account-provider-form-actions{display:flex;gap:var(--volter-space-4)}.volter-account .volter-status-dot{display:inline-flex;align-items:center;gap:var(--volter-space-3);color:var(--volter-content-dim);font-size:var(--volter-shell-font-xs);font-weight:var(--volter-font-weight-regular)}.volter-account .volter-status-dot:before{content:"";width:6px;height:6px;background:var(--volter-content-dim);border-radius:var(--volter-radius-full)}.volter-account .volter-status-dot[data-state=on]{color:var(--volter-success)}.volter-account .volter-status-dot[data-state=on]:before{background:var(--volter-success);box-shadow:0 0 6px var(--volter-success)}.volter-account-switch-row{display:flex;align-items:flex-start;gap:14px;padding:14px 0;border-top:1px solid rgb(255 255 255 / 7%);cursor:pointer}.volter-account-switch-row:first-of-type{border-top:0}.volter-account-switch-copy{display:flex;flex-direction:column;gap:var(--volter-space-1)}.volter-account-switch-copy>strong{color:var(--volter-content-primary);font-size:var(--volter-shell-font-base);font-weight:var(--volter-font-weight-semibold)}.volter-account-switch-copy>small{color:var(--volter-content-dim);font-size:var(--volter-shell-font-sm)}.volter-account-switch-row .volter-checkbox{appearance:none;flex:none;width:34px;height:20px;margin:1px 0 0;background:#0000004d;border:1px solid rgb(255 255 255 / 14%);border-radius:var(--volter-radius-full);cursor:pointer;position:relative;box-shadow:inset 0 1px 2px #00000059;transition:background .16s var(--volter-ease-standard),border-color .16s var(--volter-ease-standard)}.volter-account-switch-row .volter-checkbox:after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;background:var(--volter-content-muted);border-radius:var(--volter-radius-full);transition:transform .16s var(--volter-shell-var(--volter-ease-standard)),background .16s var(--volter-ease-standard)}.volter-account-switch-row .volter-checkbox:checked{background:linear-gradient(180deg,#fff3,#fff0 55%),var(--volter-accent);border-color:color-mix(in srgb,var(--volter-accent) 80%,white 10%);box-shadow:0 0 10px color-mix(in srgb,var(--volter-accent) 35%,transparent)}.volter-account-switch-row .volter-checkbox:checked:after{transform:translate(14px);background:var(--volter-content-on-accent)}.volter-account-switch-row .volter-checkbox:focus-visible{outline:var(--volter-focus-ring);outline-offset:2px}.volter-account-policy-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-left:48px;padding:var(--volter-space-2) 0 var(--volter-space-6)}.volter-account-limit-field{max-width:320px;margin-left:48px;padding:4px 0 14px}.volter-account-usage{display:flex;flex-direction:column;margin-top:var(--volter-space-2)}.volter-account-usage-row{display:flex;align-items:center;justify-content:space-between;gap:var(--volter-space-8);padding:11px 2px;border-top:1px solid rgb(255 255 255 / 7%);font-size:var(--volter-shell-font-base)}.volter-account-usage-row:first-child{border-top:0}.volter-account-usage-row>span{color:var(--volter-content-muted)}.volter-account-usage-row>strong{color:var(--volter-content-primary);font-variant-numeric:tabular-nums;font-weight:var(--volter-font-weight-semibold)}.volter-account-input-suffix{display:flex;align-items:center;gap:var(--volter-space-4)}.volter-account-input-suffix .volter-input{flex:1;min-width:0}.volter-account-suffix{flex:none;color:var(--volter-content-dim);font-size:var(--volter-shell-font-sm)}.volter-account-status{display:flex;align-items:center;gap:var(--volter-space-5);padding:var(--volter-space-6) var(--volter-space-8);color:var(--volter-content-primary);background:var(--volter-surface-chrome);backdrop-filter:var(--volter-content-frost-filter, none);-webkit-backdrop-filter:var(--volter-content-frost-filter, none);border:1px solid var(--volter-boundary-default);border-radius:var(--volter-shell-radius-sm);font-size:var(--volter-shell-font-sm);animation:volter-shell-rise var(--volter-duration-slow) var(--volter-shell-var(--volter-ease-standard)) both}.volter-account-status:before{content:"";flex:none;width:6px;height:6px;background:var(--volter-accent);border-radius:var(--volter-radius-full)}.volter-account-device-code{display:flex;flex-direction:column;gap:var(--volter-space-3);padding:14px 16px;background:var(--volter-surface-inset);backdrop-filter:var(--volter-content-frost-filter, none);-webkit-backdrop-filter:var(--volter-content-frost-filter, none);border:1px solid var(--volter-boundary-default);border-radius:var(--volter-shell-radius-sm);text-align:center}.volter-account-device-code>strong{color:var(--volter-content-primary);font-family:var(--volter-font-mono);font-size:22px;letter-spacing:.28em}.volter-account-device-code>span{color:var(--volter-content-dim);font-size:var(--volter-shell-font-sm)}@media(max-width:860px){.volter-shell-container{padding:0 20px 64px}.volter-account-identity{flex-wrap:wrap}.volter-account-policy-fields{grid-template-columns:minmax(0,1fr);margin-left:0}.volter-account-limit-field{margin-left:0}.volter-shell-hero{align-items:flex-start;flex-direction:column}}@media(prefers-reduced-motion:reduce){.volter-shell-rise,.volter-splash-stack,.volter-account-status{animation:none}.volter-splash-progress:after{animation:none;width:100%;background:var(--volter-accent-muted)}.volter-account .volter-meter-fill,.volter-account-switch-row .volter-checkbox,.volter-account-switch-row .volter-checkbox:after{transition:none}}.volter-asset-library-panel{width:100%;height:100%;min-width:0;min-height:0;overflow:hidden}.volter-asset-library-navigator{display:flex;flex-direction:column;width:100%;height:100%;min-width:0;min-height:0;color:var(--volter-text-1)}.volter-asset-library-navigator__controls{display:flex;flex-direction:column;gap:5px;padding:var(--volter-space-3);border-bottom:1px solid var(--volter-structural-divider)}.volter-asset-library-navigator__search-row{display:flex;gap:var(--volter-space-2)}.volter-asset-library-navigator__search-row>.volter-input{width:100%;min-width:0;box-sizing:border-box}.volter-asset-library-navigator__filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--volter-space-2)}.volter-asset-library-navigator__filters .volter-select{width:100%;min-width:0}.volter-asset-library-navigator__status{color:var(--volter-text-3);font-size:var(--volter-font-sm)}.volter-asset-import-jobs{display:flex;min-width:0;flex-wrap:wrap;align-items:center;gap:var(--volter-space-2);color:var(--volter-text-2);font-size:var(--volter-font-sm)}.volter-asset-import-jobs>span{display:inline-flex;min-width:0;align-items:center;gap:var(--volter-space-2);padding:var(--volter-space-1) var(--volter-space-2);border:1px solid var(--volter-border-1);border-radius:var(--volter-radius-sm, 3px);background:var(--volter-bg-1)}.volter-asset-import-jobs [data-status=failed],.volter-asset-import-error{color:var(--volter-danger, var(--volter-text-1))}.volter-asset-library-navigator__results{flex:1;min-height:0;overflow:auto;padding:var(--volter-space-4);display:grid;grid-template-columns:repeat(auto-fill,minmax(66px,1fr));grid-auto-rows:min-content;align-content:start;gap:var(--volter-space-3);background:var(--volter-content-frost-bg, transparent);backdrop-filter:var(--volter-content-frost-filter, none);-webkit-backdrop-filter:var(--volter-content-frost-filter, none)}.volter-asset-library-navigator__filter-drawer{min-height:0;max-height:58%;overflow:auto;border-bottom:1px solid var(--volter-structural-divider)}.volter-asset-library-navigator__filter-heading{position:sticky;z-index:1;top:0;display:flex;align-items:center;justify-content:space-between;padding:5px 7px;border-bottom:1px solid var(--volter-structural-divider);background:var(--volter-surface-sticky);backdrop-filter:var(--volter-surface-sticky-backdrop-filter, none);-webkit-backdrop-filter:var(--volter-surface-sticky-backdrop-filter, none);color:var(--volter-text-2);font-size:var(--volter-font-sm);font-weight:650}.volter-asset-library-navigator__source-filters{display:block;overflow:visible;padding:var(--volter-space-5);border:0}.volter-asset-library-navigator__save-search{width:calc(100% - 12px);margin:var(--volter-space-3) var(--volter-space-3) 0}.volter-asset-library-card{width:100%;min-width:0;padding:0;display:flex;flex-direction:column;align-items:center;gap:3px;border:0;border-radius:var(--volter-radius-sm, 3px);background:transparent;color:var(--volter-text-1);text-align:center;cursor:pointer;user-select:none}.volter-asset-library-card .volter-project-asset-entry__preview{width:100%;aspect-ratio:1 / 1;margin:0 auto;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:var(--volter-radius-sm, 3px);pointer-events:none;position:relative}.volter-asset-library-card .volter-project-asset-entry__preview>img{width:100%;height:100%;object-fit:contain}.volter-asset-library-card__name,.volter-asset-library-card__meta{width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis}.volter-asset-library-card__name{min-height:26px;overflow-wrap:anywhere;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:var(--volter-font-sm);line-height:13px;font-weight:550}.volter-asset-library-card__meta{color:var(--volter-text-3);font-size:var(--volter-font-xs);white-space:nowrap}.volter-asset-library-navigator__load-more{grid-column:1 / -1;justify-self:center}.volter-project-assets-toolbar{flex:0 0 auto;border-bottom:1px solid var(--volter-structural-divider)}.volter-project-assets-toolbar__row{width:100%;min-width:0;min-height:28px;box-sizing:border-box;gap:var(--volter-space-2);padding:var(--volter-space-1) var(--volter-space-2);border:0;background:transparent}.volter-project-assets-toolbar__row+.volter-project-assets-toolbar__row{border-top:1px solid var(--volter-structural-divider)}.volter-project-assets-toolbar__select{min-width:0;flex:1 1 64px;width:64px}.volter-content-filter-chip{flex:0 0 auto;border:1px solid var(--volter-boundary-default);border-radius:var(--volter-radius-full);padding-inline:8px;color:var(--volter-text-2)}.volter-content-filter-inline{flex:1 1 auto;min-width:0;overflow-x:auto;scrollbar-width:none}.volter-component-thumbnail{width:100%;height:100%;object-fit:cover}.volter-component-thumbnail-fallback{display:contents}.volter-project-assets-toolbar__more{position:relative;flex:0 0 auto}.volter-project-assets-toolbar__menu{position:absolute;z-index:var(--volter-z-dropdown);top:calc(100% + 3px);right:0;min-width:170px}.volter-project-assets-results{box-shadow:inset 0 1px 0 var(--volter-border-1);background:var(--volter-content-frost-bg, transparent);backdrop-filter:var(--volter-content-frost-filter, none);-webkit-backdrop-filter:var(--volter-content-frost-filter, none)}.volter-content-result-section{display:contents}.volter-content-section-heading{grid-column:1 / -1;display:flex;align-items:center;min-width:0;min-height:18px;gap:7px;margin-top:var(--volter-space-1);color:var(--volter-text-3);font-size:var(--volter-font-xs);font-weight:650;letter-spacing:.08em;line-height:var(--volter-leading-tight);text-transform:uppercase}.volter-content-section-heading:after{content:"";min-width:8px;flex:1 1 auto;border-top:1px solid var(--volter-structural-divider)}.volter-content-section-heading[data-level=section]{min-height:22px;margin-top:var(--volter-space-3);color:var(--volter-text-2);font-size:var(--volter-font-sm)}.volter-content-section-heading[data-level=category]{padding-inline-start:2px}.volter-project-asset-entry{box-sizing:border-box;border:0;background:transparent}.volter-project-asset-entry:hover{background:transparent}.volter-project-asset-entry[data-selected=true]{background:var(--volter-selection-bg);box-shadow:none}.volter-project-asset-entry__preview{box-sizing:border-box;border:1px solid var(--volter-border-1);background:linear-gradient(45deg,rgb(255 255 255 / 2%) 25%,transparent 25%) 0 0 / 12px 12px,linear-gradient(-45deg,rgb(255 255 255 / 2%) 25%,transparent 25%) 0 6px / 12px 12px,var(--volter-bg-inset);transition:border-color 90ms var(--volter-ease-standard),box-shadow 90ms var(--volter-ease-standard)}.volter-project-asset-entry:hover .volter-project-asset-entry__preview{border-color:var(--volter-boundary-strong)}.volter-project-asset-entry[data-selected=true] .volter-project-asset-entry__preview{border-color:var(--volter-border-1)}.volter-project-asset-entry__kind{position:absolute;right:4px;bottom:4px;width:18px;height:18px;display:grid;place-items:center;border:1px solid var(--volter-boundary-default);border-radius:var(--volter-radius-sm);background:var(--volter-surface-overlay);box-shadow:var(--volter-shadow-sm)}.volter-project-asset-entry[data-view=list]{border-color:transparent;background:transparent}.volter-project-asset-entry[data-view=list] .volter-project-asset-entry__preview{border:0;background:transparent}.volter-folder-preview{position:relative;width:100%;height:100%}.volter-folder-preview__grid{position:absolute;inset:0;display:grid;gap:var(--volter-space-1);animation:volter-folder-preview-fade .12s var(--volter-ease-out)}.volter-folder-preview__grid[data-count="1"]{grid-template:1fr / 1fr}.volter-folder-preview__grid[data-count="2"]{grid-template:1fr / 1fr 1fr}.volter-folder-preview__grid[data-count="3"],.volter-folder-preview__grid[data-count="4"]{grid-template:1fr 1fr / 1fr 1fr}.volter-folder-preview__grid[data-count="3"]>:first-child{grid-row:span 2}.volter-folder-preview__cell{position:relative;display:flex;min-width:0;min-height:0;align-items:center;justify-content:center;overflow:hidden;background:var(--volter-bg-inset)}.volter-folder-preview__cell img{width:100%;height:100%;object-fit:cover}.volter-folder-preview__cell img[data-fit=contain]{object-fit:contain}.volter-folder-preview__chip,.volter-folder-preview__count{position:absolute;bottom:3px;display:inline-flex;align-items:center;padding:2px 5px;border-radius:var(--volter-radius-full);background:color-mix(in srgb,var(--volter-bg-0) 82%,transparent);color:var(--volter-text-2);font-size:var(--volter-font-xs);line-height:var(--volter-leading-tight);pointer-events:none;animation:volter-folder-preview-fade .12s var(--volter-ease-out)}.volter-folder-preview__chip{left:3px;padding:var(--volter-space-1) var(--volter-space-2);font-size:var(--volter-font-sm)}.volter-folder-preview__count{right:3px;font-variant-numeric:tabular-nums}.volter-folder-preview__fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;animation:volter-folder-preview-fade .12s var(--volter-ease-out)}.volter-folder-preview__empty{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:var(--volter-text-3);animation:volter-folder-preview-fade .12s var(--volter-ease-out)}.volter-folder-preview__empty-glyph{font-size:17px;opacity:.7}.volter-folder-preview__empty-caption{font-size:var(--volter-font-xs);letter-spacing:.05em;text-transform:uppercase}@keyframes volter-folder-preview-fade{0%{opacity:0}}.volter-asset-editor button:focus-visible,.volter-asset-browser button:focus-visible,.volter-asset-editor input:focus-visible{outline:0;box-shadow:0 0 0 2px var(--volter-accent)}.volter-asset-card__preview{position:relative;width:100%;aspect-ratio:4 / 3;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:var(--volter-radius-sm, 3px);box-shadow:inset 0 0 0 1px var(--volter-border-1)}.volter-asset-card__fallback{position:absolute;right:4px;bottom:4px;padding:var(--volter-space-1) var(--volter-space-2);border-radius:var(--volter-radius-sm);background:color-mix(in srgb,var(--volter-bg-0) 88%,transparent);color:var(--volter-text-2);font-size:var(--volter-font-xs)}.volter-asset-card__preview img{width:100%;height:100%;object-fit:contain}.volter-asset-card__name{margin-top:7px;min-height:34px;display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:var(--volter-font-md);line-height:17px;font-weight:550;min-width:0;overflow-wrap:anywhere;word-break:break-word}.volter-asset-card__meta,.volter-asset-card__badges{display:flex;gap:5px;align-items:center;margin-top:var(--volter-space-2);color:var(--volter-text-3);font-size:var(--volter-font-sm)}.volter-asset-badge{padding:1px 5px;border-radius:var(--volter-radius-full);background:var(--volter-bg-3);color:var(--volter-text-2);font-size:var(--volter-font-sm);white-space:nowrap}.volter-asset-facet-title{margin:12px 0 5px;color:var(--volter-text-3);font-size:var(--volter-font-sm);font-weight:700;letter-spacing:.06em;text-transform:uppercase}.volter-asset-facet-check{display:flex;align-items:center;gap:var(--volter-space-3);min-height:28px;color:var(--volter-text-2);font-size:var(--volter-font-base)}.volter-asset-facet-check .volter-select{min-width:0;flex:1}.volter-asset-context-menu{position:fixed;min-width:190px}.volter-asset-context-menu .volter-menu-item{min-height:var(--volter-control-comfortable-height);justify-content:space-between;gap:var(--volter-space-6)}.volter-asset-context-menu kbd{color:var(--volter-text-3);font:inherit}.volter-asset-editor{width:100%;height:100%;min-width:0;min-height:0;display:flex;flex-direction:column;position:relative}.volter-asset-editor__toolbar{min-height:40px;display:flex;align-items:center;gap:7px;padding:var(--volter-space-3) var(--volter-space-5);border-bottom:1px solid var(--volter-structural-divider)}.volter-asset-editor__commands{flex:1;display:flex;flex-wrap:wrap;align-items:center;gap:5px}.volter-asset-editor__toolbar button,.volter-asset-editor__toolbar select{min-height:26px;border:1px solid var(--volter-boundary-default);border-radius:var(--volter-radius-sm);background:var(--volter-bg-3);color:var(--volter-text-1)}.volter-asset-editor__viewport{flex:1;min-width:0;min-height:0;overflow:auto;position:relative}.volter-asset-editor__viewport--fill{overflow:hidden}.volter-asset-transparency-well{background-color:var(--volter-bg-inset);background-image:linear-gradient(45deg,#2a2a2a 25%,transparent 25%,transparent 75%,#2a2a2a 75%),linear-gradient(45deg,#2a2a2a 25%,transparent 25%,transparent 75%,#2a2a2a 75%);background-position:0 0,8px 8px;background-size:16px 16px}.volter-object3d-studio-stage{background-color:var(--volter-object3d-stage-base, #1d232b);background-image:radial-gradient(90% 72% at 50% 36%,color-mix(in srgb,var(--volter-accent) 16%,rgb(122 148 177 / 22%)),transparent 62%),radial-gradient(70% 42% at 50% 92%,rgb(124 151 181 / 10%),transparent 72%),radial-gradient(140% 112% at 50% 44%,transparent 42%,rgb(0 0 0 / 58%) 100%),linear-gradient(180deg,var(--volter-object3d-stage-top, color-mix(in srgb, var(--volter-surface-raised) 82%, #394451)) 0%,var(--volter-object3d-stage-bottom, color-mix(in srgb, var(--volter-surface-shell) 76%, #11151b)) 100%)}.volter-object3d-studio-stage[data-volter-chromeless=true]{--volter-object3d-stage-base: rgb(29 35 43 / 34%);--volter-object3d-stage-top: rgb(57 68 81 / 40%);--volter-object3d-stage-bottom: rgb(17 21 27 / 52%)}.volter-object3d-asset-workspace{position:absolute;inset:0;display:flex;min-width:0;min-height:0;flex-direction:column}.volter-behavior-document{position:absolute;inset:0;min-width:0;min-height:0}.volter-behavior-document__empty{display:grid;width:100%;height:100%;place-items:center;color:var(--volter-text-2)}.volter-inspector-icon-strip{display:flex;flex-wrap:wrap;align-items:center;gap:var(--volter-space-1);padding:var(--volter-space-1) var(--volter-space-2);border-bottom:1px solid var(--volter-structural-divider)}.volter-inspector-icon-strip .volter-btn[data-variant=ghost]{color:var(--volter-content-dim)}.volter-inspector-icon-strip .volter-btn[data-variant=ghost]:hover:not(:disabled){color:var(--volter-content-primary)}.volter-inspector-properties{display:flex;align-items:stretch;min-height:100%}[data-volter-inspector-presentation=properties]{flex:1 1 auto;min-height:0}[data-volter-inspector-presentation=properties]>.volter-inspector-properties-fill{flex:1 1 auto;min-height:0;display:flex;flex-direction:column}.volter-inspector-properties-rail{display:flex;flex-direction:column;gap:var(--volter-stroke-resting);padding-top:var(--volter-space-4);padding-left:var(--volter-stroke-resting);--volter-properties-tab-plate-radius: 2px;width:28px;box-sizing:border-box;background:var(--volter-surface-shell);position:sticky;top:0;align-self:stretch;flex:0 0 auto}.volter-inspector-properties-rail-separator{flex:0 0 auto;height:6.5px}.volter-inspector-properties-rail .volter-btn[data-icon][data-size]{width:27px;height:27px;min-width:0;min-height:0;padding:0;border-radius:0}.volter-inspector-properties-rail .volter-btn[data-variant=ghost]{color:var(--volter-content-dim);background:var(--volter-surface-chrome)}.volter-inspector-properties-rail .volter-btn[data-variant=ghost]:hover:not(:disabled){color:var(--volter-content-primary)}.volter-inspector-properties-rail .volter-btn[aria-selected=true],.volter-inspector-properties-rail .volter-btn[data-variant=ghost][aria-selected=true]{color:var(--volter-content-primary);background:var(--volter-surface-panel)}.volter-inspector-properties-rail .volter-btn[data-icon][data-size][aria-selected=true]{--volter-plate-corner: calc(var(--volter-properties-tab-plate-radius) + var(--volter-stroke-resting));background-clip:padding-box;border-radius:var(--volter-plate-corner) 0 0 var(--volter-plate-corner)}.volter-inspector-properties-rail .volter-btn [data-volter-tone]{opacity:.8}.volter-inspector-properties-rail .volter-btn[aria-selected=true] [data-volter-tone]{opacity:1}.volter-inspector-identity[data-volter-identity-layout=properties]{display:flex;flex-direction:column;gap:var(--volter-space-8);padding:var(--volter-space-1) 0 var(--volter-space-5)}.volter-inspector-breadcrumb{display:flex;align-items:center;gap:var(--volter-space-4);min-height:var(--volter-control-default-height)}.volter-inspector-breadcrumb-chain{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--volter-font-base);color:var(--volter-content-primary)}.volter-inspector-datablock{display:flex;align-items:stretch;min-width:0}.volter-inspector-datablock-kind{display:flex;flex:0 0 auto;align-items:center;justify-content:center;min-width:calc(var(--volter-control-default-height) + var(--volter-space-5));height:var(--volter-control-default-height);background:var(--volter-widget-menu);color:var(--volter-content-primary);border:var(--volter-stroke-resting) solid var(--volter-border-1);border-radius:var(--volter-radius-sm) 0 0 var(--volter-radius-sm);border-right:0;box-shadow:var(--volter-widget-emboss-shadow)}.volter-inspector-datablock .volter-input,.volter-inspector-datablock [data-testid=ingest-name]{border-radius:0 var(--volter-radius-sm) var(--volter-radius-sm) 0}.volter-inspector-datablock [data-testid=ingest-name][data-readonly=true]{display:flex;align-items:center;height:var(--volter-control-default-height);padding:0 var(--volter-space-3);background:var(--volter-input-surface, var(--volter-bg-inset));border:var(--volter-stroke-resting) solid var(--volter-input-border, var(--volter-border-1));box-sizing:border-box;box-shadow:var(--volter-input-shadow, none)}.volter-inspector-properties-body{flex:1 1 auto;min-width:0;padding:var(--volter-space-4)}.volter-inspector-properties-body .volter-section{background:var(--volter-surface-section);border:var(--volter-stroke-resting) solid var(--volter-surface-section-edge);border-radius:var(--volter-radius-sm);margin-bottom:var(--volter-space-1);overflow:hidden}.volter-inspector-properties-body .volter-section-header{background:transparent}.volter-inspector-properties-body .volter-section:last-child{margin-bottom:0}.volter-inspector-properties-body .volter-inspector-tool-section{padding:0;margin-top:0;border-top:0}.volter-inspector-properties-body .volter-section-glyph{display:none}.volter-inspector-properties-body .volter-section-trigger{gap:var(--volter-space-3);padding-inline:var(--volter-space-2) var(--volter-space-4);font-weight:400;--volter-section-disclosure-size: var(--volter-icon-lg)}.volter-mini-inspector{position:relative;display:flex;flex-direction:column;width:100%;min-height:0;border-radius:inherit;overflow-y:auto;pointer-events:auto}.volter-mini-inspector-minimize{position:absolute;top:var(--volter-space-1);right:var(--volter-space-1);z-index:1;color:var(--volter-content-dim)}.volter-mini-inspector-preview{position:relative;width:100%;aspect-ratio:1 / 1;max-height:180px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:var(--volter-bg-inset);color:var(--volter-content-dim);cursor:pointer}.volter-mini-inspector-preview[aria-label]{cursor:pointer}.volter-mini-inspector-preview:focus-visible{outline:var(--volter-focus-ring);outline-offset:-2px}.volter-mini-inspector-preview .volter-editor-icon{font-size:var(--volter-font-xl, 24px)}.volter-mini-inspector-identity{display:flex;align-items:center;gap:var(--volter-space-2);padding:var(--volter-space-2)}.volter-mini-inspector-actions{display:flex;justify-content:flex-end;padding:0 var(--volter-space-2) var(--volter-space-2)}.volter-inspector-pill{display:flex;align-items:center;gap:var(--volter-space-1);width:100%;height:100%;padding:var(--volter-space-1)}.volter-inspector-pill-open{display:flex;align-items:center;gap:var(--volter-space-2);min-width:0;flex:1;height:100%;border:0;background:transparent;color:var(--volter-content-primary);cursor:pointer;text-align:left}.volter-inspector-pill-open:focus-visible{outline:var(--volter-focus-ring);outline-offset:2px;border-radius:var(--volter-radius-full)}.volter-inspector-pill-thumb{position:relative;width:42px;height:42px;flex:0 0 42px;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:var(--volter-radius-full);background:var(--volter-bg-inset);border:1px solid var(--volter-boundary-default);color:var(--volter-content-dim);pointer-events:none}.volter-inspector-pill-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--volter-font-md);font-weight:600}.volter-workspace-task-overlay{position:absolute;top:72px;bottom:64px;left:50%;z-index:var(--volter-z-modal);width:min(760px,calc(100% - 96px));min-height:320px;overflow:hidden;transform:translate(-50%);display:flex;flex-direction:column;border:var(--volter-stroke-resting) solid var(--volter-boundary-default);border-radius:var(--volter-radius-lg);box-shadow:var(--volter-shadow-lg)}.volter-workspace-task-overlay-header{min-height:var(--volter-panel-header-height);box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:var(--volter-space-3);padding:var(--volter-space-1) var(--volter-space-3);color:var(--volter-content-primary);font-size:var(--volter-font-md);font-weight:650}.volter-workspace-task-overlay-body,.volter-workspace-task-overlay-body>.volter-dock-document{min-height:0;flex:1}@media(max-width:720px){.volter-workspace-task-overlay{top:56px;bottom:52px;width:calc(100% - 32px)}}.volter-dock-panel,.volter-dock-document,.volter-dock-document-content{min-width:0;min-height:0;width:100%;height:100%}.volter-dock-panel,.volter-dock-document,.volter-dock-document-content{display:flex;flex-direction:column;overflow:hidden;pointer-events:auto}.volter-dock-document-content{position:relative}.volter-dock-document-toolbar{flex:0 0 auto;display:flex;align-items:center;gap:var(--volter-space-2);min-height:var(--volter-local-toolbar-height);background:var(--volter-surface-header);border-bottom:var(--volter-stroke-resting) solid var(--volter-structural-divider);pointer-events:auto}.volter-dock-document-shelf{position:absolute;left:var(--volter-space-4);top:var(--volter-viewport-overlay-top, var(--volter-space-4));z-index:calc(var(--volter-z-dropdown, 1000) - 1);isolation:isolate;display:flex;flex-direction:column;align-items:flex-start;gap:var(--volter-space-2);pointer-events:auto}.volter-dock-document-shelf .volter-floating-toolbar,.volter-dock-document-shelf .volter-floating-toolbar>*{display:flex;flex-direction:column;align-items:stretch}.volter-dock-document-shelf:not(:empty){--volter-control-compact-height: var(--volter-tool-size, 36px);--volter-control-default-height: var(--volter-tool-size, 36px);--volter-control-comfortable-height: var(--volter-tool-size, 36px);--volter-tool-glyph-size: var(--volter-icon-2xl);--volter-icon-sm: var(--volter-tool-glyph-size);--volter-icon-md: var(--volter-tool-glyph-size);width:var(--volter-tool-width, 40px);align-items:stretch}.volter-dock-document-shelf .volter-btn[data-icon=true][data-size],.volter-dock-document-shelf .volter-floating-toolbar .volter-btn[data-icon=true][data-shape]{width:var(--volter-tool-width, 40px);height:var(--volter-tool-size, 36px)}.volter-dock-document-shelf .volter-toolbar.volter-floating-toolbar{padding-inline:0}.volter-dock-document-shelf .volter-split-button{width:var(--volter-tool-width, 40px)}.volter-dock-document-shelf .volter-split-button>*{min-width:0;flex:1 1 auto}.volter-dock-document-shelf .volter-split-button>*+*{flex:0 0 13px}.volter-dock-document-shelf .volter-split-button .volter-btn[data-icon=true][data-size]{width:auto;min-width:0}.volter-dock-document-shelf .volter-btn[data-variant=ghost]:not([aria-pressed=true]):not(:disabled){background:var(--volter-widget-menu);border-color:var(--volter-boundary-default);color:var(--volter-content-primary)}.volter-dock-document-shelf .volter-btn[data-variant=ghost]:not([aria-pressed=true]):not(:disabled):hover{background:var(--volter-widget-menu-hover)}.volter-dock-document-shelf .volter-floating-toolbar{gap:0}.volter-dock-document-shelf :is(.volter-floating-toolbar,.volter-document-shelf-tools)>*+*{margin-block-start:calc(-1 * var(--volter-stroke-resting))}.volter-dock-document-shelf .volter-toolbar-divider{width:100%;height:var(--volter-tool-gap, var(--volter-space-1));background:none;border:0;margin-block-start:0}.volter-dock-document-shelf{gap:var(--volter-tool-gap, var(--volter-space-2))}.volter-dock-document-shelf .volter-floating-toolbar{padding:0;border:0;border-radius:0;background:none;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.volter-dock-document-shelf[role=toolbar]>*{box-shadow:var(--volter-widget-emboss-shadow)}.volter-dock-document-shelf .volter-viewport-toolbar{position:static}.volter-dock-document-content[data-volter-stage-bar]{--volter-stage-bar-control: var(--volter-control-comfortable-height, 28px);--volter-stage-bar-inset: var(--volter-space-1);--volter-stage-bar-height: calc(var(--volter-stage-bar-control) + 2 * var(--volter-stage-bar-inset));--volter-viewport-overlay-top: calc(var(--volter-stage-bar-height) + var(--volter-space-2))}.volter-dock-document-content[data-volter-stage-bar=pills]{--volter-stage-bar-inset: var(--volter-space-2)}.volter-stage-bar{position:absolute;top:0;left:0;right:0;height:var(--volter-stage-bar-height);padding-inline:var(--volter-space-2);display:flex;align-items:center;justify-content:space-between;gap:var(--volter-space-2);z-index:calc(var(--volter-z-dropdown, 1000) - 1);pointer-events:none}.volter-stage-bar[data-form=strip]{pointer-events:auto;background:var(--volter-surface-header);border-bottom:var(--volter-stroke-resting) solid var(--volter-structural-divider)}.volter-stage-bar-group{display:flex;align-items:center;gap:var(--volter-space-2);min-width:0;pointer-events:auto}.volter-stage-bar-slot{display:contents}.volter-stage-bar .volter-viewport-toolbar{position:static}.volter-stage-bar :is(.volter-floating-toolbar,.volter-toolbar){height:var(--volter-stage-bar-control);align-items:center}.volter-stage-bar[data-form=strip] :is(.volter-floating-toolbar,.volter-toolbar){padding:0;border:0;background:none;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.volter-stage-bar[data-form=pills] :is(.volter-floating-toolbar,.volter-toolbar){padding:0;border:0;background:none;box-shadow:none;gap:var(--volter-space-2)}.volter-stage-bar[data-form=pills] .volter-stage-display>*,.volter-stage-bar[data-form=pills] .volter-transform-header-controls>*{display:inline-flex;align-items:center;height:var(--volter-stage-bar-control);padding-inline:var(--volter-space-1);border-radius:var(--volter-radius-full);background:var(--volter-island-surface, var(--volter-surface-overlay))}.volter-stage-bar[data-form=pills] .volter-viewport-toolbar-left{display:inline-flex;align-items:center;height:var(--volter-stage-bar-control);padding-inline:var(--volter-space-1);border-radius:var(--volter-radius-full);background:var(--volter-island-surface, var(--volter-surface-overlay))}.volter-dock-document-content[data-volter-stage-rail=empty]{--volter-stage-name-left: var(--volter-space-2)}.volter-viewport-view-pill .volter-btn[data-testid=viewport-view-name]{border-radius:var(--volter-radius-sm);background:var(--volter-island-surface, var(--volter-surface-overlay))}.volter-dock-document-toolbar-own{flex:1 1 auto;min-width:0}.volter-toolbar.volter-transform-header-controls{flex:0 0 auto;gap:var(--volter-space-3);border:0}.volter-toolbar.volter-transform-header-controls>*{flex:0 0 auto}.volter-transform-orientation-trigger{display:inline-flex;align-items:center;gap:var(--volter-space-1);white-space:nowrap}[data-volter-chrome=islands] .volter-regular-panel-portal{color:var(--volter-content-primary);text-shadow:var(--volter-content-text-shadow, none);background:var( --volter-glass-regular-panel-adaptive-bg, var(--volter-glass-regular-panel-bg, var(--volter-surface-panel)) );backdrop-filter:var(--volter-glass-regular-panel-backdrop-filter, none);-webkit-backdrop-filter:var(--volter-glass-regular-panel-backdrop-filter, none);border-color:color-mix(in srgb,var(--volter-content-primary) 22%,transparent)}[data-volter-chrome=islands] .volter-regular-panel-portal .volter-content-frost{background:var( --volter-glass-regular-content-adaptive-bg, var(--volter-content-frost-bg, transparent) );backdrop-filter:none;-webkit-backdrop-filter:none}.volter-regular-panel-portal>.volter-surface{background:transparent}.volter-dock-document,.volter-dock-document-content,.volter-dock-document-toolbar{background:transparent}@keyframes volter-play-dissolve{0%{opacity:1;transform:none;filter:blur(0) brightness(1)}42%{opacity:1;transform:translate(var(--volter-play-dx, 0px),var(--volter-play-dy, 0px)) scale(.985);filter:blur(2px) brightness(1.06)}to{opacity:0;transform:translate(var(--volter-play-dx, 0px),var(--volter-play-dy, 0px)) scale(.985);filter:blur(8px) brightness(1)}}@keyframes volter-play-materialize{0%{opacity:0;transform:translate(var(--volter-play-dx, 0px),var(--volter-play-dy, 0px)) scale(.985);filter:blur(6px) brightness(1.02)}to{opacity:1;transform:none;filter:blur(0) brightness(1)}}.volter-play-chrome-exit,.volter-play-chrome-enter{--volter-play-dx: 0px;--volter-play-dy: 0px;--volter-play-stagger: 0ms}.volter-play-chrome-exit{animation:volter-play-dissolve var(--volter-play-dissolve-duration) var(--volter-ease-standard) both;animation-delay:var(--volter-play-stagger, 0ms);pointer-events:none}.volter-play-chrome-enter{animation:volter-play-materialize var(--volter-play-materialize-duration) var(--volter-ease-standard) both}.volter-dock-document-toolbar,.volter-editor-bottom-bar{transition:transform var(--volter-duration-slow) var(--volter-ease-standard),opacity var(--volter-duration-slow) var(--volter-ease-standard)}[data-volter-play-chrome=hidden] .volter-dock-document-toolbar:not([data-runtime-toolbar]){opacity:0;visibility:hidden;transform:translateY(-10px);pointer-events:none;transition:transform var(--volter-duration-base) var(--volter-ease-standard),opacity var(--volter-duration-base) var(--volter-ease-standard) .1s,visibility 0s linear .28s}[data-volter-play-chrome=hidden] .volter-editor-bottom-bar{opacity:0;visibility:hidden;transform:translateY(calc(100% + 8px));pointer-events:none;transition:transform var(--volter-duration-base) var(--volter-ease-standard),opacity var(--volter-duration-base) var(--volter-ease-standard) .1s,visibility 0s linear .28s}[data-volter-play-chrome=hidden][data-volter-play-revealed] .volter-dock-document-toolbar,[data-volter-play-chrome=hidden][data-volter-play-revealed] .volter-editor-bottom-bar{opacity:1;visibility:visible;transform:none;pointer-events:auto;transition:transform var(--volter-duration-base) var(--volter-ease-standard),opacity var(--volter-duration-fast) var(--volter-ease-standard),visibility 0s}.volter-glass-island.volter-play-restart-pill{position:fixed;top:14px;left:50%;z-index:40;display:none;align-items:center;gap:var(--volter-space-2);padding:6px 14px;border-radius:var(--volter-radius-full);font:inherit;font-size:var(--volter-font-md);line-height:var(--volter-leading-tight);color:var(--volter-content-muted);cursor:pointer}.volter-editor-theme[data-volter-play-chrome=hidden]:not([data-volter-play-revealed]) .volter-glass-island.volter-play-restart-pill{display:flex;animation:volter-restart-pill-in var(--volter-duration-slow) var(--volter-ease-standard) both}.volter-glass-island.volter-play-restart-pill:hover{color:var(--volter-content-primary)}@keyframes volter-restart-pill-in{0%{opacity:0;transform:translate(-50%,-8px)}to{opacity:1;transform:translate(-50%)}}@media(prefers-reduced-motion:reduce){.volter-play-chrome-exit,.volter-play-chrome-enter,.volter-editor-theme[data-volter-play-chrome=hidden]:not([data-volter-play-revealed]) .volter-glass-island.volter-play-restart-pill{animation:none}.volter-play-chrome-exit{opacity:0}.volter-dock-document-toolbar,.volter-editor-bottom-bar,[data-volter-play-chrome=hidden] .volter-dock-document-toolbar,[data-volter-play-chrome=hidden] .volter-editor-bottom-bar{transition:none}}.volter-editor-theme{--volter-bg-0: var(--volter-surface-shell);--volter-bg-1: var(--volter-surface-panel);--volter-bg-2: var(--volter-surface-chrome);--volter-bg-3: var(--volter-surface-raised);--volter-bg-inset: var(--volter-surface-inset);--volter-border-1: var(--volter-boundary-default);--volter-border-2: var(--volter-boundary-strong);--volter-text-1: var(--volter-content-primary);--volter-text-2: var(--volter-content-muted);--volter-text-3: var(--volter-content-dim);--volter-asset-icon-folder: #e8a740;--volter-asset-icon-model: #6bc5f7;--volter-asset-icon-prefab: #3b82f6;--volter-asset-icon-component: #9ca3af;--volter-asset-icon-audio: #34d399;--volter-asset-icon-image: #f472b6;--volter-asset-icon-video: #c084fc;--volter-asset-icon-json: #fbbf24;--volter-asset-icon-unknown: #6b7280;--volter-asset-icon-source: #fb923c;text-shadow:var(--volter-content-text-shadow, none);font-family:var(--volter-font-sans);font-size:var(--volter-font-base);line-height:var(--volter-leading-normal);color:var(--volter-content-primary)}.volter-content-frost{background:var(--volter-content-frost-bg, transparent);backdrop-filter:var(--volter-content-frost-filter, none);-webkit-backdrop-filter:var(--volter-content-frost-filter, none);border-radius:var(--volter-radius-md)}.volter-editor-theme [data-volter-adaptive-ink=bright]{--volter-backdrop-dim: none;--volter-content-primary: var(--volter-content-primary-on-bright);--volter-content-muted: var(--volter-content-muted-on-bright);--volter-content-dim: var(--volter-content-dim-on-bright);--volter-content-text-shadow: var(--volter-content-text-shadow-on-bright);--volter-content-frost-bg: var(--volter-content-frost-bg-on-bright);--volter-island-border-color: color-mix( in srgb, var(--volter-content-primary-on-bright) 30%, transparent );--volter-text-1: var(--volter-content-primary);--volter-text-2: var(--volter-content-muted);--volter-text-3: var(--volter-content-dim);--dv-activegroup-visiblepanel-tab-color: var(--volter-content-primary);--dv-activegroup-hiddenpanel-tab-color: var(--volter-content-muted);--dv-inactivegroup-visiblepanel-tab-color: var(--volter-content-muted);--dv-inactivegroup-hiddenpanel-tab-color: var(--volter-content-dim);text-shadow:var(--volter-content-text-shadow, none)}.volter-editor-theme [data-volter-panel-backdrop-policy=dark-frost]{--volter-content-primary: #f4f8ff;--volter-content-muted: #c3cedd;--volter-content-dim: #94a2b5;--volter-content-text-shadow: 0 1px 3px rgb(0 0 0 / 72%);--volter-text-1: var(--volter-content-primary);--volter-text-2: var(--volter-content-muted);--volter-text-3: var(--volter-content-dim);--dv-activegroup-visiblepanel-tab-color: var(--volter-content-primary);--dv-activegroup-hiddenpanel-tab-color: var(--volter-content-muted);--dv-inactivegroup-visiblepanel-tab-color: var(--volter-content-muted);--dv-inactivegroup-hiddenpanel-tab-color: var(--volter-content-dim)}.volter-editor-shell button,.volter-editor-shell input,.volter-editor-shell select,.volter-editor-shell textarea{font-family:inherit}.volter-editor-shell button{font-size:inherit}.volter-sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.volter-tooltip-anchor{position:relative;display:inline-flex}.volter-tooltip{position:fixed;z-index:var(--volter-z-dropdown);display:flex;align-items:center;gap:var(--volter-space-4);padding:var(--volter-space-2) var(--volter-space-4);color:var(--volter-content-primary);background:var(--volter-surface-inset);border:var(--volter-stroke-resting) solid var(--volter-boundary-default);border-radius:var(--volter-radius-md);box-shadow:var(--volter-shadow-sm);font-size:var(--volter-font-base);white-space:nowrap;pointer-events:none}.volter-tooltip kbd{padding:1px var(--volter-space-3);color:var(--volter-content-primary);background:var(--volter-surface-raised);border:var(--volter-stroke-resting) solid var(--volter-boundary-default);border-radius:var(--volter-radius-sm);font-family:var(--volter-font-mono);font-size:var(--volter-font-sm)}[data-volter-chrome=islands] .volter-tooltip{--volter-content-primary: var(--volter-content-primary-on-bright);--volter-content-muted: var(--volter-content-muted-on-bright);--volter-content-dim: var(--volter-content-dim-on-bright);--volter-content-text-shadow: var(--volter-content-text-shadow-on-bright);--volter-text-1: var(--volter-content-primary);--volter-text-2: var(--volter-content-muted);--volter-text-3: var(--volter-content-dim);text-shadow:var(--volter-content-text-shadow, none);background:var(--volter-glass-regular-bg, var(--volter-surface-chrome));border-color:var(--volter-border-1);backdrop-filter:var(--volter-glass-regular-backdrop-filter, none);-webkit-backdrop-filter:var(--volter-glass-regular-backdrop-filter, none)}[data-volter-chrome=islands] .volter-tooltip kbd{color:inherit;background:color-mix(in srgb,currentColor 10%,transparent);border-color:color-mix(in srgb,currentColor 28%,transparent)}.volter-btn{display:inline-flex;width:max-content;max-width:100%;align-items:center;justify-content:center;gap:var(--volter-space-2);font-family:var(--volter-font-sans);font-size:var(--volter-font-md);line-height:var(--volter-leading-tight);border-radius:var(--volter-radius-sm);cursor:pointer;border:1px solid transparent;box-sizing:border-box;transition:background-color .12s var(--volter-ease-standard),border-color .12s var(--volter-ease-standard),color .12s var(--volter-ease-standard),filter .12s var(--volter-ease-standard)}.volter-btn[data-size=compact]{height:var(--volter-control-compact-height);padding-top:0;padding-bottom:0;font-size:var(--volter-font-base)}.volter-btn:not([data-size]),.volter-btn[data-size=default]{height:var(--volter-control-default-height);padding-top:0;padding-bottom:0;font-size:var(--volter-font-base)}.volter-btn[data-size=comfortable]{height:var(--volter-control-comfortable-height);padding-top:0;padding-bottom:0;font-size:var(--volter-font-md)}.volter-btn[data-variant=primary]{background:var(--volter-accent);color:var(--volter-content-on-accent);border-color:var(--volter-accent);padding:var(--volter-space-3) var(--volter-space-6);font-weight:600}.volter-btn[data-variant=primary]:hover:not(:disabled){filter:brightness(1.08)}.volter-btn[data-variant=primary]:active:not(:disabled){filter:brightness(.92)}.volter-btn:not([data-variant]),.volter-btn[data-variant=secondary]{background:var(--volter-widget-regular);color:var(--volter-content-primary);border-color:var(--volter-boundary-default);padding-inline:var(--volter-space-4);box-shadow:var(--volter-widget-emboss-shadow)}.volter-btn:not([data-variant]):hover:not(:disabled),.volter-btn[data-variant=secondary]:hover:not(:disabled){background:var(--volter-widget-regular-hover);border-color:var(--volter-boundary-strong)}.volter-btn:is(:not([data-variant]),[data-variant=secondary]):is([aria-haspopup=menu],[aria-haspopup=listbox],[aria-haspopup=dialog]){background:var(--volter-widget-menu)}.volter-btn:is(:not([data-variant]),[data-variant=secondary]):is([aria-haspopup=menu],[aria-haspopup=listbox],[aria-haspopup=dialog]):hover:not(:disabled){background:var(--volter-widget-menu-hover)}.volter-btn:not([data-variant]):active:not(:disabled),.volter-btn[data-variant=secondary]:active:not(:disabled){background:var(--volter-surface-inset)}.volter-btn[data-variant=outline]{background:transparent;color:var(--volter-content-primary);border-color:var(--volter-boundary-default);padding-inline:var(--volter-space-4)}.volter-btn[data-variant=outline]:hover:not(:disabled){background:var(--volter-neutral-hover);border-color:var(--volter-boundary-strong)}.volter-btn[data-variant=outline]:active:not(:disabled){background:var(--volter-neutral-active)}.volter-btn[data-variant=ghost]{background:transparent;color:var(--volter-content-muted);border-color:transparent;padding-inline:var(--volter-space-3)}.volter-btn[data-variant=ghost]:hover:not(:disabled){color:var(--volter-content-primary);background:var(--volter-neutral-hover)}.volter-btn[data-variant=ghost]:active:not(:disabled){background:var(--volter-neutral-active)}.volter-btn[data-variant=danger]{color:var(--volter-content-primary);background:var(--volter-danger-muted);border-color:var(--volter-danger);padding-inline:var(--volter-space-4);font-weight:600}.volter-btn[data-variant=danger]:hover:not(:disabled){filter:brightness(1.12)}.volter-btn[data-variant=danger]:active:not(:disabled){filter:brightness(.9)}.volter-btn[data-variant=success]{color:var(--volter-content-on-accent);background:var(--volter-success);border-color:var(--volter-success);padding-inline:var(--volter-space-4);font-weight:600}.volter-btn[data-variant=success]:hover:not(:disabled){filter:brightness(1.1)}.volter-btn[data-variant=success]:active:not(:disabled){filter:brightness(.92)}.volter-btn[aria-pressed=true]{color:var(--volter-content-on-selection, var(--volter-content-primary));background:var(--volter-selection-bg);border-color:var(--volter-selection-border)}.volter-btn[aria-busy=true]{cursor:progress}.volter-btn.volter-sprite-frame-option{width:100%;min-width:0;height:72px;flex-direction:column;gap:var(--volter-space-1);padding:var(--volter-space-1);background:var(--volter-surface-inset);border-color:var(--volter-boundary-default)}.volter-btn.volter-sprite-frame-option[aria-pressed=true]{background:var(--volter-selection-bg);border-color:var(--volter-selection-border)}.volter-btn[data-icon=true]{width:var(--volter-control-default-height);padding:0}.volter-btn[data-icon=true][data-size=compact]{width:var(--volter-control-compact-height)}.volter-btn[data-icon=true][data-size=comfortable]{width:var(--volter-control-comfortable-height)}.volter-btn[data-icon=true][data-label-placement=below]{width:68px;min-width:68px;height:42px;flex-direction:column;gap:3px;padding:4px 8px 3px}.volter-icon-button-label{max-width:100%;min-width:0;overflow:hidden;font-size:var(--volter-font-xs);line-height:var(--volter-leading-tight);text-overflow:ellipsis;white-space:nowrap}.volter-btn:disabled,.volter-btn[aria-disabled=true]{opacity:.4;cursor:not-allowed;filter:none}.volter-btn:focus-visible{outline:var(--volter-focus-ring);outline-offset:1px}.volter-machine-list-entry{display:block;width:100%;height:auto;justify-content:flex-start;border-left:var(--volter-stroke-active) solid transparent;padding:var(--volter-space-3) var(--volter-space-4);text-align:left}.volter-machine-list-entry[data-selected=true]{border-left-color:var(--volter-selection-indicator);background:var(--volter-selection-bg)}.volter-performance-overlay{pointer-events:auto;display:grid;grid-template-columns:repeat(5,auto);width:auto;height:auto;gap:var(--volter-space-5);border-color:var(--volter-boundary-default);background:var(--volter-surface-overlay);color:var(--volter-content-primary);padding:var(--volter-space-3) var(--volter-space-4);font-family:var(--volter-font-mono);font-size:var(--volter-font-sm)}.volter-performance-overlay[data-enabled=true]{border-color:var(--volter-accent)}.volter-hud-overlay{background:var(--volter-surface-overlay);border-radius:var(--volter-radius-md)}.volter-hud-overlay[data-hud-border=strong]{border:var(--volter-stroke-resting) solid var(--volter-boundary-strong)}.volter-hud-overlay[data-hud-border=default]{border:var(--volter-stroke-resting) solid var(--volter-boundary-default)}.volter-hud-overlay[data-hud-shadow=true]{box-shadow:var(--volter-shadow-sm)}.volter-field-trigger{width:100%;justify-content:space-between;overflow:hidden;font-family:var(--volter-font-mono);text-align:left}.volter-inspector-group-trigger{width:100%;height:auto;justify-content:flex-start;padding:var(--volter-space-4);font-weight:600;text-align:left;text-transform:uppercase;letter-spacing:.4px}.volter-hierarchy-more{width:100%;height:var(--volter-tree-row-height);justify-content:flex-start;font-style:italic;text-align:left}.volter-btn.volter-tree-caret{width:var(--volter-tree-indent);height:18px;flex:0 0 var(--volter-tree-indent);padding-inline:0;font-size:var(--volter-icon-xs)}.volter-chat-icon{width:var(--volter-control-default-height);padding-inline:0}.volter-chat-session-row{width:100%;height:auto;justify-content:flex-start;padding:var(--volter-space-4);text-align:left}.volter-chat-session-row[data-selected=true]{background:var(--volter-surface-raised)}.volter-chat-harness-trigger{max-width:190px;overflow:hidden;white-space:nowrap}.volter-chat-header-trigger{min-width:0;flex:1;justify-content:flex-start;overflow:hidden;text-align:left}.volter-input{background:var(--volter-input-surface, var(--volter-bg-inset));color:var(--volter-text-1);border:1px solid var(--volter-input-border, var(--volter-border-1));border-radius:var(--volter-radius-sm);box-shadow:var(--volter-input-shadow, none);padding:var(--volter-space-1) var(--volter-space-3);font-size:var(--volter-font-base);font-family:var(--volter-font-sans);outline:none;min-width:0;min-height:var(--volter-control-default-height);box-sizing:border-box}.volter-input::placeholder{color:var(--volter-content-placeholder);opacity:1}input.volter-input,select.volter-input{height:var(--volter-control-default-height);padding-block:0}.volter-input:hover:not(:disabled){border-color:var(--volter-border-2)}.volter-input:focus-visible{border-color:var(--volter-accent);outline:var(--volter-focus-ring);outline-offset:-1px}.volter-input[aria-invalid=true]{border-color:var(--volter-danger)}.volter-input[data-tone=danger]{color:var(--volter-danger)}.volter-input[data-state=editing]{border-color:var(--volter-accent)}.volter-input[data-emphasis=strong]{font-size:var(--volter-font-md);font-weight:600}.volter-input[data-emphasis=semibold]{font-weight:600}.volter-input[data-monospace=true]{font-family:var(--volter-font-mono)}.volter-input[data-density=compact],.volter-select[data-density=compact]{min-height:var(--volter-control-compact-height);font-size:var(--volter-font-sm)}.volter-input[data-density=comfortable],.volter-select[data-density=comfortable]{min-height:var(--volter-control-comfortable-height);font-size:var(--volter-font-md)}.volter-input[data-density=compact-tall],.volter-select[data-density=compact-tall]{min-height:var(--volter-control-comfortable-height);font-size:var(--volter-font-sm)}.volter-input[data-leading-icon=true]{padding-left:calc(var(--volter-space-12) + 1px)}.volter-input[data-variant=entity-name]{min-height:var(--volter-control-comfortable-height);padding:var(--volter-space-2) var(--volter-space-3);font-size:var(--volter-font-lg);font-weight:600}.volter-input[data-variant=tree-edit]{min-height:var(--volter-control-compact-height);padding:0 var(--volter-space-2);border-color:var(--volter-accent);font-size:var(--volter-font-lg);outline:none}.volter-input[data-variant=prominent]{min-height:var(--volter-command-bar-height);padding:var(--volter-space-5) calc(var(--volter-space-6) + var(--volter-space-1));border:0;border-bottom:var(--volter-stroke-resting) solid var(--volter-boundary-strong);border-radius:0;font-size:var(--volter-font-xl)}.volter-input[data-variant=prominent]:focus-visible{outline-offset:-2px}.volter-input[data-variant=seamless]{padding:var(--volter-space-4);color:var(--volter-content-primary);background:transparent;border:0;border-radius:0}.volter-input[data-dynamic=true],.volter-select[data-dynamic=true]{color:var(--volter-dynamic);background-color:var(--volter-dynamic-muted);border-color:var(--volter-dynamic)}.volter-input[data-mixed=true],.volter-select[data-mixed=true]{color:var(--volter-content-dim);font-style:italic}.volter-input:disabled{opacity:.5;cursor:not-allowed}.volter-select{appearance:none;-webkit-appearance:none;background-color:var(--volter-input-surface, var(--volter-bg-inset));background-image:var(--volter-select-chevron);background-repeat:no-repeat;background-position:right 6px center;background-size:8px 5px;color:var(--volter-text-1);border:1px solid var(--volter-input-border, var(--volter-border-1));border-radius:var(--volter-radius-sm);box-shadow:var(--volter-input-shadow, none);padding:var(--volter-space-1) var(--volter-space-6) var(--volter-space-1) var(--volter-space-3);font-size:var(--volter-font-base);font-family:var(--volter-font-sans);outline:none;min-height:var(--volter-control-default-height);box-sizing:border-box;cursor:pointer}.volter-select:hover:not(:disabled){border-color:var(--volter-border-2)}.volter-select:focus-visible{border-color:var(--volter-accent);outline:var(--volter-focus-ring);outline-offset:-1px}.volter-select:disabled{opacity:.5;cursor:not-allowed}.volter-select option{background:var(--volter-bg-2);color:var(--volter-text-1)}.volter-textarea{display:block;width:100%;min-height:calc(var(--volter-control-default-height) * 2);resize:vertical;line-height:var(--volter-leading-normal)}.volter-textarea[data-variant=code]{padding:var(--volter-space-5);font-family:var(--volter-font-mono);font-size:var(--volter-font-base);line-height:var(--volter-leading-relaxed)}.volter-textarea[data-variant=inline-editor]{padding:var(--volter-space-1);color:var(--volter-content-primary);background:var(--volter-input-surface, var(--volter-surface-inset));border:var(--volter-stroke-active) solid var(--volter-accent);font:inherit;font-size:var(--volter-font-lg);line-height:1.3;outline:none}.volter-tool-page{width:100%;max-width:960px;min-height:100%;margin:0 auto;padding:var(--volter-space-6);color:var(--volter-content-primary);box-sizing:border-box}.volter-tool-header{max-width:720px;margin-bottom:var(--volter-space-5)}.volter-tool-eyebrow{margin-bottom:var(--volter-space-2);color:var(--volter-content-dim);font-size:var(--volter-font-sm);font-weight:600;letter-spacing:.06em;text-transform:uppercase}.volter-tool-title{margin:0 0 var(--volter-space-2);font-size:var(--volter-font-xl)}.volter-tool-description{margin:0;color:var(--volter-content-muted);line-height:var(--volter-leading-relaxed)}.volter-tool-card{padding:var(--volter-space-5);border:var(--volter-stroke-resting) solid var(--volter-boundary-default);border-radius:var(--volter-radius-md);background:var(--volter-surface-panel)}.volter-tool-form{display:grid;max-width:720px;gap:var(--volter-space-4)}.volter-tool-field{display:grid;min-width:0;gap:var(--volter-space-2)}.volter-tool-field>.volter-input,.volter-tool-field>.volter-select{width:100%}.volter-tool-field-label{color:var(--volter-content-primary);font-weight:500}.volter-tool-help{color:var(--volter-content-dim);font-size:var(--volter-font-sm);line-height:var(--volter-leading-normal)}.volter-tool-advanced{padding:var(--volter-space-3);border:var(--volter-stroke-resting) solid var(--volter-boundary-default);border-radius:var(--volter-radius-sm);background:var(--volter-surface-inset)}.volter-tool-advanced>summary{color:var(--volter-content-muted);cursor:pointer;font-weight:500}.volter-tool-advanced[open]>summary{margin-bottom:var(--volter-space-3);color:var(--volter-content-primary)}.volter-tool-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--volter-space-3);padding-top:var(--volter-space-1)}.volter-cost-disclosure{display:grid;gap:var(--volter-space-1);padding:var(--volter-space-3) var(--volter-space-4);border:var(--volter-stroke-resting) solid var(--volter-boundary-default);border-left:var(--volter-stroke-active) solid var(--volter-accent);border-radius:var(--volter-radius-sm);background:var(--volter-surface-inset)}.volter-cost-disclosure[data-route=mock]{border-left-color:var(--volter-success)}.volter-cost-disclosure[data-route=managed]{border-left-color:var(--volter-accent)}.volter-cost-disclosure[data-route=direct]{border-left-color:var(--volter-warn)}.volter-cost-disclosure-title{font-weight:600}.volter-cost-disclosure-detail{color:var(--volter-content-muted);font-size:var(--volter-font-sm)}.volter-tool-confirmation{display:grid;gap:var(--volter-space-3);padding:var(--volter-space-4);border:var(--volter-stroke-resting) solid var(--volter-warn);border-radius:var(--volter-radius-sm);background:var(--volter-warn-muted)}.volter-tool-status{max-width:720px;margin-top:var(--volter-space-4);padding:var(--volter-space-3) var(--volter-space-4);border-radius:var(--volter-radius-sm);color:var(--volter-content-primary);background:var(--volter-surface-raised)}.volter-tool-status[data-tone=error]{color:var(--volter-danger);background:var(--volter-danger-faint)}.volter-tool-status[data-tone=success]{color:var(--volter-success);background:var(--volter-success-muted)}.volter-generation-job-meta{color:var(--volter-content-muted);font-size:var(--volter-font-sm)}.volter-generation-document{display:grid;width:100%;max-width:1120px;min-height:100%;margin:0 auto;padding:var(--volter-space-6);gap:var(--volter-space-4);color:var(--volter-content-primary);box-sizing:border-box}.volter-generation-document-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--volter-space-4)}.volter-generation-result{min-height:280px;padding:var(--volter-space-4);overflow:auto;border:var(--volter-stroke-resting) solid var(--volter-boundary-default);border-radius:var(--volter-radius-md);background:var(--volter-surface-inset)}.volter-generation-document-empty,.volter-generation-result-empty{padding:var(--volter-space-5);color:var(--volter-content-muted)}.volter-generation-native-result{margin:0;overflow:auto;color:var(--volter-content-muted);font-size:var(--volter-font-sm);white-space:pre-wrap;overflow-wrap:anywhere}.volter-generation-image-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--volter-space-3)}.volter-generation-image-grid img,.volter-generation-panorama,.volter-generation-world-result img{display:block;width:100%;max-height:620px;border-radius:var(--volter-radius-sm);object-fit:contain}.volter-generation-media{display:block;width:min(100%,860px);margin:auto}.volter-generation-result-links,.volter-generation-world-result,.volter-generation-output-paths{display:grid;align-content:start;justify-items:start;gap:var(--volter-space-3)}.volter-generation-output-paths code{color:var(--volter-content-muted);overflow-wrap:anywhere}.volter-generation-document-footer{display:flex;justify-content:flex-end}.volter-generation-create-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--volter-space-2)}.volter-generation-create-card{display:grid;gap:var(--volter-space-1);padding:var(--volter-space-3);border:var(--volter-stroke-resting) solid var(--volter-boundary-default);border-radius:var(--volter-radius-sm);color:var(--volter-content-primary);text-align:left;background:var(--volter-surface-raised);cursor:pointer}.volter-generation-create-card:hover{border-color:var(--volter-boundary-strong);background:var(--volter-neutral-hover)}.volter-generation-create-card:focus-visible{outline:var(--volter-focus-ring);outline-offset:1px}.volter-generation-create-card span{color:var(--volter-content-muted);font-size:var(--volter-font-sm)}.volter-provider-connections{display:grid;gap:var(--volter-space-4)}@media(max-width:720px){.volter-tool-page,.volter-generation-document{padding:var(--volter-space-4)}.volter-generation-document-header{display:grid}}.volter-checkbox{accent-color:var(--volter-accent);width:13px;height:13px;cursor:pointer;margin:0}.volter-checkbox:focus-visible{outline:var(--volter-focus-ring);outline-offset:2px}.volter-checkbox:indeterminate{accent-color:var(--volter-warn)}.volter-checkbox:disabled{opacity:.5;cursor:not-allowed}.volter-color-swatch{width:var(--volter-control-compact-height);height:var(--volter-control-compact-height);flex:0 0 auto;padding:0;overflow:hidden;background:transparent;border:var(--volter-stroke-resting) solid var(--volter-boundary-default);border-radius:var(--volter-radius-sm);cursor:pointer}.volter-color-swatch:hover:not(:disabled){border-color:var(--volter-boundary-strong)}.volter-color-swatch:focus-visible,.volter-file-input:focus-visible,.volter-range:focus-visible{outline:var(--volter-focus-ring);outline-offset:2px}.volter-color-swatch:disabled,.volter-file-input:disabled,.volter-range:disabled{opacity:.5;cursor:not-allowed}.volter-file-input{color:var(--volter-content-muted);font:inherit}.volter-range{min-width:0;accent-color:var(--volter-accent)}.volter-number-input,.volter-color-input{display:flex;min-width:0;align-items:center;gap:var(--volter-space-2)}.volter-number-input-label{width:12px;flex:0 0 auto;color:var(--volter-content-muted);font-size:var(--volter-font-sm);font-weight:600;text-align:center;user-select:none}.volter-number-input-editor,.volter-number-input-scrub,.volter-color-input>.volter-input{width:100%;min-width:0}.volter-number-input-scrub{box-sizing:border-box;overflow:hidden;padding:var(--volter-space-1) var(--volter-space-3);color:var(--volter-content-primary);background:var(--volter-input-surface, var(--volter-surface-inset));border:var(--volter-stroke-resting) solid var(--volter-input-border, var(--volter-boundary-default));border-radius:var(--volter-radius-sm);box-shadow:var(--volter-input-shadow, none);font-size:var(--volter-font-base);text-overflow:ellipsis;white-space:nowrap;cursor:ew-resize;user-select:none}.volter-number-input-scrub:hover{border-color:var(--volter-boundary-strong)}.volter-scrub-label{transition:color .12s var(--volter-ease-standard),filter .12s var(--volter-ease-standard)}.volter-scrub-label{color:var(--volter-content-muted)}.volter-scrub-label:hover:not([data-disabled=true]){color:var(--volter-content-primary)}.volter-number-input-scrub[data-disabled]{opacity:.5;cursor:not-allowed}.volter-number-input-scrub[data-mixed=true],.volter-color-input>.volter-input[data-mixed=true]{color:var(--volter-content-dim);font-style:italic}.volter-color-input-mixed{width:var(--volter-control-compact-height);height:var(--volter-control-compact-height);flex:0 0 auto;border:var(--volter-stroke-resting) solid var(--volter-boundary-default);border-radius:var(--volter-radius-sm);background-color:var(--volter-surface-inset);background-image:linear-gradient(45deg,var(--volter-content-dim) 25%,transparent 25%,transparent 75%,var(--volter-content-dim) 75%),linear-gradient(45deg,var(--volter-content-dim) 25%,transparent 25%,transparent 75%,var(--volter-content-dim) 75%);background-position:0 0,4px 4px;background-size:8px 8px}.volter-section{border-bottom:var(--volter-stroke-resting) solid var(--volter-structural-divider)}.volter-section-header{display:flex;width:100%;min-height:var(--volter-control-default-height);align-items:center;gap:var(--volter-space-1);color:var(--volter-content-primary);background:var(--volter-surface-section)}.volter-section-trigger{display:flex;min-width:0;min-height:var(--volter-control-default-height);flex:1;align-items:center;gap:var(--volter-space-2);padding:var(--volter-space-2) var(--volter-space-4);color:inherit;background:transparent;border:0;font:inherit;font-size:var(--volter-font-base);font-weight:600;text-align:left;cursor:pointer}.volter-section-trigger:hover{background:var(--volter-neutral-hover)}.volter-section-trigger[data-volter-static],.volter-section-trigger[data-volter-static]:hover{cursor:default;background:transparent}.volter-section-trigger:focus-visible{outline:var(--volter-focus-ring);outline-offset:-2px}.volter-section-title{display:grid;min-width:0;flex:1}.volter-section-title>span,.volter-section-title>small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.volter-section-title>small{color:var(--volter-content-dim);font-size:var(--volter-font-sm);font-weight:400}.volter-section-actions{display:flex;flex:0 0 auto;align-items:center;gap:var(--volter-space-1);padding-right:var(--volter-space-2)}.volter-section-body{padding:0 var(--volter-space-4) var(--volter-space-4)}.volter-inspector-tool-section{padding:var(--volter-space-4);margin-top:var(--volter-space-2);border-top:var(--volter-stroke-resting) solid var(--volter-structural-divider)}.volter-xstate-node{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:var(--volter-space-1);padding:var(--volter-space-3) var(--volter-space-5);color:var(--volter-content-primary);background:var(--volter-surface-panel);border:var(--volter-stroke-resting) solid var(--volter-boundary-default);font-size:var(--volter-font-base);text-align:left;transition:background .1s var(--volter-ease-standard),border-color .1s var(--volter-ease-standard),box-shadow .1s var(--volter-ease-standard)}.volter-xstate-node:hover{background:var(--volter-surface-chrome)}.volter-xstate-node[data-active=true]{border-color:var(--volter-success)}.volter-xstate-node[data-selected=true]{border-color:var(--volter-selection-border);box-shadow:0 0 0 var(--volter-stroke-resting) var(--volter-selection-border)}.volter-xstate-node-type{color:var(--volter-content-dim);transition:color .1s var(--volter-ease-standard)}.volter-xstate-node:hover .volter-xstate-node-type,.volter-xstate-node[data-selected=true] .volter-xstate-node-type{color:var(--volter-content-primary)}.volter-stack{display:flex;min-width:0;flex-direction:column}.volter-inline{display:flex;min-width:0}.volter-spacer{min-width:0;flex:1 1 auto}.volter-actions{flex:0 0 auto}.volter-divider{flex:0 0 auto;background:var(--volter-boundary-default)}.volter-divider[data-orientation=horizontal]{width:100%;height:var(--volter-stroke-resting)}.volter-divider[data-orientation=vertical]{width:var(--volter-stroke-resting);height:var(--volter-control-compact-height)}.volter-text{min-width:0;margin:0;color:var(--volter-content-primary);font-size:var(--volter-font-base);font-weight:400;line-height:1.35}.volter-text[data-variant=caption]{font-size:var(--volter-font-sm)}.volter-text[data-variant=body]{font-size:var(--volter-font-base)}.volter-text[data-variant=label]{font-size:var(--volter-font-base);font-weight:600}.volter-text[data-variant=title]{font-size:var(--volter-font-md);font-weight:600}.volter-text[data-variant=heading]{font-size:var(--volter-font-xl);font-weight:600}.volter-text[data-variant=display]{font-size:var(--volter-font-heading);font-weight:600}.volter-text[data-variant=code]{font-family:var(--volter-font-mono);font-size:var(--volter-font-base)}.volter-text[data-tone=muted]{color:var(--volter-content-muted)}.volter-text[data-tone=dim]{color:var(--volter-content-dim)}.volter-text[data-tone=accent]{color:var(--volter-accent)}.volter-text[data-tone=danger]{color:var(--volter-danger)}.volter-text[data-tone=warning]{color:var(--volter-warn)}.volter-text[data-tone=success]{color:var(--volter-success)}.volter-text[data-truncate=true]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.volter-text[data-selectable=true]{user-select:text}.volter-surface{min-width:0;color:var(--volter-content-primary);background:var(--volter-surface-panel);box-sizing:border-box}.volter-surface[data-variant=shell]{background:var(--volter-surface-shell)}.volter-surface[data-variant=panel]{background:var(--volter-surface-panel)}.volter-surface[data-variant=chrome]{background:var(--volter-surface-chrome)}.volter-surface[data-variant=raised]{background:var(--volter-surface-raised)}.volter-surface[data-variant=inset]{background:var(--volter-surface-inset)}.volter-surface[data-variant=overlay]{background:var(--volter-surface-overlay)}.volter-surface[data-border=true]{border:var(--volter-stroke-resting) solid var(--volter-boundary-default)}.volter-surface[data-scroll=true]{min-height:0;overflow:auto}.volter-dialog-scrim{position:fixed;inset:0;z-index:var(--volter-z-modal);display:flex;align-items:center;justify-content:center;padding:var(--volter-space-10);background:var(--volter-scrim);backdrop-filter:var(--volter-scrim-backdrop-filter, none);-webkit-backdrop-filter:var(--volter-scrim-backdrop-filter, none);pointer-events:auto;box-sizing:border-box}.volter-dialog-scrim[data-variant=command]{align-items:flex-start;padding-top:calc(var(--volter-space-12) + var(--volter-space-10) + var(--volter-space-8))}.volter-dialog{display:flex;width:min(520px,calc(100vw - 48px));max-height:calc(100vh - 48px);min-width:360px;flex-direction:column;overflow:hidden;color:var(--volter-content-primary);background:var(--volter-glass-regular-bg, var(--volter-surface-chrome));border:var(--volter-stroke-resting) solid var(--volter-boundary-default);border-radius:var(--volter-radius-lg);box-shadow:var(--volter-shadow-lg);box-sizing:border-box}.volter-dialog[data-size=compact]{width:min(420px,calc(100vw - 48px))}.volter-dialog[data-size=wide]{width:min(920px,calc(100vw - 48px));height:min(720px,calc(100vh - 48px))}.volter-dialog[data-variant=command]{width:min(500px,calc(100vw - 48px));max-height:min(480px,calc(100vh - 48px))}.volter-command-results{min-height:0;max-height:400px;flex:1;overflow-y:auto}.volter-command-category{padding:var(--volter-space-3) calc(var(--volter-space-6) + var(--volter-space-1)) var(--volter-space-1);color:var(--volter-content-muted);font-size:var(--volter-font-base);font-weight:600;letter-spacing:.5px;text-transform:uppercase}.volter-command-row{display:flex;align-items:center;gap:var(--volter-space-4);padding:5px calc(var(--volter-space-6) + var(--volter-space-1));cursor:pointer}.volter-command-row[data-highlighted=true]{background:var(--volter-selection-bg)}.volter-command-icon{width:14px;flex-shrink:0;color:var(--volter-content-dim);font-size:var(--volter-font-sm);text-align:center}.volter-command-label{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.volter-command-shortcut{flex-shrink:0;color:var(--volter-content-dim);font-size:var(--volter-font-base)}.volter-command-empty{padding:var(--volter-space-8) calc(var(--volter-space-6) + var(--volter-space-1));color:var(--volter-content-dim);text-align:center}.volter-dialog-header{padding:var(--volter-space-8) var(--volter-space-10);border-bottom:var(--volter-stroke-resting) solid var(--volter-structural-divider)}.volter-dialog-body{min-height:0;padding:var(--volter-space-8) var(--volter-space-10);overflow:auto}.volter-dialog-footer{justify-content:flex-end;padding:var(--volter-space-6) var(--volter-space-10);border-top:var(--volter-stroke-resting) solid var(--volter-boundary-default)}.volter-dialog-field{display:grid;min-width:0;gap:var(--volter-space-2)}.volter-dialog-field>.volter-input{width:100%}.volter-joined-field{align-items:stretch;gap:0}.volter-joined-field>.volter-input{width:100%;border-top-right-radius:0;border-bottom-right-radius:0}.volter-joined-field-suffix{display:inline-flex;flex:0 0 auto;align-items:center;padding:0 var(--volter-space-4);color:var(--volter-content-dim);background:var(--volter-surface-raised);border:var(--volter-stroke-resting) solid var(--volter-boundary-default);border-left:0;border-radius:0 var(--volter-radius-sm) var(--volter-radius-sm) 0;white-space:nowrap}.volter-menu,.volter-popover,.volter-dialog{--volter-content-primary: var(--volter-content-primary-on-bright);--volter-content-muted: var(--volter-content-muted-on-bright);--volter-content-dim: var(--volter-content-dim-on-bright);--volter-content-text-shadow: var(--volter-content-text-shadow-on-bright);--volter-content-frost-bg: var(--volter-content-frost-bg-on-bright);--volter-text-1: var(--volter-content-primary);--volter-text-2: var(--volter-content-muted);--volter-text-3: var(--volter-content-dim);text-shadow:var(--volter-content-text-shadow, none);backdrop-filter:var(--volter-glass-regular-backdrop-filter, none);-webkit-backdrop-filter:var(--volter-glass-regular-backdrop-filter, none)}.volter-menu{background:var(--volter-glass-regular-bg, var(--volter-surface-shell));border:1px solid var(--volter-border-1);border-radius:var(--volter-radius-md);box-shadow:var(--volter-shadow-md);padding:var(--volter-space-2);z-index:var(--volter-z-dropdown)}.volter-menu-item{display:flex;align-items:center;width:100%;min-height:var(--volter-control-default-height);box-sizing:border-box;border:0;background:transparent;padding:var(--volter-space-2) var(--volter-space-4);border-radius:var(--volter-radius-sm);font-size:var(--volter-font-base);color:var(--volter-text-1);cursor:pointer;user-select:none;font-family:inherit;text-align:left;white-space:nowrap}.volter-menu-item:hover{background:var(--volter-selection-bg)}.volter-menu-item:focus-visible{outline:var(--volter-focus-ring);outline-offset:-1px}.volter-menu-item:disabled{color:var(--volter-text-3);cursor:default}.volter-menu-item:disabled:hover{background:transparent}.volter-menu-separator{height:var(--volter-stroke-resting);margin:var(--volter-space-1) var(--volter-space-2);border:0;background:var(--volter-boundary-default)}.volter-menu-trigger{height:100%;min-height:var(--volter-control-compact-height);border:0;border-radius:var(--volter-radius-sm);background:transparent;color:var(--volter-content-menu);padding:0 var(--volter-space-4);cursor:pointer;font:inherit}.volter-menu-trigger:hover,.volter-menu-trigger[aria-expanded=true]{color:var(--volter-text-1);background:var(--volter-bg-3)}.volter-menu-trigger:focus-visible{outline:var(--volter-focus-ring);outline-offset:-1px}[data-volter-chrome=islands] .volter-glass-regular-panel{color:var(--volter-content-primary);text-shadow:var(--volter-content-text-shadow, none);background:var( --volter-glass-regular-panel-adaptive-bg, var(--volter-glass-regular-panel-bg, var(--volter-surface-panel)) );backdrop-filter:var(--volter-glass-regular-panel-backdrop-filter, none);-webkit-backdrop-filter:var(--volter-glass-regular-panel-backdrop-filter, none);border:var(--volter-stroke-resting) solid color-mix(in srgb,var(--volter-content-primary) 22%,transparent);border-radius:var(--volter-radius-lg);box-shadow:var(--volter-card-specular-shadow, var(--volter-shadow-lg))}[data-volter-chrome=islands] .volter-glass-regular-panel .volter-content-frost{background:var( --volter-glass-regular-content-adaptive-bg, var(--volter-content-frost-bg, transparent) );backdrop-filter:none;-webkit-backdrop-filter:none}.volter-toolbar{display:flex;min-width:0;min-height:var(--volter-local-toolbar-height);align-items:center;gap:var(--volter-space-2);padding:0 var(--volter-space-3);color:var(--volter-content-primary);background:transparent;border-bottom:var(--volter-stroke-resting) solid var(--volter-structural-divider);box-sizing:border-box}.volter-toolbar[data-compact=true]{min-height:var(--volter-control-default-height);padding-inline:var(--volter-space-2)}.volter-toolbar-group{display:inline-flex;min-width:0;align-items:center;gap:var(--volter-space-2)}.volter-toolbar-divider{width:1px;height:16px;flex:0 0 auto;margin:0 var(--volter-space-1);background:var(--volter-boundary-default)}.volter-floating-toolbar{position:relative;min-height:auto;padding:var(--volter-space-2) var(--volter-space-3);border:var(--volter-stroke-resting) solid var(--volter-island-border-color, var(--volter-boundary-default));border-radius:var(--volter-island-radius, var(--volter-radius-md));background:var(--volter-ambient-lift, none),var(--volter-backdrop-dim, none),var(--volter-island-surface, color-mix(in srgb, var(--volter-surface-panel) 90%, transparent));box-shadow:var(--volter-island-shadow, var(--volter-shadow-sm));backdrop-filter:var(--volter-island-backdrop-filter, blur(8px));-webkit-backdrop-filter:var(--volter-island-backdrop-filter, blur(8px));text-shadow:var(--volter-content-text-shadow, none);pointer-events:auto}.volter-floating-toolbar .volter-btn[aria-pressed=true]{color:var(--volter-content-primary);background:var(--volter-selection-bg);border-color:transparent}.volter-floating-toolbar[data-selection-mode=single] .volter-btn[aria-pressed=true]{color:var(--volter-accent);background:var(--volter-neutral-active)}.volter-floating-toolbar .volter-btn[data-shape=segment]{width:calc(var(--volter-control-comfortable-height) + 12px)}.volter-floating-toolbar:before{content:"";position:absolute;inset:0;z-index:var(--volter-z-base);padding:1px;border-radius:inherit;background:var(--volter-island-specular-ring, none);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);pointer-events:none}.volter-floating-toolbar>*{position:relative;z-index:1}.volter-viewport-navigation{--volter-control-compact-height: 28px;--volter-control-default-height: 28px;--volter-control-comfortable-height: 28px}.volter-viewport-navigation .volter-btn[data-variant=ghost]{color:color-mix(in srgb,var(--volter-content-primary) 85.56%,transparent)}[data-volter-chrome=islands] .volter-chrome-island:not(:empty){position:relative;border:var(--volter-stroke-resting) solid var(--volter-island-border-color, var(--volter-boundary-default));border-radius:var(--volter-island-radius, var(--volter-radius-md));background:var(--volter-ambient-lift, none),var(--volter-backdrop-dim, none),var(--volter-island-surface, color-mix(in srgb, var(--volter-surface-panel) 90%, transparent));box-shadow:var(--volter-island-shadow, var(--volter-shadow-sm));backdrop-filter:var(--volter-island-backdrop-filter, blur(8px));-webkit-backdrop-filter:var(--volter-island-backdrop-filter, blur(8px));text-shadow:var(--volter-content-text-shadow, none);box-sizing:border-box;pointer-events:auto}[data-volter-chrome=islands] .volter-chrome-island:not(:empty):before{content:"";position:absolute;inset:0;z-index:0;padding:1px;border-radius:inherit;background:var(--volter-island-specular-ring, none);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);pointer-events:none}[data-volter-chrome=islands] .volter-chrome-island:not(:empty)>*{position:relative;z-index:1}[data-volter-chrome=islands] .volter-chrome-island[data-island-scale=compact]:not(:empty){border-radius:12px;box-shadow:var(--volter-shadow-sm)}[data-volter-chrome=islands] .volter-chrome-island[data-island-scale=compact]:not(:empty):before{opacity:.55}[data-volter-chrome=islands] .volter-camera-info.volter-chrome-island:not(:empty){pointer-events:none}[data-volter-chrome=islands] .volter-performance-overlay.volter-chrome-island[data-enabled=true]:not(:empty){border-color:var(--volter-accent)}[data-volter-chrome=islands] .volter-chrome-island .volter-btn,.volter-floating-toolbar .volter-btn{border-radius:var(--volter-island-control-radius, var(--volter-radius-sm))}[data-volter-chrome=islands] .volter-btn.volter-chrome-island:not(:empty){border-radius:var(--volter-island-control-radius, var(--volter-radius-sm))}[data-volter-chrome=islands] .volter-btn.volter-chrome-island[data-variant=primary]:not(:empty){background:var(--volter-island-primary-bg, var(--volter-accent))}.volter-split-button{display:inline-flex;min-width:0;align-items:stretch}.volter-split-button>.volter-btn:first-child,.volter-split-button>:first-child>.volter-btn{border-top-right-radius:0;border-bottom-right-radius:0}.volter-split-button>.volter-btn+.volter-btn,.volter-split-button>*+.volter-btn,.volter-split-button>*+*>.volter-btn{min-width:20px;padding-inline:var(--volter-space-1);border-left:0;border-top-left-radius:0;border-bottom-left-radius:0}.volter-keycap{padding:1px var(--volter-space-2);color:var(--volter-content-primary);background:var(--volter-surface-raised);border:var(--volter-stroke-resting) solid var(--volter-boundary-default);border-radius:var(--volter-radius-sm);font-family:var(--volter-font-mono);font-size:var(--volter-font-sm)}.volter-viewport-toolbar{position:absolute;top:var(--volter-viewport-overlay-top, var(--volter-space-4));z-index:calc(var(--volter-z-dropdown, 1000) - 1);isolation:isolate}.volter-viewport-toolbar-left{left:var(--volter-space-4)}.volter-viewport-toolbar-right{right:var(--volter-space-4)}[data-volter-chrome=islands]{--volter-viewport-overlay-hud-top: 54px}[data-volter-chrome=islands] .volter-editor-shell:has(.volter-workspace-dock[data-volter-backdrop]){--volter-viewport-overlay-top: 56px;--volter-viewport-overlay-hud-top: 102px}.volter-viewport-popover-anchor{position:relative;display:inline-flex;align-items:center}.volter-snap-popover{position:absolute;top:calc(100% + var(--volter-space-2));left:0;z-index:var(--volter-z-dropdown);width:170px;padding:var(--volter-space-4)}.volter-helpers-menu{position:absolute;top:calc(100% + var(--volter-space-2));right:0;z-index:var(--volter-z-dropdown);min-width:140px}.volter-menu-check{display:inline-flex;width:14px;flex:0 0 auto;justify-content:center;margin-right:var(--volter-space-2)}.volter-selectable{transition:background-color .12s var(--volter-ease-standard),border-color .12s var(--volter-ease-standard),color .12s var(--volter-ease-standard)}.volter-selectable:hover{background:var(--volter-neutral-hover)}.volter-selectable[data-selected=true]{background:var(--volter-selection-bg)}.volter-list-button{display:block;width:100%;min-width:0;border:0;border-left:var(--volter-stroke-active) solid transparent;background:transparent;color:var(--volter-content-muted);padding:var(--volter-space-3) var(--volter-space-4);text-align:left;font:inherit;cursor:pointer;box-sizing:border-box}.volter-list-button:hover{color:var(--volter-content-primary);background:var(--volter-neutral-hover)}.volter-list-button[data-selected=true]{color:var(--volter-content-primary);background:var(--volter-selection-bg)}.volter-list-button[data-selected=true][data-accent=bar]{border-left-color:var(--volter-selection-indicator)}.volter-list-button:disabled{opacity:.5;cursor:default}.volter-list-button:focus-visible{outline:var(--volter-focus-ring);outline-offset:-2px}.volter-playbar{pointer-events:auto}.volter-play-edit-regime{display:inline-flex;width:var(--volter-control-compact-height);height:var(--volter-control-compact-height);align-items:center;justify-content:center;color:var(--volter-warn)}.volter-play-edit-regime[data-regime=overlay]{color:var(--volter-success)}.volter-playbar-popover-anchor{position:relative}.volter-resolution-menu{z-index:var(--volter-z-dropdown);min-width:220px}.volter-resolution-menu [aria-checked=true]{color:var(--volter-content-primary);background:var(--volter-selection-bg)}.volter-camera-info{position:absolute;left:var(--volter-space-4);bottom:var(--volter-space-4);padding:var(--volter-space-2) var(--volter-space-3);border-radius:var(--volter-radius-md);backdrop-filter:blur(8px);pointer-events:none}.volter-camera-preview{position:absolute;z-index:calc(var(--volter-z-dropdown, 1000) - 2);left:var(--volter-space-4);bottom:52px;width:clamp(220px,26vw,360px);max-width:calc(100% - var(--volter-space-8));overflow:visible;border-radius:var(--volter-radius-md);background:transparent;box-shadow:var(--volter-shadow-md)}.volter-camera-preview-header{min-height:28px;flex-wrap:nowrap;padding:0 var(--volter-space-2);border:var(--volter-stroke-resting) solid var(--volter-boundary-default);border-bottom:0;border-radius:var(--volter-radius-md) var(--volter-radius-md) 0 0;background:var(--volter-surface-overlay);backdrop-filter:blur(12px)}.volter-camera-preview-title{min-width:0;flex:1}.volter-camera-preview-image{width:100%;min-height:120px;overflow:hidden;border:var(--volter-stroke-resting) solid var(--volter-boundary-default);border-top:0;border-radius:0 0 var(--volter-radius-md) var(--volter-radius-md);cursor:zoom-in}.volter-camera-preview-menu-anchor{position:relative;display:flex}.volter-camera-preview-menu{position:absolute;z-index:var(--volter-z-dropdown);top:calc(100% + var(--volter-space-1));right:0;display:grid;width:max-content;min-width:210px;padding:var(--volter-space-1)}.volter-camera-preview-menu .volter-btn{justify-content:flex-start}.volter-camera-view-banner{position:absolute;z-index:calc(var(--volter-z-dropdown, 1000) - 1);top:var(--volter-viewport-overlay-top, var(--volter-space-4));left:50%;max-width:calc(100% - 520px);padding:var(--volter-space-1) var(--volter-space-2);border-radius:var(--volter-radius-full);transform:translate(-50%);backdrop-filter:blur(12px)}.volter-camera-guides{position:absolute;z-index:calc(var(--volter-z-sticky, 100) - 1);inset:0;overflow:hidden;pointer-events:none}.volter-camera-guide{position:absolute;background:color-mix(in srgb,var(--volter-content-primary) 40%,transparent);box-shadow:0 0 1px color-mix(in srgb,var(--volter-surface-shell) 70%,transparent)}.volter-camera-guide-v1,.volter-camera-guide-v2{top:0;bottom:0;width:1px}.volter-camera-guide-v1{left:33.333%}.volter-camera-guide-v2{left:66.666%}.volter-camera-guide-h1,.volter-camera-guide-h2{right:0;left:0;height:1px}.volter-camera-guide-h1{top:33.333%}.volter-camera-guide-h2{top:66.666%}.volter-camera-safe-frame{position:absolute;inset:6%;border:1px solid color-mix(in srgb,var(--volter-content-primary) 48%,transparent)}.volter-camera-center-mark{position:absolute;top:50%;left:50%;width:18px;height:18px;transform:translate(-50%,-50%)}.volter-camera-center-mark:before,.volter-camera-center-mark:after{position:absolute;background:color-mix(in srgb,var(--volter-content-primary) 60%,transparent);content:""}.volter-camera-center-mark:before{top:8px;left:0;width:18px;height:1px}.volter-camera-center-mark:after{top:0;left:8px;width:1px;height:18px}@media(max-width:900px){.volter-camera-view-banner{top:calc(var(--volter-viewport-overlay-top, var(--volter-space-4)) + 44px);max-width:calc(100% - var(--volter-space-8))}}.volter-react-canvas-controls{position:absolute;right:var(--volter-space-6);bottom:var(--volter-space-6);z-index:var(--volter-z-sticky);overflow:visible}.volter-react-canvas-controls[data-board-zoom]{top:var(--volter-viewport-overlay-top, var(--volter-space-4));right:var(--volter-space-4);bottom:auto}.volter-canvas-scene-navigation{position:absolute;top:calc(var(--volter-viewport-overlay-top, var(--volter-space-4)) + 44px);left:var(--volter-space-4);z-index:calc(var(--volter-z-dropdown, 1000) - 1);overflow:visible}.volter-react-viewport-select{border-color:transparent;background-color:transparent}.volter-tabs{display:flex;height:var(--volter-panel-header-height);min-width:0;align-items:stretch;gap:var(--volter-space-1);padding-inline:var(--volter-space-2);overflow:hidden;background:var(--volter-surface-sticky);border-bottom:var(--volter-stroke-resting) solid var(--volter-structural-divider)}.volter-tab{position:relative;display:inline-flex;min-width:0;max-width:220px;align-items:center;gap:var(--volter-space-2);padding:0 var(--volter-space-4);color:var(--volter-content-muted);background:transparent;border:0;font:inherit;cursor:pointer}.volter-tab:hover{color:var(--volter-content-primary);background:var(--volter-surface-raised)}.volter-tab[data-selected=true]{color:var(--volter-content-primary);background:var(--volter-surface-panel)}.volter-tab[data-selected=true]:after{position:absolute;right:var(--volter-space-4);bottom:0;left:var(--volter-space-4);height:var(--volter-stroke-active);border-radius:2px 2px 0 0;background:var(--volter-selection-indicator);content:""}.volter-tab:focus-visible{outline:var(--volter-focus-ring);outline-offset:-2px}.volter-tab-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.volter-tab-dirty{width:6px;height:6px;flex:0 0 auto;border-radius:var(--volter-radius-full);background:var(--volter-warn)}.volter-tab-badge{display:inline-flex;width:max-content;max-width:100%;min-width:15px;height:15px;align-items:center;justify-content:center;padding:0 var(--volter-space-2);border-radius:var(--volter-radius-full);color:var(--volter-surface-shell);background:var(--volter-content-muted);font-size:var(--volter-font-xs);line-height:var(--volter-leading-tight);box-sizing:border-box}.volter-badge{display:inline-flex;flex:0 0 auto;align-self:center;width:fit-content;max-width:100%;min-width:0;min-height:18px;align-items:center;justify-content:center;padding:1px var(--volter-space-2);overflow:hidden;border-radius:var(--volter-radius-sm);color:var(--volter-surface-shell);background:var(--volter-content-muted);font-size:var(--volter-font-xs);line-height:var(--volter-leading-tight);white-space:nowrap;text-overflow:ellipsis;vertical-align:middle;box-sizing:border-box}.volter-badge[data-shape=count]{min-width:15px;min-height:15px;height:15px;padding:0 var(--volter-space-2);border-radius:var(--volter-radius-full)}.volter-tree{min-width:0;color:var(--volter-content-primary)}.volter-tree-row{display:flex;height:var(--volter-tree-row-height);min-width:0;align-items:center;gap:var(--volter-space-2);padding-right:var(--volter-space-2);color:var(--volter-content-muted);border-left:var(--volter-stroke-active) solid transparent;box-sizing:border-box;cursor:default;user-select:none}.volter-tree-row[data-row-alt]{background:var(--volter-surface-row-alt)}.volter-tree-body[data-volter-region=outliner]{background-image:repeating-linear-gradient(to bottom,transparent 0,transparent var(--volter-tree-row-height),var(--volter-surface-row-alt) var(--volter-tree-row-height),var(--volter-surface-row-alt) calc(var(--volter-tree-row-height) * 2));background-attachment:local}.volter-tree-row:hover{color:var(--volter-content-primary);background:var(--volter-neutral-hover)}.volter-tree-row[data-selected=true]{color:var(--volter-content-primary);background-image:linear-gradient(var(--volter-tree-row-selected-bg),var(--volter-tree-row-selected-bg));background-repeat:no-repeat;background-position:0 1px;background-size:100% calc(100% - 2px)}.volter-tree-row[data-selection-active=true]{background-image:linear-gradient(var(--volter-tree-row-active-bg),var(--volter-tree-row-active-bg)),linear-gradient(var(--volter-tree-row-active-border),var(--volter-tree-row-active-border));background-position:1px 2px,0 1px;background-size:calc(100% - 2px) calc(100% - 4px),100% calc(100% - 2px)}.volter-tree-row[data-muted=true]{color:var(--volter-content-dim)}.volter-tree-row[data-dragging=true]{color:var(--volter-content-muted);background:var(--volter-neutral-hover);outline:1px dashed var(--volter-boundary-strong);outline-offset:-1px}.volter-tree-indent-guide{position:absolute;width:.5px;background:var(--volter-tree-indent-guide);pointer-events:none}.volter-tree-remote-selection{display:inline-flex;flex:0 0 auto;align-items:center}.volter-tree-remote-selection>span{width:7px;height:7px;margin-left:-2px;border:1px solid var(--volter-surface-panel);border-radius:var(--volter-radius-full)}.volter-tree-row:focus-visible{outline:var(--volter-focus-ring);outline-offset:-2px}.volter-tree-row{--volter-tree-glyph-plate-width: var(--volter-tree-indent);--volter-tree-glyph-plate-height: calc(var(--volter-tree-row-height) - var(--volter-space-1));--volter-tree-glyph-plate-radius: 5px}.volter-tree-type-glyph{position:relative;z-index:0}.volter-tree-type-glyph>*{opacity:.8}.volter-tree-row[data-selection-active=true] .volter-tree-type-glyph:before{content:"";position:absolute;z-index:-1;top:50%;left:50%;box-sizing:border-box;width:var(--volter-tree-glyph-plate-width);height:var(--volter-tree-glyph-plate-height);transform:translate(-50%,-50%);border:var(--volter-stroke-resting) solid color-mix(in srgb,var(--volter-content-muted) 20.3%,transparent);border-radius:var(--volter-tree-glyph-plate-radius);background:color-mix(in srgb,var(--volter-content-muted) 26%,transparent);pointer-events:none}.volter-tree-datablock{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;flex-shrink:0;vertical-align:middle;width:var(--volter-tree-glyph-plate-width);height:var(--volter-tree-glyph-plate-height);margin-left:var(--volter-tree-indent);font-size:var(--volter-icon-sm);border:var(--volter-stroke-resting) solid transparent;border-radius:var(--volter-tree-glyph-plate-radius)}.volter-tree-datablock>*{opacity:.8}.volter-tree-datablock[data-active=true]{background:var(--volter-tree-datablock-fill);border-color:var(--volter-tree-datablock-border)}.volter-tree-row-leading{display:inline-flex;width:14px;flex:0 0 auto;justify-content:center}.volter-tree-row-label{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.volter-tree-row-actions{display:inline-flex;flex:0 0 auto;align-items:center;gap:var(--volter-space-1)}.volter-tree-row .volter-btn[data-variant=ghost]:not(.volter-tree-caret){color:var(--volter-content-primary)}.volter-tree-row .volter-btn.volter-tree-caret{color:var(--volter-content-muted)}.volter-field-group{display:grid;gap:var(--volter-space-3);padding:var(--volter-space-4)}.volter-field-row{display:grid;grid-template-columns:minmax(64px,84px) minmax(0,1fr);min-width:0;align-items:center;gap:var(--volter-space-3)}.volter-field-row[data-compact=true]{grid-template-columns:minmax(52px,72px) minmax(0,1fr)}.volter-field-label{min-width:0;color:var(--volter-content-muted);font-size:var(--volter-font-base)}.volter-field-control{display:flex;min-width:0;align-items:center;gap:var(--volter-space-2)}.volter-field-hint{grid-column:2;color:var(--volter-content-dim);font-size:var(--volter-font-sm);line-height:1.35}.volter-state-surface{display:flex;min-width:0;min-height:120px;flex-direction:column;align-items:center;justify-content:center;gap:var(--volter-space-3);padding:var(--volter-space-8);color:var(--volter-content-muted);text-align:center;box-sizing:border-box}.volter-state-surface[data-compact=true]{min-height:64px;padding:var(--volter-space-4)}.volter-state-surface[data-tone=error]{color:var(--volter-danger)}.volter-state-surface[data-tone=success]{color:var(--volter-success)}.volter-state-surface[data-tone=loading] .volter-state-surface-icon{animation:volter-editor-spin .8s linear infinite}.volter-state-surface-icon{color:currentColor;font-size:var(--volter-font-2xl)}.volter-state-surface-title{color:var(--volter-content-primary);font-size:var(--volter-font-md)}.volter-state-surface-description{max-width:42ch;color:var(--volter-content-dim);line-height:var(--volter-leading-normal)}.volter-state-surface-action{margin-top:var(--volter-space-2)}.volter-banner{--volter-banner-tone-tint: var(--volter-accent-muted);display:flex;min-width:0;align-items:center;gap:var(--volter-space-3);padding:var(--volter-space-3) var(--volter-space-5);border-bottom:var(--volter-stroke-resting) solid var(--volter-accent);color:var(--volter-accent);background:var(--volter-banner-tone-tint);box-sizing:border-box}.volter-banner[data-tone=warning]{--volter-banner-tone-tint: var(--volter-warn-muted);color:var(--volter-warn);border-color:var(--volter-warn)}.volter-banner[data-tone=error]{--volter-banner-tone-tint: var(--volter-danger-faint);color:var(--volter-danger);border-color:var(--volter-danger)}.volter-banner[data-tone=success]{--volter-banner-tone-tint: var(--volter-success-muted);color:var(--volter-success);border-color:var(--volter-success)}[data-volter-chrome=islands] .volter-banner{background:linear-gradient(var(--volter-banner-tone-tint),var(--volter-banner-tone-tint)),var(--volter-island-surface, transparent);backdrop-filter:var(--volter-island-backdrop-filter, none);-webkit-backdrop-filter:var(--volter-island-backdrop-filter, none);text-shadow:var(--volter-content-text-shadow, none)}.volter-banner-icon{display:inline-flex;flex:0 0 auto}.volter-banner-content{min-width:0;flex:1;color:var(--volter-content-primary)}.volter-banner-actions{display:flex;flex:0 0 auto;align-items:center;gap:var(--volter-space-2)}.volter-popover{color:var(--volter-content-primary);background:var(--volter-glass-regular-bg, var(--volter-surface-chrome));border:var(--volter-stroke-resting) solid var(--volter-boundary-default);border-radius:var(--volter-radius-md);box-shadow:var(--volter-shadow-md)}.volter-drop-indicator{position:absolute;z-index:var(--volter-z-overlay-low);pointer-events:none;border:var(--volter-stroke-active) solid var(--volter-selection-border);background:var(--volter-selection-bg);box-sizing:border-box}.volter-drop-indicator[data-position=before]{inset:0 0 auto;height:var(--volter-stroke-active)}.volter-drop-indicator[data-position=after]{inset:auto 0 0;height:var(--volter-stroke-active)}.volter-drop-indicator[data-position=inside]{inset:1px;border-radius:var(--volter-radius-sm)}.volter-model-tree-item{text-align:left}.volter-btn.volter-project-tool-card{display:grid;width:100%;height:auto;align-items:start;justify-content:normal;gap:var(--volter-space-2);padding-block:var(--volter-space-3);text-align:left}.volter-resize-handle{position:relative;z-index:var(--volter-z-overlay-low);flex:0 0 5px;background:transparent;touch-action:none}.volter-resize-handle[data-orientation=vertical]{cursor:col-resize}.volter-resize-handle[data-orientation=horizontal]{cursor:row-resize}.volter-resize-handle:before{position:absolute;background:var(--volter-boundary-default);content:"";transition:background-color 80ms var(--volter-ease-standard),transform 80ms var(--volter-ease-standard)}.volter-resize-handle[data-orientation=vertical]:before{inset:0 auto 0 2px;width:1px}.volter-resize-handle[data-orientation=horizontal]:before{inset:2px 0 auto;height:1px}.volter-resize-handle:hover:before,.volter-resize-handle:focus-visible:before{background:var(--volter-selection-indicator)}.volter-resize-handle[data-orientation=vertical]:hover:before,.volter-resize-handle[data-orientation=vertical]:focus-visible:before{transform:scaleX(2)}.volter-resize-handle[data-orientation=horizontal]:hover:before,.volter-resize-handle[data-orientation=horizontal]:focus-visible:before{transform:scaleY(2)}.volter-editor-theme,.volter-editor-theme :where(*):not([data-volter-world-surface],[data-volter-world-surface] *){scrollbar-width:thin;scrollbar-color:var(--volter-bg-3) transparent}.volter-editor-theme::-webkit-scrollbar,.volter-editor-theme :where(*):not([data-volter-world-surface],[data-volter-world-surface] *)::-webkit-scrollbar{width:9px;height:9px}.volter-editor-theme::-webkit-scrollbar-track,.volter-editor-theme :where(*):not([data-volter-world-surface],[data-volter-world-surface] *)::-webkit-scrollbar-track{background:transparent}.volter-editor-theme::-webkit-scrollbar-thumb,.volter-editor-theme :where(*):not([data-volter-world-surface],[data-volter-world-surface] *)::-webkit-scrollbar-thumb{background-color:var(--volter-bg-3);border-radius:var(--volter-radius-full);border:2px solid var(--volter-bg-1);background-clip:padding-box}.volter-editor-theme::-webkit-scrollbar-thumb:hover,.volter-editor-theme :where(*):not([data-volter-world-surface],[data-volter-world-surface] *)::-webkit-scrollbar-thumb:hover{background-color:var(--volter-border-2)}.volter-editor-theme::-webkit-scrollbar-corner,.volter-editor-theme :where(*):not([data-volter-world-surface],[data-volter-world-surface] *)::-webkit-scrollbar-corner{background:transparent}@keyframes volter-editor-spin{to{transform:rotate(360deg)}}@keyframes volter-editor-blink{0%,to{opacity:1}50%{opacity:0}}.volter-anim-spin{animation:volter-editor-spin .8s linear infinite}.volter-anim-blink{animation:volter-editor-blink 1s step-end infinite}.volter-btn,.volter-list-button,.volter-split-button,.volter-menu,.volter-menu-trigger,.volter-field-trigger,.volter-inspector-group-trigger,.volter-status-action,.volter-toolbar,.volter-dock-document-toolbar,.volter-viewport-toolbar,.volter-floating-toolbar,.volter-playbar,.volter-project-assets-toolbar,.volter-section-header,.volter-tabs,.volter-tree-row,.volter-asset-tree-row,.volter-project-asset-entry,.volter-model-tree-item,.volter-number-input-label,.volter-number-input-scrub,.volter-scrub-label,.volter-resize-handle,[data-volter-noselect] button,[data-volter-noselect] [role=button]{user-select:none}[data-volter-noselect] input,[data-volter-noselect] textarea,[data-volter-noselect] [contenteditable=true],.volter-toolbar input,.volter-dock-document-toolbar input,.volter-project-assets-toolbar input,.volter-tree-row input,.volter-selectable-text{user-select:text}.volter-light-explorer{display:flex;flex-direction:column;min-width:0;height:100%;color:var(--volter-content-primary);background:var(--volter-surface-panel)}.volter-light-explorer-toolbar{display:flex;align-items:center;gap:var(--volter-space-2);min-height:38px;padding:var(--volter-space-2) var(--volter-space-3);border-bottom:var(--volter-stroke-resting) solid var(--volter-structural-divider)}.volter-light-explorer-toolbar>.volter-input{width:min(280px,38vw)}.volter-light-explorer-summary{margin-left:auto;color:var(--volter-content-muted);font-size:var(--volter-font-small);white-space:nowrap}.volter-light-explorer-scroll{min-height:0;flex:1;overflow:auto}.volter-light-explorer-table{width:100%;min-width:760px;border-collapse:separate;border-spacing:0;font-size:var(--volter-font-base)}.volter-light-explorer-table th{position:sticky;top:0;z-index:1;height:30px;padding:0 var(--volter-space-2);text-align:left;font-weight:var(--volter-font-weight-medium);color:var(--volter-content-muted);background:var(--volter-surface-raised);border-bottom:var(--volter-stroke-resting) solid var(--volter-structural-divider)}.volter-light-explorer-table td{height:34px;padding:var(--volter-space-1) var(--volter-space-2);border-bottom:var(--volter-stroke-resting) solid var(--volter-structural-divider);vertical-align:middle}.volter-light-explorer-table tbody tr[data-selected=true] td{background:var(--volter-selection-bg)}.volter-light-explorer-table tbody tr:hover td{background:var(--volter-neutral-hover)}.volter-light-explorer-table tbody tr[data-selected=true]:hover td{background:var(--volter-selection-bg)}.volter-light-explorer-check-column,.volter-light-explorer-table td:first-child,.volter-light-explorer-table td:last-child{width:54px;text-align:center}.volter-light-explorer-sort.volter-btn,.volter-light-explorer-name.volter-btn{justify-content:flex-start;min-width:0;padding-inline:0}.volter-light-explorer-name.volter-btn{width:100%;color:var(--volter-content-primary)}.volter-light-explorer-type,.volter-light-explorer-color span{color:var(--volter-content-muted);font-family:var(--volter-font-mono);font-size:var(--volter-font-small)}.volter-light-explorer-color{display:flex;align-items:center;gap:var(--volter-space-2);white-space:nowrap}.volter-light-explorer-table .volter-number-input{width:86px}.volter-light-explorer-unavailable{color:var(--volter-content-dim)}.volter-light-explorer-empty{padding:var(--volter-space-4);color:var(--volter-content-muted);font-style:italic}@media(prefers-reduced-motion:reduce){.volter-anim-spin,.volter-state-surface[data-tone=loading] .volter-state-surface-icon{animation-duration:1.6s;animation-timing-function:steps(8,end)}.volter-anim-blink{animation:none;opacity:1}.volter-resize-handle:before{transition-property:background-color}}.volter-project-work-conflict{color:var(--volter-warn);font-size:var(--volter-font-sm);text-align:left}
@@ -0,0 +1 @@
1
+ import{A as H,a as r,b as D,c as O,C as i,D as o,H as t,N as m,d as p,P as I,e as N,R as d,S as n,f as U,g as C,h as c,W as M,i as h,j as G,k as g,l as y,m as V,n as f,o as K,p as Y,q as B,s as F}from"./index-C5ZAyrKq.js";import{createRootBinding as u}from"./binding-Bmxqznjk.js";import{MOUNTED_CANVAS_SURFACE_SHAPE as x,MOUNTED_DOM_SURFACE_SHAPE as l,MOUNTED_ROOT_BASE_SHAPE as L,MOUNTED_THREE_SURFACE_SHAPE as b,ROOT_ADAPTER_SHAPE as j,ROOT_STATE_OBSERVER_SHAPE as k}from"./root-seam-contract-gjWUd5uu.js";import"./index-nmcBqr7Y.js";import"./_commonjsHelpers-D6-XlEtG.js";import"./index-D_NuPfjr.js";import"./jsx-runtime-DPjLkJKQ.js";import"./index-CtzuWnCS.js";import"./index-CinJrH5C.js";import"./index-FUuS4qwW.js";import"./client-DNXj_opT.js";export{H as AUDIO_ADAPTER_SHAPE,r as AUTHORING_ADAPTER_SHAPE,D as AUTHORING_PROVIDER_KEYS,O as AUTHORING_PROVIDER_SHAPES,i as CAMERA_ADAPTER_SHAPE,o as DEBUG_ADAPTER_SHAPE,t as HIERARCHY_PROVIDER_SHAPE,x as MOUNTED_CANVAS_SURFACE_SHAPE,l as MOUNTED_DOM_SURFACE_SHAPE,L as MOUNTED_ROOT_BASE_SHAPE,b as MOUNTED_THREE_SURFACE_SHAPE,m as NAVIGATION_ADAPTER_SHAPE,p as NETWORKING_ADAPTER_SHAPE,I as PHYSICS_2D_ADAPTER_SHAPE,N as PHYSICS_ADAPTER_SHAPE,d as RENDER_DEBUG_ADAPTER_SHAPE,j as ROOT_ADAPTER_SHAPE,k as ROOT_STATE_OBSERVER_SHAPE,n as SEAM_PROOF_STAGES,U as SYSTEM_ADAPTERS_SHAPE,C as SYSTEM_PROVIDER_SHAPES,c as SeamEvidenceLedger,M as WRITE_ANCHOR_KINDS,u as createRootBinding,h as defineSeamShape,G as displayKeyedPhysics,g as emptyWriteAnchorKindCounts,y as gradeSeamCarrier,V as gradeSeamEvidence,f as inspectSeamShape,K as measureAuthoringProviders,Y as nodeKeyedPhysics,B as physicsOwnerOf,F as seamStageAtLeast};
@@ -0,0 +1 @@
1
+ import{cR as nt,aM as st,af as ot,eS as x,dy as U,a0 as at,ho as rt,hp as it}from"./index-C5ZAyrKq.js";import{hq as Rt,hr as wt,hs as _t,aR as Nt,dA as Ft,ht as Ot,hu as Ct,hv as kt,hw as Lt,hx as jt,hy as Bt,hz as Gt,eF as Pt,hA as Ht,eX as $t,hB as Vt,hC as zt,hD as Wt,hE as Kt,hF as Jt,d8 as Ut,hG as Yt,dV as qt,a1 as Qt,em as Xt,cK as Zt,g_ as te,hH as ee,hI as ne,cO as se,hJ as oe,hK as ae,hL as re,eV as ie,fb as ce,hM as ue,fc as le,hN as de,cD as pe,hO as fe,aL as he,cM as me,hP as Ee,hQ as xe,hR as Se,cN as ge,e_ as Te,gi as be,cS as De,dj as Me,fH as ye,he as Ae,hS as Ie,aS as ve,hT as Re,hU as we,aT as _e,dh as Ne,hV as Fe,cG as Oe,cL as Ce,ex as ke,hW as Le,hX as je,aK as Be,eY as Ge,hY as Pe,hZ as He,gH as $e,h_ as Ve,cE as ze,h$ as We,i0 as Ke,eo as Je,i1 as Ue,i2 as Ye,i3 as qe,i4 as Qe,i5 as Xe,ek as Ze,el as tn,i6 as en,i7 as nn,i8 as sn,i9 as on,er as an,ia as rn,ib as cn,ic as un,id as ln,ie as dn,a2 as pn,ig as fn,ih as hn,ii as mn,ij as En,ik as xn,il as Sn,es as gn,im as Tn,io as bn,ep as Dn,ip as Mn,iq as yn,ir as An,d9 as In,is as vn,it as Rn,iu as wn,iv as _n,iw as Nn,ix as Fn,iy as On,eT as Cn,iz as kn,iA as Ln,iB as jn,iC as Bn,iD as Gn,iE as Pn,et as Hn,iF as $n,iG as Vn,iH as zn,eZ as Wn,iI as Kn,iJ as Jn,iK as Un,iL as Yn,c$ as qn,en as Qn,iM as Xn,iN as Zn,iO as ts,eq as es,iP as ns,aY as ss,dz as os,iQ as as,iR as rs,iS as is,c_ as cs}from"./index-C5ZAyrKq.js";import{C as ls}from"./ColorInput-C2EK-OnD.js";import{a as p}from"./jsx-runtime-DPjLkJKQ.js";import{r as b}from"./index-nmcBqr7Y.js";import{A as ps,k as fs,B as hs,a as ms,l as Es,C as xs,D as Ss,m as gs,F as Ts,h as bs,G as Ds,n as Ms,Q as ys,S as As,f as Is,o as vs,T as Rs,d as ws,c as _s,g as Ns,i as Fs,j as Os,b as Cs,p as ks,e as Ls,u as js,q as Bs}from"./ShadowEditor-YO5KEfnz.js";import"./index-CtzuWnCS.js";import"./index-FUuS4qwW.js";import"./client-DNXj_opT.js";import"./_commonjsHelpers-D6-XlEtG.js";import"./index-D_NuPfjr.js";import"./index-CinJrH5C.js";function Dt({preview:t,children:e,...r}){const[o,a]=b.useState(!1),l=b.useRef(null),c=b.useId(),s=()=>a(!1),d=i=>{l.current=i,a(!0)};let m=e;if(b.isValidElement(e)){const i=[e.props["aria-describedby"],o?c:null].filter(Boolean).join(" ");m=b.cloneElement(e,i?{"aria-describedby":i}:{})}return p.jsxs("span",{className:"volter-tooltip-anchor",onMouseEnter:i=>d(i.currentTarget),onMouseLeave:s,onFocusCapture:i=>d(i.currentTarget),onBlurCapture:i=>{i.currentTarget.contains(i.relatedTarget)||s()},onKeyDown:i=>{i.key!=="Escape"||!o||(i.preventDefault(),i.stopPropagation(),s())},children:[m,o&&l.current&&p.jsx(nt,{...r,anchorRef:l,id:c,role:"tooltip",autoFocusFirst:!1,onDismiss:s,children:t})]})}function Mt({value:t,onCommit:e,style:r,disabled:o=!1}){const a=t===void 0?"":JSON.stringify(t),[l,c]=b.useState(a),[s,d]=b.useState(!1),m=b.useRef(!1);b.useEffect(()=>{c(a),d(!1)},[a]);const i=()=>{if(m.current){m.current=!1;return}if(l===a){d(!1);return}let h;try{h=JSON.parse(l)}catch{d(!0);return}d(!1),e(h)};return p.jsxs("div",{children:[p.jsx(st,{"data-testid":"json-input","aria-invalid":s||void 0,"data-tone":s?"danger":void 0,disabled:o,value:l,onChange:h=>{c(h.target.value),s&&d(!1)},onBlur:i,onKeyDown:h=>{h.key==="Enter"?i():h.key==="Escape"&&(m.current=!0,c(a),d(!1),h.target.blur())},style:r,title:s?"Not valid JSON — nothing written. Fix the JSON or press Escape to revert.":void 0}),s&&p.jsx("div",{"data-testid":"json-input-error",style:{fontSize:"var(--volter-font-sm)",color:ot.semantic.danger,marginTop:2},children:"Not valid JSON — nothing written. Fix the JSON or press Escape to revert."})]})}function v(t,e){return e+1<t.length?t[e+1].start:1}function ct(t){const e=t.map(o=>({time:o.start,value:o.function.p0})),r=t[t.length-1];return r&&e.push({time:1,value:r.function.p3}),e}function G(t){return t.map(e=>({start:e.start,function:{...e.function}}))}const B=.01;function F(t,e,r,o){const a=G(t),l=a.length;if(e<0||e>l)return a;if(e<l){const c=a[e],s=o-c.function.p0;if(c.function.p0=o,c.function.p1+=s,e>0){const d=a[e-1],m=o-d.function.p3;d.function.p3=o,d.function.p2+=m;const i=d.start+B,h=v(a,e)-B;c.start=Math.min(h,Math.max(i,r))}}else{const c=a[l-1],s=o-c.function.p3;c.function.p3=o,c.function.p2+=s}return a}function Y(t,e,r,o){const a=G(t);return r==="out"&&e<a.length?a[e].function.p1=o:r==="in"&&e>0&&e<=a.length&&(a[e-1].function.p2=o),a}function M(t,e,r){return t+(e-t)*r}function yt(t,e){for(let r=0;r<t.length;r++){const o=t[r].start,a=v(t,r);if(e>=o&&e<=a){const l=a>o?(e-o)/(a-o):0,{p0:c,p1:s,p2:d,p3:m}=t[r].function,i=M(c,s,l),h=M(s,d,l),S=M(d,m,l),A=M(i,h,l),I=M(h,S,l);return M(A,I,l)}}return 0}function ut(t,e){for(let r=0;r<t.length;r++){const o=t[r].start,a=v(t,r);if(e<=o+B||e>=a-B||e<o||e>a)continue;const l=(e-o)/(a-o),{p0:c,p1:s,p2:d,p3:m}=t[r].function,i=M(c,s,l),h=M(s,d,l),S=M(d,m,l),A=M(i,h,l),I=M(h,S,l),D=M(A,I,l),g=G(t);return g.splice(r,1,{start:o,function:{p0:c,p1:i,p2:A,p3:D}},{start:e,function:{p0:D,p1:I,p2:S,p3:m}}),g}return t}function q(t,e){if(e<=0||e>=t.length)return t;const r=t[e-1],o=t[e],a=o.start-r.start,l=v(t,e)-o.start,c=a+l;if(c<=0)return t;const s=r.function,d=o.function,m={start:r.start,function:{p0:s.p0,p1:s.p0+(s.p1-s.p0)*(a>0?c/a:1),p2:d.p3+(d.p2-d.p3)*(l>0?c/l:1),p3:d.p3}},i=G(t);return i.splice(e-1,2,m),i}function lt(t){let e=Number.POSITIVE_INFINITY,r=Number.NEGATIVE_INFINITY;for(const o of t)for(const a of[o.function.p0,o.function.p1,o.function.p2,o.function.p3])a<e&&(e=a),a>r&&(r=a);return!Number.isFinite(e)||!Number.isFinite(r)?{min:0,max:1}:{min:e,max:r}}const O=34,Q=6,W=6,dt=14,j=260;function pt(t){return Math.abs(t)>=100?t.toFixed(0):Math.abs(t)>=1?String(Math.round(t*100)/100):String(Math.round(t*1e3)/1e3)}function At({value:t,onChange:e,onChangeEnd:r,disabled:o,height:a=90,color:l,testId:c="curve-editor"}){const[s,d]=b.useState(0),m=b.useRef(null),i=b.useRef(null),h=b.useMemo(()=>ct(t),[t]),S=b.useMemo(()=>{const{min:n,max:u}=lt(t);if(u-n<1e-6)return{min:n-1,max:u+1};const f=(u-n)*.1;return{min:n-f,max:u+f}},[t]),A=j-O-Q,I=a-W-dt,D=n=>O+n*A,g=n=>W+(1-(n-S.min)/(S.max-S.min))*I,X=n=>Math.max(0,Math.min(1,(n-O)/A)),Z=n=>S.min+(1-(n-W)/I)*(S.max-S.min),P=n=>{const u=m.current?.getBoundingClientRect();if(!u)return{t:0,v:0};const f=(n.clientX-u.left)/u.width*j,T=(n.clientY-u.top)/u.height*a;return{t:X(f),v:Z(T)}},tt=b.useMemo(()=>{if(t.length===0)return"";let n=`M ${D(t[0].start)} ${g(t[0].function.p0)}`;for(let u=0;u<t.length;u++){const f=t[u],T=v(t,u),y=T-f.start;n+=` C ${D(f.start+y/3)} ${g(f.function.p1)}, ${D(f.start+2*y/3)} ${g(f.function.p2)}, ${D(T)} ${g(f.function.p3)}`}return n},[t,S,a]),R=n=>rt({onChange:e,onChangeEnd:r},n),H=n=>it({onChange:e},n),$=(n,u)=>{if(o)return;n.preventDefault(),n.stopPropagation(),i.current=t;const f=y=>{const{t:N,v:z}=P(y),L=u(i.current??t,N,z);i.current=L,H(L)},T=y=>{const{t:N,v:z}=P(y),L=u(i.current??t,N,z);i.current=null,R(L),window.removeEventListener("pointermove",f),window.removeEventListener("pointerup",T)};window.addEventListener("pointermove",f),window.addEventListener("pointerup",T)},K=l??x.accent,J=t.length,E=h[s],V=s>0&&s<J,C=s<J?t[s]:void 0,k=s>0?t[s-1]:void 0,w=C?{x:D(C.start+(v(t,s)-C.start)/3),y:g(C.function.p1)}:null,_=k?{x:D(k.start+(v(t,s-1)-k.start)*2/3),y:g(k.function.p2)}:null,et=[S.min,(S.min+S.max)/2,S.max];return p.jsxs("div",{"data-testid":c,children:[p.jsxs("svg",{ref:m,"data-testid":`${c}-plot`,viewBox:`0 0 ${j} ${a}`,style:{width:"100%",height:a,display:"block",background:x.inputBg,border:`1px solid ${x.border}`,borderRadius:x.radiusSmall,touchAction:"none",outline:"none"},tabIndex:0,role:"application","aria-label":"Curve editor",onKeyDown:n=>{(n.key==="Delete"||n.key==="Backspace")&&V&&!o&&(n.preventDefault(),R(q(t,s)),d(Math.max(0,s-1)))},onDoubleClick:n=>{if(o)return;const{t:u}=P(n),f=ut(t,u);f!==t&&(R(f),d(f.findIndex(T=>Math.abs(T.start-u)<1e-6)))},children:[et.map(n=>p.jsxs("g",{children:[p.jsx("line",{x1:O,x2:j-Q,y1:g(n),y2:g(n),stroke:x.border,strokeWidth:.5}),p.jsx("text",{x:O-3,y:g(n)+2.5,fontSize:7,fill:x.textMuted,textAnchor:"end",children:pt(n)})]},n)),[0,.5,1].map(n=>p.jsx("text",{x:D(n),y:a-3,fontSize:7,fill:x.textMuted,textAnchor:"middle",children:n},n)),p.jsx("path",{d:tt,fill:"none",stroke:K,strokeWidth:1.5}),E&&w&&p.jsxs("g",{children:[p.jsx("line",{x1:D(E.time),y1:g(E.value),x2:w.x,y2:w.y,stroke:x.textMuted,strokeDasharray:"2 2",strokeWidth:.75}),p.jsx("circle",{"data-testid":`${c}-tangent-out`,cx:w.x,cy:w.y,r:3,fill:x.surface,stroke:x.textMuted,style:{cursor:o?"not-allowed":"ns-resize"},onPointerDown:n=>$(n,(u,f,T)=>Y(u,s,"out",T))})]}),E&&_&&p.jsxs("g",{children:[p.jsx("line",{x1:D(E.time),y1:g(E.value),x2:_.x,y2:_.y,stroke:x.textMuted,strokeDasharray:"2 2",strokeWidth:.75}),p.jsx("circle",{"data-testid":`${c}-tangent-in`,cx:_.x,cy:_.y,r:3,fill:x.surface,stroke:x.textMuted,style:{cursor:o?"not-allowed":"ns-resize"},onPointerDown:n=>$(n,(u,f,T)=>Y(u,s,"in",T))})]}),h.map((n,u)=>p.jsx("circle",{"data-testid":`${c}-key-${u}`,cx:D(n.time),cy:g(n.value),r:4,fill:u===s?x.accent:x.surface,stroke:u===s?x.onAccent:K,strokeWidth:1.25,style:{cursor:o?"not-allowed":"move"},onPointerDown:f=>{d(u),$(f,(T,y,N)=>F(T,u,y,N))}},u))]}),p.jsxs("div",{style:{display:"flex",gap:4,alignItems:"center",marginTop:3},children:[p.jsxs("span",{style:{fontSize:9,color:x.textMuted,flex:"0 0 auto"},children:["Key ",s+1,"/",h.length]}),p.jsx(U,{label:"t",value:E?Math.round(E.time*1e3)/1e3:null,step:.05,testId:`${c}-key-time`,onChange:n=>{E&&H(F(t,s,n,E.value))},onChangeEnd:n=>{E&&R(F(t,s,n,E.value))}}),p.jsx(U,{label:"v",value:E?Math.round(E.value*1e3)/1e3:null,step:.05,testId:`${c}-key-value`,onChange:n=>{E&&H(F(t,s,E.time,n))},onChangeEnd:n=>{E&&R(F(t,s,E.time,n))}}),p.jsx(at,{type:"button",variant:"ghost",size:"compact","data-testid":`${c}-delete-key`,disabled:!V||o===!0,"aria-label":"Delete curve key",title:V?"Delete key":"Endpoint keys cannot be deleted",onClick:()=>{R(q(t,s)),d(Math.max(0,s-1))},children:"×"})]})]})}export{Rt as Actions,ps as AlignmentGrid,fs as AnchorPresets,nt as AnchoredMenu,wt as AssetSlotPicker,hs as BorderEditor,ms as BorderRadiusEditor,at as Button,_t as CLASSIC_MATERIAL,Nt as Checkbox,ls as ColorInput,Es as ColorPicker,xs as ColorSwatch,Ft as ColorSwatchInput,At as CurveEditor,Ot as DEFAULT_ICON_SET_ID,Ss as DEFAULT_SHADOW,gs as DEFAULT_TEXT_SHADOW,Ct as Dialog,kt as DialogBody,Lt as DialogField,jt as DialogFieldLabel,Bt as DialogFooter,Gt as DialogHeader,Pt as DisclosureIcon,Ht as Divider,$t as DraftTextInput,Vt as DropIndicator,zt as EDITOR_CATEGORY_NAMES,Wt as EDITOR_MATERIALS,Kt as EDITOR_MATERIAL_IDS,Jt as EDITOR_REGION_NAMES,Ut as EDITOR_THEME_CLASS,Yt as EditorBadge,qt as EditorBanner,Qt as EditorIcon,Xt as EditorListButton,Zt as EditorPopover,te as EditorSurface,ee as EditorTab,ne as EditorTabList,se as EditorToolbar,oe as EditorTree,ae as EditorTreeRow,re as FONT,ie as FONT_MONO,ce as FieldGroup,ue as FieldLabel,le as FieldRow,de as FileInput,Ts as FilterEditor,pe as FloatingToolbar,bs as FontPicker,fe as GLASS_MATERIAL,Ds as GradientEditor,Ms as GradientStopsTrack,Dt as HoverPreview,he as IconButton,me as Inline,Ee as InteractiveEditScopeContext,xe as JoinedField,Se as JoinedFieldSuffix,Mt as JsonInput,ge as Keycap,Te as LABEL_COL_WIDTH,be as Menu,De as MenuItem,Me as MenuSeparator,ye as MenuSubmenu,Ae as MenuTrigger,U as NumberInput,Ie as Panel,ys as QuarksGradientEditor,ve as RangeInput,Re as ResizeHandle,we as STAGE_WORD_MODES,As as ScrubbableInput,_e as SectionHeader,Ne as Select,Is as ShadowEditor,vs as ShadowListEditor,Fe as Spacer,Oe as SplitButtonGroup,Ce as Stack,ke as StateSurface,x as THEME,Le as TONE_ERROR,je as TONE_WARNING,Be as Text,Ge as TextArea,st as TextInput,Rs as TextShadowEditor,Pe as ThemeRootPortal,He as ToggleButton,$e as ToolbarDivider,Ve as ToolbarGroup,ze as Tooltip,We as TreeDisclosureIcon,Ke as Vec3Input,Je as accent,Ue as accentMuted,Ye as activeIconGlyph,qe as activeIconSetSnapshot,Qe as applyEditorTheme,Xe as areaEmbossValue,Ze as bg,tn as border,en as chromeSize,nn as clampRectToViewport,sn as composeEditorAppearance,ws as composeFilter,_s as composeGradient,Ns as composeShadows,on as controlSize,ct as curveKeys,lt as curveValueRange,an as danger,rn as dangerFaint,cn as dangerMuted,q as deleteKey,un as dynamic,ln as dynamicBg,dn as editorIconSets,pn as editorIcons,fn as editorMaterials,hn as editorThemeVariables,mn as editorThemes,En as fieldLabelStyle,it as fireChange,rt as fireEnd,xn as focusFirstMenuItem,Sn as focusRing,gn as fontMono,Tn as fontSans,bn as fontSize,Dn as fontSizeVar,Mn as fontWeight,yn as glassDarkEditorTheme,An as glassDarkLiteEditorTheme,In as graphiteDarkEditorTheme,vn as graphiteNeutralEditorTheme,Rn as groupLabelStyle,wn as iconSize,_n as isEditorIconSetId,Nn as isEditorMaterialId,Fn as isEditorThemeId,Fs as isUniformBorder,Os as isUniformRadius,On as lineHeight,Cn as lineHeightVar,kn as liquidGlassEditorTheme,Ln as liquidGlassLiteEditorTheme,jn as midnightHighContrastEditorTheme,Bn as motion,Gn as motionVar,F as moveKey,Y as moveTangent,Cs as parseFilterFunctions,ks as parseGradient,Pn as parseNumericValue,Ls as parseShadows,Hn as radius,$n as regionRowAltValue,Vn as registerContributedIconSet,zn as registerContributedMaterial,Wn as rowStyle,yt as sampleCurve,Kn as scrim,v as segmentEnd,Jn as selection,Un as setActiveIconSet,Yn as shadow,qn as space,Qn as spaceVar,ut as splitAt,Xn as strokeWidth,Zn as subscribeEditorMaterials,ts as subscribeIconSets,es as success,ns as successMuted,ss as text,ot as themeVars,js as uniformBorder,Bs as uniformRadius,os as useInteractiveEditScope,as as usesGlassMaterial,rs as warn,is as warnMuted,cs as zIndex};