:root,[data-theme=dark]{--bg-primary: #13151a;--bg-secondary: #1a1d24;--bg-tertiary: #22262e;--bg-hover: #2a2e38;--bg-active: #323742;--bg-panel: rgba(26, 29, 36, .97);--bg-input: #1e2128;--text-primary: #e8e8ec;--text-secondary: #a0a4b0;--text-tertiary: #62666f;--text-muted: #3e424a;--accent: #7c5cfc;--accent-hover: #8f72ff;--accent-soft: rgba(124, 92, 252, .14);--border: #2a2e38;--border-light: #22262e;--shadow-sm: 0 1px 3px rgba(0,0,0,.3);--shadow-md: 0 4px 16px rgba(0,0,0,.4);--shadow-lg: 0 8px 32px rgba(0,0,0,.5);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--preview-bg: #0f1115;--paper-dash: #ccc;--scrollbar-thumb: #3a3e48}[data-theme=light]{--bg-primary: #f5f5f7;--bg-secondary: #ffffff;--bg-tertiary: #f0f0f2;--bg-hover: #e8e8ec;--bg-active: #dddde2;--bg-panel: rgba(255, 255, 255, .97);--bg-input: #f5f5f7;--text-primary: #1a1a2e;--text-secondary: #5a5a6e;--text-tertiary: #8a8a9a;--text-muted: #b8b8c4;--accent: #7c5cfc;--accent-hover: #6a48e8;--accent-soft: rgba(124, 92, 252, .1);--border: #e4e4e8;--border-light: #efefef;--shadow-sm: 0 1px 3px rgba(0,0,0,.06);--shadow-md: 0 4px 16px rgba(0,0,0,.08);--shadow-lg: 0 8px 32px rgba(0,0,0,.12);--preview-bg: #e8e8ec;--paper-dash: #d0d0d0;--scrollbar-thumb: #c8c8d0}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#app{width:100%;height:100%;overflow:hidden;overscroll-behavior:none}body{font-family:Inter,PingFang SC,Microsoft YaHei,-apple-system,sans-serif;background:var(--bg-primary);color:var(--text-primary);transition:background .3s ease,color .3s ease;-webkit-font-smoothing:antialiased}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:4px}.fade-enter-active,.fade-leave-active{transition:opacity .2s ease,transform .2s ease}.fade-enter-from,.fade-leave-to{opacity:0;transform:translate(8px)}.prop-panel[data-v-94509c1a]{width:260px;height:100%;background:var(--bg-secondary);border-right:1px solid var(--border);flex-shrink:0;display:flex;flex-direction:column;overflow:hidden}.panel-scroll[data-v-94509c1a]{flex:1;overflow-y:auto;padding:0 0 20px;min-height:0}.section[data-v-94509c1a]{border-bottom:1px solid var(--border-light)}.sec-hd[data-v-94509c1a]{display:flex;align-items:center;gap:6px;width:100%;padding:10px 16px;border:none;background:transparent;font-size:12px;font-weight:600;color:var(--text-secondary);cursor:pointer;letter-spacing:.04em;transition:color .15s}.sec-hd[data-v-94509c1a]:hover{color:var(--text-primary)}.sec-body[data-v-94509c1a]{padding:4px 16px 14px;display:flex;flex-direction:column;gap:10px}.sub-label[data-v-94509c1a]{font-size:11px;color:var(--text-tertiary);font-weight:600;margin-top:4px}.field[data-v-94509c1a]{display:flex;flex-direction:column;gap:5px}.field label[data-v-94509c1a]{font-size:11px;color:var(--text-tertiary);font-weight:500}.inp[data-v-94509c1a]{width:100%;padding:7px 10px;font-size:12px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);outline:none}.inp[data-v-94509c1a]:focus{border-color:var(--accent)}.sel[data-v-94509c1a]{width:100%;padding:7px 10px;font-size:12px;background:var(--bg-input);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);outline:none;cursor:pointer;appearance:none}.sel[data-v-94509c1a]:focus{border-color:var(--accent)}.color-row[data-v-94509c1a]{display:flex;align-items:center;gap:8px}.cpick[data-v-94509c1a]{width:32px;height:28px;border:1px solid var(--border);border-radius:4px;cursor:pointer;padding:0;background:transparent}.cpick[data-v-94509c1a]::-webkit-color-swatch-wrapper{padding:2px}.cpick[data-v-94509c1a]::-webkit-color-swatch{border:none;border-radius:2px}.hex[data-v-94509c1a]{font-size:11px;color:var(--text-tertiary);font-family:monospace}.slider[data-v-94509c1a]{width:100%;height:3px;border-radius:3px;appearance:none;background:var(--border);outline:none;cursor:pointer}.slider[data-v-94509c1a]::-webkit-slider-thumb{appearance:none;width:14px;height:14px;border-radius:50%;background:var(--accent);cursor:pointer;box-shadow:0 1px 4px #0003}.row-2col[data-v-94509c1a]{display:grid;grid-template-columns:1fr 1fr;gap:8px}.cm-input-wrap[data-v-94509c1a]{display:flex;align-items:center;gap:2px}.cm-input[data-v-94509c1a]{width:100%;min-width:0;padding:4px 6px;font-size:12px;border:1px solid var(--border);border-radius:4px;background:var(--bg-tertiary);color:var(--text-primary)}.cm-input[data-v-94509c1a]:focus{border-color:var(--accent);outline:none}.cm-unit[data-v-94509c1a]{font-size:10px;color:var(--text-tertiary);flex-shrink:0}.btn-group[data-v-94509c1a]{display:flex;gap:4px}.bg-btn[data-v-94509c1a]{flex:1;padding:5px 0;font-size:11px;font-weight:500;border:1px solid var(--border);background:transparent;color:var(--text-secondary);border-radius:4px;cursor:pointer;transition:all .15s}.bg-btn.active[data-v-94509c1a]{background:var(--accent);color:#fff;border-color:var(--accent)}.bg-btn[data-v-94509c1a]:hover:not(.active){border-color:var(--accent);color:var(--accent)}.toggle-row[data-v-94509c1a]{display:flex;align-items:center;justify-content:space-between}.row-label[data-v-94509c1a]{font-size:12px;color:var(--text-secondary)}.tgl[data-v-94509c1a]{width:36px;height:20px;border:none;border-radius:10px;background:var(--border);cursor:pointer;position:relative;padding:0;transition:background .2s}.tgl.on[data-v-94509c1a]{background:var(--accent)}.tgl-knob[data-v-94509c1a]{position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform .2s;box-shadow:0 1px 3px #0003}.tgl.on .tgl-knob[data-v-94509c1a]{transform:translate(16px)}.tgl-mini[data-v-94509c1a]{width:28px;height:14px;border:none;border-radius:8px;background:var(--border);cursor:pointer;position:relative;padding:0;transition:background .2s;flex-shrink:0}.tgl-mini.on[data-v-94509c1a]{background:var(--accent)}.tgl-mini-knob[data-v-94509c1a]{position:absolute;top:2px;left:2px;width:10px;height:10px;border-radius:50%;background:#fff;transition:transform .2s}.tgl-mini.on .tgl-mini-knob[data-v-94509c1a]{transform:translate(14px)}.upload-btn[data-v-94509c1a]{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:8px 0;font-size:12px;font-weight:500;border:1px dashed var(--border);background:transparent;color:var(--text-secondary);border-radius:var(--radius-sm);cursor:pointer;transition:all .15s}.upload-btn[data-v-94509c1a]:hover{border-color:var(--accent);color:var(--accent)}.del-bg-btn[data-v-94509c1a]{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:6px 0;font-size:11px;font-weight:500;border:1px solid #e55;background:transparent;color:#e55;border-radius:var(--radius-sm);cursor:pointer;transition:all .15s}.del-bg-btn[data-v-94509c1a]:hover{background:#ee55551a}.preview-area[data-v-0211afa2]{flex:1;display:flex;flex-direction:column;background:var(--preview-bg);overflow:hidden;min-width:0;min-height:0;position:relative}.preview-canvas[data-v-0211afa2]{flex:1;display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative;min-height:0}.preview-canvas.panning[data-v-0211afa2]{user-select:none}.paper-wrap[data-v-0211afa2]{position:relative;filter:drop-shadow(0 6px 32px rgba(0,0,0,.4));display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform .05s linear;overflow:visible}.paper[data-v-0211afa2]{position:relative;overflow:visible;transition:width .15s,height .15s}.paper-clip[data-v-0211afa2]{position:absolute;inset:0;overflow:visible;pointer-events:none}.zoom-bar[data-v-0211afa2]{display:flex;align-items:center;gap:6px;padding:4px 10px;border-bottom:1px solid var(--border);background:var(--bg-secondary);flex-shrink:0;height:36px;overflow:hidden;min-width:0}.zoom-label[data-v-0211afa2]{font-size:12px;color:var(--text-muted);flex-shrink:0}.zoom-slider[data-v-0211afa2]{flex:1;min-width:0;max-width:120px;height:4px;appearance:none;-webkit-appearance:none;background:var(--border);border-radius:2px;outline:none;cursor:pointer}.zoom-slider[data-v-0211afa2]::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:var(--accent);cursor:pointer;border:2px solid #fff;box-shadow:0 1px 3px #0000004d}.zoom-slider[data-v-0211afa2]::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:var(--accent);cursor:pointer;border:2px solid #fff;box-shadow:0 1px 3px #0000004d}.zoom-pct[data-v-0211afa2]{font-size:13px;font-weight:600;min-width:36px;text-align:center;color:var(--text);font-variant-numeric:tabular-nums}.zoom-fit-btn[data-v-0211afa2]{border:none;background:var(--hover);color:var(--text);cursor:pointer;font-size:12px;border-radius:4px;padding:3px 10px;height:24px;flex-shrink:0}.zoom-fit-btn[data-v-0211afa2]:hover{background:var(--accent);color:#fff}.ruler-toggle[data-v-0211afa2]{display:flex;align-items:center;gap:6px;margin-left:8px}.ruler-label[data-v-0211afa2]{font-size:11px;color:var(--text-muted)}.tgl-mini[data-v-0211afa2]{width:30px;height:16px;border:none;border-radius:8px;background:var(--border);cursor:pointer;position:relative;padding:0;transition:background .2s;flex:none}.tgl-mini.on[data-v-0211afa2]{background:var(--accent)}.tgl-mini-knob[data-v-0211afa2]{position:absolute;top:2px;left:2px;width:12px;height:12px;border-radius:50%;background:#fff;transition:transform .2s;box-shadow:0 1px 2px #0003}.tgl-mini.on .tgl-mini-knob[data-v-0211afa2]{transform:translate(14px)}.ruler[data-v-0211afa2]{position:absolute;z-index:30;cursor:move}.ruler-x[data-v-0211afa2],.ruler-y[data-v-0211afa2]{border-radius:2px}.ruler-svg[data-v-0211afa2]{display:block}.ruler-origin[data-v-0211afa2]{position:absolute;z-index:32;cursor:move;background:transparent;border:none;display:flex;align-items:center;justify-content:center}.origin-cross-svg[data-v-0211afa2]{display:block}.dist-label[data-v-0211afa2]{position:absolute;z-index:35;pointer-events:none;font-size:10px;font-family:monospace;font-weight:600;color:#ff3030;background:#000000b3;padding:2px 6px;border-radius:3px;white-space:nowrap;transform:translateY(-50%)}.dist-left[data-v-0211afa2]{left:2px}.dist-right[data-v-0211afa2]{right:2px}.dist-top[data-v-0211afa2]{top:2px;transform:translate(-50%)}.dist-bottom[data-v-0211afa2]{bottom:2px;transform:translate(-50%)}.minimap[data-v-0211afa2]{position:absolute;top:8px;right:8px;z-index:50;background:#1e1e1ecc;border:1px solid var(--border);border-radius:6px;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(6px);box-shadow:0 2px 12px #0000004d;overflow:hidden}.map-paper[data-v-0211afa2]{position:relative;background:#ffffff14;border:1px solid rgba(255,255,255,.15);border-radius:2px}.map-viewport[data-v-0211afa2]{position:absolute;border:1.5px solid var(--accent);background:#6366f126;cursor:grab;border-radius:1px;transition:background .1s}.map-viewport[data-v-0211afa2]:hover{background:#6366f140}.map-viewport[data-v-0211afa2]:active{cursor:grabbing}.pan-hint[data-v-0211afa2]{position:absolute;bottom:20px;left:50%;transform:translate(-50%);background:#000000bf;color:#fff;padding:8px 16px;border-radius:8px;font-size:13px;display:flex;align-items:center;gap:6px;pointer-events:none;z-index:100;backdrop-filter:blur(4px);box-shadow:0 4px 12px #0000004d}.hint-enter-active[data-v-0211afa2],.hint-leave-active[data-v-0211afa2]{transition:all .3s ease}.hint-enter-from[data-v-0211afa2],.hint-leave-to[data-v-0211afa2]{opacity:0;transform:translate(-50%) translateY(10px)}.bg-wrap[data-v-0211afa2]{position:absolute;z-index:0;pointer-events:auto;cursor:default}.bg-wrap.editable[data-v-0211afa2]{cursor:move}.bg-wrap.sel[data-v-0211afa2]{outline:2px solid var(--accent);outline-offset:1px}.bg-img[data-v-0211afa2]{width:100%;height:auto;display:block;pointer-events:none}.bg-img-fill[data-v-0211afa2]{width:100%;height:100%;object-fit:fill}.bg-aspect-toggle[data-v-0211afa2]{position:absolute;bottom:-28px;right:-5px;z-index:21;display:flex;align-items:center;gap:3px;padding:3px 7px;border-radius:4px;background:#1e1e23e0;color:#ddd;font-size:10px;font-weight:500;white-space:nowrap;cursor:pointer;backdrop-filter:blur(4px);transition:background .15s,color .15s;border:1px solid rgba(255,255,255,.12)}.bg-aspect-toggle[data-v-0211afa2]:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.aspect-label[data-v-0211afa2]{line-height:1}.bg-rh[data-v-0211afa2]{position:absolute;bottom:-5px;right:-5px;width:10px;height:10px;background:var(--accent);border-radius:2px;cursor:nwse-resize;border:1px solid #fff;z-index:20}.content-clip[data-v-0211afa2]{z-index:1}.txt[data-v-0211afa2]{z-index:2;pointer-events:none;white-space:pre}.grid-group-item[data-v-0211afa2]{position:absolute;cursor:move;user-select:none}.grid-group-item.sel[data-v-0211afa2]{outline:2px solid var(--accent);outline-offset:2px}.el-item[data-v-0211afa2]{position:absolute;cursor:move;user-select:none}.el-item.sel[data-v-0211afa2]{outline:2px solid var(--accent);outline-offset:1px}.el-img[data-v-0211afa2]{width:100%;height:100%;object-fit:contain;pointer-events:none}.el-text[data-v-0211afa2]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;pointer-events:none;overflow:hidden}.el-svg[data-v-0211afa2]{display:block}.el-del[data-v-0211afa2]{position:absolute;top:-8px;right:-8px;width:20px;height:20px;border-radius:50%;border:1.5px solid #fff;background:#e55;color:#fff;font-size:11px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .15s;z-index:20;padding:0}.el-item:hover .el-del[data-v-0211afa2],.el-item.sel .el-del[data-v-0211afa2]{opacity:1}.bg-del[data-v-0211afa2]{position:absolute;top:6px;right:6px;z-index:20;border:none;background:#dc3232d9;color:#fff;font-size:11px;font-weight:500;padding:3px 10px;border-radius:4px;cursor:pointer;backdrop-filter:blur(2px);transition:background .15s}.bg-del[data-v-0211afa2]:hover{background:#dc3232}.rh[data-v-0211afa2]{position:absolute;bottom:-4px;right:-4px;width:10px;height:10px;background:var(--accent);border-radius:2px;cursor:nwse-resize;border:1px solid #fff}.layer-panel[data-v-92f03e1b]{width:100%;flex:1;min-height:0;background:var(--bg-secondary);border-left:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden}.lp-content[data-v-92f03e1b]{flex:1;display:flex;flex-direction:column;overflow:hidden;min-height:0}.insert-toolbar[data-v-92f03e1b]{display:flex;flex-wrap:wrap;gap:4px;padding:10px;border-bottom:1px solid var(--border)}.ins-btn[data-v-92f03e1b]{display:inline-flex;align-items:center;gap:3px;padding:4px 8px;font-size:11px;font-weight:500;color:var(--text-secondary);background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease;white-space:nowrap}.ins-btn[data-v-92f03e1b]:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.layer-list[data-v-92f03e1b]{flex:1;overflow-y:auto;padding:6px 8px;min-height:0}.layer-row[data-v-92f03e1b]{display:flex;align-items:center;gap:6px;padding:6px 8px;border-radius:var(--radius-sm);cursor:pointer;transition:background .12s;margin-bottom:2px}.layer-row[data-v-92f03e1b]:hover{background:var(--bg-hover)}.layer-row.sel[data-v-92f03e1b]{background:#6366f126}.layer-row.fixed[data-v-92f03e1b]{cursor:default;opacity:.7}.layer-row[data-v-92f03e1b]:not(.fixed){cursor:grab}.layer-row[data-v-92f03e1b]:not(.fixed):active{cursor:grabbing}.layer-row.dragging[data-v-92f03e1b]{opacity:.4}.layer-row.dragOver[data-v-92f03e1b]{border-top:2px solid var(--accent);margin-top:-1px}.drag-handle[data-v-92f03e1b]{color:var(--text-tertiary);flex-shrink:0;opacity:.4;transition:opacity .15s}.layer-row:hover .drag-handle[data-v-92f03e1b]{opacity:1}.type-icon[data-v-92f03e1b]{color:var(--text-tertiary);flex-shrink:0}.primary-star[data-v-92f03e1b]{color:#e74c3c;flex-shrink:0}.vis-btn[data-v-92f03e1b]{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border:none;background:transparent;color:var(--text-tertiary);cursor:pointer;border-radius:3px;flex-shrink:0}.vis-btn[data-v-92f03e1b]:hover{color:var(--text-primary);background:var(--bg-hover)}.layer-name[data-v-92f03e1b]{flex:1;font-size:12px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.layer-name-input[data-v-92f03e1b]{flex:1;min-width:0;font-size:12px;color:var(--text-primary);border:1px solid transparent;border-radius:3px;background:transparent;padding:1px 4px;outline:none;font-family:inherit}.layer-name-input[data-v-92f03e1b]:focus{border-color:var(--accent);background:var(--bg-tertiary)}.layer-name-input[data-v-92f03e1b]:hover{background:var(--bg-hover)}.layer-actions[data-v-92f03e1b]{display:flex;align-items:center;gap:2px;flex-shrink:0}.act-btn[data-v-92f03e1b]{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border:none;background:transparent;color:var(--text-tertiary);cursor:pointer;border-radius:3px}.act-btn[data-v-92f03e1b]:hover{color:var(--text-primary);background:var(--bg-hover)}.act-btn.on[data-v-92f03e1b]{color:var(--accent);background:#6366f11f}.act-btn.del[data-v-92f03e1b]:hover{color:#e55}.fixed-tag[data-v-92f03e1b]{font-size:10px;color:var(--text-tertiary);background:var(--bg-tertiary);padding:1px 5px;border-radius:3px}.prop-editor[data-v-92f03e1b]{border-top:1px solid var(--border);padding:10px 12px;max-height:240px;overflow-y:auto;flex-shrink:0}.prop-title[data-v-92f03e1b]{font-size:12px;font-weight:600;color:var(--text-primary);margin-bottom:8px}.prop-row[data-v-92f03e1b]{display:flex;align-items:center;gap:4px;margin-bottom:6px}.prop-row label[data-v-92f03e1b]{font-size:11px;color:var(--text-secondary);width:24px;text-align:right;flex-shrink:0}.num-input[data-v-92f03e1b]{width:48px;padding:3px 4px;font-size:11px;border:1px solid var(--border);border-radius:3px;background:var(--bg-tertiary);color:var(--text-primary)}.txt-input[data-v-92f03e1b]{flex:1;min-width:0;padding:3px 6px;font-size:11px;border:1px solid var(--border);border-radius:3px;background:var(--bg-tertiary);color:var(--text-primary)}.sel-input[data-v-92f03e1b]{flex:1;min-width:0;padding:3px 4px;font-size:11px;border:1px solid var(--border);border-radius:3px;background:var(--bg-tertiary);color:var(--text-primary)}.clr-input[data-v-92f03e1b]{width:28px;height:22px;padding:0;border:1px solid var(--border);border-radius:3px;background:none;cursor:pointer}.clr-btn[data-v-92f03e1b]{padding:3px 6px;font-size:10px;border:1px solid var(--border);border-radius:3px;background:var(--bg-tertiary);color:var(--text-secondary);cursor:pointer;white-space:nowrap}.clr-btn[data-v-92f03e1b]:hover{color:var(--text-primary)}.grid-props-panel[data-v-aba08278]{width:100%;flex:1;min-height:0;background:var(--bg-secondary);border-left:1px solid var(--border);display:flex;flex-direction:column;overflow:hidden}.gp-content[data-v-aba08278]{flex:1;overflow-y:auto;overflow-x:hidden}.mode-toggle[data-v-aba08278]{display:flex;gap:4px;padding:10px 10px 8px}.mode-btn[data-v-aba08278]{flex:1;padding:5px 0;font-size:11px;font-weight:500;border:1px solid var(--border);background:transparent;color:var(--text-secondary);border-radius:4px;cursor:pointer;transition:all .15s}.mode-btn.active[data-v-aba08278]{background:var(--accent);color:#fff;border-color:var(--accent)}.gp-row[data-v-aba08278]{display:flex;align-items:center;gap:6px;padding:3px 12px;margin-bottom:2px}.gp-label[data-v-aba08278]{font-size:11px;color:var(--text-secondary);flex:1}.gp-row label[data-v-aba08278]{font-size:11px;color:var(--text-secondary);width:36px;text-align:right;flex-shrink:0}.toggle-row[data-v-aba08278]{padding:4px 12px 6px}.tgl[data-v-aba08278]{width:32px;height:18px;border-radius:10px;border:none;background:var(--border);cursor:pointer;position:relative;transition:background .2s;flex-shrink:0}.tgl.on[data-v-aba08278]{background:var(--accent)}.tgl-knob[data-v-aba08278]{position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:#fff;transition:transform .2s}.tgl.on .tgl-knob[data-v-aba08278]{transform:translate(14px)}.gp-info[data-v-aba08278]{font-size:10px;color:var(--text-tertiary);padding:2px 14px 6px}.gp-section[data-v-aba08278]{padding-bottom:6px}.cm-pair[data-v-aba08278]{display:flex;align-items:center;gap:2px}.cm-in[data-v-aba08278]{width:42px;padding:3px 4px;font-size:11px;border:1px solid var(--text-tertiary);border-radius:3px;background:var(--bg-tertiary);color:var(--text-primary);transition:border-color .15s,box-shadow .15s}.cm-in.sm[data-v-aba08278]{width:50px}.cm-in.xs[data-v-aba08278]{width:100%;min-width:0;padding:2px 3px}.cm-in[data-v-aba08278]:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 2px #6366f126}.gap-4col[data-v-aba08278]{display:grid;grid-template-columns:1fr 1fr;gap:2px;flex:1}.gap-item[data-v-aba08278]{display:flex;align-items:center;gap:2px}.gap-item span[data-v-aba08278]{font-size:10px;color:var(--text-tertiary);width:12px;text-align:center;flex-shrink:0}.cm-x[data-v-aba08278],.cm-unit[data-v-aba08278]{font-size:10px;color:var(--text-tertiary)}.btn-pair[data-v-aba08278]{display:flex;gap:3px}.mini-btn[data-v-aba08278]{padding:2px 8px;font-size:10px;border:1px solid var(--border);background:transparent;color:var(--text-secondary);border-radius:3px;cursor:pointer}.mini-btn.on[data-v-aba08278]{background:var(--accent);color:#fff;border-color:var(--accent)}.cpick[data-v-aba08278]{width:24px;height:20px;padding:0;border:1px solid var(--border);border-radius:3px;background:none;cursor:pointer}.hex[data-v-aba08278]{font-size:10px;color:var(--text-tertiary);font-family:monospace}.ml[data-v-aba08278]{margin-left:8px}.add-group-btn[data-v-aba08278]{display:flex;align-items:center;gap:4px;margin:4px 12px 6px;padding:5px 10px;font-size:11px;font-weight:500;border:1px dashed var(--border);background:transparent;color:var(--text-secondary);border-radius:4px;cursor:pointer;width:calc(100% - 24px)}.add-group-btn[data-v-aba08278]:hover{border-color:var(--accent);color:var(--accent)}.group-list[data-v-aba08278]{padding:0 8px 4px}.group-item[data-v-aba08278]{display:flex;align-items:center;gap:5px;padding:4px 6px;border-radius:3px;cursor:pointer;margin-bottom:2px;font-size:11px;color:var(--text-secondary)}.group-item[data-v-aba08278]:hover{background:var(--bg-hover)}.group-item.sel[data-v-aba08278]{background:#6366f126;color:var(--text-primary)}.g-name[data-v-aba08278]{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.g-info[data-v-aba08278]{font-size:10px;color:var(--text-tertiary)}.g-del[data-v-aba08278]{border:none;background:transparent;color:var(--text-tertiary);cursor:pointer;padding:2px}.g-del[data-v-aba08278]:hover{color:#e55}.grid-preview-wrap[data-v-aba08278]{padding:6px 12px;border-top:1px solid var(--border);margin-top:4px}.preview-title[data-v-aba08278]{font-size:10px;color:var(--text-tertiary);margin-bottom:4px;display:flex;align-items:center;justify-content:space-between}.clear-sel-btn[data-v-aba08278]{font-size:10px;color:var(--accent);background:none;border:none;cursor:pointer;padding:0}.clear-sel-btn[data-v-aba08278]:hover{text-decoration:underline}.grid-preview[data-v-aba08278]{display:block}.cell-sel[data-v-aba08278]{fill:#6366f133!important;stroke:var(--accent)!important;stroke-width:1.5!important}.cell-editor[data-v-aba08278]{border-top:1px solid var(--border);padding:6px 12px 10px}.ce-title[data-v-aba08278]{font-size:11px;font-weight:600;color:var(--text-primary);margin-bottom:6px}.ce-row[data-v-aba08278]{display:flex;align-items:center;gap:4px;margin-bottom:4px}.ce-row label[data-v-aba08278]{font-size:10px;color:var(--text-secondary);width:42px;text-align:right;flex-shrink:0}.ce-section[data-v-aba08278]{margin-top:6px;padding-top:4px;border-top:1px dashed var(--border)}.reset-btn[data-v-aba08278]{padding:1px 6px;font-size:10px;border:1px solid var(--border);background:transparent;color:var(--text-tertiary);border-radius:3px;cursor:pointer}.reset-btn[data-v-aba08278]:hover{color:var(--text-primary)}.text-settings[data-v-aba08278]{padding:4px 0 6px;border-top:1px solid var(--border);margin-top:4px}.gp-sub-title[data-v-aba08278]{font-size:11px;font-weight:600;color:var(--text-secondary);padding:4px 12px 2px}.gp-inp[data-v-aba08278]{flex:1;min-width:0;padding:3px 6px;font-size:11px;border:1px solid var(--border);border-radius:3px;background:var(--bg-tertiary);color:var(--text-primary)}.gp-inp[data-v-aba08278]:focus{border-color:var(--accent);outline:none}.textarea[data-v-aba08278]{resize:vertical;min-height:40px;font-family:inherit;line-height:1.4}.gp-sel[data-v-aba08278]{flex:1;min-width:0;padding:3px 4px;font-size:11px;border:1px solid var(--border);border-radius:3px;background:var(--bg-tertiary);color:var(--text-primary);cursor:pointer}.gp-sel[data-v-aba08278]:focus{border-color:var(--accent);outline:none}.tgl-mini[data-v-aba08278]{width:28px;height:14px;border:none;border-radius:8px;background:var(--border);cursor:pointer;position:relative;padding:0;transition:background .2s;flex-shrink:0}.tgl-mini.on[data-v-aba08278]{background:var(--accent)}.tgl-mini-knob[data-v-aba08278]{position:absolute;top:2px;left:2px;width:10px;height:10px;border-radius:50%;background:#fff;transition:transform .2s}.tgl-mini.on .tgl-mini-knob[data-v-aba08278]{transform:translate(14px)}.load-fonts-btn[data-v-aba08278]{display:flex;align-items:center;justify-content:center;gap:4px;flex:1;padding:3px 8px;font-size:10px;font-weight:500;border:1px solid var(--accent);background:transparent;color:var(--accent);border-radius:3px;cursor:pointer;transition:all .15s}.load-fonts-btn[data-v-aba08278]:hover:not(:disabled){background:var(--accent-soft)}.load-fonts-btn[data-v-aba08278]:disabled{opacity:.6;cursor:wait}.spin[data-v-aba08278]{animation:spin-aba08278 1s linear infinite}@keyframes spin-aba08278{to{transform:rotate(360deg)}}.mat-sidebar[data-v-4c9cd56e]{width:80px;height:100%;background:var(--bg-secondary);border-left:1px solid var(--border);flex-shrink:0;display:flex;flex-direction:column;overflow:hidden}.sidebar-header[data-v-4c9cd56e]{padding:16px 12px 12px}.sidebar-title[data-v-4c9cd56e]{font-size:12px;font-weight:600;color:var(--text-secondary);letter-spacing:.04em}.sidebar-body[data-v-4c9cd56e]{flex:1;padding:0 10px 16px;display:flex;flex-direction:column;gap:8px;min-height:0;overflow-y:auto}.mat-btn[data-v-4c9cd56e]{width:100%;padding:10px 0;font-size:12px;font-weight:500;color:var(--text-secondary);background:var(--bg-tertiary);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease;letter-spacing:.04em}.mat-btn[data-v-4c9cd56e]:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--text-tertiary)}.app-container[data-v-e8581434]{display:flex;flex-direction:column;width:100%;height:100%;overflow:hidden}.app-header[data-v-e8581434]{display:flex;align-items:center;justify-content:space-between;height:52px;padding:0 20px;background:var(--bg-secondary);border-bottom:1px solid var(--border);flex-shrink:0}.header-left[data-v-e8581434]{display:flex;align-items:center;gap:8px}.app-logo[data-v-e8581434]{width:24px;height:24px;border-radius:4px}.app-title[data-v-e8581434]{font-size:15px;font-weight:700;color:var(--text-primary);letter-spacing:.02em}.header-right[data-v-e8581434]{display:flex;align-items:center;gap:8px}.btn[data-v-e8581434]{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;font-size:13px;font-weight:500;border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease;border:1px solid transparent;white-space:nowrap}.btn-ghost[data-v-e8581434]{background:transparent;color:var(--text-secondary);border-color:var(--border)}.btn-ghost[data-v-e8581434]:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--text-tertiary)}.btn-primary[data-v-e8581434]{background:var(--accent);color:#fff;border-color:var(--accent)}.btn-primary[data-v-e8581434]:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.btn-icon[data-v-e8581434]{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border:none;background:transparent;color:var(--text-tertiary);border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease}.btn-icon[data-v-e8581434]:hover{background:var(--bg-hover);color:var(--text-primary)}.app-body[data-v-e8581434]{display:flex;flex:1;overflow:hidden;min-height:0}.right-sidebar[data-v-e8581434]{display:flex;flex-direction:column;flex-shrink:0;min-height:0;overflow:hidden}.sidebar-tabs[data-v-e8581434]{display:flex;flex-shrink:0;border-bottom:1px solid var(--border)}.sidebar-tab[data-v-e8581434]{flex:1;padding:10px 0;font-size:12px;font-weight:500;border:none;background:transparent;color:var(--text-tertiary);cursor:pointer;transition:all .15s;border-bottom:2px solid transparent}.sidebar-tab[data-v-e8581434]:hover{color:var(--text-primary);background:var(--bg-hover)}.sidebar-tab.active[data-v-e8581434]{color:var(--accent);border-bottom-color:var(--accent)}.resize-handle[data-v-e8581434]{display:flex;flex-direction:column;align-items:center;justify-content:center;width:6px;flex-shrink:0;cursor:col-resize;background:var(--border);transition:background .15s;gap:1px;color:var(--text-tertiary)}.resize-handle[data-v-e8581434]:hover{background:var(--accent);color:#fff}.resize-handle[data-v-e8581434]:active{background:var(--accent-hover)}.pdf-modal-overlay[data-v-e8581434]{position:fixed;inset:0;z-index:9999;background:#00000080;display:flex;align-items:center;justify-content:center}.pdf-modal[data-v-e8581434]{background:var(--bg-secondary);border-radius:var(--radius-md);box-shadow:0 8px 32px #0000004d;display:flex;flex-direction:column;max-width:90vw;max-height:90vh;overflow:hidden}.pdf-modal-header[data-v-e8581434]{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border);flex-shrink:0}.pdf-modal-title[data-v-e8581434]{font-size:14px;font-weight:600;color:var(--text-primary)}.pdf-modal-close[data-v-e8581434]{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:transparent;color:var(--text-tertiary);cursor:pointer;border-radius:var(--radius-sm)}.pdf-modal-close[data-v-e8581434]:hover{background:var(--bg-hover);color:var(--text-primary)}.pdf-modal-body[data-v-e8581434]{flex:1;overflow:auto;padding:16px;display:flex;align-items:center;justify-content:center;background:var(--bg-tertiary);min-height:200px}.pdf-preview-img[data-v-e8581434]{max-width:100%;max-height:70vh;object-fit:contain;box-shadow:0 2px 12px #00000026}.pdf-modal-footer[data-v-e8581434]{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:12px 16px;border-top:1px solid var(--border);flex-shrink:0}.save-modal[data-v-e8581434]{background:var(--bg-secondary);border-radius:var(--radius-md);box-shadow:0 8px 32px #0000004d;display:flex;flex-direction:column;width:380px;max-width:90vw}.save-modal-body[data-v-e8581434]{padding:16px;display:flex;flex-direction:column;gap:8px}.save-label[data-v-e8581434]{font-size:13px;color:var(--text-secondary);font-weight:500}.save-input-wrap[data-v-e8581434]{display:flex;align-items:center;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-primary);overflow:hidden}.save-input-wrap[data-v-e8581434]:focus-within{border-color:var(--accent)}.save-input[data-v-e8581434]{flex:1;border:none;outline:none;padding:8px 10px;font-size:14px;background:transparent;color:var(--text-primary)}.save-ext[data-v-e8581434]{padding:0 10px;font-size:14px;color:var(--text-tertiary);flex-shrink:0;user-select:none}.save-path-wrap[data-v-e8581434]{display:flex;align-items:center;gap:8px}.save-path-btn[data-v-e8581434]{flex-shrink:0;padding:6px 10px}.save-path-name[data-v-e8581434]{flex:1;font-size:13px;color:var(--text-tertiary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.save-tip[data-v-e8581434]{font-size:12px;color:var(--text-tertiary);margin:0}
