main{flex:1;display:flex;flex-direction:column;overflow-y:auto}.layout-center{flex:1;display:flex;overflow:hidden;min-height:0;gap:0}.editor-panel{width:360px;display:flex;flex-direction:column;border-right:1px solid var(--border);flex-shrink:0}.canvas-panel{flex:1;display:flex;flex-direction:column;min-width:0}.panel-hdr{height:40px;padding:0 16px;display:flex;align-items:center;justify-content:space-between;background:var(--bg3);border-bottom:1px solid var(--border);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.panel-body{flex:1;display:flex;flex-direction:column;min-height:0;padding:12px;gap:12px;overflow:auto}#dataEditor{display:flex;flex-direction:column;gap:6px}.data-row{display:flex;gap:8px;align-items:center}.data-row input[type=text]{flex:1;background:var(--bg3);color:#fff;border:1px solid var(--border);padding:6px 8px;border-radius:var(--r);font-size:13px;outline:none}.data-row input[type=text]:focus{border-color:var(--accent)}.data-row input[type=number]{width:80px;background:var(--bg3);color:#fff;border:1px solid var(--border);padding:6px 8px;border-radius:var(--r);font-size:13px;outline:none}.data-row input[type=number]:focus{border-color:var(--accent)}.data-row .btn-remove{background:none;border:none;color:#f44336;cursor:pointer;font-size:18px;padding:2px 6px;border-radius:4px}.data-row .btn-remove:hover{background:#f4433626}.options-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:13px}.options-row label{color:var(--muted);display:flex;align-items:center;gap:6px}.options-row select{background:var(--bg3);color:var(--text);border:1px solid var(--border);padding:4px 8px;border-radius:var(--r)}.canvas-body{padding:16px;align-items:center;justify-content:center}#chartCanvas{max-width:100%;max-height:100%;border-radius:var(--r);background:var(--bg)}@media(max-width:768px){.layout-center{flex-direction:column}.editor-panel{width:100%;border-right:none;border-bottom:1px solid var(--border)}.canvas-body{min-height:300px}}.flex-row{display:flex}.panel-hdr-actions{align-items:center}.gap-2{gap:8px}
