*{box-sizing:border-box}body{margin:0;color:#253149;background:#f4f6f9;font:13px/1.5 Microsoft YaHei,sans-serif}button,input,select,textarea{font:inherit;color:inherit}button{border:1px solid #dce1e9;background:#fff;padding:6px 10px;border-radius:3px;cursor:pointer;white-space:nowrap}button:hover{background:#edf2fc;border-color:#a4b8eb}button:disabled{opacity:.4;cursor:default}button.active,button.primary{color:#fff;background:#315dcc;border-color:#315dcc}input,select,textarea{width:100%;min-width:0;border:1px solid #dce1e9;border-radius:2px;background:#fff;padding:5px 6px}input:focus,textarea:focus,button:focus-visible,select:focus{outline:2px solid #9ab3f4;outline-offset:1px}input[type=color]{height:32px;padding:2px}label{display:grid;gap:4px;font-size:12px}h2{font-size:13px;margin:0 0 12px}.editor{height:100dvh;min-height:500px;display:flex;flex-direction:column}.header{display:flex;align-items:center;gap:16px;background:#fff;padding:12px 16px;border-bottom:1px solid #dce1e9;flex-wrap:wrap}.header strong{font-size:17px}#filename{color:#65718a;overflow:hidden;text-overflow:ellipsis;max-width:240px;white-space:nowrap}.actions{display:flex;gap:6px;margin-left:auto;flex-wrap:wrap}.toolbar{display:flex;align-items:center;gap:5px;padding:9px 12px;border-bottom:1px solid #dce1e9;background:#fff;flex-wrap:wrap}.toolbar label{display:flex;align-items:center;gap:5px}.toolbar input{width:84px}.toolbar input[type=number]{width:55px}.divider{height:24px;width:1px;background:#dce1e9;margin:0 5px}.workspace{display:grid;grid-template-columns:210px minmax(280px,1fr) 260px;flex:1;min-height:0}.layers-panel,.properties-panel{background:#fff;overflow:auto;padding:12px}.layers-panel{border-right:1px solid #dce1e9}.properties-panel{border-left:1px solid #dce1e9}.button-grid{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin:8px 0}.button-grid button{padding:5px}.layers{margin-top:14px}.layer{display:flex;align-items:center;gap:3px;margin-bottom:4px;border:1px solid transparent;padding:3px}.layer.selected{background:#e9efff;border-color:#c5d4fa}.layer-name{overflow:hidden;text-overflow:ellipsis;flex:1;text-align:left;border:0;background:transparent;padding:3px}.layer-toggle{padding:2px 4px;font-size:11px}.layer-indent{color:#9ba5b7}.canvas-panel{display:flex;flex-direction:column;min-height:0;min-width:0}.canvas-bar,.canvas-footer{display:flex;justify-content:space-between;align-items:center;gap:6px;padding:8px 12px;font-size:11px;background:#f9fafc}.canvas-bar{flex-wrap:wrap;border-bottom:1px solid #dce1e9}.canvas-bar button{font-size:11px;padding:3px 6px}#zoom{display:inline-block;min-width:45px;text-align:center}.stage-host{flex:1;overflow:hidden;min-height:100px;touch-action:none;user-select:none;background:#e8ebf1}.stage-host.dragover{outline:3px solid #315dcc;outline-offset:-3px}.canvas-footer{border-top:1px solid #dce1e9;flex-wrap:wrap}details{border-bottom:1px solid #dce1e9;padding-bottom:12px;margin-bottom:12px}summary{font-weight:600;cursor:pointer;padding-bottom:9px}details>label,#properties>label{margin-bottom:8px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px}.inline-field{display:flex;align-items:end;gap:6px;margin:8px 0}.muted{color:#738098;font-size:12px}.status{padding:6px 14px;border-top:1px solid #dce1e9;background:#fff;min-height:32px}.status.error{color:#b52727;background:#fff4f3}dialog{width:min(900px,92vw);border:1px solid #dce1e9;padding:18px;border-radius:3px;box-shadow:0 8px 45px #18284330}dialog::backdrop{background:#13203966}.dialog-header,.dialog-footer{display:flex;justify-content:space-between;align-items:center;gap:12px}.dialog-header{margin-bottom:14px}.dialog-footer{margin-top:12px}#source{height:60vh;resize:vertical;font-family:Consolas,monospace;tab-size:4;white-space:pre}#export-dialog{width:360px}@media (max-width: 1000px){.workspace{grid-template-columns:155px minmax(250px,1fr) 220px}.layers-panel,.properties-panel{padding:8px}.header{gap:8px}.actions{margin-left:0}}@media (max-width: 720px){.workspace{grid-template-columns:135px minmax(250px,1fr) 210px;overflow-x:auto}.toolbar{max-height:110px;overflow:auto}.header{padding:8px}.actions button{font-size:12px;padding:4px 6px}}
