.app{display:grid;grid-template-columns:320px 1fr 360px;height:100%}.panel{padding:12px;border-right:1px solid #e7e7e7;overflow:auto}.right{border-right:none;border-left:1px solid #e7e7e7}.h1{font-size:16px;font-weight:700;margin:0 0 10px}.small{font-size:12px;color:#555}.hr{height:1px;background:#eee;margin:12px 0}.row{display:flex;gap:8px;align-items:center;margin:8px 0}.row>*{flex:1}.btn{padding:8px 10px;border:1px solid #ddd;background:#fff;border-radius:10px;cursor:pointer}.btn.active{border-color:#333}.input{width:100%;padding:8px 10px;border:1px solid #ddd;border-radius:10px}.list{display:grid;gap:6px}.item{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;border:1px solid #eee;border-radius:10px;cursor:pointer}.item.selected{border-color:#333}.canvasWrap{position:relative;overflow:hidden}.hint{position:absolute;left:10px;top:10px;background:#ffffffe6;border:1px solid #eee;border-radius:12px;padding:8px 10px;font-size:12px}code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.modalBackdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000004d;display:flex;align-items:center;justify-content:center;z-index:1000}.modal{background:#fff;border:1px solid #ddd;border-radius:12px;padding:12px;max-width:860px;width:calc(100% - 40px);box-shadow:0 10px 30px #0003}.modalFooter{display:flex;justify-content:flex-end;gap:8px;margin-top:10px}
