:root{--bg:#12151c;--panel:#1b202b;--panel2:#242b38;--text:#e8edf7;--muted:#9aa7bb;--accent:#60a5fa;--border:#323b4d;--canvas:#f8fafc;--danger:#ef4444}body.theme-light{--bg:#e8edf5;--panel:#ffffff;--panel2:#f1f5f9;--text:#172033;--muted:#64748b;--accent:#2563eb;--border:#cbd5e1;--canvas:#fff}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:13px/1.4 Inter,ui-sans-serif,system-ui,Arial,sans-serif;overflow:hidden}.app-shell{height:100vh;display:grid;grid-template-columns:56px 1fr 310px;grid-template-rows:48px 1fr 28px;grid-template-areas:'top top top' 'tools work inspect' 'status status status'}.topbar{grid-area:top;display:flex;align-items:center;gap:8px;padding:7px 10px;background:var(--panel);border-bottom:1px solid var(--border);white-space:nowrap}.brand{font-weight:800;font-size:18px;letter-spacing:.3px;color:var(--accent)}.project-name{width:150px}.divider{width:1px;height:24px;background:var(--border);margin:0 4px}.toolbar{grid-area:tools;background:var(--panel);border-right:1px solid var(--border);display:flex;flex-direction:column;gap:6px;padding:8px}.workspace{grid-area:work;overflow:auto;display:flex;align-items:flex-start;justify-content:flex-start;padding:50px;background:radial-gradient(circle at 20px 20px,var(--panel2) 1px,transparent 1px);background-size:20px 20px}.canvas-wrap{transform-origin:top left;box-shadow:0 20px 80px rgba(0,0,0,.35)}#editorSvg{background:var(--canvas);display:block;touch-action:none}.inspector{grid-area:inspect;background:var(--panel);border-left:1px solid var(--border);overflow:auto;padding:10px}.statusbar{grid-area:status;background:var(--panel);border-top:1px solid var(--border);color:var(--muted);padding:5px 10px}section{border:1px solid var(--border);background:rgba(255,255,255,.025);border-radius:10px;padding:10px;margin-bottom:10px}.inspector-section{display:none}.inspector-section.visible,.inspector-section.always-visible{display:block}.hint{color:var(--muted);font-size:12px;margin:6px 0 0}.inspector.empty #contextHelp{border-color:var(--accent)}h2{font-size:12px;text-transform:uppercase;color:var(--muted);margin:0 0 8px}label{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:6px 0}input,textarea,button{font:inherit;border:1px solid var(--border);background:var(--panel2);color:var(--text);border-radius:7px;padding:6px 8px}input[type=number]{width:76px}input[type=color]{width:48px;height:30px;padding:1px}textarea{width:100%;resize:vertical}button{cursor:pointer}button:hover,.tool.active{border-color:var(--accent);color:#fff;background:color-mix(in srgb,var(--accent) 24%,var(--panel2))}.tool{height:40px;font-size:20px;padding:0}.button-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-bottom:8px}.layers,.project-list{display:flex;flex-direction:column;gap:5px}.layers button,.project-list button{text-align:left;overflow:hidden;text-overflow:ellipsis}.preview{fill:rgba(96,165,250,.14);stroke:var(--accent);stroke-width:1.5;stroke-dasharray:6 4;pointer-events:none}.selection-box{fill:none;stroke:#38bdf8;stroke-width:1;stroke-dasharray:4 3;pointer-events:none}.handle{fill:#f8fafc;stroke:#0284c7;stroke-width:1.5}.rotation-center{fill:#f97316;stroke:#fff;stroke-width:2}dialog{background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:12px;min-width:420px}dialog::backdrop{background:rgba(0,0,0,.6)}@media(max-width:900px){.app-shell{grid-template-columns:48px 1fr;grid-template-areas:'top top' 'tools work' 'inspect inspect' 'status status';grid-template-rows:auto 1fr 260px 28px}.topbar{overflow:auto}.inspector{border-left:0;border-top:1px solid var(--border);display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:8px}.inspector section{margin:0}}
