:root{--bg: #0e0e14;--panel: #161622;--panel2: #1c1c2a;--line: #2a2a3e;--text: #e8e8f0;--muted: #8a8aa0;--accent: #6cf;--accent2: #4c8;--danger: #f66;--warn: #fc6;--ghost: #b8f;--radius: 10px;--pad: 12px;--font: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, sans-serif}*{box-sizing:border-box}html,body{margin:0;height:100%;background:var(--bg);color:var(--text);font-family:var(--font)}button,input,select{font:inherit;color:inherit}button{background:var(--panel2);border:1px solid var(--line);border-radius:8px;padding:8px 12px;cursor:pointer;min-height:40px}button:hover{border-color:var(--accent)}button.pri{background:#1a3a4a;border-color:var(--accent);color:#dff}button.danger{border-color:var(--danger);color:#fcc}button.on{background:#243;border-color:var(--accent2)}button:disabled{opacity:.4;cursor:default}input[type=text],input[type=number]{background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:8px 10px;min-height:40px;width:100%}label.field{display:flex;flex-direction:column;gap:4px;font-size:12px;color:var(--muted)}.app{display:grid;grid-template-rows:auto 1fr auto;height:100%}.top{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:10px 12px;background:var(--panel);border-bottom:1px solid var(--line)}.top h1{font-size:16px;margin:0 8px 0 0;font-weight:650;letter-spacing:.02em}.top .name{width:min(220px,40vw)}.main{display:grid;grid-template-columns:280px 1fr 300px;min-height:0}@media (max-width: 900px){.main{grid-template-columns:1fr;grid-template-rows:auto 1fr auto}.side{max-height:40vh;overflow:auto}}.side{background:var(--panel);border-right:1px solid var(--line);overflow:auto;padding:var(--pad);display:flex;flex-direction:column;gap:12px}.side.right{border-right:none;border-left:1px solid var(--line)}.stage{display:flex;flex-direction:column;min-height:0;background:#0a0a10}.tabs{display:flex;flex-wrap:wrap;gap:4px;padding:8px;background:var(--panel2);border-bottom:1px solid var(--line)}.tabs button{padding:6px 10px;min-height:36px;font-size:13px}.tabs button.active{background:#1a3a4a;border-color:var(--accent)}.views{flex:1;min-height:0;position:relative}.views>*{position:absolute;top:0;right:0;bottom:0;left:0;display:none}.views>*.show{display:block}#view2d,#view3d{width:100%;height:100%}.section h2{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 8px;font-weight:600}.row{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.surf-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.surf-card{background:var(--panel2);border:1px solid var(--line);border-radius:var(--radius);padding:8px;display:flex;flex-direction:column;gap:6px;min-height:110px}.surf-card .lbl{font-size:12px;color:var(--muted)}.surf-card .preview{flex:1;background:#0a0a10;border-radius:6px;min-height:48px;display:flex;align-items:center;justify-content:center;overflow:hidden}.surf-card .preview img{max-width:100%;max-height:64px;object-fit:contain}.surf-card .preview.empty{color:var(--muted);font-size:11px}.asset-list{display:flex;flex-direction:column;gap:6px}.asset{display:grid;grid-template-columns:48px 1fr auto;gap:8px;align-items:center;background:var(--panel2);border:1px solid var(--line);border-radius:8px;padding:6px;cursor:grab}.asset img,.asset .ph{width:48px;height:48px;border-radius:6px;object-fit:cover;background:#0a0a10;display:flex;align-items:center;justify-content:center;font-size:18px}.asset .meta{font-size:12px}.asset .meta b{display:block;font-size:13px}.asset .meta span{color:var(--muted)}.props{display:grid;grid-template-columns:1fr 1fr;gap:8px}.props .span2{grid-column:1 / -1}.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%);background:#1a3040;border:1px solid var(--accent);color:#dff;padding:10px 16px;border-radius:10px;z-index:50;max-width:90vw;box-shadow:0 8px 24px #0006;display:none}.toast.show{display:block}.footer{padding:8px 12px;background:var(--panel);border-top:1px solid var(--line);font-size:12px;color:var(--muted);display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}.drop-hint{border:2px dashed var(--line);border-radius:var(--radius);padding:16px;text-align:center;color:var(--muted);font-size:13px}.drop-hint.drag{border-color:var(--accent);background:#122;color:var(--accent)}.hidden{display:none!important}.small{font-size:12px;color:var(--muted)}.chk{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text)}.side-tabs{margin:-4px -4px 8px}.left-pane{display:none}.left-pane.show{display:flex;flex-direction:column;gap:12px}.surf-card{min-height:90px}.surf-card .preview{min-height:40px}.surf-card .preview img{max-height:48px}
