incanto 0.28.0 → 0.29.0
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.
- package/README.md +44 -0
- package/bin/incanto-editor.mjs +118 -1
- package/dist/2d.d.ts +38 -5
- package/dist/2d.js +3 -3
- package/dist/3d.d.ts +319 -15
- package/dist/3d.js +5 -5
- package/dist/{behavior-CPibUfnH.d.ts → behavior-BAc0erXF.d.ts} +21 -0
- package/dist/{create-game-BRgWpNsa.js → create-game-CNKXGfpr.js} +270 -47
- package/dist/{create-game-71TJjW1T.js → create-game-CbuLWorm.js} +53 -14
- package/dist/debug.d.ts +51 -6
- package/dist/debug.js +242 -19
- package/dist/editor-switch-B0wB_DSr.d.ts +59 -0
- package/dist/editor-switch-CAKlJMIY.js +161 -0
- package/dist/editor.d.ts +49 -0
- package/dist/editor.js +8439 -0
- package/dist/{gameplay-DEG-TP7D.js → gameplay-L05WgWd1.js} +207 -37
- package/dist/gameplay.d.ts +1 -1
- package/dist/gameplay.js +1 -1
- package/dist/index.d.ts +22 -3
- package/dist/index.js +2 -2
- package/dist/{loader-DILt9PGC.d.ts → loader-B242FF6N.d.ts} +1 -1
- package/dist/net.d.ts +1 -1
- package/dist/net.js +2 -2
- package/dist/{pathfinding-RWYkNKx9.d.ts → pathfinding-BwD974Ss.d.ts} +1 -1
- package/dist/{physics-2d-DiVFFlH3.js → physics-2d-CCVTrKOd.js} +62 -2
- package/dist/{physics-3d--y5clE2j.js → physics-3d-BZZLtwJu.js} +439 -8
- package/dist/react.d.ts +1 -1
- package/dist/react.js +1 -1
- package/dist/{register-nObreUQR.js → register-BTg0EM7s.js} +35 -3
- package/dist/{register-6R75AC7-.js → register-C44aSduO.js} +5550 -5073
- package/dist/{register-CvpSUU3O.js → register-DWcWq4QG.js} +22 -2
- package/dist/{register-BFFE1Mh1.js → register-MelqEdza.js} +1 -1
- package/dist/test.d.ts +35 -3
- package/dist/test.js +104 -10
- package/dist/vite.d.ts +53 -1
- package/dist/vite.js +94 -2
- package/editor/assets/{agent8-CojUfCXN.js → agent8-DEVkEa3d.js} +1 -1
- package/editor/assets/debug-zGAtpDF0.js +2 -0
- package/editor/assets/index-Bx4UtWYY.js +10586 -0
- package/editor/index.html +3 -157
- package/package.json +3 -2
- package/schemas/scene.schema.json +102 -4
- package/skills/incanto-3d-models.md +38 -0
- package/skills/incanto-assets.md +13 -0
- package/skills/incanto-building-3d-games.md +83 -6
- package/skills/incanto-editor.md +151 -0
- package/skills/incanto-environment.md +65 -1
- package/skills/incanto-node-reference.md +33 -1
- package/skills/incanto-physics-and-input.md +45 -6
- package/skills/incanto-verifying-your-game.md +51 -2
- package/templates-app/beacon-isle-3d/docs/project-3d-rules.md +5 -0
- package/templates-app/beacon-isle-3d/package.json +1 -1
- package/templates-app/tps-3d/docs/project-3d-rules.md +5 -0
- package/templates-app/tps-3d/package.json +1 -1
- package/templates-app/village-quest-3d/docs/project-3d-rules.md +5 -0
- package/templates-app/village-quest-3d/package.json +1 -1
- package/editor/assets/index-D6RQgROR.js +0 -8330
- package/editor/assets/index-D8QvwvOm.css +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
:root{--bg-0:#0b0d14;--bg-1:#10131d;--bg-2:#161a27;--bg-3:#1d2231;--line:#262c3e;--line-strong:#343c54;--text:#e2e6f0;--text-dim:#9aa3bd;--text-faint:#5d6680;--accent:#6ee7dc;--accent-deep:#14b8a6;--violet:#a78bfa;--amber:#fbbf24;--rose:#fb7185;--green:#86efac;--shadow:0 12px 40px #0000008c;--r-sm:6px;--r-md:10px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--bg-0);height:100%;color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font:13px/1.55 Inter,-apple-system,Segoe UI,system-ui,sans-serif;overflow:hidden}code,textarea,.mono{font-family:ui-monospace,SF Mono,Menlo,monospace}#topbar{background:linear-gradient(to bottom, var(--bg-2), var(--bg-1));border-bottom:1px solid var(--line);align-items:center;gap:10px;height:46px;padding:0 14px;display:flex}.brand{align-items:baseline;gap:7px;margin-right:6px;display:flex}.brand-mark{background:linear-gradient(135deg, var(--accent), var(--accent-deep));color:#07211d;border-radius:6px;align-self:center;place-items:center;width:22px;height:22px;font-size:11px;font-weight:800;display:inline-grid}.brand strong{letter-spacing:.2px;font-weight:700}.brand-sub{color:var(--text-faint);font-size:12px}#file-chip{border:1px solid var(--line);background:var(--bg-1);color:var(--text-dim);border-radius:999px;align-items:center;gap:6px;max-width:320px;padding:4px 10px;font-size:12px;display:flex}#file-path{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pill{background:var(--bg-3);color:var(--text-faint);border-radius:999px;padding:2px 9px;font-family:ui-monospace,Menlo,monospace;font-size:11px}.spacer{flex:1}button{font:inherit;border-radius:var(--r-sm);color:var(--text);cursor:pointer;background:0 0;border:1px solid #0000;align-items:center;gap:6px;padding:6px 12px;font-size:12.5px;font-weight:600;transition:background .12s,border-color .12s,color .12s,opacity .12s;display:inline-flex}button:disabled{opacity:.35;cursor:default}button.ghost{border-color:var(--line);background:var(--bg-1);color:var(--text-dim)}button.ghost:not(:disabled):hover{border-color:var(--line-strong);color:var(--text)}button.ghost.danger:not(:disabled):hover{border-color:var(--rose);color:var(--rose)}button.primary{background:linear-gradient(135deg, var(--accent), var(--accent-deep));color:#06201c}button.primary:not(:disabled):hover{filter:brightness(1.1)}button.play{border-color:var(--green);color:var(--green);background:#86efac14}button.play:not(:disabled):hover{background:#86efac29}button.play.stop{border-color:var(--rose);color:var(--rose);background:#fb71851a}input,select,textarea{font:inherit;color:var(--text);background:var(--bg-0);border:1px solid var(--line);border-radius:var(--r-sm);min-width:0;padding:6px 9px;font-size:12.5px;transition:border-color .12s}select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239aa3bd' stroke-width='2.4'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 9px center;background-repeat:no-repeat;background-size:12px;padding-right:30px}input:focus,select:focus,textarea:focus{border-color:var(--accent-deep);outline:none}textarea{resize:vertical;font-size:12px;line-height:1.5}textarea.invalid{border-color:var(--rose);background:#fb71850d}#error-banner{color:var(--rose);white-space:pre-wrap;background:#fb71851a;border-bottom:1px solid #fb718559;max-height:110px;padding:8px 14px;font-family:ui-monospace,Menlo,monospace;font-size:12px;overflow:auto}#play-notice{color:var(--green);background:#86efac14;border-bottom:1px solid #86efac40;padding:7px 14px;font-size:12px}main{height:calc(100% - 46px);display:flex}#tree-pane{background:var(--bg-1);border-right:1px solid var(--line);flex-direction:column;width:256px;display:flex}#inspector-pane{background:var(--bg-1);border-left:1px solid var(--line);width:336px;overflow-y:auto}#viewport-pane{background:radial-gradient(1200px 500px at 50% -10%, #6ee7dc0d, transparent), var(--bg-0);flex:1;position:relative;overflow:hidden}#viewport,#overlay,#play-canvas{width:100%;height:100%;position:absolute;inset:0}#overlay{cursor:crosshair}#play-canvas{z-index:3}#hints-dock{z-index:4;align-items:center;gap:8px;display:flex;position:absolute;bottom:12px;right:16px}#hints-toggle{border:1px solid var(--line-strong);width:40px;height:40px;color:var(--text-dim);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#10131de0;border-radius:50%;flex:none;justify-content:center;align-items:center;display:inline-flex}#hints-toggle:hover{color:var(--accent);border-color:var(--accent-deep)}#hints-dock.open #hints-toggle{color:var(--accent)}.hints{opacity:0;white-space:nowrap;max-width:0;color:var(--text-faint);pointer-events:none;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#10131dd9;border:1px solid #0000;border-radius:999px;gap:14px;padding:5px 0;font-size:11px;transition:max-width .22s,opacity .18s,padding .22s;display:flex;overflow:hidden}.hints b{color:var(--text-dim);font-weight:600}.pane-title{letter-spacing:1.6px;text-transform:uppercase;color:var(--text-faint);border-bottom:1px solid var(--line);padding:9px 14px 7px;font-size:10.5px;font-weight:700}#tree{flex:1;padding:8px;overflow-y:auto}.tree-row{border-radius:var(--r-sm);cursor:pointer;white-space:nowrap;color:var(--text-dim);border:1px solid #0000;align-items:center;gap:6px;padding:3px 8px 3px 4px;display:flex;position:relative;overflow:hidden}.chevron{align-items:center;transition:transform .12s;display:inline-flex}.chevron.collapsed{transform:rotate(-90deg)}.chevron-legacy{text-align:center;width:14px;color:var(--text-faint);cursor:pointer;-webkit-user-select:none;user-select:none;flex:none;font-size:9px}.chevron.leaf{cursor:default;opacity:.35}.chevron:not(.leaf):hover{color:var(--accent)}.tree-children{border-left:1px solid var(--line);margin-left:11px;padding-left:8px}.tree-row.dragging{opacity:.4}.tree-row.drop-into{border-color:var(--accent);background:#6ee7dc24}.tree-row.drop-before:before,.tree-row.drop-after:after{content:"";background:var(--accent);border-radius:2px;height:2px;position:absolute;left:4px;right:4px}.tree-row.drop-before:before{top:-1px}.tree-row.drop-after:after{bottom:-1px}.tree-row:hover{background:var(--bg-2);color:var(--text)}.tree-row.selected{color:var(--accent);background:#6ee7dc1a;border-color:#6ee7dc4d}.tree-name{text-overflow:ellipsis;overflow:hidden}.tree-icon{cursor:help;border-radius:4px;flex:none;place-items:center;width:17px;height:17px;display:inline-grid}.tree-icon:hover{background:var(--bg-3)}.cat-core{color:var(--violet);background:#a78bfa26}.cat-2d{color:var(--accent);background:#6ee7dc1f}.cat-3d{color:var(--amber);background:#fbbf241f}.cat-body{color:var(--green);background:#86efac1f}.cat-net{color:var(--rose);background:#fb71851f}.scene-row{color:var(--text-faint);margin-bottom:6px}.scene-row.selected{color:var(--accent)}#tree-actions{border-top:1px solid var(--line);gap:7px;padding:10px;display:flex}#add-type{flex:1}#inspector{padding:12px 14px 40px}.section-title{letter-spacing:1.4px;text-transform:uppercase;color:var(--accent);align-items:center;gap:7px;margin:16px 0 8px;font-size:11px;font-weight:700;display:flex}.section-title:first-child{margin-top:2px}.section-title .rule{background:var(--line);flex:1;height:1px}.field{grid-template-columns:92px 1fr;align-items:center;gap:8px;margin-bottom:7px;display:grid}.field>span{color:var(--text-dim);text-overflow:ellipsis;align-items:center;gap:5px;font-size:11.5px;display:flex;overflow:hidden}.field.wide{grid-template-columns:1fr}.field.wide>span{margin-bottom:2px}.vector-row{gap:6px;display:flex}.vector-row input{width:100%}.help-btn{border:1px solid var(--line-strong);width:15px;height:15px;color:var(--text-faint);border-radius:50%;flex:none;justify-content:center;padding:0;font-size:10px;font-weight:700}.help-btn:hover{border-color:var(--accent);color:var(--accent)}.chips{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--bg-0);cursor:text;flex-wrap:wrap;gap:5px;padding:5px 7px;display:flex}.chip{color:var(--accent);background:#6ee7dc1f;border-radius:999px;align-items:center;gap:4px;padding:1px 8px;font-size:11.5px;display:inline-flex}.chip button{color:inherit;opacity:.7;padding:0;font-size:12px}.chips input{background:0 0;border:none;flex:1;min-width:70px;padding:2px}.chips input:focus{outline:none}.subcard{border:1px solid var(--line);border-radius:var(--r-md);background:var(--bg-2);margin-bottom:10px;padding:10px}.subcard .field{grid-template-columns:78px 1fr}.subcard-head{color:var(--text-dim);align-items:center;gap:7px;margin-bottom:8px;font-size:11.5px;font-weight:600;display:flex}.subcard-head .spacer{flex:1}.linklike{color:var(--accent);padding:2px 6px;font-size:11px;font-weight:600}.linklike:hover{text-decoration:underline}.muted-note{color:var(--text-faint);margin:-2px 0 8px;font-size:11px}.asset-control{align-items:stretch;gap:6px;display:flex}.asset-control input{flex:1;min-width:0}.asset-toggle{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--bg-1);width:26px;color:var(--text-dim);flex:none;font-size:11px}.asset-toggle:hover{border-color:var(--accent);color:var(--accent)}.asset-panel{border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--bg-0);margin-top:6px;padding:6px}.asset-search{width:100%;margin-bottom:6px}.asset-options{flex-direction:column;gap:3px;max-height:220px;display:flex;overflow-y:auto}button.asset-option{text-align:left;border-radius:var(--r-sm);background:var(--bg-2);color:var(--text);border:1px solid #0000;flex-direction:column;align-items:flex-start;gap:1px;width:100%;padding:5px 8px;display:flex}button.asset-option:hover{border-color:var(--accent);background:var(--bg-3)}button.asset-option strong{font-size:11.5px;font-weight:600}button.asset-option small{color:var(--text-faint);white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:10px;overflow:hidden}.asset-empty{color:var(--text-faint);padding:4px 8px;font-size:11px}.asset-note{margin-top:5px}.varieties{cursor:default}.variety-opt{color:var(--text-dim);cursor:pointer;align-items:center;gap:5px;font-size:11.5px;display:inline-flex}.variety-opt input[type=checkbox]{width:auto}#popover{z-index:50;background:var(--bg-3);border:1px solid var(--line-strong);border-radius:var(--r-md);width:300px;box-shadow:var(--shadow);color:var(--text-dim);padding:12px 14px;font-size:12px;position:fixed}#popover h4{color:var(--text);margin:0 0 6px;font-size:12.5px}#popover code{background:var(--bg-0);color:var(--accent);border-radius:4px;padding:1px 5px;font-size:11px}#popover pre{background:var(--bg-0);border-radius:var(--r-sm);color:var(--text-dim);margin:8px 0 0;padding:8px 10px;font-size:11px;line-height:1.5;overflow-x:auto}#popover .pop-actions{justify-content:flex-end;margin-top:8px;display:flex}#picker{z-index:40;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#07090ec7;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}#picker[hidden]{display:none}#picker-card{background:var(--bg-2);border:1px solid var(--line-strong);width:460px;max-height:72vh;box-shadow:var(--shadow);border-radius:14px;flex-direction:column;display:flex;overflow:hidden}#picker-list{flex:1;padding:10px;overflow-y:auto}#picker-list .tree-row{padding:9px 12px;font-family:ui-monospace,Menlo,monospace;font-size:12.5px}#picker-new{border-top:1px solid var(--line);gap:8px;padding:12px;display:flex}#picker-path{flex:1;font-family:ui-monospace,Menlo,monospace}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-thumb{background:var(--line-strong);border:2px solid var(--bg-1);border-radius:99px}::-webkit-scrollbar-track{background:0 0}body.playing #tree-pane,body.playing #inspector-pane{pointer-events:none;opacity:.45;filter:saturate(.6);transition:opacity .2s}.rename-input{flex:1;min-width:0;padding:1px 6px;font-size:12.5px}.balloon{z-index:60;background:var(--bg-3);border:1px solid var(--line-strong);border-radius:var(--r-md);max-width:230px;box-shadow:var(--shadow);color:var(--text-dim);flex-direction:column;gap:2px;padding:8px 11px;font-size:11.5px;display:flex;position:fixed}.balloon .balloon-title{color:var(--accent);font-size:12px;font-weight:700}.context-menu{z-index:60;background:var(--bg-3);border:1px solid var(--line-strong);border-radius:var(--r-md);min-width:190px;box-shadow:var(--shadow);flex-direction:column;padding:5px;display:flex;position:fixed}.menu-item{border-radius:var(--r-sm);color:var(--text);justify-content:space-between;padding:6px 10px;font-weight:500}.menu-item:not(:disabled):hover{background:var(--bg-2)}.menu-item.danger:not(:disabled):hover{color:var(--rose)}.menu-item kbd{color:var(--text-faint);font-family:inherit;font-size:10px}.menu-divider{background:var(--line);height:1px;margin:4px 6px}.hints[hidden]{display:none}#hints-dock.open .hints:not([hidden]){opacity:1;border-color:var(--line);max-width:1100px;padding:5px 14px}body.playing #hints-dock{display:none}#gameview-btn{z-index:4;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#10131dcc;padding:4px 10px;font-size:11.5px;position:absolute;top:104px;right:18px}.field input[type=checkbox]{width:15px;height:15px;accent-color:var(--accent-deep);cursor:pointer;justify-self:start}.picker-title{justify-content:space-between;align-items:center;display:flex}#picker-close{color:var(--text-faint);background:0 0;border:none;padding:0 4px;font-size:12px}#picker-close:hover{color:var(--text)}.uid-row{gap:6px;display:flex}.uid-row input{flex:1;min-width:0;font-size:11.5px}.uid-row .ghost{padding:4px 8px}#confirm{z-index:70;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#07090ec7;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}#confirm[hidden]{display:none}#confirm-card{background:var(--bg-2);border:1px solid var(--line-strong);width:480px;max-height:70vh;box-shadow:var(--shadow);border-radius:14px;flex-direction:column;display:flex;overflow:hidden}#confirm-body{color:var(--text-dim);padding:14px;font-size:12.5px;overflow-y:auto}#confirm-list:empty{display:none}#confirm-list{background:var(--bg-0);border-radius:var(--r-sm);flex-direction:column;gap:4px;margin:10px 0 0;padding:10px 12px;font-family:ui-monospace,Menlo,monospace;font-size:11.5px;display:flex}#confirm-actions{border-top:1px solid var(--line);justify-content:flex-end;gap:8px;padding:12px 14px;display:flex}#confirm-delete{border-color:var(--rose);color:var(--rose);background:#fb718514}#confirm-delete:hover{background:#fb718529}.color-row{align-items:center;gap:6px;display:flex}.color-row input[type=color]{cursor:pointer;width:30px;height:26px;padding:2px}.color-row input[type=text]{flex:1;min-width:0;font-size:11.5px}.slider-row{align-items:center;gap:8px;display:flex}.slider-row input[type=range]{accent-color:var(--accent-deep);background:0 0;border:none;flex:1;padding:0}.slider-row input[type=number]{width:64px}.asset-row{border-radius:var(--r-sm);cursor:pointer;align-items:center;gap:7px;padding:5px 8px;display:flex}.asset-row:hover,.asset-row.open{background:var(--bg-3)}.asset-key{color:var(--accent)}.asset-url{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--text-faint);flex:1;font-family:ui-monospace,Menlo,monospace;font-size:11px;overflow:hidden}.danger-link{color:var(--text-faint)}.danger-link:hover{color:var(--rose)}.asset-editor{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--bg-0);flex-direction:column;gap:4px;margin:2px 0 10px;padding:10px;display:flex}.asset-editor .field{grid-template-columns:52px 1fr;margin-bottom:4px}.meta-row{grid-template-columns:1fr 1fr 24px;align-items:center;gap:6px;display:grid}.meta-row input{padding:4px 7px;font-size:11.5px}#docs{z-index:60;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#07090ecc;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}#docs[hidden]{display:none}#docs-card{background:var(--bg-2);border:1px solid var(--line-strong);width:min(920px,92vw);height:min(680px,88vh);box-shadow:var(--shadow);border-radius:14px;flex-direction:column;display:flex;overflow:hidden}#docs-layout{flex:1;min-height:0;display:flex}#docs-tabs{border-right:1px solid var(--line);flex-direction:column;gap:4px;width:168px;padding:10px;display:flex}.docs-tab{border-radius:var(--r-sm);color:var(--text-dim);justify-content:flex-start;padding:7px 12px;font-weight:500}.docs-tab:hover{background:var(--bg-3);color:var(--text)}.docs-tab.active{color:var(--accent);background:#6ee7dc1a;font-weight:700}#docs-body{flex:1;padding:18px 24px 40px;overflow-y:auto}#docs-body h2{margin:0 0 6px;font-size:18px}#docs-body h3{color:var(--accent);margin:18px 0 4px;font-size:13.5px}#docs-body p{color:var(--text-dim);margin:4px 0 10px;font-size:13px;line-height:1.7}.docs-intro{background:var(--bg-1);border:1px solid var(--line);border-radius:var(--r-md);padding:10px 14px}.docs-node{border:1px solid var(--line);border-radius:var(--r-md);margin-bottom:8px;overflow:hidden}.docs-node.open{border-color:var(--line-strong)}.docs-node-head{text-align:left;border-radius:0;align-items:center;gap:9px;width:100%;padding:9px 12px;display:flex}.docs-node-head:hover{background:var(--bg-3)}.docs-node-head strong{font-size:13px}.docs-summary{color:var(--text-faint);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:400;overflow:hidden}.docs-detail{border-top:1px solid var(--line);background:var(--bg-1);padding:4px 14px 12px}.docs-props{border-collapse:collapse;width:100%;margin-top:8px;font-size:11.5px}.docs-props th{text-align:left;color:var(--text-faint);border-bottom:1px solid var(--line);padding:4px 8px;font-weight:600}.docs-props td{border-bottom:1px solid var(--line);color:var(--text-dim);padding:3px 8px}#mode-toolbar{z-index:4;border-radius:var(--r-md);border:1px solid var(--line);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#10131dd9;gap:4px;padding:4px;display:flex;position:absolute;top:12px;left:12px}.tool{border-radius:var(--r-sm);width:30px;height:28px;color:var(--text-faint);justify-content:center;padding:0}.tool:hover{color:var(--text);background:var(--bg-3)}.tool.active{color:var(--accent);background:#6ee7dc24}.lang-menu{min-width:130px}.lang-check{color:var(--accent);font-weight:700}.explorer-section{border-top:1px solid var(--line);justify-content:space-between;align-items:center;margin-top:4px;display:flex}.explorer-section .ghost{padding:1px 8px}#asset-tree{max-height:30%;padding:2px 8px 10px;overflow-y:auto}.explorer-empty{padding:4px 10px;font-size:11px}.asset-row .asset-key{color:var(--accent);font-family:ui-monospace,Menlo,monospace}.asset-icon-texture{color:#f0abfc}.asset-icon-spritesheet{color:#fbbf24}.asset-icon-model{color:#7aa2ff}.asset-icon-animation{color:#86efac}.uid-value{align-items:center;gap:7px;min-width:0;display:flex}.uid-value code{color:var(--text-dim);letter-spacing:.3px;text-overflow:ellipsis;white-space:nowrap;font-family:ui-monospace,Menlo,monospace;font-size:11px;overflow:hidden}.uid-copy{border-radius:var(--r-sm);color:var(--text-faint);background:0 0;border:none;padding:3px 5px;line-height:0}.uid-copy:hover{color:var(--text);background:var(--bg-3)}.uid-copy.copied{color:var(--accent);font-size:10px;line-height:1}.section-toggle{box-sizing:border-box;text-align:left;cursor:pointer;background:var(--bg-1);border:none;border-top:1px solid var(--line-strong);border-bottom:1px solid var(--line);border-radius:0;justify-content:flex-start;align-items:center;gap:6px;width:100%;height:30px;padding-top:0;padding-bottom:0;display:flex}.section-toggle:hover{color:var(--text)}.section-toggle .chev{color:var(--text-dim);transition:transform .12s;display:inline-flex}.section-toggle.collapsed .chev{transform:rotate(-90deg)}.section-add{min-width:24px;height:20px;color:var(--text-dim);border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--bg-2);justify-content:center;align-items:center;padding:0 6px;font-size:13px;display:inline-flex}.section-add:hover{background:var(--bg-3);color:var(--accent);border-color:var(--accent-deep)}[data-body][hidden],aside#tree-pane #scene-body[hidden]{display:none}#scene-body{flex-direction:column;flex:1;min-height:0;display:flex}.asset-folder{color:var(--text-dim);cursor:pointer;border-radius:var(--r-sm);align-items:center;gap:6px;padding:4px 8px;display:flex}.asset-folder:hover{background:var(--bg-3)}.asset-folder .chev{color:var(--text-dim);transition:transform .12s;display:inline-flex}.asset-folder.collapsed .chev{transform:rotate(-90deg)}.asset-folder svg{color:#e7c66a}.asset-row.grouped{margin-left:18px}.asset-folder .count{color:var(--text-faint);margin-left:auto;font-size:10.5px}.asset-folder.selected{color:var(--accent);background:#6ee7dc14}.asset-folder.drop-target,#asset-tree.drop-target{outline:1.5px dashed var(--accent);outline-offset:-2px;border-radius:var(--r-sm)}.asset-row[draggable=true]{cursor:grab}body.playing #mode-toolbar,body.playing #gameview-btn{display:none}.tool-divider{background:var(--line);align-self:center;width:1px;height:18px;margin:0 2px}#generate{z-index:70;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#07090ec7;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}#generate[hidden]{display:none}#generate-card{background:var(--bg-2);border:1px solid var(--line-strong);width:420px;max-height:78vh;box-shadow:var(--shadow);border-radius:14px;flex-direction:column;display:flex;overflow:hidden}#generate-body{padding:14px;overflow-y:auto}#generate-body .gen-hint{color:var(--text-faint);margin:0 0 12px;font-size:11.5px}#generate-body .gen-desc{color:var(--text-dim);margin:2px 0 12px;font-size:11.5px}#generate-params{border-top:1px solid var(--line);padding-top:2px}#generate-params .field:first-child{margin-top:10px}.gen-seed-row{gap:6px;display:flex}.gen-seed-row input{flex:1;min-width:0}.gen-seed-row .ghost{padding:4px 9px}#generate-actions{border-top:1px solid var(--line);justify-content:flex-end;align-items:center;gap:8px;padding:12px 14px;display:flex}#generate-status{color:var(--rose);margin-right:auto;font-size:11px}.const-picker{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--bg-1);width:30px;color:var(--text-dim);flex:none;margin-left:6px;font-size:11px}.const-picker:hover{border-color:var(--accent);color:var(--accent)}.field.const-bound>span{color:var(--accent)}.const-row{align-items:stretch;gap:6px;display:flex}.const-row .field{flex:1;min-width:0}.const-del{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--bg-1);width:26px;color:var(--text-dim);flex:none;font-size:11px}.const-del:hover{border-color:var(--rose);color:var(--rose)}.const-add{align-items:stretch;gap:6px;margin-top:6px;display:flex}.const-add input{flex:1;min-width:0}.tile-paint{flex-direction:column;gap:6px;display:flex}.paint-toggle{cursor:pointer;border:1px solid var(--border,#444);color:inherit;font:inherit;background:0 0;border-radius:6px;padding:6px 10px}.paint-toggle.on{color:#fff;background:#2e6b2e;border-color:#4a9e4a}.paint-palette{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.paint-chip{cursor:pointer;border:1px solid var(--border,#444);width:26px;height:26px;color:inherit;background:0 0;border-radius:5px;font:600 13px/1 monospace}.paint-chip.on{color:#fff;background:#3a5a8c;border-color:#6a9ae0}.paint-brush-input{text-align:center;width:32px;color:inherit;border:1px solid var(--border,#444);background:0 0;border-radius:5px;padding:4px;font:600 13px/1 monospace}.paint-hint{opacity:.6;font-size:11px}
|