@charset "UTF-8";.icon[data-v-1be11e1a]{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;color:#333}.connector-icon[data-v-56cbe16f]{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;color:var(--icon-color, currentColor)}.connector-editor[data-v-3451594b]{padding:8px;border-top:1px solid var(--border);margin-top:8px}.action-bar[data-v-3451594b]{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.action-button[data-v-3451594b]{padding:4px 10px;background:var(--surface);border:1px solid var(--border);color:var(--text-secondary);border-radius:4px;font-size:12px;cursor:pointer}.action-button[data-v-3451594b]:hover:not(:disabled){background:var(--control-button-hover);color:var(--text)}.action-button[data-v-3451594b]:disabled{opacity:.4;cursor:not-allowed}.icon[data-v-12dcac6f]{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;color:#333}.icon[data-v-714e9bd7]{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;color:currentColor}.image-dom-img[data-v-b8e6a8c4]{pointer-events:none}.image-dom-placeholder[data-v-b8e6a8c4]{display:flex;align-items:center;justify-content:center;width:100%;height:100%;padding:4px;box-sizing:border-box;background:var(--surface);color:var(--text-secondary);font-family:Arial,sans-serif;font-size:14px;text-align:center;overflow:hidden;word-break:break-all}.icon[data-v-5a7187cc]{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;color:#333}.naive-button-icon[data-v-ce1a1324]{width:32px;height:32px;display:flex;align-items:center;justify-content:center}.button[data-v-ce1a1324]{width:24px;height:16px;background-color:#1890ff;border-radius:4px;display:flex;align-items:center;justify-content:center}.button span[data-v-ce1a1324]{color:#fff;font-size:10px;font-weight:700}.icon[data-v-c9080e28]{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;color:#333}.textbox-icon[data-v-3842482e]{display:flex;align-items:center;justify-content:center;width:100%;height:100%}svg[data-v-3842482e]{width:24px;height:24px;color:#409eff}.event-panel-graphic[data-v-b5be805a]{font-family:Arial,sans-serif}.event-panel-scroll[data-v-b5be805a]{width:100%;height:100%;overflow:auto}.event-panel-status[data-v-b5be805a]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--text-tertiary, #999999)}.event-panel-error[data-v-b5be805a]{color:var(--status-error, #d03050)}.event-panel-table th[data-v-b5be805a],.event-panel-table td[data-v-b5be805a]{padding:2px 6px;text-align:left;white-space:nowrap}.event-panel-table th[data-v-b5be805a]{font-weight:600;color:var(--text-secondary, #666666)}.mono[data-v-b5be805a]{font-variant-numeric:tabular-nums}.text-secondary[data-v-b5be805a]{color:var(--text-secondary, #666666)}.badge-event-type[data-v-b5be805a],.badge-status[data-v-b5be805a]{display:inline-block;padding:1px 6px;border-radius:3px;font-size:11px;line-height:1.5}.event-type-device[data-v-b5be805a]{background:#1a73e81f;color:#1a73e8}.event-type-project[data-v-b5be805a]{background:#2e7d321f;color:#2e7d32}.event-type-alarm[data-v-b5be805a]{background:#d32f2f1f;color:#d32f2f}.event-type-plugin[data-v-b5be805a]{background:#7b1fa21f;color:#7b1fa2}.event-type-config[data-v-b5be805a]{background:#f57c001f;color:#ef6c00}.event-type-other[data-v-b5be805a]{background:#7575751f;color:#757575}.status-emitted[data-v-b5be805a]{background:#2196f31f;color:#2196f3}.status-processing[data-v-b5be805a]{background:#ff98001f;color:#ff9800}.status-processed[data-v-b5be805a]{background:#4caf501f;color:#4caf50}.status-partial[data-v-b5be805a]{background:#ffc1071f;color:#f9a825}.status-failed[data-v-b5be805a]{background:#f443361f;color:#f44336}.status-no_subscribers[data-v-b5be805a]{background:#9e9e9e1f;color:#9e9e9e}.ratio-success[data-v-b5be805a]{color:#4caf50;font-weight:600}.ratio-partial[data-v-b5be805a]{color:#f9a825;font-weight:600}.ratio-failed[data-v-b5be805a]{color:#f44336;font-weight:600}.event-panel-config[data-v-bf696bd4]{display:flex;flex-direction:column;gap:8px}.filter-section[data-v-bf696bd4]{padding:8px 0;border-bottom:1px solid var(--border, #dddddd);display:flex;flex-direction:column;gap:8px}.filter-item[data-v-bf696bd4]{display:flex;flex-direction:column;gap:4px}.filter-label[data-v-bf696bd4]{font-size:11px;font-weight:600;color:var(--text-secondary, #666666);text-transform:uppercase;letter-spacing:.5px}.filter-select[data-v-bf696bd4]{height:28px;padding:0 6px;font-size:12px;border:1px solid var(--border, #dddddd);border-radius:4px;background:var(--surface, #ffffff);color:var(--text);box-sizing:border-box}.video-player[data-v-71828f43]{position:relative;width:100%;height:100%;background:#000;overflow:hidden}.video-player-el[data-v-71828f43]{width:100%;height:100%;display:block}.video-player-status[data-v-71828f43],.video-player-hint[data-v-71828f43]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--text-tertiary, #999999)}.video-player-status[data-v-71828f43]{pointer-events:none}.hikvision-video-graphic[data-v-38ff9343]{font-family:Arial,sans-serif}.video-slot[data-v-38ff9343]{position:relative;width:100%;height:100%;background:#000;overflow:hidden}.video-slot-placeholder[data-v-38ff9343]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--text-tertiary, #999999)}.hikvision-video-config[data-v-667b0048]{display:flex;flex-direction:column;gap:8px}.channels-section[data-v-667b0048]{padding:8px 0;border-bottom:1px solid var(--border, #dddddd)}.section-title[data-v-667b0048]{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px;font-size:11px;font-weight:600;color:var(--text-secondary, #666666);text-transform:uppercase;letter-spacing:.5px}.channels-empty[data-v-667b0048]{padding:12px 0;font-size:12px;color:var(--text-tertiary, #999999);text-align:center}.channel-item[data-v-667b0048]{padding:8px;margin-bottom:8px;border:1px solid var(--border, #dddddd);border-radius:4px}.channel-row[data-v-667b0048]{display:flex;align-items:center;gap:6px;margin-bottom:6px}.channel-row[data-v-667b0048]:last-child{margin-bottom:0}.channel-input[data-v-667b0048]{height:28px;padding:0 6px;font-size:12px;border:1px solid var(--border, #dddddd);border-radius:4px;background:var(--surface, #ffffff);color:var(--text);box-sizing:border-box}.channel-name[data-v-667b0048]{flex:1;min-width:0}.channel-protocol[data-v-667b0048]{width:96px;flex-shrink:0}.channel-url[data-v-667b0048]{width:100%}.channel-cred[data-v-667b0048]{width:50%}.channel-enabled[data-v-667b0048]{flex:1;display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--text)}.bind-btn[data-v-667b0048]{padding:4px 10px;font-size:12px;border:1px solid var(--border, #dddddd);border-radius:4px;background:var(--surface, #ffffff);color:var(--text);cursor:pointer}.bind-btn[data-v-667b0048]:hover{background:var(--background, #f5f5f5)}.move-btn[data-v-667b0048],.delete-btn[data-v-667b0048]{width:26px;height:26px;border:1px solid var(--border, #dddddd);border-radius:4px;background:var(--surface, #ffffff);color:var(--text-secondary, #666666);cursor:pointer;font-size:13px}.move-btn[data-v-667b0048]:disabled{opacity:.4;cursor:not-allowed}.delete-btn[data-v-667b0048]{color:var(--status-error, #d03050)}.history-trend-graphic[data-v-43424546]{position:relative;font-family:Arial,sans-serif}.query-bar[data-v-43424546]{display:flex;align-items:center;gap:6px;padding:4px 6px;flex-shrink:0;border-bottom:1px solid var(--border, #dddddd);background:transparent}.query-select[data-v-43424546]{height:24px;padding:2px 6px;box-sizing:border-box;font-size:11px;border:1px solid var(--border, #dddddd);border-radius:4px;background:var(--surface, #ffffff);color:var(--text, #333333)}.query-bar[data-v-43424546] .trp-select,.query-bar[data-v-43424546] .trp-trigger{height:24px;box-sizing:border-box}.trend-chart[data-v-43424546]{flex:1;min-height:0}.empty-hint[data-v-43424546]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--text-tertiary, #999999)}.history-trend-config[data-v-fdf53a54]{display:flex;flex-direction:column;gap:8px}.series-style[data-v-fdf53a54]{border:1px solid var(--border, #dddddd);border-radius:4px}.series-style summary[data-v-fdf53a54]{display:flex;align-items:center;gap:6px;padding:6px 8px;cursor:pointer;font-size:13px;font-weight:600;color:var(--text, #333333);list-style:none}.series-style summary[data-v-fdf53a54]::-webkit-details-marker{display:none}.series-dot[data-v-fdf53a54]{width:10px;height:10px;border-radius:50%;flex-shrink:0}.series-name[data-v-fdf53a54]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.style-grid[data-v-fdf53a54]{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:8px;border-top:1px solid var(--border, #dddddd)}.field[data-v-fdf53a54]{display:flex;flex-direction:column;gap:3px;font-size:12px}.field--inline[data-v-fdf53a54]{flex-direction:row;align-items:center;gap:6px}.field-label[data-v-fdf53a54]{color:var(--text-secondary, #666666);font-size:11px}.field input[type=number][data-v-fdf53a54],.field input[type=color][data-v-fdf53a54],.field select[data-v-fdf53a54]{width:100%;height:26px;padding:2px 6px;box-sizing:border-box;font-size:12px;border:1px solid var(--border, #dddddd);border-radius:4px;background:var(--surface, #ffffff);color:var(--text, #333333)}.field input[type=color][data-v-fdf53a54]{padding:1px 2px}.field input[type=checkbox][data-v-fdf53a54]{margin:0;flex-shrink:0}.navigation-button-graphic[data-v-f49c7308]{width:100%;height:100%;display:block;cursor:pointer}.param-panel-root[data-v-b01c84a3]{min-width:0;min-height:0}.param-panel-title[data-v-b01c84a3]{line-height:1.4}.param-panel-row[data-v-b01c84a3]{display:flex;align-items:center;gap:6px;padding:0 8px;box-sizing:border-box}.param-panel-name[data-v-b01c84a3]{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.param-panel-col-divider[data-v-b01c84a3]{align-self:stretch;flex-shrink:0}.param-panel-value[data-v-b01c84a3]{font-weight:600;white-space:nowrap}.param-panel-unit[data-v-b01c84a3]{white-space:nowrap;opacity:.8}.param-panel-config[data-v-4997a9ef]{display:flex;flex-direction:column;gap:8px}.state-variable-graphic[data-v-ffed50c8]{display:flex;align-items:center;justify-content:center;font-family:Arial,sans-serif}.state-variable-image[data-v-ffed50c8]{display:block}.state-variable-placeholder[data-v-ffed50c8]{font-size:12px;color:var(--text-tertiary, #999999)}.state-variable-config[data-v-bead516f]{display:flex;flex-direction:column;gap:8px}.bind-section[data-v-bead516f],.states-section[data-v-bead516f],.default-section[data-v-bead516f]{padding:8px 0;border-bottom:1px solid var(--border, #dddddd)}.section-title[data-v-bead516f]{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px;font-size:11px;font-weight:600;color:var(--text-secondary, #666666);text-transform:uppercase;letter-spacing:.5px}.bind-row[data-v-bead516f]{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.bind-value[data-v-bead516f]{flex:1;min-width:0;font-size:13px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bind-btn[data-v-bead516f]{padding:4px 10px;font-size:12px;border:1px solid var(--border, #dddddd);border-radius:4px;background:var(--surface, #ffffff);color:var(--text);cursor:pointer}.bind-btn[data-v-bead516f]:hover{background:var(--background, #f5f5f5)}.bind-btn--clear[data-v-bead516f]{color:var(--status-error, #d03050)}.bind-btn--clear[data-v-bead516f]:hover{border-color:var(--status-error, #d03050)}.states-empty[data-v-bead516f]{padding:12px 0;font-size:12px;color:var(--text-tertiary, #999999);text-align:center}.rule-item[data-v-bead516f]{padding:8px;margin-bottom:8px;border:1px solid var(--border, #dddddd);border-radius:4px}.rule-row[data-v-bead516f]{display:flex;align-items:center;gap:6px}.rule-row--actions[data-v-bead516f]{margin-top:6px}.rule-label[data-v-bead516f],.rule-value[data-v-bead516f],.rule-operator[data-v-bead516f]{height:28px;padding:0 6px;font-size:12px;border:1px solid var(--border, #dddddd);border-radius:4px;background:var(--surface, #ffffff);color:var(--text);box-sizing:border-box}.rule-label[data-v-bead516f]{flex:1;min-width:0;display:inline-flex;align-items:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rule-label--readonly[data-v-bead516f]{background:var(--background, #f5f5f5);color:var(--text-secondary, #666666);cursor:default;-webkit-user-select:none;user-select:none}.rule-operator[data-v-bead516f]{width:96px;flex-shrink:0}.rule-value[data-v-bead516f]{width:70px;flex-shrink:0}.image-btn[data-v-bead516f]{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:56px;height:32px;padding:2px 8px;font-size:12px;border:1px dashed var(--border, #dddddd);border-radius:4px;background:var(--surface, #ffffff);color:var(--text-secondary, #666666);cursor:pointer}.image-btn[data-v-bead516f]:hover{border-color:var(--primary, #1a73e8)}.image-thumb[data-v-bead516f]{max-width:48px;max-height:28px;object-fit:contain}.move-btn[data-v-bead516f],.delete-btn[data-v-bead516f]{width:26px;height:26px;border:1px solid var(--border, #dddddd);border-radius:4px;background:var(--surface, #ffffff);color:var(--text-secondary, #666666);cursor:pointer;font-size:13px}.move-btn[data-v-bead516f]:disabled{opacity:.4;cursor:not-allowed}.delete-btn[data-v-bead516f]{color:var(--status-error, #d03050)}.tag-bar-graphic[data-v-cee05d95]{position:relative;font-family:Arial,sans-serif}.bar-canvas[data-v-cee05d95]{width:100%;height:100%}.bar-hint[data-v-cee05d95]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--text-tertiary, #999999)}.bar-hint--error[data-v-cee05d95]{color:var(--status-error, #d03050)}.tag-bar-config[data-v-75aab17e]{display:flex;flex-direction:column;gap:8px}.tag-gauge-graphic[data-v-ac9499e5]{position:relative;font-family:Arial,sans-serif}.gauge-canvas[data-v-ac9499e5]{width:100%;height:100%}.gauge-hint[data-v-ac9499e5]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--text-tertiary, #999999)}.gauge-hint--error[data-v-ac9499e5]{color:var(--status-error, #d03050)}.tag-gauge-config[data-v-6e82073f]{display:flex;flex-direction:column;gap:8px}.tag-pie-graphic[data-v-fe985674]{position:relative;font-family:Arial,sans-serif}.pie-canvas[data-v-fe985674]{width:100%;height:100%}.pie-hint[data-v-fe985674]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--text-tertiary, #999999)}.pie-hint--error[data-v-fe985674]{color:var(--status-error, #d03050)}.tag-pie-config[data-v-d9c36111]{display:flex;flex-direction:column;gap:8px}.tag-progress-graphic[data-v-2b247730]{position:relative;font-family:Arial,sans-serif;box-sizing:border-box}.progress-title[data-v-2b247730]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.progress-body[data-v-2b247730]{display:flex;align-items:center;gap:8px}.progress-track[data-v-2b247730]{flex:1;min-width:0}.progress-value[data-v-2b247730]{flex-shrink:0;white-space:nowrap}.progress-hint[data-v-2b247730]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--text-tertiary, #999999)}.tag-progress-config[data-v-4265b1ee]{display:flex;flex-direction:column;gap:8px}.tag-radar-graphic[data-v-b6e91218]{position:relative;font-family:Arial,sans-serif}.radar-canvas[data-v-b6e91218]{width:100%;height:100%}.radar-hint[data-v-b6e91218]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--text-tertiary, #999999)}.radar-hint--error[data-v-b6e91218]{color:var(--status-error, #d03050)}.tag-radar-config[data-v-34eddb28]{display:flex;flex-direction:column;gap:8px}.tag-trend-graphic[data-v-b8f6c98f]{position:relative;font-family:Arial,sans-serif}.trend-chart[data-v-b8f6c98f]{width:100%;height:100%}.empty-hint[data-v-b8f6c98f]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--text-tertiary, #999999)}.tag-trend-config[data-v-b8a03d85]{display:flex;flex-direction:column;gap:8px}.series-style[data-v-b8a03d85]{border:1px solid var(--border, #dddddd);border-radius:4px}.series-style summary[data-v-b8a03d85]{display:flex;align-items:center;gap:6px;padding:6px 8px;cursor:pointer;font-size:13px;font-weight:600;color:var(--text, #333333);list-style:none}.series-style summary[data-v-b8a03d85]::-webkit-details-marker{display:none}.series-dot[data-v-b8a03d85]{width:10px;height:10px;border-radius:50%;flex-shrink:0}.series-name[data-v-b8a03d85]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.style-grid[data-v-b8a03d85]{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:8px;border-top:1px solid var(--border, #dddddd)}.field[data-v-b8a03d85]{display:flex;flex-direction:column;gap:3px;font-size:12px}.field--inline[data-v-b8a03d85]{flex-direction:row;align-items:center;gap:6px}.field-label[data-v-b8a03d85]{color:var(--text-secondary, #666666);font-size:11px}.field input[type=number][data-v-b8a03d85],.field input[type=color][data-v-b8a03d85],.field select[data-v-b8a03d85]{width:100%;height:26px;padding:2px 6px;box-sizing:border-box;font-size:12px;border:1px solid var(--border, #dddddd);border-radius:4px;background:var(--surface, #ffffff);color:var(--text, #333333)}.field input[type=color][data-v-b8a03d85]{padding:1px 2px}.field input[type=checkbox][data-v-b8a03d85]{margin:0;flex-shrink:0}.tag-value-root[data-v-5005dc25]{font-family:Arial,sans-serif}.tag-value-graphic[data-v-5005dc25]{position:relative}.decoration--background[data-v-5005dc25]{z-index:0}.name[data-v-5005dc25],.value[data-v-5005dc25],.unit[data-v-5005dc25],.decoration--icon[data-v-5005dc25]{position:relative;z-index:1;white-space:nowrap}@keyframes ss-state-blink-5005dc25{0%,49%{color:var(--ss-blink-base, currentColor)}50%,to{color:var(--ss-blink-alt, transparent)}}.ss-state-blink[data-v-5005dc25]{animation-name:ss-state-blink-5005dc25;animation-iteration-count:infinite;animation-timing-function:steps(1,end)}.tag-value-config[data-v-270ccbcf]{display:flex;flex-direction:column;gap:8px}.decoration-section[data-v-270ccbcf]{padding:8px 0;border-bottom:1px solid var(--border)}.section-title[data-v-270ccbcf]{margin-bottom:6px;font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.decoration-row[data-v-270ccbcf]{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.image-btn[data-v-270ccbcf]{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:56px;height:32px;padding:2px 8px;font-size:12px;border:1px dashed var(--border);border-radius:4px;background:var(--surface);color:var(--text-secondary);cursor:pointer}.image-btn[data-v-270ccbcf]:hover{border-color:var(--primary)}.image-thumb[data-v-270ccbcf]{max-width:48px;max-height:28px;object-fit:contain}.delete-btn[data-v-270ccbcf]{width:26px;height:26px;border:1px solid var(--border);border-radius:4px;background:var(--surface);color:var(--status-error);cursor:pointer;font-size:13px}.tag-variable-graphic[data-v-4fb2caf9]{position:relative;font-family:Arial,sans-serif}.tag-variable-value[data-v-4fb2caf9],.tag-variable-unit[data-v-4fb2caf9]{flex-shrink:0}.tv-led-glyph[data-v-4fb2caf9]{display:block}@keyframes ss-state-blink-4fb2caf9{0%,49%{color:var(--ss-blink-base, currentColor)}50%,to{color:var(--ss-blink-alt, transparent)}}.ss-state-blink[data-v-4fb2caf9]{animation-name:ss-state-blink-4fb2caf9;animation-iteration-count:infinite;animation-timing-function:steps(1,end)}@keyframes tv-led-blink-4fb2caf9{0%,49%{opacity:1}50%,to{opacity:.25}}.tv-led-blink[data-v-4fb2caf9]{animation-name:tv-led-blink-4fb2caf9;animation-iteration-count:infinite;animation-timing-function:steps(1,end)}.tag-variable-config[data-v-f6c68331]{display:flex;flex-direction:column;gap:8px}.tag-waterpolo-graphic[data-v-bfe8fe4c]{position:relative;font-family:Arial,sans-serif;box-sizing:border-box}.waterpolo-title[data-v-bfe8fe4c]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.waterpolo-fill[data-v-bfe8fe4c]:before{content:"";position:absolute;top:-8px;left:-20%;width:140%;height:16px;border-radius:50%;background:#ffffff40}.waterpolo-hint[data-v-bfe8fe4c]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--text-tertiary, #999999)}@keyframes ss-state-blink-bfe8fe4c{0%,49%{background:var(--ss-blink-base, currentColor)}50%,to{background:var(--ss-blink-alt, transparent)}}.ss-state-blink[data-v-bfe8fe4c]{animation-name:ss-state-blink-bfe8fe4c;animation-iteration-count:infinite;animation-timing-function:steps(1,end)}.tag-waterpolo-config[data-v-14fc93b5]{display:flex;flex-direction:column;gap:8px}.checkbox-graphic[data-v-e9bb1912]{display:flex;align-items:center;width:100%;height:100%;box-sizing:border-box;padding:0 4px;-webkit-user-select:none;user-select:none}.checkbox-wrapper[data-v-e9bb1912]{display:flex;align-items:center;gap:6px;cursor:inherit;line-height:1}.checkbox-left[data-v-e9bb1912]{justify-content:flex-end}.checkbox-left .checkbox-wrapper[data-v-e9bb1912]{flex-direction:row-reverse}.checkbox-input[data-v-e9bb1912]{margin:0;cursor:inherit;flex:none}.checkbox-input[data-v-e9bb1912]:disabled{cursor:not-allowed;opacity:.6}.checkbox-small[data-v-e9bb1912]{font-size:12px}.checkbox-medium[data-v-e9bb1912]{font-size:14px}.checkbox-large[data-v-e9bb1912]{font-size:16px}.checkbox-label[data-v-e9bb1912]{line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.icon[data-v-9fb8c78a]{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;color:#333}.input-graphic[data-v-8adc7ffb]{display:block}.input-graphic[data-v-8adc7ffb]::placeholder{color:var(--text-secondary, #999999)}.icon[data-v-e10bb0db]{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;color:#333}.chart-bar-graphic[data-v-031ba408]{position:relative;font-family:Arial,sans-serif}.chart-canvas[data-v-031ba408]{width:100%;height:100%}.chart-hint[data-v-031ba408]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--text-tertiary, #999999)}.chart-hint--error[data-v-031ba408]{color:var(--status-error, #d03050)}.chart-bar-config[data-v-4e7746db]{display:flex;flex-direction:column;gap:8px}.ds-section[data-v-4e7746db]{padding:8px 0;border-bottom:1px solid var(--border, #dddddd)}.section-title[data-v-4e7746db]{margin-bottom:6px;font-size:11px;font-weight:600;color:var(--text-secondary, #666666);text-transform:uppercase;letter-spacing:.5px}.chart-pie-graphic[data-v-7b1a4a4f]{position:relative;font-family:Arial,sans-serif}.chart-canvas[data-v-7b1a4a4f]{width:100%;height:100%}.chart-hint[data-v-7b1a4a4f]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--text-tertiary, #999999)}.chart-hint--error[data-v-7b1a4a4f]{color:var(--status-error, #d03050)}.chart-pie-config[data-v-320c75cc]{display:flex;flex-direction:column;gap:8px}.ds-section[data-v-320c75cc]{padding:8px 0;border-bottom:1px solid var(--border, #dddddd)}.section-title[data-v-320c75cc]{margin-bottom:6px;font-size:11px;font-weight:600;color:var(--text-secondary, #666666);text-transform:uppercase;letter-spacing:.5px}.gauge-graphic[data-v-d49a238e]{position:relative;font-family:Arial,sans-serif}.gauge-canvas[data-v-d49a238e]{width:100%;height:100%}.gauge-hint[data-v-d49a238e]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--text-tertiary, #999999)}.gauge-hint--error[data-v-d49a238e]{color:var(--status-error, #d03050)}.gauge-config[data-v-d1d6b3ec]{display:flex;flex-direction:column;gap:8px}.ds-section[data-v-d1d6b3ec]{padding:8px 0;border-bottom:1px solid var(--border, #dddddd)}.section-title[data-v-d1d6b3ec]{margin-bottom:6px;font-size:11px;font-weight:600;color:var(--text-secondary, #666666);text-transform:uppercase;letter-spacing:.5px}.trend-chart-config[data-v-40aeac0d]{padding:8px;font-size:12px}.config-section[data-v-40aeac0d]{margin-bottom:12px}.config-section h4[data-v-40aeac0d]{margin:0 0 4px;font-size:14px;color:var(--text)}.config-section .desc[data-v-40aeac0d]{margin:0 0 8px;color:var(--text-secondary);font-size:11px}.config-item[data-v-40aeac0d]{display:flex;align-items:center;gap:8px;margin-bottom:8px}.config-item label[data-v-40aeac0d]{flex-shrink:0;width:80px;color:var(--text)}.config-item .value[data-v-40aeac0d]{width:30px;text-align:center;color:var(--text)}.config-item select[data-v-40aeac0d]{flex:1;padding:4px;border:1px solid var(--border);border-radius:4px;background:var(--surface);color:var(--text);font-size:12px}.config-item input[type=range][data-v-40aeac0d]{flex:1}.border01-graphic[data-v-22e6a0d8],.border02-graphic[data-v-511494c4],.border03-graphic[data-v-6618aa35],.border04-graphic[data-v-61bada43]{width:100%;height:100%;display:block}.border05-container[data-v-8107cad8]{position:relative;width:100%;height:100%;overflow:hidden}.border05-bg[data-v-8107cad8]{width:100%;height:100%;display:block}.border-item[data-v-8107cad8]{position:absolute;top:0;left:0;pointer-events:none}.right-top[data-v-8107cad8]{right:0;left:auto;transform:rotateY(180deg)}.left-bottom[data-v-8107cad8]{bottom:0;top:auto;transform:rotateX(180deg)}.right-bottom[data-v-8107cad8]{right:0;bottom:0;left:auto;top:auto;transform:rotateX(180deg) rotateY(180deg)}.ss-border-box[data-v-4606ee44]{width:100%;height:100%;position:relative;overflow:hidden}.ss-border-box svg[data-v-4606ee44]{position:absolute;top:0;left:0}.ss-border-box polyline[data-v-4606ee44]{fill:none;stroke-linecap:round}.ss-border-line-w-2[data-v-4606ee44]{stroke-width:2}.ss-border-line-w-5[data-v-4606ee44]{stroke-width:5}.ss-border-box[data-v-d22da858]{width:100%;height:100%}.ss-border-box svg[data-v-d22da858]{width:100%;height:100%;display:block}.ss-border-box[data-v-a215e82d]{width:100%;height:100%}.ss-border-box svg[data-v-a215e82d]{width:100%;height:100%;display:block}.ss-border-box[data-v-a11aac41]{width:100%;height:100%}.ss-border-box svg[data-v-a11aac41]{width:100%;height:100%;display:block}.ss-border-box svg[data-v-51fd24f3]{width:100%;height:100%;display:block}.ss-border-box polyline[data-v-51fd24f3]{fill:none}.ss-border-line-1[data-v-51fd24f3],.ss-border-line-2[data-v-51fd24f3],.ss-border-line-3[data-v-51fd24f3],.ss-border-line-6[data-v-51fd24f3],.ss-border-line-7[data-v-51fd24f3],.ss-border-line-10[data-v-51fd24f3]{stroke-width:1}.ss-border-line-3[data-v-51fd24f3],.ss-border-line-4[data-v-51fd24f3],.ss-border-line-8[data-v-51fd24f3],.ss-border-line-9[data-v-51fd24f3]{stroke-width:3px;stroke-linecap:round}.ss-border-line-9[data-v-51fd24f3]{stroke-dasharray:100 250}.ss-border-line-10[data-v-51fd24f3]{stroke-dasharray:80 270}.ss-border-box[data-v-280dc1bd]{width:100%;height:100%}.ss-border-box svg[data-v-280dc1bd]{width:100%;height:100%;display:block}.ss-border-box polyline[data-v-280dc1bd]{fill:none}.ss-border-line-1[data-v-280dc1bd]{stroke-width:1}.ss-border-line-3[data-v-280dc1bd]{stroke-width:3}.ss-border-box[data-v-294edf05]{width:100%;height:100%}.ss-border-box svg[data-v-294edf05]{width:100%;height:100%;display:block}.ss-border-box polyline[data-v-294edf05]{fill:none}.ss-border-box[data-v-5431a966]{width:100%;height:100%}.ss-border-box svg[data-v-5431a966]{width:100%;height:100%;display:block}.ss-border-box polyline[data-v-5431a966]{fill:none}.ss-border-box[data-v-dc11f799]{width:100%;height:100%}.ss-border-box svg[data-v-dc11f799]{width:100%;height:100%;display:block}.ss-border-box[data-v-36b69187]{width:100%;height:100%}.ss-border-box svg[data-v-36b69187]{width:100%;height:100%;display:block}.ss-border-box[data-v-70a4c346]{width:100%;height:100%}.ss-border-box svg[data-v-70a4c346]{width:100%;height:100%;display:block}.ss-border-box[data-v-1bd61772]{width:100%;height:100%}.ss-border-box svg[data-v-1bd61772]{width:100%;height:100%;display:block}.ss-border-box[data-v-bcccb143]{width:100%;height:100%}.ss-border-box svg[data-v-bcccb143]{width:100%;height:100%;display:block}.ss-border-box[data-v-0c683e70]{width:100%;height:100%}.ss-border-box svg[data-v-0c683e70]{width:100%;height:100%;display:block}svg[data-v-152cc118]{width:100%;height:100%;display:block}svg[data-v-81cb9aab]{width:100%;height:100%;display:block}div[data-v-f4e38ef4]{width:100%;height:100%;display:flex;justify-content:space-between;align-items:center}span[data-v-f4e38ef4]{text-align:center;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.head06-container[data-v-6f146edb]{position:relative;width:100%;height:100%}.head06-container svg[data-v-6f146edb]{width:100%;height:100%;display:block}.head06-text[data-v-6f146edb]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:80%;text-align:center}.message-box-overlay[data-v-671449c1]{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000}.message-box[data-v-671449c1]{background-color:var(--surface);border-radius:4px;box-shadow:var(--shadow-large);width:360px;max-width:90%;overflow:hidden;border:1px solid var(--border)}.message-box-header[data-v-671449c1]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border)}.message-box-title[data-v-671449c1]{font-size:16px;font-weight:600;color:var(--text);margin:0}.message-box-close[data-v-671449c1]{background:none;border:none;font-size:20px;color:var(--text-secondary);cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:2px;transition:all .2s ease}.message-box-close[data-v-671449c1]:hover{background-color:var(--control-button-hover);color:var(--text)}.message-box-body[data-v-671449c1]{padding:20px;display:flex;align-items:flex-start;gap:12px}.message-box-icon[data-v-671449c1]{font-size:24px;flex-shrink:0;margin-top:2px}.message-box-icon.warning[data-v-671449c1]{color:#f59e0b}.message-box-icon.error[data-v-671449c1]{color:#ef4444}.message-box-icon.success[data-v-671449c1]{color:#22c55e}.message-box-icon.info[data-v-671449c1]{color:#3b82f6}.message-box-content[data-v-671449c1]{flex:1;font-size:14px;line-height:1.4;color:var(--text)}.message-box-footer[data-v-671449c1]{display:flex;justify-content:flex-end;gap:8px;padding:16px 20px;border-top:1px solid var(--border);background-color:var(--background)}.message-box-button[data-v-671449c1]{padding:6px 16px;border:1px solid var(--border);border-radius:4px;font-size:14px;cursor:pointer;transition:all .2s ease;min-width:80px;text-align:center}.message-box-button.cancel[data-v-671449c1]{background-color:var(--surface);color:var(--text)}.message-box-button.cancel[data-v-671449c1]:hover{background-color:var(--control-button-hover)}.message-box-button.confirm[data-v-671449c1]{background-color:var(--primary);color:#fff;border-color:var(--primary)}.message-box-button.confirm[data-v-671449c1]:hover{background-color:var(--button-hover);border-color:var(--button-hover)}.confirm-save-box-overlay[data-v-ca1b20b6]{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000}.confirm-save-box[data-v-ca1b20b6]{background-color:var(--surface);border-radius:4px;box-shadow:var(--shadow-large);width:400px;max-width:90%;overflow:hidden;border:1px solid var(--border)}.confirm-save-box-header[data-v-ca1b20b6]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border)}.confirm-save-box-title[data-v-ca1b20b6]{font-size:16px;font-weight:600;color:var(--text);margin:0}.confirm-save-box-close[data-v-ca1b20b6]{background:none;border:none;font-size:20px;color:var(--text-secondary);cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:2px;transition:all .2s ease}.confirm-save-box-close[data-v-ca1b20b6]:hover{background-color:var(--control-button-hover);color:var(--text)}.confirm-save-box-body[data-v-ca1b20b6]{padding:20px;display:flex;align-items:flex-start;gap:12px}.confirm-save-box-icon[data-v-ca1b20b6]{font-size:24px;flex-shrink:0;margin-top:2px}.confirm-save-box-icon.warning[data-v-ca1b20b6]{color:#f59e0b}.confirm-save-box-content[data-v-ca1b20b6]{flex:1;font-size:14px;line-height:1.4;color:var(--text)}.confirm-save-box-footer[data-v-ca1b20b6]{display:flex;justify-content:flex-end;gap:8px;padding:16px 20px;border-top:1px solid var(--border);background-color:var(--background)}.confirm-save-box-button[data-v-ca1b20b6]{padding:6px 16px;border:1px solid var(--border);border-radius:4px;font-size:14px;cursor:pointer;transition:all .2s ease;min-width:80px;text-align:center}.confirm-save-box-button.discard[data-v-ca1b20b6]{background-color:var(--surface);color:var(--text)}.confirm-save-box-button.discard[data-v-ca1b20b6]:hover{background-color:var(--control-button-hover)}.confirm-save-box-button.cancel[data-v-ca1b20b6]{background-color:var(--surface);color:var(--text)}.confirm-save-box-button.cancel[data-v-ca1b20b6]:hover{background-color:var(--control-button-hover)}.confirm-save-box-button.save[data-v-ca1b20b6]{background-color:var(--primary);color:#fff;border-color:var(--primary)}.confirm-save-box-button.save[data-v-ca1b20b6]:hover{background-color:var(--button-hover);border-color:var(--button-hover)}.message-box-overlay[data-v-95fd570e]{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000}.message-box[data-v-95fd570e]{background-color:var(--surface);border-radius:4px;box-shadow:var(--shadow-large);width:400px;max-width:90%;overflow:hidden;border:1px solid var(--border)}.message-box-header[data-v-95fd570e]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border)}.message-box-title[data-v-95fd570e]{font-size:16px;font-weight:600;color:var(--text);margin:0}.message-box-close[data-v-95fd570e]{background:none;border:none;font-size:20px;color:var(--text-secondary);cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:2px;transition:all .2s ease}.message-box-close[data-v-95fd570e]:hover{background-color:var(--control-button-hover);color:var(--text)}.message-box-body[data-v-95fd570e]{padding:20px;display:flex;align-items:flex-start;gap:12px}.message-box-icon[data-v-95fd570e]{font-size:24px;flex-shrink:0;margin-top:2px}.message-box-icon.warning[data-v-95fd570e]{color:#f59e0b}.message-box-icon.error[data-v-95fd570e]{color:#ef4444}.message-box-icon.success[data-v-95fd570e]{color:#22c55e}.message-box-icon.info[data-v-95fd570e]{color:#3b82f6}.message-box-content[data-v-95fd570e]{flex:1}.message-box-text[data-v-95fd570e]{font-size:14px;line-height:1.4;color:var(--text);margin-bottom:16px}.message-box-input[data-v-95fd570e]{width:100%;padding:8px 12px;border:1px solid var(--border);border-radius:4px;font-size:14px;background-color:var(--background);color:var(--text);transition:all .2s ease}.message-box-input[data-v-95fd570e]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #3b82f633}.message-box-footer[data-v-95fd570e]{display:flex;justify-content:flex-end;gap:8px;padding:16px 20px;border-top:1px solid var(--border);background-color:var(--background)}.message-box-button[data-v-95fd570e]{padding:6px 16px;border:1px solid var(--border);border-radius:4px;font-size:14px;cursor:pointer;transition:all .2s ease;min-width:80px;text-align:center}.message-box-button.cancel[data-v-95fd570e]{background-color:var(--surface);color:var(--text)}.message-box-button.cancel[data-v-95fd570e]:hover{background-color:var(--control-button-hover)}.message-box-button.confirm[data-v-95fd570e]{background-color:var(--primary);color:#fff;border-color:var(--primary)}.message-box-button.confirm[data-v-95fd570e]:hover{background-color:var(--button-hover);border-color:var(--button-hover)}.replay-control[data-v-e6868047]{position:absolute;left:50%;bottom:44px;transform:translate(-50%);display:flex;align-items:center;gap:12px;padding:6px 10px;background-color:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow-small);color:var(--text);font-size:12px;z-index:20;flex-wrap:wrap;max-width:90%}.replay-control-active[data-v-e6868047]{padding:8px 12px}.replay-btn-close[data-v-e6868047]{margin-left:2px;border-color:transparent;background-color:transparent}.replay-btn-close[data-v-e6868047]:hover{border-color:transparent}.replay-status[data-v-e6868047]{display:flex;align-items:center;gap:8px}.replay-badge[data-v-e6868047]{padding:1px 6px;border-radius:4px;background-color:var(--primary);color:#fff;font-weight:600}.replay-script[data-v-e6868047]{color:var(--text);max-width:160px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.replay-progress[data-v-e6868047]{color:var(--text-secondary)}.replay-transport[data-v-e6868047]{display:flex;align-items:center;gap:6px}.replay-btn[data-v-e6868047]{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border:1px solid var(--border);border-radius:4px;background-color:var(--background);color:var(--text-secondary);cursor:pointer;transition:all .2s ease;font-size:12px}.replay-btn[data-v-e6868047]:hover{border-color:var(--primary);color:var(--primary)}.replay-btn-stop[data-v-e6868047]:hover{border-color:var(--danger, #e5484d);color:var(--danger, #e5484d)}.replay-field[data-v-e6868047]{display:flex;align-items:center;gap:4px}.replay-label[data-v-e6868047]{color:var(--text-secondary)}.replay-select[data-v-e6868047],.replay-input[data-v-e6868047]{height:24px;padding:0 4px;border:1px solid var(--border);border-radius:4px;background-color:var(--background);color:var(--text);font-size:12px}.replay-input[data-v-e6868047]{width:64px}.replay-error[data-v-e6868047]{width:100%;margin:2px 0 0;color:var(--danger, #e5484d);font-size:11px;order:99}.ai-gen-status[data-v-9fb08ebf]{position:absolute;top:8px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:10px;max-width:92%;padding:5px 10px;background-color:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow-small);color:var(--text);font-size:12px;z-index:19;pointer-events:auto;white-space:nowrap;overflow:hidden}.ai-gen-status--error[data-v-9fb08ebf]{border-color:var(--status-error, #ef4444)}.ai-gen-status--done[data-v-9fb08ebf]{border-color:var(--status-success, #22c55e)}.ai-gen-phase[data-v-9fb08ebf]{font-weight:600}.ai-gen-page[data-v-9fb08ebf],.ai-gen-step[data-v-9fb08ebf],.ai-gen-tool[data-v-9fb08ebf],.ai-gen-graphics[data-v-9fb08ebf],.ai-gen-elapsed[data-v-9fb08ebf]{color:var(--text-secondary, var(--text));overflow:hidden;text-overflow:ellipsis}.ai-gen-error[data-v-9fb08ebf]{color:var(--status-error, #ef4444);overflow:hidden;text-overflow:ellipsis}.ai-gen-spinner[data-v-9fb08ebf]{width:10px;height:10px;border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:ai-gen-spin-9fb08ebf .8s linear infinite}@keyframes ai-gen-spin-9fb08ebf{to{transform:rotate(360deg)}}.ai-gen-close[data-v-9fb08ebf]{margin-left:2px;border:none;background:transparent;color:var(--text-secondary, var(--text));cursor:pointer;font-size:12px}.group-edit-bar[data-v-07ef447b]{display:flex;align-items:center;justify-content:space-between;padding:6px 16px;background:var(--primary);color:#fff;font-size:13px;font-weight:500;z-index:1000;flex-shrink:0}.group-edit-exit-btn[data-v-07ef447b]{padding:2px 12px;border:1px solid rgba(255,255,255,.4);border-radius:4px;background:transparent;color:#fff;font-size:12px;cursor:pointer;transition:background .2s}.group-edit-exit-btn[data-v-07ef447b]:hover{background:#ffffff26}.empty-canvas-guide[data-v-70acb7f2]{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;background-color:#1a1a1a99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:5;pointer-events:none}.guide-content[data-v-70acb7f2]{text-align:center;padding:48px;max-width:480px}.guide-icon[data-v-70acb7f2]{margin-bottom:24px;color:var(--primary, #4a90d9);opacity:.8;animation:pulse-70acb7f2 2s ease-in-out infinite}@keyframes pulse-70acb7f2{0%,to{transform:scale(1);opacity:.8}50%{transform:scale(1.05);opacity:1}}.guide-title[data-v-70acb7f2]{font-size:24px;font-weight:600;color:var(--text);margin:0 0 12px;letter-spacing:.5px}.guide-description[data-v-70acb7f2]{font-size:15px;color:var(--text-secondary);line-height:1.6;margin:0 0 32px}.guide-tips[data-v-70acb7f2]{display:flex;gap:24px;justify-content:center}.tip-item[data-v-70acb7f2]{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px 20px;background-color:#ffffff0d;border-radius:12px;border:1px solid rgba(255,255,255,.1);transition:all .3s ease}.tip-item[data-v-70acb7f2]:hover{background-color:#3b82f61a;border-color:#3b82f64d;transform:translateY(-2px)}.tip-icon[data-v-70acb7f2]{font-size:28px}.tip-text[data-v-70acb7f2]{font-size:13px;color:var(--text-secondary);font-weight:500}.fade-enter-active[data-v-70acb7f2],.fade-leave-active[data-v-70acb7f2]{transition:opacity .4s ease}.fade-enter-from[data-v-70acb7f2],.fade-leave-to[data-v-70acb7f2]{opacity:0}.graphic-event-wrapper[data-v-1d218f0a]{position:absolute}.vue-components-container[data-v-02a9b139]{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:10}.svg-components-container[data-v-947c1673]{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:11}.svg-plugin-wrapper[data-v-947c1673],.svg-plugin-wrapper[data-v-947c1673] *{pointer-events:none}.svg-plugin-wrapper[data-v-947c1673] svg{width:100%;height:100%;display:block}.css-components-container[data-v-cae0be75]{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:12}.css-plugin-wrapper[data-v-cae0be75],.css-plugin-wrapper[data-v-cae0be75] *{pointer-events:none}.three-components-container[data-v-567d0432]{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:5}.three-plugin-wrapper[data-v-567d0432],.three-plugin-wrapper[data-v-567d0432] *{pointer-events:none}.three-components-container.is-runtime .three-plugin-wrapper[data-v-567d0432],.three-components-container.is-runtime .three-plugin-wrapper[data-v-567d0432] *,.three-plugin-wrapper.is-part-edit[data-v-567d0432],.three-plugin-wrapper.is-part-edit[data-v-567d0432] *{pointer-events:auto}.graphic-value-overlay-layer[data-v-6e1a50d3]{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:100}.value-overlay-badge[data-v-6e1a50d3]{position:absolute;display:flex;align-items:center;gap:6px;padding:2px 8px;background:var(--surface, #ffffff);border:1px solid var(--border, #dcdfe6);border-radius:4px;font-size:11px;line-height:1.4;color:var(--text, #303333);box-shadow:0 1px 4px #0000001a;white-space:nowrap;overflow:hidden}.overlay-tag-name[data-v-6e1a50d3]{color:var(--text-secondary, #909399);max-width:80px;overflow:hidden;text-overflow:ellipsis}.overlay-value[data-v-6e1a50d3]{font-weight:600;color:var(--text, #303333)}.overlay-quality[data-v-6e1a50d3]{margin-left:auto;font-weight:700}.quality-good[data-v-6e1a50d3]{border-left:3px solid #4CAF50}.quality-good .overlay-quality[data-v-6e1a50d3]{color:#4caf50}.quality-uncertain[data-v-6e1a50d3]{border-left:3px solid #FF9800}.quality-uncertain .overlay-quality[data-v-6e1a50d3]{color:#ff9800}.quality-bad[data-v-6e1a50d3]{border-left:3px solid #F44336}.quality-bad .overlay-quality[data-v-6e1a50d3]{color:#f44336}.quality-stale[data-v-6e1a50d3]{border-left:3px solid #9E9E9E;opacity:.7}.quality-stale .overlay-quality[data-v-6e1a50d3]{color:#9e9e9e}.quality-disconnected[data-v-6e1a50d3]{border-left:3px solid #607D8B;opacity:.5}.quality-disconnected .overlay-quality[data-v-6e1a50d3]{color:#607d8b}.plugin-layer-manager[data-v-97d83d18]{display:flex;flex:1;min-width:0;min-height:0;overflow:auto}.plugin-layer-manager[data-v-97d83d18]:active{cursor:grabbing}.canvas-viewport[data-v-97d83d18]{position:relative;flex-shrink:0}.canvas-viewport--centered[data-v-97d83d18]{margin:auto}.design-canvas[data-v-97d83d18]{display:block;background-color:var(--surface);z-index:1}.selection-container[data-v-0709c573]{position:absolute;pointer-events:none;z-index:1000;overflow:visible}.selection-mask[data-v-0709c573]{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#3b82f614,#3b82f608);border-radius:4px}.selection-border[data-v-0709c573]{position:absolute;top:0;right:0;bottom:0;left:0;border:2px solid rgba(59,130,246,.9);border-radius:4px;box-shadow:0 0 0 1px #ffffff4d,0 0 12px #3b82f633;animation:selectionPulse-0709c573 2s ease-in-out infinite}@keyframes selectionPulse-0709c573{0%,to{border-color:#3b82f6cc;box-shadow:0 0 0 1px #fff3,0 0 10px #3b82f626}50%{border-color:#3b82f6;box-shadow:0 0 0 1px #fff6,0 0 18px #3b82f640}}.corner[data-v-0709c573]{position:absolute;width:10px;height:10px;background:linear-gradient(135deg,#3b82f6,#2563eb);border-radius:3px;box-shadow:0 2px 6px #3b82f64d,0 0 0 2px #fff;pointer-events:auto;transition:transform .15s ease,box-shadow .15s ease}.corner[data-v-0709c573]:hover{transform:scale(1.2);box-shadow:0 4px 12px #3b82f666,0 0 0 2px #fff}.corner[data-v-0709c573]:active{transform:scale(.95);box-shadow:0 1px 4px #3b82f64d,0 0 0 2px #fff}.corner.top-left[data-v-0709c573]{top:-3px;left:-3px;cursor:nwse-resize}.corner.top-right[data-v-0709c573]{top:-3px;right:-3px;cursor:nesw-resize}.corner.bottom-left[data-v-0709c573]{bottom:-3px;left:-3px;cursor:nesw-resize}.corner.bottom-right[data-v-0709c573]{bottom:-3px;right:-3px;cursor:nwse-resize}.handle[data-v-0709c573]{position:absolute;width:10px;height:10px;background:linear-gradient(135deg,#3b82f6,#2563eb);border-radius:3px;box-shadow:0 2px 6px #3b82f64d,0 0 0 2px #fff;pointer-events:auto;transition:transform .15s ease,box-shadow .15s ease}.handle[data-v-0709c573]:hover{transform:scale(1.2);box-shadow:0 4px 12px #3b82f666,0 0 0 2px #fff}.handle[data-v-0709c573]:active{transform:scale(.95);box-shadow:0 1px 4px #3b82f64d,0 0 0 2px #fff}.handle.top-middle[data-v-0709c573]{top:-3px;left:50%;transform:translate(-50%);cursor:ns-resize}.handle.top-middle[data-v-0709c573]:hover{transform:translate(-50%) scale(1.2)}.handle.top-middle[data-v-0709c573]:active{transform:translate(-50%) scale(.95)}.handle.bottom-middle[data-v-0709c573]{bottom:-3px;left:50%;transform:translate(-50%);cursor:ns-resize}.handle.bottom-middle[data-v-0709c573]:hover{transform:translate(-50%) scale(1.2)}.handle.bottom-middle[data-v-0709c573]:active{transform:translate(-50%) scale(.95)}.handle.left-middle[data-v-0709c573]{left:-3px;top:50%;transform:translateY(-50%);cursor:ew-resize}.handle.left-middle[data-v-0709c573]:hover{transform:translateY(-50%) scale(1.2)}.handle.left-middle[data-v-0709c573]:active{transform:translateY(-50%) scale(.95)}.handle.right-middle[data-v-0709c573]{right:-3px;top:50%;transform:translateY(-50%);cursor:ew-resize}.handle.right-middle[data-v-0709c573]:hover{transform:translateY(-50%) scale(1.2)}.handle.right-middle[data-v-0709c573]:active{transform:translateY(-50%) scale(.95)}.rotation-container[data-v-0709c573]{position:absolute;width:auto;height:auto;pointer-events:none;z-index:10}.rotation-line[data-v-0709c573]{position:absolute;left:50%;top:26px;width:2px;height:12px;background:linear-gradient(to bottom,#3b82f6e6,#3b82f666);transform:translate(-50%);border-radius:1px;pointer-events:none}.rotation-handle[data-v-0709c573]{position:absolute;top:0;left:50%;min-width:52px;height:26px;padding:0 10px;background:linear-gradient(135deg,#3b82f6,#2563eb,#1d4ed8);border-radius:16px;box-shadow:0 4px 16px #3b82f666,0 0 0 2px #ffffffe6,0 0 0 3px #3b82f640,inset 0 1px 3px #ffffff59;display:flex;align-items:center;justify-content:center;gap:4px;color:#fff;cursor:grab;pointer-events:auto;transform:translate(-50%);transition:all .2s cubic-bezier(.4,0,.2,1);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.rotation-icon[data-v-0709c573]{font-size:16px;line-height:1;opacity:.9}.rotation-degree[data-v-0709c573]{font-size:12px;font-weight:600;line-height:1;letter-spacing:.3px;text-shadow:0 1px 2px rgba(0,0,0,.2)}.rotation-handle[data-v-0709c573]:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8,#1e40af);transform:translate(-50%) scale(1.08);box-shadow:0 6px 20px #3b82f680,0 0 0 2px #ffffffe6,0 0 0 3px #3b82f659,inset 0 1px 3px #fff6}.rotation-handle[data-v-0709c573]:active{cursor:grabbing;transform:translate(-50%) scale(.96);box-shadow:0 2px 10px #3b82f673,0 0 0 2px #ffffffe6,0 0 0 3px #3b82f640,inset 0 1px 3px #ffffff40}.selection-overlay[data-v-4d436644]{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:5}.reference-lines[data-v-4d436644]{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.reference-line[data-v-4d436644]{position:absolute;background-color:var(--primary);opacity:1}.reference-line.horizontal[data-v-4d436644]{left:0;width:100%;height:1px}.reference-line.vertical[data-v-4d436644]{top:0;width:1px;height:100%}.user-guide-lines[data-v-4d436644]{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.user-guide-line[data-v-4d436644]{position:absolute;pointer-events:auto;transition:opacity .15s ease}.user-guide-line[data-v-4d436644]:hover{opacity:1!important;box-shadow:0 0 0 2px #409eff4d}.user-guide-line.horizontal[data-v-4d436644]{left:0;width:100%}.user-guide-line.vertical[data-v-4d436644]{top:0;height:100%}.align-lines[data-v-4d436644]{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:6}.align-line[data-v-4d436644]{position:absolute;background-color:#0f0;opacity:.8;animation:align-pulse-4d436644 1s ease-in-out infinite}.align-line.vertical[data-v-4d436644]{width:2px;height:100%}.align-line.horizontal[data-v-4d436644]{width:100%;height:2px}@keyframes align-pulse-4d436644{0%,to{opacity:.6}50%{opacity:1}}.snap-indicators[data-v-4d436644]{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:7}.snap-indicator[data-v-4d436644]{position:absolute;width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;animation:snap-bounce-4d436644 .3s ease-out}.snap-grid[data-v-4d436644]{background-color:#3b82f6e6;color:#fff;box-shadow:0 0 8px #3b82f699}.snap-edge[data-v-4d436644]{background-color:#10b981e6;color:#fff;box-shadow:0 0 8px #10b98199}.snap-center[data-v-4d436644]{background-color:#f59e0be6;color:#fff;box-shadow:0 0 8px #f59e0b99}.snap-icon[data-v-4d436644]{line-height:1}@keyframes snap-bounce-4d436644{0%{transform:scale(0)}50%{transform:scale(1.3)}to{transform:scale(1)}}.layout-lock-overlay[data-v-ab4f82d5]{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:5}.layout-lock-region[data-v-ab4f82d5]{position:absolute;pointer-events:auto;cursor:not-allowed;background:#00000008;border:1px dashed color-mix(in srgb,var(--border-strong, #a0a0a0) 55%,transparent);transition:border-color .15s ease,box-shadow .15s ease}.layout-lock-region--wireframe[data-v-ab4f82d5]{background:#8080802e}.layout-lock-region--hover[data-v-ab4f82d5]{border-style:solid;border-color:var(--primary, #1890ff);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--primary, #1890ff) 40%,transparent)}.lock-badge[data-v-ab4f82d5]{position:absolute;top:4px;left:6px;display:inline-flex;align-items:center;gap:3px;font-size:11px;line-height:1.4;padding:1px 6px;border-radius:3px;color:var(--text-on-primary, #e6e6e6);background:color-mix(in srgb,var(--surface, #000) 55%,transparent);white-space:nowrap;-webkit-user-select:none;user-select:none}.lock-badge__icon[data-v-ab4f82d5]{width:10px;height:10px;flex:0 0 auto}.lock-tooltip[data-v-ab4f82d5]{position:absolute;top:26px;left:6px;max-width:260px;padding:5px 8px;border-radius:4px;font-size:12px;line-height:1.5;color:var(--text, #fff);background:color-mix(in srgb,var(--surface, #000) 82%,transparent);border:1px solid var(--border, transparent);white-space:normal;-webkit-user-select:none;user-select:none}.context-menu[data-v-5c0e2313]{position:fixed;z-index:10000;background-color:var(--surface);border:1px solid var(--border);border-radius:4px;box-shadow:var(--shadow-large);overflow:hidden;min-width:200px}.context-menu-content[data-v-5c0e2313]{display:flex;flex-direction:column}.context-menu-item[data-v-5c0e2313]{display:flex;align-items:center;padding:8px 12px;cursor:pointer;transition:all .2s ease;color:var(--text)}.context-menu-item[data-v-5c0e2313]:hover{background-color:var(--control-button-hover)}.context-menu-item .icon[data-v-5c0e2313]{margin-right:8px;font-size:14px;width:16px;text-align:center}.context-menu-item .text[data-v-5c0e2313]{flex:1;font-size:13px}.context-menu-item .shortcut[data-v-5c0e2313]{font-size:11px;color:var(--text-secondary);margin-left:8px}.context-menu-divider[data-v-5c0e2313]{height:1px;background-color:var(--border);margin:4px 0}.vertical-ruler[data-v-206818d5]{position:relative;width:30px;background-color:var(--surface);border-right:1px solid var(--border);overflow:hidden;cursor:crosshair;height:100%;outline:none}.vertical-ruler[data-v-206818d5]:focus-visible{box-shadow:inset 0 0 0 2px var(--primary)}.ruler-track[data-v-206818d5]{position:absolute;top:0;left:0;width:100%;display:flex;flex-direction:column;align-items:flex-end;transform-origin:left top}.ruler-tick[data-v-206818d5]{position:absolute;width:6px;height:1px;background-color:var(--text-secondary);right:0}.ruler-tick.major[data-v-206818d5]{width:12px;height:2px;background-color:var(--text)}.ruler-tick.micro[data-v-206818d5]{width:3px;height:1px;opacity:.4;background-color:var(--text-tertiary, #999)}.ruler-tick.grid-aligned[data-v-206818d5]{background-color:var(--primary, #1890ff)!important;box-shadow:0 0 4px #1890ff80}[data-theme=high-contrast] .ruler-tick.grid-aligned[data-v-206818d5]{background-color:#0f0!important;box-shadow:0 0 6px #0f0}.ruler-label[data-v-206818d5]{position:absolute;right:14px;top:50%;font-size:10px;color:var(--text-secondary);transform:translateY(-50%) rotate(-90deg);transform-origin:right center;white-space:nowrap}.mouse-indicator[data-v-206818d5]{position:absolute;left:0;width:100%;height:2px;background-color:var(--primary);z-index:10}.guide-line-preview[data-v-206818d5]{position:absolute;background-color:var(--primary);opacity:.9;z-index:20;pointer-events:none;transition:opacity .15s ease}.guide-line-preview.vertical[data-v-206818d5]{width:100%;height:3px;left:0;box-shadow:0 0 6px var(--primary);animation:guide-pulse-206818d5 1s ease-in-out infinite}@keyframes guide-pulse-206818d5{0%,to{opacity:.9;transform:scaleY(1)}50%{opacity:1;transform:scaleY(1.5)}}[data-theme=high-contrast] .vertical-ruler[data-v-206818d5]{border-width:2px}[data-theme=high-contrast] .ruler-tick.major[data-v-206818d5]{height:16px;width:3px;background-color:#ff0}[data-theme=high-contrast] .ruler-tick[data-v-206818d5]:not(.major){background-color:#fff;height:8px}[data-theme=high-contrast] .ruler-label[data-v-206818d5]{font-size:12px;font-weight:700;color:#fff;text-shadow:1px 1px 2px rgba(0,0,0,.8)}[data-theme=high-contrast] .mouse-indicator[data-v-206818d5]{height:3px;background-color:#0f0;box-shadow:0 0 4px #0f0}[data-theme=high-contrast] .guide-line-preview.vertical[data-v-206818d5]{height:3px;background-color:#0ff;opacity:1}.viewport-indicator-vertical[data-v-206818d5]{position:absolute;left:0;width:6px;background:linear-gradient(to right,transparent 0%,rgba(24,144,255,.3) 20%,rgba(24,144,255,.6) 80%,rgba(24,144,255,.3) 100%);border-top:2px solid var(--primary);border-bottom:2px solid var(--primary);pointer-events:none;z-index:5;transition:all .2s ease}[data-theme=high-contrast] .viewport-indicator-vertical[data-v-206818d5]{width:8px;background:linear-gradient(to right,transparent 0%,rgba(0,255,0,.4) 20%,rgba(0,255,0,.8) 80%,rgba(0,255,0,.4) 100%);border-top:3px solid #00ff00;border-bottom:3px solid #00ff00}.horizontal-ruler[data-v-bef64648]{position:relative;height:30px;background-color:var(--surface);border-bottom:1px solid var(--border);overflow:hidden;cursor:crosshair;width:100%;outline:none}.horizontal-ruler[data-v-bef64648]:focus-visible{box-shadow:inset 0 0 0 2px var(--primary)}.ruler-track[data-v-bef64648]{position:absolute;top:0;left:0;height:100%;display:flex;align-items:flex-end;transform-origin:left top}.ruler-tick[data-v-bef64648]{position:absolute;height:6px;width:1px;background-color:var(--text-secondary);bottom:0}.ruler-tick.major[data-v-bef64648]{height:12px;width:2px;background-color:var(--text)}.ruler-tick.micro[data-v-bef64648]{height:3px;width:1px;opacity:.4;background-color:var(--text-tertiary, #999)}.ruler-tick.grid-aligned[data-v-bef64648]{background-color:var(--primary, #1890ff)!important;box-shadow:0 0 4px #1890ff80}[data-theme=high-contrast] .ruler-tick.grid-aligned[data-v-bef64648]{background-color:#0f0!important;box-shadow:0 0 6px #0f0}.ruler-label[data-v-bef64648]{position:absolute;bottom:14px;left:2px;font-size:10px;color:var(--text-secondary);transform:translate(-50%)}.mouse-indicator[data-v-bef64648]{position:absolute;top:0;width:2px;height:100%;background-color:var(--primary);z-index:10}.guide-line-preview[data-v-bef64648]{position:absolute;background-color:var(--primary);opacity:.9;z-index:20;pointer-events:none;transition:opacity .15s ease}.guide-line-preview.horizontal[data-v-bef64648]{height:100%;width:3px;top:0;box-shadow:0 0 6px var(--primary);animation:guide-pulse-horizontal-bef64648 1s ease-in-out infinite}@keyframes guide-pulse-horizontal-bef64648{0%,to{opacity:.9;transform:scaleX(1)}50%{opacity:1;transform:scaleX(1.5)}}.viewport-indicator[data-v-bef64648]{position:absolute;bottom:0;height:6px;background:linear-gradient(to top,transparent 0%,rgba(24,144,255,.3) 20%,rgba(24,144,255,.6) 80%,rgba(24,144,255,.3) 100%);border-left:2px solid var(--primary);border-right:2px solid var(--primary);pointer-events:none;z-index:5;transition:all .2s ease}[data-theme=high-contrast] .horizontal-ruler[data-v-bef64648]{border-width:2px}[data-theme=high-contrast] .ruler-tick.major[data-v-bef64648]{width:16px;height:3px;background-color:#ff0}[data-theme=high-contrast] .ruler-tick[data-v-bef64648]:not(.major){background-color:#fff;width:8px}[data-theme=high-contrast] .ruler-label[data-v-bef64648]{font-size:12px;font-weight:700;color:#fff;text-shadow:1px 1px 2px rgba(0,0,0,.8)}[data-theme=high-contrast] .mouse-indicator[data-v-bef64648]{width:3px;background-color:#0f0;box-shadow:0 0 4px #0f0}[data-theme=high-contrast] .guide-line-preview.horizontal[data-v-bef64648]{width:3px;background-color:#0ff;opacity:1}[data-theme=high-contrast] .viewport-indicator[data-v-bef64648]{height:8px;background:linear-gradient(to top,transparent 0%,rgba(0,255,0,.4) 20%,rgba(0,255,0,.8) 80%,rgba(0,255,0,.4) 100%);border-left:3px solid #00ff00;border-right:3px solid #00ff00}.canvas-ruler-container[data-v-8936ebb5]{display:flex;flex:1;min-height:0;overflow:hidden;position:relative}.ruler-intersection[data-v-8936ebb5]{position:absolute;top:0;left:0;z-index:100;width:30px;height:30px;background-color:var(--surface);border-right:1px solid var(--border);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:center}.guide-line-toggle[data-v-8936ebb5]{width:20px;height:20px;border:1px solid var(--border);border-radius:3px;background-color:var(--surface);color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.guide-line-toggle[data-v-8936ebb5]:hover{background-color:var(--control-button-hover);border-color:var(--primary)}.guide-line-toggle.active[data-v-8936ebb5]{background-color:var(--primary);color:#fff;border-color:var(--primary)}.guide-line-toggle .icon[data-v-8936ebb5]{font-size:12px}.canvas-content-wrapper[data-v-8936ebb5]{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column}.ruler-context-menu[data-v-8936ebb5]{position:fixed;background:var(--surface);border:1px solid var(--border);border-radius:4px;padding:4px 0;min-width:180px;box-shadow:0 4px 16px #0003;z-index:9999;animation:menu-fade-in-8936ebb5 .15s ease-out}@keyframes menu-fade-in-8936ebb5{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.menu-item[data-v-8936ebb5]{padding:8px 14px;cursor:pointer;display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text);transition:background-color .15s ease}.menu-item[data-v-8936ebb5]:hover{background-color:var(--control-button-hover)}.menu-icon[data-v-8936ebb5]{font-size:14px;width:18px;text-align:center}.menu-divider[data-v-8936ebb5]{height:1px;background-color:var(--border);margin:4px 8px}.history-panel-wrapper[data-v-be493334]{position:relative}.footer-button[data-v-be493334]{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;background:none;color:var(--text-secondary);cursor:pointer;border-radius:3px;transition:var(--transition-fast);font-size:14px}.footer-button[data-v-be493334]:hover{background-color:var(--control-button-hover);color:var(--text)}.history-panel[data-v-be493334]{position:absolute;bottom:100%;left:0;margin-bottom:8px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-dropdown);width:200px;max-height:320px;display:flex;flex-direction:column;z-index:1000}.history-header[data-v-be493334]{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border-bottom:1px solid var(--border-light);font-size:13px;font-weight:600;color:var(--text);flex-shrink:0}.history-header-actions[data-v-be493334]{display:flex;align-items:center;gap:4px;margin-right:8px}.history-action-btn[data-v-be493334]{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border:none;background:none;color:var(--text-secondary);cursor:pointer;border-radius:3px;font-size:12px;transition:var(--transition-fast)}.history-action-btn[data-v-be493334]:hover:not(:disabled){background-color:var(--control-button-hover);color:var(--text)}.history-action-btn[data-v-be493334]:disabled{color:var(--text-tertiary);cursor:not-allowed;opacity:.4}.history-action-btn-danger[data-v-be493334]:hover:not(:disabled){background-color:var(--danger);color:#fff}.history-close[data-v-be493334]{background:none;border:none;cursor:pointer;font-size:14px;color:var(--text-tertiary);padding:2px 4px}.history-close[data-v-be493334]:hover{color:var(--text)}.history-body[data-v-be493334]{overflow-y:auto;flex:1;padding:8px 0}.history-empty[data-v-be493334]{padding:20px 12px;text-align:center;color:var(--text-secondary);font-size:12px}.history-timeline[data-v-be493334]{padding:0 12px}.history-entry[data-v-be493334]{display:flex;align-items:center;gap:10px;padding:6px 4px;cursor:pointer;border-radius:var(--radius-md);transition:background-color .15s ease;position:relative}.history-entry[data-v-be493334]:hover,.history-entry-current[data-v-be493334],.history-entry-current[data-v-be493334]:hover{background-color:var(--control-button-hover)}.history-dot[data-v-be493334]{width:10px;height:10px;border-radius:50%;border:2px solid var(--border);background-color:transparent;flex-shrink:0;transition:var(--transition-fast)}.history-dot-active[data-v-be493334]{border-color:var(--primary);background-color:var(--primary)}.history-dot-current[data-v-be493334]{border-color:var(--primary);background-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 20%,transparent)}.history-label[data-v-be493334]{font-size:12px;color:var(--text);line-height:1.4;word-break:break-all}.history-entry-current .history-label[data-v-be493334]{font-weight:600}.canvas-footer[data-v-6a28e9e2]{display:flex;align-items:center;justify-content:flex-end;background-color:var(--surface);color:var(--text);height:32px;padding:0 16px;border-top:1px solid var(--border);font-size:12px;gap:16px}.canvas-footer-left[data-v-6a28e9e2]{display:flex;align-items:center;gap:8px;flex:1}.footer-version[data-v-6a28e9e2]{color:var(--text-tertiary);font-size:11px;white-space:nowrap}.canvas-footer-right[data-v-6a28e9e2]{display:flex;align-items:center;gap:8px}.footer-button[data-v-6a28e9e2]{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;background:none;color:var(--text-secondary);cursor:pointer;border-radius:3px;transition:all .2s ease;font-size:14px}.footer-button[data-v-6a28e9e2]:hover{background-color:var(--control-button-hover);color:var(--text)}.footer-button-active[data-v-6a28e9e2]{background-color:var(--primary);color:#fff}.footer-button-active[data-v-6a28e9e2]:hover{background-color:var(--primary);color:#fff;opacity:.9}.zoom-control[data-v-6a28e9e2]{display:flex;align-items:center;gap:8px;margin-left:16px}.zoom-button[data-v-6a28e9e2]{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border:1px solid var(--border);background-color:var(--background);color:var(--text-secondary);cursor:pointer;border-radius:3px;transition:all .2s ease;font-size:12px;font-weight:700}.zoom-button[data-v-6a28e9e2]:hover{background-color:var(--control-button-hover);border-color:var(--primary);color:var(--text)}.zoom-slider[data-v-6a28e9e2]{width:60px;height:4px;background-color:var(--border);border-radius:2px;position:relative;cursor:pointer;padding:0 6px}.zoom-track[data-v-6a28e9e2]{width:60%;height:100%;background-color:var(--primary);border-radius:2px;position:relative}.zoom-thumb[data-v-6a28e9e2]{position:absolute;right:-6px;top:50%;transform:translateY(-50%);width:12px;height:12px;background-color:var(--text);border-radius:50%;cursor:pointer;box-shadow:var(--shadow-small)}.zoom-value[data-v-6a28e9e2]{min-width:40px;text-align:right;color:var(--text-secondary);font-size:12px}.message-toast-container[data-v-c8c3b2c8]{position:fixed;bottom:60px;left:50%;transform:translate(-50%);z-index:9999;display:flex;flex-direction:column;gap:8px;pointer-events:none}.message-toast-item[data-v-c8c3b2c8]{display:flex;align-items:center;gap:8px;padding:8px 14px;border-radius:6px;font-size:13px;line-height:1.4;min-width:200px;max-width:480px;box-shadow:0 4px 12px #00000040;cursor:pointer;pointer-events:auto;transition:background-color .15s}.message-toast-item[data-v-c8c3b2c8]:hover{filter:brightness(1.05)}.message-toast-success[data-v-c8c3b2c8]{background-color:var(--toast-success-bg, #1b5e20);color:var(--toast-success-text, #c8e6c9);border:1px solid var(--toast-success-border, #2e7d32)}.message-toast-error[data-v-c8c3b2c8]{background-color:var(--toast-error-bg, #b71c1c);color:var(--toast-error-text, #ffcdd2);border:1px solid var(--toast-error-border, #c62828)}.message-toast-warning[data-v-c8c3b2c8]{background-color:var(--toast-warning-bg, #e65100);color:var(--toast-warning-text, #ffe0b2);border:1px solid var(--toast-warning-border, #ef6c00)}.message-toast-info[data-v-c8c3b2c8]{background-color:var(--toast-info-bg, #0d47a1);color:var(--toast-info-text, #bbdefb);border:1px solid var(--toast-info-border, #1565c0)}.message-toast-icon[data-v-c8c3b2c8]{font-size:15px;flex-shrink:0}.message-toast-text[data-v-c8c3b2c8]{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.message-toast-close[data-v-c8c3b2c8]{background:none;border:none;color:inherit;opacity:.6;cursor:pointer;font-size:16px;line-height:1;padding:0 2px;flex-shrink:0}.message-toast-close[data-v-c8c3b2c8]:hover{opacity:1}.msg-toast-enter-active[data-v-c8c3b2c8]{transition:all .3s ease-out}.msg-toast-leave-active[data-v-c8c3b2c8]{transition:all .25s ease-in}.msg-toast-enter-from[data-v-c8c3b2c8]{opacity:0;transform:translateY(20px)}.msg-toast-leave-to[data-v-c8c3b2c8]{opacity:0;transform:translateY(-10px)}.design-canvas-container[data-v-d58cde8e]{position:relative;border:1px solid var(--border);background-color:var(--background);overflow:hidden;min-height:0;width:100%;flex:1;display:flex;flex-direction:column}.design-canvas-container[data-v-d58cde8e]:focus{outline:none}.design-canvas[data-v-d58cde8e]{display:block;background-color:var(--surface);z-index:1}.layout-content-bar[data-v-d58cde8e]{position:absolute;left:50%;bottom:44px;transform:translate(-50%);z-index:30;display:flex;align-items:center;gap:8px;max-width:calc(100% - 32px);padding:5px 10px;border-radius:4px;font-size:12px;line-height:1.5;color:var(--text);background:color-mix(in srgb,var(--surface) 88%,transparent);border:1px solid var(--border);box-shadow:0 2px 8px #00000026;pointer-events:auto}.layout-content-bar__text[data-v-d58cde8e]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.layout-content-bar__text--error[data-v-d58cde8e]{color:var(--status-error, #d4380d)}.layout-content-bar__action[data-v-d58cde8e]{flex:0 0 auto;padding:2px 8px;font-size:12px;color:var(--text);background:transparent;border:1px solid var(--border);border-radius:3px;cursor:pointer;white-space:nowrap}.layout-content-bar__action[data-v-d58cde8e]:hover,.layout-content-bar__action--primary[data-v-d58cde8e]{color:var(--primary);border-color:var(--primary)}.canvas-ruler-container[data-v-8641cf7b]{display:flex;flex:1;overflow:hidden;position:relative}.ruler-intersection[data-v-8641cf7b]{position:absolute;top:0;left:0;z-index:100;width:30px;height:30px;background-color:var(--surface);border-right:1px solid var(--border);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:center}.guide-line-toggle[data-v-8641cf7b]{width:20px;height:20px;border:1px solid var(--border);border-radius:3px;background-color:var(--surface);color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.guide-line-toggle[data-v-8641cf7b]:hover{background-color:var(--control-button-hover);border-color:var(--primary)}.guide-line-toggle.active[data-v-8641cf7b]{background-color:var(--primary);color:#fff;border-color:var(--primary)}.guide-line-toggle .icon[data-v-8641cf7b]{font-size:12px}.canvas-content-container[data-v-8641cf7b]{flex:1;display:flex;flex-direction:column;overflow:hidden}.zoom-slider[data-v-a514fd82]{display:flex;align-items:center;gap:6px;padding:2px 6px;background:var(--panel-background, #f5f5f5);border-radius:4px;box-shadow:0 1px 3px #0000001a;min-width:160px;height:24px}.zoom-slider.zoom-disabled[data-v-a514fd82]{opacity:.5;cursor:not-allowed}.zoom-slider.zoom-disabled .zoom-range[data-v-a514fd82]{cursor:not-allowed}.zoom-slider .zoom-slider-controls[data-v-a514fd82]{display:flex;align-items:center;gap:4px}.zoom-slider .zoom-slider-controls .zoom-button[data-v-a514fd82]{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border:none;background:var(--surface, #ffffff);border-radius:4px;cursor:pointer;color:var(--text, #333333);transition:all .2s ease}.zoom-slider .zoom-slider-controls .zoom-button[data-v-a514fd82]:hover{background:var(--primary-light, #e6f7ff);color:var(--primary, #1890ff)}.zoom-slider .zoom-slider-controls .zoom-button[data-v-a514fd82]:disabled{opacity:.5;cursor:not-allowed}.zoom-slider .zoom-slider-controls .zoom-button[data-v-a514fd82]:disabled:hover{background:var(--surface, #ffffff);color:var(--text, #333333)}.zoom-slider .zoom-slider-controls .slider-container[data-v-a514fd82]{position:relative;width:80px;height:20px;display:flex;align-items:center;padding:0 8px}.zoom-slider .zoom-slider-controls .slider-container .zoom-range[data-v-a514fd82]{position:absolute;width:100%;height:4px;background:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none;outline:none;cursor:pointer}.zoom-slider .zoom-slider-controls .slider-container .zoom-range[data-v-a514fd82]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:16px;height:16px;background:var(--primary, #1890ff);border-radius:50%;cursor:pointer;box-shadow:0 1px 3px #0003;transition:all .2s ease}.zoom-slider .zoom-slider-controls .slider-container .zoom-range[data-v-a514fd82]::-webkit-slider-thumb:hover{transform:scale(1.1);box-shadow:0 2px 4px #0000004d}.zoom-slider .zoom-slider-controls .slider-container .zoom-range[data-v-a514fd82]::-moz-range-thumb{width:16px;height:16px;background:var(--primary, #1890ff);border-radius:50%;cursor:pointer;border:none;box-shadow:0 1px 3px #0003;transition:all .2s ease}.zoom-slider .zoom-slider-controls .slider-container .zoom-range[data-v-a514fd82]::-moz-range-thumb:hover{transform:scale(1.1);box-shadow:0 2px 4px #0000004d}.zoom-slider .zoom-slider-controls .slider-container .slider-track[data-v-a514fd82]{position:absolute;width:100%;height:4px;background:var(--border, #e8e8e8);border-radius:2px}.zoom-slider .zoom-slider-controls .slider-container .slider-track .slider-progress[data-v-a514fd82]{position:absolute;height:100%;background:var(--primary, #1890ff);border-radius:2px;transition:width .2s ease}.zoom-slider .zoom-value[data-v-a514fd82]{min-width:40px;width:40px;text-align:center;font-size:12px;font-weight:500;color:var(--text, #ffffff);flex-shrink:0}[data-v-a514fd82] .dark .zoom-slider{background:var(--panel-background, #1f1f1f)}[data-v-a514fd82] .dark .zoom-slider .zoom-slider-controls .zoom-button{background:var(--surface, #2d2d2d);color:var(--text, #e0e0e0)}[data-v-a514fd82] .dark .zoom-slider .zoom-slider-controls .zoom-button:hover{background:var(--primary-light, #1a365d);color:var(--primary, #3182ce)}[data-v-a514fd82] .dark .zoom-slider .zoom-slider-controls .zoom-button:disabled:hover{background:var(--surface, #2d2d2d);color:var(--text, #e0e0e0)}[data-v-a514fd82] .dark .zoom-slider .zoom-slider-controls .slider-container .slider-track{background:var(--border, #3d3d3d)}[data-v-a514fd82] .dark .zoom-slider .zoom-slider-controls .slider-container .slider-track .slider-progress{background:var(--primary, #3182ce)}[data-v-a514fd82] .dark .zoom-slider .zoom-slider-controls .slider-container .zoom-range::-webkit-slider-thumb{background:var(--primary, #3182ce)}[data-v-a514fd82] .dark .zoom-slider .zoom-slider-controls .slider-container .zoom-range::-moz-range-thumb{background:var(--primary, #3182ce)}[data-v-a514fd82] .dark .zoom-slider .zoom-value{color:var(--text, #e0e0e0)}.runtime-data-panel-overlay[data-v-71914a79]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:2000;display:flex;align-items:center;justify-content:center}.runtime-data-panel[data-v-71914a79]{width:720px;max-height:80vh;background:var(--surface, #fff);border-radius:10px;box-shadow:var(--shadow-modal, 0 8px 40px rgba(0, 0, 0, .2));display:flex;flex-direction:column;overflow:hidden}.panel-header[data-v-71914a79]{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--border, #e8eaed);background:var(--header-background, #fafbfc)}.panel-title[data-v-71914a79]{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:var(--text, #1a1a2e)}.panel-icon[data-v-71914a79]{font-size:18px}.panel-subtitle[data-v-71914a79]{font-size:12px;color:var(--text-tertiary, #909399);font-weight:400;margin-left:4px}.panel-header-right[data-v-71914a79]{display:flex;gap:6px}.btn-refresh[data-v-71914a79],.btn-close[data-v-71914a79]{width:32px;height:32px;border:1px solid var(--border, #e0e0e0);border-radius:6px;background:var(--surface, #fff);color:var(--text-secondary, #606266);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;transition:all .2s}.ws-status[data-v-71914a79]{display:flex;align-items:center;justify-content:center;font-size:16px;padding:0 6px;border-radius:6px;transition:all .3s}.ws-status.ws-online[data-v-71914a79]{color:#22c55e;text-shadow:0 0 6px rgba(34,197,94,.4)}.ws-status.ws-offline[data-v-71914a79]{color:#94a3b8}.btn-refresh[data-v-71914a79]:hover,.btn-close[data-v-71914a79]:hover{background:var(--elevated, #f0f0f0);color:var(--text, #1a1a2e)}.btn-refresh.spinning[data-v-71914a79]{animation:spin-71914a79 .6s linear}@keyframes spin-71914a79{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.panel-body[data-v-71914a79]{flex:1;overflow-y:auto;padding:14px 18px;display:flex;flex-direction:column;gap:10px}.empty-state[data-v-71914a79]{display:flex;flex-direction:column;align-items:center;gap:8px;padding:40px 0;color:var(--text-tertiary, #909399);font-size:14px}.empty-icon[data-v-71914a79]{font-size:36px}.source-card[data-v-71914a79]{border:1px solid var(--border, #e8eaed);border-radius:8px;overflow:hidden;transition:border-color .2s;background:var(--surface, #fff)}.source-card.status-active[data-v-71914a79]{border-left:3px solid var(--status-success, #18a058)}.source-card.status-error[data-v-71914a79]{border-left:3px solid var(--status-error, #d03050)}.source-card.status-loading[data-v-71914a79]{border-left:3px solid var(--status-warning, #f0a020)}.source-header[data-v-71914a79]{display:flex;align-items:center;justify-content:space-between;padding:8px 14px;background:var(--header-background, #fafbfc)}.source-info[data-v-71914a79]{display:flex;align-items:center;gap:8px}.source-type-badge[data-v-71914a79]{font-size:11px;padding:2px 7px;border-radius:4px;color:#fff;font-weight:500}.type-static[data-v-71914a79]{background:#909399}.type-tag[data-v-71914a79]{background:#2080f0}.type-api[data-v-71914a79],.type-polling[data-v-71914a79]{background:#18a058}.type-sql[data-v-71914a79],.type-database[data-v-71914a79]{background:#f0a020}.type-expression[data-v-71914a79]{background:#9c27b0}.source-name[data-v-71914a79]{font-size:13px;font-weight:600;color:var(--text, #1a1a2e)}.source-status[data-v-71914a79]{display:flex;align-items:center;gap:6px}.status-dot[data-v-71914a79]{width:8px;height:8px;border-radius:50%}.dot-active[data-v-71914a79]{background:var(--status-success, #18a058)}.dot-loading[data-v-71914a79]{background:var(--status-warning, #f0a020);animation:pulse-71914a79 1.2s ease-in-out infinite}.dot-error[data-v-71914a79]{background:var(--status-error, #d03050)}.dot-paused[data-v-71914a79]{background:var(--text-tertiary, #909399)}.dot-idle[data-v-71914a79]{background:var(--border, #c0c4cc)}@keyframes pulse-71914a79{0%,to{opacity:1}50%{opacity:.3}}.status-label[data-v-71914a79]{font-size:12px;color:var(--text-secondary, #606266)}.source-detail[data-v-71914a79]{display:flex;align-items:center;gap:0;padding:8px 14px;border-top:1px solid var(--border-light, #f0f0f0)}.detail-item[data-v-71914a79]{display:flex;flex-direction:column;gap:2px;flex:1;min-width:0}.detail-label[data-v-71914a79]{font-size:11px;color:var(--text-tertiary, #909399)}.detail-data-value[data-v-71914a79]{font-size:13px;font-family:monospace;color:var(--primary, #2080f0);font-weight:500;max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.detail-data-time[data-v-71914a79]{font-size:12px;color:var(--text-secondary, #606266);white-space:nowrap}.detail-empty[data-v-71914a79]{font-size:13px;color:var(--text-tertiary, #c0c4cc)}.source-error[data-v-71914a79]{padding:6px 14px;font-size:12px;color:var(--status-error, #d03050);background:#d030500d;border-bottom:1px solid var(--border, #e8eaed)}.source-tags[data-v-71914a79]{border-top:1px solid var(--border, #e8eaed)}.tags-header[data-v-71914a79]{display:flex;align-items:center;justify-content:space-between;padding:8px 14px;font-size:12px;color:var(--text-secondary, #606266);background:var(--elevated, #f5f7fa)}.btn-toggle[data-v-71914a79]{font-size:12px;padding:2px 8px;border:1px solid var(--border, #dcdfe6);border-radius:4px;background:var(--surface, #fff);color:var(--text-secondary, #606266);cursor:pointer}.btn-toggle[data-v-71914a79]:hover{color:var(--primary, #2080f0);border-color:var(--primary, #2080f0)}.tags-table[data-v-71914a79]{overflow-x:auto}.tags-table table[data-v-71914a79]{width:100%;border-collapse:collapse;font-size:12px}.tags-table th[data-v-71914a79]{padding:6px 10px;text-align:left;background:var(--header-background, #fafbfc);color:var(--text-tertiary, #909399);font-weight:500;border-bottom:1px solid var(--border, #e8eaed)}.tags-table td[data-v-71914a79]{padding:6px 10px;border-bottom:1px solid var(--border-light, #f0f0f0);color:var(--text, #303133)}.cell-tagid[data-v-71914a79]{font-family:monospace;font-size:11px;color:var(--text-secondary, #606266)}.cell-value[data-v-71914a79]{font-family:monospace;font-weight:500;color:var(--primary, #2080f0)}.cell-time[data-v-71914a79]{font-size:11px;color:var(--text-tertiary, #c0c4cc);white-space:nowrap}.quality-badge[data-v-71914a79]{font-size:11px;padding:1px 5px;border-radius:3px}.q-good[data-v-71914a79]{background:#18a0581a;color:var(--status-success, #18a058)}.q-uncertain[data-v-71914a79]{background:#f0a0201a;color:var(--status-warning, #f0a020)}.q-bad[data-v-71914a79]{background:#d030501a;color:var(--status-error, #d03050)}.q-stale[data-v-71914a79]{background:#9093991a;color:var(--text-tertiary, #909399)}.q-unknown[data-v-71914a79]{color:var(--text-tertiary, #c0c4cc)}.panel-footer[data-v-71914a79]{padding:10px 18px;border-top:1px solid var(--border, #e8eaed);background:var(--header-background, #fafbfc)}.footer-info[data-v-71914a79]{font-size:12px;color:var(--text-tertiary, #909399)}.theme-selector-overlay[data-v-1a442adf]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:2100;display:flex;align-items:center;justify-content:center}.theme-selector-panel[data-v-1a442adf]{width:560px;max-height:80vh;background:var(--surface, #fff);border-radius:12px;box-shadow:var(--shadow-modal, 0 8px 40px rgba(0, 0, 0, .2));display:flex;flex-direction:column;overflow:hidden}.panel-header[data-v-1a442adf]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border, #e8eaed);background:var(--header-background, #fafbfc)}.panel-title[data-v-1a442adf]{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:600;color:var(--text, #1a1a2e)}.panel-icon[data-v-1a442adf]{font-size:20px}.btn-close[data-v-1a442adf]{width:32px;height:32px;border:1px solid var(--border, #e0e0e0);border-radius:6px;background:var(--surface, #fff);color:var(--text-secondary, #606266);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;transition:all .2s}.btn-close[data-v-1a442adf]:hover{background:var(--elevated, #f0f0f0);color:var(--text, #1a1a2e)}.panel-body[data-v-1a442adf]{flex:1;overflow-y:auto;padding:20px}.theme-grid[data-v-1a442adf]{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.theme-item[data-v-1a442adf]{cursor:pointer;border-radius:10px;overflow:hidden;border:2px solid transparent;transition:all .2s;background:var(--elevated, #f5f7fa)}.theme-item[data-v-1a442adf]:hover{transform:translateY(-2px);box-shadow:var(--shadow-medium, 0 4px 12px rgba(0, 0, 0, .1))}.theme-item.active[data-v-1a442adf]{border-color:var(--primary, #2080f0)}.theme-preview[data-v-1a442adf]{height:80px;background:var(--preview-background);position:relative;overflow:hidden}.preview-header[data-v-1a442adf]{height:20px;background:var(--preview-primary)}.preview-content[data-v-1a442adf]{padding:8px;display:flex;flex-direction:column;gap:6px}.preview-block[data-v-1a442adf]{width:40px;height:24px;background:var(--preview-surface);border-radius:4px;box-shadow:0 1px 3px #0000001a}.preview-text[data-v-1a442adf]{height:8px;background:var(--preview-text);opacity:.3;border-radius:2px}.theme-info[data-v-1a442adf]{padding:10px 12px;display:flex;flex-direction:column;gap:4px;background:var(--surface, #fff)}.theme-name[data-v-1a442adf]{font-size:13px;font-weight:500;color:var(--text, #1a1a2e)}.theme-active-badge[data-v-1a442adf]{font-size:11px;color:var(--primary, #2080f0);font-weight:500}.panel-footer[data-v-1a442adf]{padding:12px 20px;border-top:1px solid var(--border, #e8eaed);background:var(--header-background, #fafbfc)}.footer-info[data-v-1a442adf]{font-size:12px;color:var(--text-tertiary, #909399)}@media (max-width: 640px){.theme-selector-panel[data-v-1a442adf]{width:90vw}.theme-grid[data-v-1a442adf]{grid-template-columns:repeat(2,1fr)}}.perf-panel[data-v-f1484b03]{position:fixed;top:60px;right:20px;width:340px;max-height:80vh;overflow-y:auto;background:var(--surface, #18181c);border:1px solid var(--border, rgba(255, 255, 255, .1));border-radius:12px;box-shadow:var(--shadow-modal, 0 8px 40px rgba(0, 0, 0, .3));z-index:9999;color:var(--text, #e0e0e0);font-size:12px}.panel-header[data-v-f1484b03]{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border, rgba(255, 255, 255, .08));background:var(--header-background, rgba(255, 255, 255, .03));border-radius:12px 12px 0 0}.panel-title[data-v-f1484b03]{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--text, #ffffff)}.panel-icon[data-v-f1484b03]{font-size:16px}.btn-close[data-v-f1484b03]{width:28px;height:28px;border:1px solid var(--border, rgba(255, 255, 255, .15));border-radius:6px;background:var(--surface, #18181c);color:var(--text-secondary, #999);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;transition:all .2s}.btn-close[data-v-f1484b03]:hover{background:var(--elevated, rgba(255, 255, 255, .08));color:var(--text, #fff)}.panel-body[data-v-f1484b03]{padding:14px 16px}.metric-section[data-v-f1484b03]{margin-bottom:16px}.metric-section[data-v-f1484b03]:last-child{margin-bottom:0}.metric-label[data-v-f1484b03]{display:flex;align-items:center;gap:6px;font-size:11px;color:var(--text-secondary, #888);margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px}.metric-window[data-v-f1484b03]{font-size:10px;font-weight:400;color:var(--text-secondary, #777);text-transform:none;letter-spacing:0}.metric-note[data-v-f1484b03]{margin-top:4px;font-size:10px;line-height:1.5;color:var(--text-secondary, #777)}.metric-detail[data-v-f1484b03]{color:var(--text-secondary, #aaa);font-size:11px;line-height:1.6}.metric-detail .detail-sep[data-v-f1484b03]{margin:0 6px;color:var(--border, rgba(255, 255, 255, .15))}.bar-container[data-v-f1484b03]{height:6px;background-color:var(--elevated, rgba(255, 255, 255, .08));border-radius:3px;margin:4px 0;overflow:hidden}.bar[data-v-f1484b03]{height:100%;border-radius:3px;transition:width .3s ease}.bar.good[data-v-f1484b03]{background-color:#4caf50}.bar.warning[data-v-f1484b03]{background-color:#ff9800}.bar.bad[data-v-f1484b03]{background-color:#f44336}.metric-value-large[data-v-f1484b03]{font-size:22px;font-weight:700;line-height:1.3}.metric-value-large.good[data-v-f1484b03]{color:#4caf50}.metric-value-large.warning[data-v-f1484b03]{color:#ff9800}.metric-value-large.bad[data-v-f1484b03]{color:#f44336}.panel-footer[data-v-f1484b03]{display:flex;gap:8px;padding:10px 16px;border-top:1px solid var(--border, rgba(255, 255, 255, .08))}.btn-action[data-v-f1484b03]{flex:1;padding:7px 0;border:1px solid var(--border, rgba(255, 255, 255, .15));border-radius:6px;background:var(--surface, #18181c);color:var(--text-secondary, #ccc);font-size:12px;cursor:pointer;transition:all .2s}.btn-action[data-v-f1484b03]:hover{background:var(--elevated, rgba(255, 255, 255, .08));color:var(--text, #fff);border-color:var(--primary, #63e2b7)}.stat-panel[data-v-42e06fca]{position:fixed;top:60px;right:20px;width:340px;max-height:80vh;overflow-y:auto;background:var(--surface, #18181c);border:1px solid var(--border, rgba(255, 255, 255, .1));border-radius:12px;box-shadow:var(--shadow-modal, 0 8px 40px rgba(0, 0, 0, .3));z-index:9999;color:var(--text, #e0e0e0);font-size:12px}.panel-header[data-v-42e06fca]{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border, rgba(255, 255, 255, .08));background:var(--header-background, rgba(255, 255, 255, .03));border-radius:12px 12px 0 0}.panel-title[data-v-42e06fca]{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--text, #ffffff)}.panel-icon[data-v-42e06fca]{font-size:16px}.btn-close[data-v-42e06fca]{width:28px;height:28px;border:1px solid var(--border, rgba(255, 255, 255, .15));border-radius:6px;background:var(--surface, #18181c);color:var(--text-secondary, #999);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;transition:all .2s}.btn-close[data-v-42e06fca]:hover{background:var(--elevated, rgba(255, 255, 255, .08));color:var(--text, #fff)}.panel-body[data-v-42e06fca]{padding:14px 16px}.stat-section[data-v-42e06fca]{margin-bottom:16px}.stat-section[data-v-42e06fca]:last-child{margin-bottom:0}.section-title[data-v-42e06fca]{font-size:11px;color:var(--text-secondary, #888);margin-bottom:6px;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border, rgba(255, 255, 255, .08));padding-bottom:4px}.stat-row[data-v-42e06fca]{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:2px;align-items:center}.stat-label[data-v-42e06fca]{color:var(--text-secondary, #888)}.stat-value[data-v-42e06fca]{color:var(--text, #ccc)}.stat-sep[data-v-42e06fca]{color:var(--border, rgba(255, 255, 255, .15));margin:0 4px}.stat-value.highlight[data-v-42e06fca]{color:var(--primary, #63e2b7);font-weight:600;font-size:14px}.stat-value.dim[data-v-42e06fca]{color:var(--text-secondary, #666);font-style:italic}.type-table[data-v-42e06fca]{margin:4px 0 6px;padding:4px 8px;background:var(--elevated, rgba(255, 255, 255, .04));border-radius:4px}.type-row[data-v-42e06fca]{display:flex;justify-content:space-between;padding:2px 0}.type-name[data-v-42e06fca]{color:var(--text, #bbb);text-transform:capitalize}.type-count[data-v-42e06fca]{color:var(--primary, #63e2b7);font-weight:600}.panel-footer[data-v-42e06fca]{padding:10px 16px;border-top:1px solid var(--border, rgba(255, 255, 255, .08))}.btn-action[data-v-42e06fca]{width:100%;padding:7px 0;border:1px solid var(--border, rgba(255, 255, 255, .15));border-radius:6px;background:var(--surface, #18181c);color:var(--text-secondary, #ccc);font-size:12px;cursor:pointer;transition:all .2s}.btn-action[data-v-42e06fca]:hover{background:var(--elevated, rgba(255, 255, 255, .08));color:var(--text, #fff);border-color:var(--primary, #63e2b7)}.context-menu[data-v-6afe2dc7]{position:fixed;background-color:var(--surface, #fff);border:1px solid var(--border, #ccc);border-radius:var(--radius-md, 4px);box-shadow:var(--shadow-dropdown, 0 4px 12px rgba(0, 0, 0, .12));z-index:1000;min-width:150px;padding:4px 0}.context-menu-item[data-v-6afe2dc7]{padding:8px 16px;cursor:pointer;font-size:13px;color:var(--text, #333);transition:all .15s}.context-menu-item[data-v-6afe2dc7]:hover{background-color:var(--primary, #2196f3);color:#fff}.context-menu-header[data-v-6afe2dc7]{padding:6px 16px 2px;font-size:11px;color:var(--text-secondary, #999);cursor:default;-webkit-user-select:none;user-select:none}.context-menu-divider[data-v-6afe2dc7]{height:1px;margin:4px 8px;background-color:var(--border, #ccc)}.script-monitor-panel[data-v-8073a356]{position:fixed;top:60px;right:20px;width:480px;max-height:80vh;overflow-y:auto;background:var(--surface, #18181c);border:1px solid var(--border, rgba(255, 255, 255, .1));border-radius:12px;box-shadow:var(--shadow-modal, 0 8px 40px rgba(0, 0, 0, .3));z-index:9999;color:var(--text, #e0e0e0);font-size:12px}.panel-header[data-v-8073a356]{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border, rgba(255, 255, 255, .08));background:var(--header-background, rgba(255, 255, 255, .03));border-radius:12px 12px 0 0;flex-wrap:wrap;gap:8px}.panel-title[data-v-8073a356]{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--text, #ffffff);white-space:nowrap}.panel-icon[data-v-8073a356]{font-size:16px}.header-actions[data-v-8073a356]{display:flex;align-items:center;gap:6px}.btn-header-action[data-v-8073a356]{padding:4px 10px;border:1px solid var(--border, rgba(255, 255, 255, .15));border-radius:6px;background:var(--surface, #18181c);color:var(--text-secondary, #ccc);font-size:11px;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-header-action[data-v-8073a356]:hover{background:var(--elevated, rgba(255, 255, 255, .08));color:var(--text, #fff);border-color:var(--primary, #63e2b7)}.btn-clear[data-v-8073a356]{color:var(--text-warning, #e6a23c);border-color:#e6a23c4d}.btn-clear[data-v-8073a356]:hover{border-color:var(--text-warning, #e6a23c);background:#e6a23c1a;color:#e6a23c}.btn-close[data-v-8073a356]{width:28px;height:28px;border:1px solid var(--border, rgba(255, 255, 255, .15));border-radius:6px;background:var(--surface, #18181c);color:var(--text-secondary, #999);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;transition:all .2s}.btn-close[data-v-8073a356]:hover{background:var(--elevated, rgba(255, 255, 255, .08));color:var(--text, #fff)}.panel-body[data-v-8073a356]{padding:12px 16px}.empty-state[data-v-8073a356]{text-align:center;padding:32px 0;color:var(--text-secondary, #666);font-size:13px}.timer-card[data-v-8073a356]{margin-bottom:12px;border:1px solid var(--border, rgba(255, 255, 255, .08));border-radius:8px;overflow:hidden;background:var(--elevated, rgba(255, 255, 255, .02))}.timer-card[data-v-8073a356]:last-child{margin-bottom:0}.timer-header[data-v-8073a356]{padding:10px 12px;border-bottom:1px solid var(--border, rgba(255, 255, 255, .06))}.timer-name-row[data-v-8073a356]{display:flex;align-items:center;gap:8px;margin-bottom:4px}.status-dot[data-v-8073a356]{width:8px;height:8px;border-radius:50%;flex-shrink:0}.status-dot.running[data-v-8073a356]{background-color:#4caf50;box-shadow:0 0 6px #4caf5080}.status-dot.stopped[data-v-8073a356]{background-color:#888}.timer-name[data-v-8073a356]{font-size:13px;font-weight:600;color:var(--text, #e0e0e0);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.timer-status[data-v-8073a356]{font-size:11px;padding:2px 8px;border-radius:10px;font-weight:500}.timer-status.running[data-v-8073a356]{background:#4caf5026;color:#4caf50}.timer-status.stopped[data-v-8073a356]{background:#88888826;color:#aaa}.timer-meta[data-v-8073a356]{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--text-secondary, #888);margin-left:16px}.meta-sep[data-v-8073a356]{color:var(--border, rgba(255, 255, 255, .15))}.log-section[data-v-8073a356]{padding:8px 12px}.log-label[data-v-8073a356]{font-size:10px;color:var(--text-secondary, #666);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.log-list[data-v-8073a356]{max-height:200px;overflow-y:auto;border-radius:4px;background:var(--surface, rgba(0, 0, 0, .2));padding:4px}.log-entry[data-v-8073a356]{display:flex;align-items:flex-start;gap:6px;padding:6px 8px;margin-bottom:2px;border-radius:4px;font-size:11px;line-height:1.5}.log-entry[data-v-8073a356]:last-child{margin-bottom:0}.log-entry.log-success[data-v-8073a356]{background:#4caf5014}.log-entry.log-error[data-v-8073a356]{background:#f4433614}.log-icon[data-v-8073a356]{flex-shrink:0;font-size:12px;margin-top:1px}.log-body[data-v-8073a356]{flex:1;min-width:0}.log-time[data-v-8073a356]{font-size:10px;color:var(--text-secondary, #666);margin-bottom:2px}.log-text[data-v-8073a356]{color:var(--text, #ccc);white-space:pre-wrap;word-break:break-all}.log-empty[data-v-8073a356]{text-align:center;padding:16px 0;color:var(--text-secondary, #555);font-size:11px}.copy-tip[data-v-8073a356]{position:absolute;bottom:12px;left:50%;transform:translate(-50%);padding:6px 16px;background:var(--primary, #63e2b7);color:#000;border-radius:6px;font-size:12px;font-weight:500;pointer-events:none}.fade-enter-active[data-v-8073a356],.fade-leave-active[data-v-8073a356]{transition:opacity .3s}.fade-enter-from[data-v-8073a356],.fade-leave-to[data-v-8073a356]{opacity:0}.debug-panel[data-v-ac587b2b]{position:fixed;top:60px;right:20px;width:360px;max-height:80vh;overflow-y:auto;background:var(--surface, #18181c);border:1px solid var(--border, rgba(255, 255, 255, .1));border-radius:12px;box-shadow:var(--shadow-modal, 0 8px 40px rgba(0, 0, 0, .3));z-index:9999;color:var(--text, #e0e0e0);font-size:12px}.panel-header[data-v-ac587b2b]{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border, rgba(255, 255, 255, .08));background:var(--header-background, rgba(255, 255, 255, .03));border-radius:12px 12px 0 0}.panel-title[data-v-ac587b2b]{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:var(--text, #ffffff)}.panel-icon[data-v-ac587b2b]{font-size:16px}.btn-close[data-v-ac587b2b]{width:28px;height:28px;border:1px solid var(--border, rgba(255, 255, 255, .15));border-radius:6px;background:var(--surface, #18181c);color:var(--text-secondary, #999);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;transition:all .2s}.btn-close[data-v-ac587b2b]:hover{background:var(--elevated, rgba(255, 255, 255, .08));color:var(--text, #fff)}.panel-body[data-v-ac587b2b]{padding:14px 16px}.section[data-v-ac587b2b]{margin-bottom:16px}.section[data-v-ac587b2b]:last-child{margin-bottom:0}.section-title[data-v-ac587b2b]{font-size:11px;color:var(--text-secondary, #888);margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border, rgba(255, 255, 255, .08));padding-bottom:4px}.info-grid[data-v-ac587b2b]{display:grid;gap:4px}.info-item[data-v-ac587b2b]{display:flex;justify-content:space-between;align-items:center;padding:2px 0}.info-label[data-v-ac587b2b]{color:var(--text-secondary, #888);font-size:11px}.info-value[data-v-ac587b2b]{color:var(--text, #ccc);font-size:11px;font-weight:500}.info-value.highlight[data-v-ac587b2b]{color:var(--primary, #63e2b7);font-weight:600}.info-value.status-ok[data-v-ac587b2b]{color:#4caf50}.info-value.status-err[data-v-ac587b2b]{color:#f44336}.fitmode-group[data-v-ac587b2b]{display:flex;flex-wrap:wrap;gap:6px}.fitmode-btn[data-v-ac587b2b]{padding:5px 10px;border:1px solid var(--border, rgba(255, 255, 255, .15));border-radius:6px;background:var(--surface, #18181c);color:var(--text-secondary, #aaa);font-size:11px;cursor:pointer;transition:all .2s}.fitmode-btn[data-v-ac587b2b]:hover{background:var(--elevated, rgba(255, 255, 255, .08));color:var(--text, #fff)}.fitmode-btn.active[data-v-ac587b2b]{background:var(--primary, #63e2b7);color:#000;border-color:var(--primary, #63e2b7);font-weight:600}.action-row[data-v-ac587b2b]{margin-bottom:8px}.toggle-label[data-v-ac587b2b]{display:flex;align-items:center;gap:6px;cursor:pointer;color:var(--text-secondary, #aaa);font-size:11px}.toggle-label input[type=checkbox][data-v-ac587b2b]{accent-color:var(--primary, #63e2b7)}.toggle-text[data-v-ac587b2b]{color:var(--text, #ccc)}.btn-action[data-v-ac587b2b]{width:100%;padding:7px 0;border:1px solid var(--border, rgba(255, 255, 255, .15));border-radius:6px;background:var(--surface, #18181c);color:var(--text-secondary, #ccc);font-size:12px;cursor:pointer;transition:all .2s}.btn-action[data-v-ac587b2b]:hover{background:var(--elevated, rgba(255, 255, 255, .08));color:var(--text, #fff);border-color:var(--primary, #63e2b7)}.btn-action.small[data-v-ac587b2b]{width:auto;padding:5px 12px;font-size:11px;display:inline-block}.diag-results[data-v-ac587b2b]{background:var(--elevated, rgba(255, 255, 255, .04));border-radius:6px;padding:8px 10px}.diag-row[data-v-ac587b2b]{display:flex;align-items:center;gap:6px;padding:3px 0;border-bottom:1px solid var(--border, rgba(255, 255, 255, .05))}.diag-row[data-v-ac587b2b]:last-child{border-bottom:none}.diag-status-icon[data-v-ac587b2b]{width:20px;text-align:center;font-size:12px}.diag-label[data-v-ac587b2b]{color:var(--text-secondary, #888);font-size:11px;min-width:60px;flex-shrink:0}.diag-value[data-v-ac587b2b]{color:var(--text, #ccc);font-size:11px}.diag-detail-row[data-v-ac587b2b]{display:flex;gap:4px;padding:2px 0 2px 26px}.diag-detail-row .diag-label[data-v-ac587b2b]{min-width:auto;flex-shrink:0}.diag-value.code[data-v-ac587b2b]{font-family:Cascadia Code,Fira Code,Consolas,monospace;font-size:10px;color:var(--text-secondary, #aaa);word-break:break-all}.carousel-controls[data-v-f498682b]{position:absolute;bottom:0;left:0;right:0;z-index:10000;display:flex;justify-content:center;padding:8px 0;background:linear-gradient(transparent,#00000059);transition:opacity .3s ease}.carousel-controls-inner[data-v-f498682b]{display:flex;align-items:center;gap:6px;padding:6px 16px;background:var(--surface, #18181c);border:1px solid var(--border, rgba(255, 255, 255, .1));border-radius:24px;box-shadow:var(--shadow-modal, 0 4px 20px rgba(0, 0, 0, .3))}.ctrl-btn[data-v-f498682b]{width:32px;height:32px;border:1px solid var(--border, rgba(255, 255, 255, .15));border-radius:50%;background:var(--elevated, rgba(255, 255, 255, .06));color:var(--text, #e0e0e0);font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;line-height:1}.ctrl-btn[data-v-f498682b]:hover{background:var(--primary, #63e2b7);color:#000;border-color:var(--primary, #63e2b7)}.carousel-dots[data-v-f498682b]{display:flex;align-items:center;gap:6px;padding:0 8px}.carousel-dot[data-v-f498682b]{width:8px;height:8px;border-radius:50%;background:var(--border, rgba(255, 255, 255, .15));cursor:pointer;transition:all .2s}.carousel-dot.active[data-v-f498682b]{background:var(--primary, #63e2b7);transform:scale(1.3)}.carousel-dot.passed[data-v-f498682b]{background:var(--text-secondary, #888)}.carousel-dot[data-v-f498682b]:hover{background:var(--text, #e0e0e0)}.carousel-info[data-v-f498682b]{color:var(--text-secondary, #999);font-size:11px;padding:0 8px;-webkit-user-select:none;user-select:none;white-space:nowrap}.carousel-timer[data-v-f498682b]{color:var(--text-secondary, #888);font-size:11px;font-variant-numeric:tabular-nums;-webkit-user-select:none;user-select:none;min-width:40px;text-align:right}.carousel-indicator[data-v-a9647933]{position:absolute;bottom:12px;left:50%;transform:translate(-50%);z-index:9999;display:flex;align-items:center;gap:8px;padding:6px 14px;background:var(--surface, #18181c);border:1px solid var(--border, rgba(255, 255, 255, .1));border-radius:16px;box-shadow:var(--shadow-modal, 0 4px 16px rgba(0, 0, 0, .3))}.carousel-indicator-dot[data-v-a9647933]{width:10px;height:10px;border-radius:50%;background:var(--border, rgba(255, 255, 255, .15));cursor:pointer;transition:all .3s ease}.carousel-indicator-dot.active[data-v-a9647933]{background:var(--primary, #63e2b7);transform:scale(1.4);box-shadow:0 0 6px var(--primary, rgba(99, 226, 183, .4))}.carousel-indicator-dot.passed[data-v-a9647933]{background:var(--text-secondary, #888)}.carousel-indicator-dot[data-v-a9647933]:hover{background:var(--text, #e0e0e0);transform:scale(1.2)}.carousel-settings-overlay[data-v-7adbe3b7]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99999;display:flex;align-items:center;justify-content:center;background:#00000080}.carousel-settings-panel[data-v-7adbe3b7]{width:420px;max-height:80vh;overflow-y:auto;background:var(--surface, #18181c);border:1px solid var(--border, rgba(255, 255, 255, .1));border-radius:12px;box-shadow:var(--shadow-modal, 0 8px 40px rgba(0, 0, 0, .3));color:var(--text, #e0e0e0);font-size:13px}.panel-header[data-v-7adbe3b7]{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--border, rgba(255, 255, 255, .08));background:var(--header-background, rgba(255, 255, 255, .03));border-radius:12px 12px 0 0}.panel-title[data-v-7adbe3b7]{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:var(--text, #ffffff)}.panel-icon[data-v-7adbe3b7]{font-size:16px}.btn-close[data-v-7adbe3b7]{width:28px;height:28px;border:1px solid var(--border, rgba(255, 255, 255, .15));border-radius:6px;background:var(--surface, #18181c);color:var(--text-secondary, #999);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;transition:all .2s}.btn-close[data-v-7adbe3b7]:hover{background:var(--elevated, rgba(255, 255, 255, .08));color:var(--text, #fff)}.panel-body[data-v-7adbe3b7]{padding:16px 18px}.setting-row[data-v-7adbe3b7]{display:flex;flex-wrap:wrap;align-items:flex-start;gap:10px;margin-bottom:14px}.setting-label[data-v-7adbe3b7]{width:80px;flex-shrink:0;font-size:12px;color:var(--text-secondary, #888);padding-top:4px}.toggle-switch[data-v-7adbe3b7]{position:relative;display:inline-block;width:44px;height:24px}.toggle-input[data-v-7adbe3b7]{opacity:0;width:0;height:0}.toggle-slider[data-v-7adbe3b7]{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--border, rgba(255, 255, 255, .15));border-radius:12px;cursor:pointer;transition:background .2s}.toggle-slider[data-v-7adbe3b7]:before{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;background:#fff;border-radius:50%;transition:transform .2s}.toggle-input:checked+.toggle-slider[data-v-7adbe3b7]{background:var(--primary, #63e2b7)}.toggle-input:checked+.toggle-slider[data-v-7adbe3b7]:before{transform:translate(20px)}.interval-options[data-v-7adbe3b7]{display:flex;gap:6px;flex-wrap:wrap}.interval-btn[data-v-7adbe3b7]{padding:4px 10px;border:1px solid var(--border, rgba(255, 255, 255, .15));border-radius:6px;background:var(--surface, #18181c);color:var(--text-secondary, #aaa);font-size:12px;cursor:pointer;transition:all .2s}.interval-btn.active[data-v-7adbe3b7]{background:var(--primary, #63e2b7);color:#000;border-color:var(--primary, #63e2b7)}.interval-btn[data-v-7adbe3b7]:hover:not(.active){background:var(--elevated, rgba(255, 255, 255, .08))}.checkbox-label[data-v-7adbe3b7],.radio-label[data-v-7adbe3b7]{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text, #e0e0e0);cursor:pointer}.page-list[data-v-7adbe3b7]{width:100%;margin-top:4px;max-height:160px;overflow-y:auto;display:flex;flex-direction:column;gap:4px}.page-checkbox[data-v-7adbe3b7]{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--text, #e0e0e0);cursor:pointer;padding:4px 0}.transition-options[data-v-7adbe3b7]{display:flex;flex-wrap:wrap;gap:12px}.panel-footer[data-v-7adbe3b7]{display:flex;gap:8px;padding:12px 18px;border-top:1px solid var(--border, rgba(255, 255, 255, .08));justify-content:flex-end}.btn-action[data-v-7adbe3b7]{padding:8px 20px;border:1px solid var(--border, rgba(255, 255, 255, .15));border-radius:6px;font-size:13px;cursor:pointer;transition:all .2s}.btn-cancel[data-v-7adbe3b7]{background:var(--surface, #18181c);color:var(--text-secondary, #ccc)}.btn-cancel[data-v-7adbe3b7]:hover{background:var(--elevated, rgba(255, 255, 255, .08));color:var(--text, #fff)}.btn-save[data-v-7adbe3b7]{background:var(--primary, #63e2b7);color:#000;border-color:var(--primary, #63e2b7);font-weight:600}.btn-save[data-v-7adbe3b7]:hover{opacity:.85}.preview-canvas-container[data-v-90bb6a0e]{position:relative;border:1px solid var(--border, #ccc);background-color:var(--background, #f5f5f5);border-radius:8px;overflow:hidden;display:flex;flex-direction:column;width:100%;height:100%;min-height:300px}.preview-controls[data-v-90bb6a0e]{display:flex;gap:10px;padding:10px;background-color:var(--surface, #e0e0e0);border-bottom:1px solid var(--border, #ccc);align-items:center;flex-shrink:0}.preview-controls select[data-v-90bb6a0e]{padding:5px 10px;border:1px solid var(--border, #ccc);border-radius:4px;font-size:14px;background-color:var(--surface, #ffffff);color:var(--text, #333333)}.fit-mode-badge[data-v-90bb6a0e]{padding:2px 8px;border-radius:4px;font-size:12px;white-space:nowrap;color:var(--text, #333333);background-color:var(--surface, #ffffff);border:1px solid var(--border, #ccc)}.zoom-button[data-v-90bb6a0e]{padding:5px 10px;border:1px solid var(--control-button-border, #ccc);border-radius:4px;background-color:var(--control-button-background, #f5f5f5);color:var(--control-button-text, #333333);cursor:pointer;font-size:14px;transition:all .2s}.zoom-button[data-v-90bb6a0e]:hover{background-color:var(--control-button-hover, #d0d0d0)}.canvas-wrapper[data-v-90bb6a0e]{flex:1;overflow:auto;position:relative;cursor:grab;background-color:var(--background, #f5f5f5)}.canvas-content-area[data-v-90bb6a0e]{position:relative;display:inline-block}.canvas-wrapper[data-v-90bb6a0e]:active{cursor:grabbing}.canvas-wrapper.no-controls[data-v-90bb6a0e]{cursor:default;overflow:auto;display:flex;padding:0;width:100%;height:100%}.canvas-wrapper.stretch-mode[data-v-90bb6a0e]{overflow:hidden;padding:0}.canvas-wrapper.stretch-mode .canvas-content-area[data-v-90bb6a0e]{display:block;width:100%;height:100%}.canvas-wrapper.no-controls .canvas-content-area[data-v-90bb6a0e]{margin:auto}.canvas-wrapper.fit-width-mode[data-v-90bb6a0e]{overflow-x:hidden}.canvas-wrapper.fit-height-mode[data-v-90bb6a0e]{overflow-y:hidden}.preview-canvas[data-v-90bb6a0e]{display:block;margin:0;background-color:var(--surface);box-shadow:none}.preview-canvas-container.carousel-transition-fade[data-v-90bb6a0e]{transition:opacity .3s ease;opacity:1}.preview-canvas-container.carousel-transition-fade.transition-out[data-v-90bb6a0e]{opacity:0}.preview-canvas-container.carousel-transition-slide-left[data-v-90bb6a0e]{transition:transform .3s ease;transform:translate(0)}.preview-canvas-container.carousel-transition-slide-left.transition-out[data-v-90bb6a0e]{transform:translate(-10%)}.preview-canvas-container.carousel-transition-slide-right[data-v-90bb6a0e]{transition:transform .3s ease;transform:translate(0)}.preview-canvas-container.carousel-transition-slide-right.transition-out[data-v-90bb6a0e]{transform:translate(10%)}.page-browser[data-v-c5e0d722]{position:relative;overflow:hidden;box-sizing:border-box}.page-browser-canvas[data-v-c5e0d722]{display:block;position:absolute;top:0;left:0}.page-browser-vue-layer[data-v-c5e0d722],.page-browser-svg-layer[data-v-c5e0d722],.page-browser-css-layer[data-v-c5e0d722],.page-browser-three-layer[data-v-c5e0d722]{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:10}.page-browser-loading[data-v-c5e0d722],.page-browser-error[data-v-c5e0d722]{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:center;font-size:12px;color:#999;background:#ffffffd9;z-index:100}.page-browser-error[data-v-c5e0d722]{color:#f44}.property-panel[data-v-93274159]{height:100%;overflow-y:auto;background-color:var(--surface);display:flex;flex-direction:column;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 12px;--spacing-lg: 20px}.property-section[data-v-93274159]{flex:1;display:flex;flex-direction:column}.property-section h3[data-v-93274159]{margin:0;font-size:13px;font-weight:600;color:var(--text);text-transform:uppercase;letter-spacing:.5px;padding:12px;border-bottom:1px solid var(--border);background-color:var(--background)}.property-tabs[data-v-93274159]{display:flex;background-color:var(--background);border-bottom:1px solid var(--border);margin:0;padding:0}.tab-button[data-v-93274159]{flex:1;padding:10px 12px;background-color:transparent;border:none;color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease;position:relative}.tab-button[data-v-93274159]:hover{background-color:var(--control-button-hover);color:var(--text)}.tab-button.active[data-v-93274159]{color:var(--primary);font-weight:600}.tab-button.active[data-v-93274159]:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background-color:var(--primary)}.tab-content[data-v-93274159]{flex:1;padding:12px;overflow-y:auto;background-color:var(--surface)}.property-group[data-v-93274159]{margin-bottom:0;padding:10px;background-color:var(--background);border:1px solid var(--border);border-radius:6px;transition:all .2s ease;width:100%;box-sizing:border-box}.property-group[data-v-93274159]:last-child{margin-bottom:0}.property-group[data-v-93274159]:hover{border-color:var(--primary);box-shadow:0 2px 4px #3498db1a}.property-group label[data-v-93274159]{display:block;font-size:11px;font-weight:600;color:var(--text);margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.property-item[data-v-93274159]{display:flex;align-items:center;margin-bottom:6px;gap:8px;width:100%;box-sizing:border-box}.property-item[data-v-93274159]:last-child{margin-bottom:0}.property-item>span[data-v-93274159]{min-width:70px;width:auto;flex-shrink:0;font-size:11px;font-weight:500;color:var(--text-secondary)}.property-item input[type=text][data-v-93274159],.property-item input[type=number][data-v-93274159],.property-item select[data-v-93274159],.form-input[data-v-93274159]{flex:1;padding:5px 8px;border:1px solid var(--border);border-radius:4px;background-color:var(--surface);color:var(--text);font-size:13px;transition:all .2s ease;min-width:0}.property-item select[data-v-93274159],.config-item select[data-v-93274159]{height:30px!important;min-height:30px!important;line-height:1.4!important;min-width:80px;padding-right:24px;cursor:pointer}.property-panel select[data-v-93274159],.style-panel-content select[data-v-93274159],.generic-config select[data-v-93274159]{height:30px!important;min-height:30px!important;line-height:1.4}.property-item input[type=text][data-v-93274159]:focus,.property-item input[type=number][data-v-93274159]:focus,.property-item select[data-v-93274159]:focus,.form-input[data-v-93274159]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #3498db33}.property-item input[type=checkbox][data-v-93274159]{width:14px;height:14px;accent-color:var(--primary);cursor:pointer}.property-item input[type=color][data-v-93274159]{width:40px;height:24px;border:none;border-radius:4px;cursor:pointer;padding:2px;background-color:var(--surface)}.position-size-container[data-v-93274159]{background-color:var(--surface);border:1px solid var(--border);border-radius:4px;padding:8px;margin-bottom:8px;width:100%;box-sizing:border-box}.position-size-row[data-v-93274159]{display:flex;align-items:center;margin-bottom:6px;gap:6px;width:100%}.position-size-item[data-v-93274159]{flex:1;display:flex;align-items:center;gap:var(--spacing-sm)}.position-size-row[data-v-93274159]:last-child{margin-bottom:0}.position-size-input[data-v-93274159]{flex:1;padding:4px 8px;border:1px solid var(--border);border-radius:4px;background-color:var(--surface);color:var(--text);font-size:11px;text-align:center;transition:all .2s ease}.position-size-input[data-v-93274159]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #3498db33}.position-size-control[data-v-93274159]{display:flex;align-items:center;flex:1;gap:6px}.position-size-buttons[data-v-93274159]{display:flex;flex-direction:column;gap:2px}.position-size-btn[data-v-93274159]{width:20px;height:14px;padding:0;border:1px solid var(--border);border-radius:2px;background-color:var(--surface);color:var(--text);font-size:10px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.position-size-btn[data-v-93274159]:hover{background-color:var(--control-button-hover);border-color:var(--primary);color:var(--text)}.position-size-btn[data-v-93274159]:active{background-color:var(--primary);color:#fff}.position-size-label[data-v-93274159]{width:20px;font-size:11px;font-weight:600;color:var(--text);text-align:center;flex-shrink:0}.btn[data-v-93274159]{padding:4px 8px;border:1px solid var(--border);border-radius:4px;font-size:11px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn--sm[data-v-93274159]{padding:2px 4px;font-size:10px}.btn--primary[data-v-93274159]{background-color:var(--primary);color:#fff;border-color:var(--primary)}.btn--primary[data-v-93274159]:hover{background-color:var(--button-hover);border-color:var(--button-hover)}.btn--danger[data-v-93274159]{background-color:var(--status-error);color:#fff;border-color:var(--status-error)}.btn--danger[data-v-93274159]:hover{background-color:#c0392b;border-color:#c0392b}.btn--text[data-v-93274159]{background-color:transparent;color:var(--text-secondary);border-color:transparent}.btn--text[data-v-93274159]:hover{background-color:var(--control-button-hover);color:var(--text)}.property-panel[data-v-93274159]::-webkit-scrollbar,.tab-content[data-v-93274159]::-webkit-scrollbar{width:6px}.property-panel[data-v-93274159]::-webkit-scrollbar-track,.tab-content[data-v-93274159]::-webkit-scrollbar-track{background:var(--background);border-radius:3px}.property-panel[data-v-93274159]::-webkit-scrollbar-thumb,.tab-content[data-v-93274159]::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.property-panel[data-v-93274159]::-webkit-scrollbar-thumb:hover,.tab-content[data-v-93274159]::-webkit-scrollbar-thumb:hover{background:var(--border-light)}.style-panel-content[data-v-93274159]{flex:1;padding:12px;overflow-y:auto;background-color:var(--surface)}.small-size-item[data-v-93274159]{flex:1;display:flex;align-items:center;gap:var(--spacing-sm)}.small-size-item span[data-v-93274159]{width:40px;font-size:12px;font-weight:500;color:var(--text-secondary);flex-shrink:0}[data-v-93274159]:root{--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .1);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .15), 0 1px 3px rgba(0, 0, 0, .1);--shadow-md: 0 4px 16px rgba(0, 0, 0, .2), 0 2px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .25), 0 4px 12px rgba(0, 0, 0, .15);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .3), 0 8px 24px rgba(0, 0, 0, .2);--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .35s ease;--color-success: #10b981;--color-warning: #f59e0b;--color-error: #ef4444;--color-info: #3b82f6}[data-v-93274159]{box-sizing:border-box}button[data-v-93274159],[role=button][data-v-93274159],.btn[data-v-93274159]{cursor:pointer;transition:all var(--transition-normal)}button[data-v-93274159]:focus-visible,[role=button][data-v-93274159]:focus-visible,.btn[data-v-93274159]:focus-visible{outline:2px solid var(--primary);outline-offset:2px}button[data-v-93274159]:disabled,[role=button][data-v-93274159]:disabled,.btn[data-v-93274159]:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}input[type=text][data-v-93274159],input[type=number][data-v-93274159],input[type=email][data-v-93274159],input[type=password][data-v-93274159],textarea[data-v-93274159],select[data-v-93274159]{transition:all var(--transition-normal)}input[type=text][data-v-93274159]::placeholder,input[type=number][data-v-93274159]::placeholder,input[type=email][data-v-93274159]::placeholder,input[type=password][data-v-93274159]::placeholder,textarea[data-v-93274159]::placeholder,select[data-v-93274159]::placeholder{color:var(--text-secondary);opacity:.7}input[type=text][data-v-93274159]:focus,input[type=number][data-v-93274159]:focus,input[type=email][data-v-93274159]:focus,input[type=password][data-v-93274159]:focus,textarea[data-v-93274159]:focus,select[data-v-93274159]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #3b82f626}input[type=text][data-v-93274159]:hover:not(:focus),input[type=number][data-v-93274159]:hover:not(:focus),input[type=email][data-v-93274159]:hover:not(:focus),input[type=password][data-v-93274159]:hover:not(:focus),textarea[data-v-93274159]:hover:not(:focus),select[data-v-93274159]:hover:not(:focus){border-color:#3b82f666}a[data-v-93274159]{color:var(--primary);text-decoration:none;transition:color var(--transition-fast)}a[data-v-93274159]:hover{color:var(--color-info);text-decoration:underline}[data-tooltip][data-v-93274159]{position:relative}[data-tooltip][data-v-93274159]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background-color:#000000e6;color:#fff;padding:6px 12px;border-radius:var(--radius-sm);font-size:12px;white-space:nowrap;opacity:0;visibility:hidden;transition:all var(--transition-normal);z-index:10000;pointer-events:none;box-shadow:var(--shadow-md)}[data-tooltip][data-v-93274159]:hover:after{opacity:1;visibility:visible}.loading-spinner[data-v-93274159]{display:inline-block;width:20px;height:20px;border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin-93274159 .8s linear infinite}@keyframes spin-93274159{to{transform:rotate(360deg)}}.feedback-success[data-v-93274159]{background-color:#10b9811a;border-color:var(--color-success);color:var(--color-success)}.feedback-error[data-v-93274159]{background-color:#ef44441a;border-color:var(--color-error);color:var(--color-error)}.feedback-warning[data-v-93274159]{background-color:#f59e0b1a;border-color:var(--color-warning);color:var(--color-warning)}.kbd[data-v-93274159]{display:inline-block;padding:2px 6px;font-family:monospace;font-size:11px;background-color:var(--background);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:0 1px 2px #0000001a}.property-group[data-v-93274159]{margin-bottom:12px}.property-group>label[data-v-93274159]{display:block;font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px;padding-bottom:4px;border-bottom:1px solid var(--border)}.property-item span[data-v-93274159]{min-width:70px;width:auto;flex-shrink:0}.property-item input[data-v-93274159],.property-item select[data-v-93274159],.property-item textarea[data-v-93274159]{flex:1;padding:5px 8px;border:1px solid var(--border);border-radius:4px;font-size:13px;background-color:var(--surface);color:var(--text);min-width:0}.property-item select[data-v-93274159]{min-width:80px;height:30px;text-overflow:ellipsis;padding-right:24px;cursor:pointer}.range-wrapper[data-v-93274159]{display:flex;align-items:center;gap:8px;flex:1}.range-wrapper input[type=range][data-v-93274159]{flex:1;min-width:60px;accent-color:var(--primary);cursor:pointer}.config-color-picker-wrapper[data-v-93274159]{flex:1;min-width:0}.range-value[data-v-93274159]{min-width:32px;text-align:right;font-size:12px;color:var(--text-secondary)}.no-template[data-v-93274159]{padding:16px;text-align:center;color:var(--text-tertiary);font-size:13px}i[data-v-c1c71861]{line-height:1}svg[data-v-c1c71861]{width:1em;height:1em;fill:currentColor}.resize-handle[data-v-2f22467a]{position:absolute;width:8px;height:8px;background-color:#4caf50;border:2px solid white;border-radius:50%;pointer-events:all;cursor:nwse-resize;z-index:10}.resize-handle.top-left[data-v-2f22467a]{top:-4px;left:-4px}.resize-handle.top-right[data-v-2f22467a]{top:-4px;right:-4px;cursor:nesw-resize}.resize-handle.bottom-left[data-v-2f22467a]{bottom:-4px;left:-4px;cursor:nesw-resize}.resize-handle.bottom-right[data-v-2f22467a]{bottom:-4px;right:-4px;cursor:nwse-resize}.tag-selector[data-v-eee3a4d3]{width:100%}.tag-selector-search[data-v-eee3a4d3]{margin-bottom:8px}.search-input-wrapper[data-v-eee3a4d3]{position:relative;display:flex;align-items:center}.search-icon[data-v-eee3a4d3]{position:absolute;left:8px;color:#999;pointer-events:none}.search-input[data-v-eee3a4d3]{width:100%;padding:6px 28px;border:1px solid #d9d9d9;border-radius:4px;font-size:13px;outline:none;transition:border-color .2s}.search-input[data-v-eee3a4d3]:focus{border-color:var(--primary, #2080f0)}.clear-btn[data-v-eee3a4d3]{position:absolute;right:6px;background:none;border:none;color:#999;cursor:pointer;font-size:12px;padding:2px 4px;line-height:1}.clear-btn[data-v-eee3a4d3]:hover{color:#666}.tag-selector-loading[data-v-eee3a4d3],.tag-selector-empty[data-v-eee3a4d3]{padding:16px;text-align:center;color:#999;font-size:13px}.tag-selector-list[data-v-eee3a4d3]{max-height:200px;overflow-y:auto;border:1px solid #e0e0e0;border-radius:4px}.tag-selector-item[data-v-eee3a4d3]{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;cursor:pointer;border-bottom:1px solid #f0f0f0;transition:background-color .15s}.tag-selector-item[data-v-eee3a4d3]:last-child{border-bottom:none}.tag-selector-item[data-v-eee3a4d3]:hover{background-color:#f5f7fa}.tag-selector-item--selected[data-v-eee3a4d3]{background-color:#e8f4fd}.tag-selector-item--bad-quality[data-v-eee3a4d3]{border-left:3px solid #d03050}.tag-selector-item--stale[data-v-eee3a4d3]{border-left:3px solid #f0a020}.tag-selector-item-info[data-v-eee3a4d3]{flex:1;min-width:0}.tag-selector-item-name[data-v-eee3a4d3]{font-weight:500;font-size:13px;color:#333;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tag-selector-item-address[data-v-eee3a4d3]{font-size:11px;color:#999;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tag-selector-item-unit[data-v-eee3a4d3]{font-size:10px;color:#888;margin-top:1px}.tag-selector-item-value[data-v-eee3a4d3]{display:flex;align-items:center;gap:4px;flex-shrink:0;margin-left:12px}.value-text[data-v-eee3a4d3]{font-weight:600;font-size:13px;color:#2080f0}.value-unit[data-v-eee3a4d3]{font-size:11px;color:#999}.quality-dot[data-v-eee3a4d3]{width:6px;height:6px;border-radius:50%;display:inline-block}.quality-good[data-v-eee3a4d3]{background-color:#18a058}.quality-uncertain[data-v-eee3a4d3]{background-color:#f0a020}.quality-bad[data-v-eee3a4d3]{background-color:#d03050}.quality-stale[data-v-eee3a4d3]{background-color:#999}.quality-disconnected[data-v-eee3a4d3]{background-color:#ccc}.quality-unknown[data-v-eee3a4d3]{background-color:#e0e0e0}.value-adjuster[data-v-5acd77a9]{display:flex;align-items:center;gap:6px;width:100%;background:var(--surface);border-radius:6px;border:1px solid var(--border);overflow:hidden;transition:all .2s ease}.value-adjuster[data-v-5acd77a9]:hover{border-color:var(--border-hover)}.value-adjuster[data-v-5acd77a9]:focus-within{border-color:var(--primary);box-shadow:0 0 0 2px #3498db26}.value-adjuster-label[data-v-5acd77a9]{font-size:12px;font-weight:600;color:var(--text-secondary);padding:0 8px;height:28px;display:flex;align-items:center;flex-shrink:0;border-right:1px solid var(--border)}.value-adjuster-control[data-v-5acd77a9]{display:flex;align-items:center;flex:1;overflow:hidden}.value-adjuster-input[data-v-5acd77a9]{padding:6px 12px;border:none;background:transparent;color:var(--text);font-size:12px;font-weight:500;text-align:center;transition:all .2s ease;width:100%;min-width:40px;height:28px;box-sizing:border-box;outline:none}.value-adjuster-input[data-v-5acd77a9]::-webkit-outer-spin-button,.value-adjuster-input[data-v-5acd77a9]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.value-adjuster-input[type=number][data-v-5acd77a9]{-moz-appearance:textfield}.value-adjuster-input[data-v-5acd77a9]::placeholder{color:var(--text-secondary)}.value-adjuster-buttons[data-v-5acd77a9]{display:flex;flex-direction:column;border-left:1px solid var(--border);width:24px;flex-shrink:0}.value-adjuster-btn[data-v-5acd77a9]{width:24px;height:14px;padding:0;border:none;background:transparent;color:var(--text-secondary);font-size:12px;font-weight:600;cursor:pointer;transition:all .15s ease;display:flex;align-items:center;justify-content:center;box-sizing:border-box;line-height:1}.value-adjuster-btn[data-v-5acd77a9]:hover{background:var(--control-button-hover);color:var(--text)}.value-adjuster-btn[data-v-5acd77a9]:active{background:var(--primary);color:#fff}.value-adjuster-btn-plus[data-v-5acd77a9]{border-bottom:1px solid var(--border)}.value-adjuster-btn-plus[data-v-5acd77a9]:active{border-bottom-color:var(--primary)}.theme-provider[data-v-c8e67f10]{min-height:100%}.theme-switcher-overlay[data-v-20cc112c]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:flex;align-items:center;justify-content:center;background:var(--backdrop);animation:fadeIn-20cc112c .15s ease}@keyframes fadeIn-20cc112c{0%{opacity:0}to{opacity:1}}.theme-switcher-panel[data-v-20cc112c]{width:640px;max-height:80vh;background:var(--elevated);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-modal);display:flex;flex-direction:column;overflow:hidden;animation:slideUp-20cc112c .2s ease}@keyframes slideUp-20cc112c{0%{transform:translateY(16px);opacity:0}to{transform:translateY(0);opacity:1}}.switcher-header[data-v-20cc112c]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border)}.switcher-title[data-v-20cc112c]{margin:0;font-size:16px;font-weight:600;color:var(--text)}.switcher-close[data-v-20cc112c]{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-secondary);cursor:pointer;font-size:14px;transition:background .15s,color .15s}.switcher-close[data-v-20cc112c]:hover{background:var(--control-button-hover);color:var(--text)}.switcher-content[data-v-20cc112c]{padding:16px 20px 20px;overflow-y:auto}.theme-category[data-v-20cc112c]{margin-bottom:16px}.theme-category[data-v-20cc112c]:last-child{margin-bottom:0}.category-label[data-v-20cc112c]{font-size:12px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px}.theme-grid[data-v-20cc112c]{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.theme-card[data-v-20cc112c]{border:2px solid var(--border-light);border-radius:var(--radius-md);overflow:hidden;cursor:pointer;transition:border-color .2s,box-shadow .2s}.theme-card[data-v-20cc112c]:hover{border-color:var(--border-focus);box-shadow:var(--shadow-card)}.theme-card.active[data-v-20cc112c]{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.theme-preview[data-v-20cc112c]{height:56px;display:flex;flex-direction:column;overflow:hidden}.preview-header[data-v-20cc112c]{height:12px;background:var(--preview-primary)}.preview-body[data-v-20cc112c]{flex:1;display:flex;gap:2px;padding:4px;background:var(--preview-background)}.preview-block--1[data-v-20cc112c]{flex:1;background:var(--preview-surface);border-radius:2px}.preview-block--2[data-v-20cc112c]{width:24px;background:var(--preview-primary);border-radius:2px;opacity:.6}.theme-info[data-v-20cc112c]{padding:6px 8px;background:var(--surface)}.theme-label[data-v-20cc112c]{display:block;font-size:12px;font-weight:600;color:var(--text);margin-bottom:1px}.theme-desc[data-v-20cc112c]{display:block;font-size:10px;color:var(--text-tertiary)}.ss-mascot{position:relative;display:inline-block;width:40px;height:40px;line-height:0}.ss-mascot.ss-enter{animation:ss-enter-pop .45s cubic-bezier(.34,1.56,.64,1) both}@keyframes ss-enter-pop{0%{transform:scale(.4) translateY(12px);opacity:0}to{transform:scale(1) translateY(0);opacity:1}}.ss-mascot.is-idle #body,.ss-mascot.is-idle #antenna{animation:ss-breathe 3.6s ease-in-out infinite}.ss-mascot.is-idle #eye-left,.ss-mascot.is-idle #eye-right{animation:ss-blink 4.8s ease-in-out infinite}@keyframes ss-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.03,1.02)}}@keyframes ss-blink{0%,92%,to{transform:scaleY(1)}96%{transform:scaleY(.06)}}.ss-mascot.is-thinking #pupil-left,.ss-mascot.is-thinking #pupil-right{display:block;animation:ss-pupil-think 1.2s ease-in-out infinite alternate}.ss-mascot.is-thinking #antenna{animation:ss-antenna-think 1.4s ease-in-out infinite alternate;transform-origin:bottom center}.ss-mascot.is-thinking #mouth-a{display:none}.ss-mascot.is-thinking .ss-bubble{opacity:1;transform:translate(0) translateY(-4px);pointer-events:auto}.ss-mascot.is-thinking .ss-bubble .ss-dots span{animation:ss-dot 1.2s ease-in-out infinite}.ss-mascot.is-thinking .ss-bubble .ss-dots span:nth-child(2){animation-delay:.2s}.ss-mascot.is-thinking .ss-bubble .ss-dots span:nth-child(3){animation-delay:.4s}@keyframes ss-pupil-think{0%{transform:translate(0)}to{transform:translate(2.4px)}}@keyframes ss-antenna-think{0%{transform:translateY(0) rotate(0)}to{transform:translateY(-3px) rotate(8deg)}}@keyframes ss-dot{0%,60%,to{opacity:.25;transform:translateY(0)}30%{opacity:1;transform:translateY(-1.5px)}}.ss-mascot.is-talking #mouth-a,.ss-mascot.is-talking #mouth-b,.ss-mascot.is-talking #mouth-c{display:block}.ss-mascot.is-talking #mouth-a{animation:ss-mouth-a .72s steps(1) infinite}.ss-mascot.is-talking #mouth-b{animation:ss-mouth-b .72s steps(1) infinite}.ss-mascot.is-talking #mouth-c{animation:ss-mouth-c .72s steps(1) infinite}.ss-mascot.is-talking .ss-bubble{opacity:1;transform:translate(0);animation:ss-bubble-breath .9s ease-in-out infinite;pointer-events:auto}@keyframes ss-mouth-a{0%,33%{display:block}34%,to{display:none}}@keyframes ss-mouth-b{0%,33%{display:none}34%,66%{display:block}67%,to{display:none}}@keyframes ss-mouth-c{0%,66%{display:none}67%,to{display:block}}@keyframes ss-bubble-breath{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}.ss-mascot.is-pointing #arm{display:block;animation:ss-arm-point .35s ease-out both;transform-origin:left center}.ss-mascot.is-pointing #body{animation:ss-nod .9s ease-in-out infinite alternate}.ss-mascot.is-pointing #badge{animation:ss-badge-glow .8s ease-out 2}@keyframes ss-arm-point{0%{transform:translate(-14px) scale(.6);opacity:0}to{transform:translate(0) scale(1);opacity:1}}@keyframes ss-nod{0%{transform:rotate(-2deg)}to{transform:rotate(2deg)}}@keyframes ss-badge-glow{0%,to{stroke-width:2}50%{stroke-width:3.4}}.ss-mascot.is-shrug #arms-shrug,.ss-mascot.is-shrug #brows{display:block}.ss-mascot.is-shrug #mouth-a{display:none}.ss-mascot.is-shrug #arms-shrug{animation:ss-shrug-arms .4s ease-out}.ss-mascot.is-shrug .ss-bubble{opacity:1;transform:translate(0) translateY(2px);pointer-events:auto}@keyframes ss-shrug-arms{0%{transform:scale(.4);opacity:0}to{transform:scale(1);opacity:1}}.ss-mascot.is-exit #arm{display:block;animation:ss-wave .6s ease-in-out 2;transform-origin:left center}.ss-mascot.is-exit .ss-bubble{opacity:0}.ss-mascot.is-exit{animation:ss-exit-shrink .45s ease-in .9s forwards}@keyframes ss-wave{0%,to{transform:rotate(0)}25%{transform:rotate(-18deg)}75%{transform:rotate(18deg)}}@keyframes ss-exit-shrink{to{transform:scale(.1) translateY(14px);opacity:0}}.ss-bubble{position:absolute;left:calc(100% + 8px);top:2px;max-width:168px;padding:6px 10px;background:var(--surface, #FFFFFF);border:1px solid var(--border, #DCE3F0);border-radius:10px 10px 10px 2px;box-shadow:0 2px 8px #0a2a781f;font-size:12px;line-height:1.5;color:var(--text, #16233F);white-space:normal;opacity:0;transform:translate(-6px);transform-origin:left center;pointer-events:none;transition:opacity .25s ease,transform .25s ease;z-index:10}.ss-bubble .ss-dots span{display:inline-block;width:3px;height:3px;margin-right:3px;border-radius:50%;background:currentColor;vertical-align:middle}@media (prefers-reduced-motion: reduce){.ss-mascot *,.ss-mascot *:before,.ss-mascot *:after{animation:none!important;transition:none!important}.ss-mascot.ss-enter,.ss-mascot.is-exit{transform:none;opacity:1}.ss-mascot.is-thinking #pupil-left,.ss-mascot.is-thinking #pupil-right,.ss-mascot.is-talking #mouth-b,.ss-mascot.is-talking #mouth-c{display:none}.ss-mascot.is-talking #mouth-a{display:block}.ss-mascot.is-talking .ss-bubble,.ss-mascot.is-thinking .ss-bubble,.ss-mascot.is-shrug .ss-bubble{opacity:1;transform:none}.ss-mascot.is-thinking .ss-bubble .ss-dots span{opacity:1}}.ss-mascot-svg[data-v-1cf2790e]{width:100%;height:100%;line-height:0}.ss-mascot-svg[data-v-1cf2790e] svg{width:100%;height:100%;display:block;overflow:visible}.ai-assistant-panel[data-v-d9e8595e]{display:flex;flex-direction:column;height:100%;background-color:var(--surface);border-left:1px solid var(--border);overflow:hidden}.ai-header[data-v-d9e8595e]{position:relative;display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-bottom:1px solid var(--border);background-color:var(--background);flex-shrink:0}.ai-header-title[data-v-d9e8595e]{display:flex;overflow:hidden;align-items:center;min-width:0;gap:6px;font-size:13px;font-weight:600;color:var(--text)}.ai-icon[data-v-d9e8595e]{color:var(--accent)}.ai-header-mascot[data-v-d9e8595e]{flex-shrink:0}.ai-context-chip[data-v-d9e8595e]{overflow:hidden;max-width:150px;margin-left:2px;padding:1px 7px;border:1px solid var(--border);border-radius:999px;background:none;color:var(--text-tertiary);text-overflow:ellipsis;white-space:nowrap;font-weight:400;font-size:10px;cursor:pointer;transition:color .15s,border-color .15s}.ai-context-chip[data-v-d9e8595e]:hover{border-color:var(--accent);color:var(--accent)}.ai-context-popover[data-v-d9e8595e]{position:absolute;z-index:30;top:100%;right:8px;left:8px;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius-md);background-color:var(--surface);box-shadow:0 6px 18px #00000047}.ai-context-popover-body[data-v-d9e8595e]{margin:0;color:var(--text-secondary);white-space:pre-wrap;font-weight:400;font-size:11px;font-family:inherit;line-height:1.6}.ai-header-actions[data-v-d9e8595e]{display:flex;gap:4px}.ai-btn-icon[data-v-d9e8595e]{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-tertiary);cursor:pointer;transition:all .15s}.ai-btn-icon[data-v-d9e8595e]:hover:not(:disabled){background-color:var(--elevated);color:var(--text)}.ai-btn-icon[data-v-d9e8595e]:disabled{opacity:.4;cursor:not-allowed}.ai-status-banner[data-v-d9e8595e]{padding:6px 12px;font-size:12px;text-align:center;flex-shrink:0}.ai-status-warning[data-v-d9e8595e]{background-color:var(--toast-warning-bg, rgba(245, 158, 11, .1));color:var(--toast-warning-text, var(--status-warning));border-bottom:1px solid var(--toast-warning-border, rgba(245, 158, 11, .3))}.ai-message-list[data-v-d9e8595e]{flex:1;min-height:0;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:12px}.ai-message-list[data-v-d9e8595e]::-webkit-scrollbar{width:4px}.ai-message-list[data-v-d9e8595e]::-webkit-scrollbar-thumb{background-color:var(--text-tertiary);border-radius:2px}.ai-empty[data-v-d9e8595e]{display:flex;flex-direction:column;align-items:center;justify-content:center;justify-content:safe center;flex:1;min-height:0;text-align:center;gap:8px}.ai-empty-icon[data-v-d9e8595e]{flex-shrink:0;width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,var(--accent),var(--primary));color:#fff;font-size:18px;font-weight:700;display:flex;align-items:center;justify-content:center;margin-bottom:8px}.ai-empty-title[data-v-d9e8595e]{font-size:14px;font-weight:600;color:var(--text)}.ai-empty-hint[data-v-d9e8595e]{font-size:12px;color:var(--text-secondary);max-width:240px;line-height:1.5}.ai-tour-entry[data-v-d9e8595e]{margin-top:4px;padding:7px 16px;font-size:13px;font-weight:600;color:var(--surface);cursor:pointer;background:var(--primary);border:1px solid var(--primary);border-radius:16px;transition:background-color .18s ease,opacity .18s ease}.ai-tour-entry[data-v-d9e8595e]:hover{opacity:.9}.ai-tour-overlay[data-v-d9e8595e]{position:fixed;right:28px;bottom:28px;z-index:3000;pointer-events:none}.ai-tour-mascot-drag[data-v-d9e8595e]{pointer-events:auto;cursor:move;touch-action:none;-webkit-user-select:none;user-select:none}.ai-tour-overlay-close[data-v-d9e8595e]{position:absolute;top:-6px;right:-6px;width:22px;height:22px;padding:0;border:1px solid var(--border);border-radius:50%;background:var(--surface);color:var(--text-secondary);font-size:14px;line-height:1;cursor:pointer;pointer-events:auto}.ai-tour-overlay-close[data-v-d9e8595e]:hover{color:var(--text);background:var(--surface-hover, var(--surface))}.ai-tour-progress[data-v-d9e8595e]{margin-left:8px;padding:1px 8px;font-size:12px;font-weight:600;color:var(--primary);background:var(--surface);border:1px solid var(--border);border-radius:10px}.ai-message[data-v-d9e8595e]{display:flex;gap:8px;max-width:100%}.ai-message-avatar[data-v-d9e8595e]{flex-shrink:0;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:600}.ai-message--user .ai-message-avatar[data-v-d9e8595e]{background-color:var(--primary);color:#fff}.ai-message--assistant .ai-message-avatar[data-v-d9e8595e]{background-color:var(--accent);color:#fff}.ai-message-bubble[data-v-d9e8595e]{flex:1;min-width:0;padding:8px 12px;border-radius:var(--radius-md);font-size:13px;line-height:1.6;word-break:break-word;white-space:pre-wrap}.ai-message--user .ai-message-bubble[data-v-d9e8595e]{background-color:var(--primary);color:#fff}.ai-message--assistant .ai-message-bubble[data-v-d9e8595e]{background-color:var(--elevated);color:var(--text);border:1px solid var(--border)}.ai-message-content[data-v-d9e8595e]{min-height:18px;white-space:normal}.ai-message-content[data-v-d9e8595e] p{margin:4px 0}.ai-message-content[data-v-d9e8595e] p:first-child{margin-top:0}.ai-message-content[data-v-d9e8595e] p:last-child{margin-bottom:0}.ai-message-content[data-v-d9e8595e] h1,.ai-message-content[data-v-d9e8595e] h2,.ai-message-content[data-v-d9e8595e] h3,.ai-message-content[data-v-d9e8595e] h4,.ai-message-content[data-v-d9e8595e] h5,.ai-message-content[data-v-d9e8595e] h6{margin:10px 0 6px;font-weight:600;line-height:1.4}.ai-message-content[data-v-d9e8595e] h1{font-size:18px}.ai-message-content[data-v-d9e8595e] h2{font-size:16px}.ai-message-content[data-v-d9e8595e] h3{font-size:15px}.ai-message-content[data-v-d9e8595e] h4,.ai-message-content[data-v-d9e8595e] h5,.ai-message-content[data-v-d9e8595e] h6{font-size:14px}.ai-message-content[data-v-d9e8595e] ul,.ai-message-content[data-v-d9e8595e] ol{margin:6px 0;padding-left:20px}.ai-message-content[data-v-d9e8595e] li{margin:2px 0}.ai-message-content[data-v-d9e8595e] blockquote{margin:6px 0;padding:4px 12px;border-left:3px solid var(--border);color:var(--text-secondary);font-style:italic}.ai-message-content[data-v-d9e8595e] hr{margin:10px 0;border:none;border-top:1px solid var(--border)}.ai-message-content[data-v-d9e8595e] a{color:var(--accent);text-decoration:none}.ai-message-content[data-v-d9e8595e] a:hover{text-decoration:underline}.ai-message-content[data-v-d9e8595e] table{width:100%;margin:8px 0;border-collapse:collapse;font-size:12px;overflow-x:auto;display:block}.ai-message-content[data-v-d9e8595e] thead{background-color:var(--background)}.ai-message-content[data-v-d9e8595e] th,.ai-message-content[data-v-d9e8595e] td{padding:6px 10px;border:1px solid var(--border);text-align:left}.ai-message-content[data-v-d9e8595e] th{font-weight:600;color:var(--text)}.ai-message-content[data-v-d9e8595e] td{color:var(--text-secondary)}.ai-message-content[data-v-d9e8595e] del{color:var(--text-tertiary)}.ai-message-cursor[data-v-d9e8595e]{display:inline-flex;gap:3px;margin-left:4px;vertical-align:middle}.ai-cursor-dot[data-v-d9e8595e]{width:4px;height:4px;border-radius:50%;background-color:var(--text-tertiary);animation:ai-bounce-d9e8595e 1.2s infinite}.ai-cursor-dot[data-v-d9e8595e]:nth-child(2){animation-delay:.2s}.ai-cursor-dot[data-v-d9e8595e]:nth-child(3){animation-delay:.4s}@keyframes ai-bounce-d9e8595e{0%,60%,to{opacity:.3;transform:scale(.8)}30%{opacity:1;transform:scale(1)}}.ai-message-meta[data-v-d9e8595e]{margin-top:4px;font-size:10px;color:var(--text-tertiary)}.ai-error-banner[data-v-d9e8595e]{display:flex;align-items:center;gap:8px;padding:6px 12px;background-color:var(--toast-error-bg, rgba(239, 68, 68, .1));border-top:1px solid var(--toast-error-border, rgba(239, 68, 68, .3));flex-shrink:0}.ai-error-text[data-v-d9e8595e]{flex:1;font-size:12px;color:var(--toast-error-text, var(--status-error))}.ai-error-dismiss[data-v-d9e8595e]{border:none;background:transparent;color:var(--toast-error-text, var(--status-error));font-size:16px;cursor:pointer;padding:0 4px}.ai-input-area[data-v-d9e8595e]{border-top:1px solid var(--border);padding:8px 10px;background-color:var(--background);flex-shrink:0;display:flex;flex-direction:column;gap:6px}.ai-selectors-row[data-v-d9e8595e]{display:flex;gap:6px;align-items:center}.ai-input-foot[data-v-d9e8595e]{display:flex;overflow:hidden;gap:6px;align-items:center;min-height:20px}.ai-input-foot-btn[data-v-d9e8595e]{display:inline-flex;flex:none;gap:4px;align-items:center;padding:2px 6px;border:1px solid transparent;border-radius:var(--radius-sm);background:none;color:var(--text-tertiary);font-size:11px;line-height:1.4;cursor:pointer;transition:color .15s,border-color .15s,background-color .15s}.ai-input-foot-btn[data-v-d9e8595e]:hover:not(:disabled){border-color:var(--border);color:var(--accent)}.ai-input-foot-btn--active[data-v-d9e8595e]{border-color:var(--accent);color:var(--accent)}.ai-input-foot-btn[data-v-d9e8595e]:disabled{opacity:.5;cursor:not-allowed}.ai-input-row--dragging .ai-input[data-v-d9e8595e]{border-color:var(--accent);background-color:var(--elevated)}.ai-ref-error[data-v-d9e8595e]{color:var(--status-error, #ef4444);font-size:11px}.ai-ref-chip[data-v-d9e8595e]{display:flex;overflow:hidden;flex:0 1 auto;gap:5px;align-items:center;padding:1px 4px 1px 2px;border:1px solid var(--border);border-radius:var(--radius-sm);background-color:var(--surface)}.ai-ref-chip-thumb[data-v-d9e8595e]{flex:none;width:18px;height:18px;border-radius:2px;object-fit:contain}.ai-ref-chip-text[data-v-d9e8595e]{overflow:hidden;flex:1;color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;font-size:11px}.ai-ref-chip-clear[data-v-d9e8595e]{flex:none;border:none;background:none;color:var(--text-tertiary);font-size:14px;line-height:1;cursor:pointer}.ai-ref-chip-clear[data-v-d9e8595e]:hover:not(:disabled){color:var(--status-error, #ef4444)}.ai-input-row[data-v-d9e8595e]{display:flex;gap:6px;align-items:flex-end}.ai-task-select[data-v-d9e8595e],.ai-model-select[data-v-d9e8595e]{flex:1;min-width:0;padding:6px 8px;border:1px solid var(--border);border-radius:var(--radius-md);background-color:var(--surface);color:var(--text);font-size:12px;cursor:pointer;outline:none}.ai-auto-replay-toggle[data-v-d9e8595e]{display:flex;align-items:center;gap:4px;white-space:nowrap;color:var(--text-secondary, var(--text));font-size:12px;cursor:pointer;-webkit-user-select:none;user-select:none}.ai-auto-replay-toggle input[data-v-d9e8595e]{margin:0;cursor:pointer}.ai-task-select[data-v-d9e8595e]:focus,.ai-model-select[data-v-d9e8595e]:focus{border-color:var(--accent)}.ai-model-select[data-v-d9e8595e]:disabled{opacity:.5;cursor:not-allowed}.ai-input[data-v-d9e8595e]{flex:1;min-height:64px;max-height:180px;padding:9px 11px;border:1px solid var(--border);border-radius:var(--radius-md);background-color:var(--surface);color:var(--text);font-size:13px;font-family:inherit;resize:none;outline:none;line-height:1.6;transition:border-color .15s,box-shadow .15s,background-color .15s}.ai-input[data-v-d9e8595e]:focus{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.ai-input[data-v-d9e8595e]::placeholder{color:var(--text-tertiary)}.ai-input[data-v-d9e8595e]:disabled{opacity:.6}.ai-send-btn[data-v-d9e8595e],.ai-stop-btn[data-v-d9e8595e]{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;border-radius:var(--radius-md);cursor:pointer;flex-shrink:0;transition:all .15s;align-self:flex-end}.ai-send-btn[data-v-d9e8595e]{background-color:var(--accent);color:#fff}.ai-send-btn[data-v-d9e8595e]:hover:not(:disabled){opacity:.9;transform:translateY(-1px)}.ai-send-btn[data-v-d9e8595e]:disabled{opacity:.4;cursor:not-allowed}.ai-stop-btn[data-v-d9e8595e]{background-color:var(--status-error, #ef4444);color:#fff}.ai-stop-btn[data-v-d9e8595e]:hover{opacity:.9}.ai-input-hint[data-v-d9e8595e]{overflow:hidden;flex:none;margin-left:auto;color:var(--text-tertiary);text-overflow:ellipsis;white-space:nowrap;font-size:10px}.ai-session-tokens[data-v-d9e8595e]{display:flex;align-items:center;gap:4px;margin-top:4px;font-size:10px;color:var(--text-tertiary);justify-content:flex-end}.ai-session-tokens svg[data-v-d9e8595e]{opacity:.7}.ai-message-content[data-v-d9e8595e] .ai-code-block{position:relative;margin:8px 0;padding:12px;background-color:var(--dark);border:1px solid var(--border);border-radius:var(--radius-sm);overflow-x:auto;font-size:12px;line-height:1.55}.ai-message-content[data-v-d9e8595e] .ai-code-block code{display:block;color:var(--text);font-family:Cascadia Code,Fira Code,Consolas,monospace;white-space:pre}.ai-message-content[data-v-d9e8595e] .ai-code-lang{display:block;margin-bottom:6px;font-size:10px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px}.ai-message-content[data-v-d9e8595e] .ai-inline-code{padding:1px 5px;background-color:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:12px;font-family:Consolas,Courier New,monospace;color:var(--text-secondary)}.ai-message-content[data-v-d9e8595e] strong{font-weight:600;color:var(--text)}.ai-file-tree[data-v-d9e8595e]{margin-top:10px;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.ai-file-tree-header[data-v-d9e8595e]{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;background-color:var(--background);border-bottom:1px solid var(--border)}.ai-file-tree-title[data-v-d9e8595e]{font-size:12px;font-weight:600;color:var(--text)}.ai-file-tree-count[data-v-d9e8595e]{font-size:11px;color:var(--text-tertiary)}.ai-file-list[data-v-d9e8595e]{max-height:200px;overflow-y:auto}.ai-file-item[data-v-d9e8595e]{display:flex;align-items:center;gap:6px;padding:4px 10px;font-size:11px;border-bottom:1px solid var(--border);background-color:var(--surface)}.ai-file-item[data-v-d9e8595e]:last-child{border-bottom:none}.ai-file-icon[data-v-d9e8595e]{flex-shrink:0;font-size:13px}.ai-file-name[data-v-d9e8595e]{flex:1;color:var(--text);font-family:Consolas,Courier New,monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ai-file-lang[data-v-d9e8595e]{flex-shrink:0;padding:0 4px;font-size:9px;color:var(--text-tertiary);text-transform:uppercase;background-color:var(--background);border-radius:2px}.ai-file-validation[data-v-d9e8595e]{flex-shrink:0;width:16px;height:16px;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:700;border-radius:50%;cursor:help}.ai-file-valid[data-v-d9e8595e]{color:var(--status-success, #22c55e);background-color:var(--status-success-bg, rgba(34, 197, 94, .1))}.ai-file-invalid[data-v-d9e8595e]{color:var(--status-error, #ef4444);background-color:var(--status-error-bg, rgba(239, 68, 68, .1))}.ai-file-actions[data-v-d9e8595e]{display:flex;gap:6px;padding:8px 10px;background-color:var(--background);border-top:1px solid var(--border)}.ai-file-action-btn[data-v-d9e8595e]{padding:4px 12px;font-size:11px;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;background-color:var(--surface);color:var(--text);transition:all .15s}.ai-file-action-btn[data-v-d9e8595e]:hover{background-color:var(--hover)}.ai-file-action-btn--primary[data-v-d9e8595e]{background-color:var(--primary);color:var(--on-primary);border-color:var(--primary)}.ai-file-action-btn--primary[data-v-d9e8595e]:hover{opacity:.85}.ai-btn-icon--active[data-v-d9e8595e]{color:var(--accent)!important;background-color:var(--hover)}.ai-agent-steps[data-v-d9e8595e]{margin:0 12px 8px;border:1px solid var(--border);border-radius:var(--radius-md);background-color:var(--background);overflow:hidden;flex-shrink:0;max-height:40vh;display:flex;flex-direction:column}.ai-agent-steps-header[data-v-d9e8595e]{display:flex;align-items:center;gap:8px;padding:6px 10px;background-color:var(--surface-alt);border-bottom:1px solid var(--border);font-size:12px;font-weight:600;color:var(--text-secondary)}.ai-agent-steps-title[data-v-d9e8595e]{color:var(--accent)}.ai-agent-steps-count[data-v-d9e8595e]{color:var(--text-tertiary);font-weight:400;font-size:11px}.ai-agent-steps-toggle[data-v-d9e8595e]{margin-left:auto;background:none;border:1px solid var(--border);border-radius:3px;color:var(--text-secondary);cursor:pointer;font-size:14px;width:20px;height:20px;display:flex;align-items:center;justify-content:center;padding:0;line-height:1}.ai-agent-steps-body[data-v-d9e8595e]{overflow-y:auto;flex:1;padding:4px 0}.ai-agent-steps-body[data-v-d9e8595e]::-webkit-scrollbar{width:3px}.ai-agent-steps-body[data-v-d9e8595e]::-webkit-scrollbar-thumb{background-color:var(--text-tertiary);border-radius:2px}.ai-agent-steps--live[data-v-d9e8595e]{border-color:var(--accent)}.ai-agent-steps-live[data-v-d9e8595e]{display:inline-flex;align-items:center;gap:4px;color:var(--accent);font-size:11px;font-weight:500}.ai-agent-waiting[data-v-d9e8595e]{color:var(--text-tertiary, var(--text-secondary, var(--text)));font-size:11px;font-variant-numeric:tabular-nums}.ai-agent-live-dot[data-v-d9e8595e],.ai-agent-step-live-dot[data-v-d9e8595e]{display:inline-block;width:6px;height:6px;border-radius:50%;background:currentColor;animation:ai-live-pulse-d9e8595e 1s ease-in-out infinite}.ai-agent-step-live-dot[data-v-d9e8595e]{margin-left:4px;vertical-align:middle}.ai-agent-step--live[data-v-d9e8595e]{background:color-mix(in srgb,var(--accent) 8%,transparent)}@keyframes ai-live-pulse-d9e8595e{0%,to{opacity:1}50%{opacity:.2}}.ai-attach-btn[data-v-d9e8595e]{align-self:flex-end;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;margin-bottom:2px;padding:0;border:1px solid var(--border);border-radius:var(--radius-sm, 6px);background:transparent;color:var(--text-secondary);cursor:pointer;flex-shrink:0}.ai-attach-btn[data-v-d9e8595e]:hover:not(:disabled){color:var(--accent);border-color:var(--accent)}.ai-attach-btn[data-v-d9e8595e]:disabled{opacity:.5;cursor:not-allowed}.ai-ref-chip-text[data-v-d9e8595e]{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ai-msg-ref-thumb[data-v-d9e8595e]{display:block;margin:0 0 6px;padding:0;border:1px solid var(--border);border-radius:var(--radius-sm, 6px);overflow:hidden;cursor:zoom-in;background:transparent}.ai-msg-ref-thumb img[data-v-d9e8595e]{display:block;width:120px;height:auto;max-height:90px;object-fit:cover}.ai-ref-lightbox[data-v-d9e8595e]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3000;display:flex;align-items:center;justify-content:center;background:#000000b8;cursor:zoom-out}.ai-ref-lightbox img[data-v-d9e8595e]{max-width:86vw;max-height:86vh;border-radius:var(--radius-md, 8px);box-shadow:0 8px 32px #00000080}.ai-agent-step[data-v-d9e8595e]{display:flex;gap:6px;padding:4px 10px;font-size:11px;border-bottom:1px solid var(--border);align-items:flex-start}.ai-agent-step[data-v-d9e8595e]:last-child{border-bottom:none}.ai-agent-step-icon[data-v-d9e8595e]{flex-shrink:0;width:18px;text-align:center;line-height:1.6}.ai-agent-step-content[data-v-d9e8595e]{flex:1;min-width:0}.ai-agent-step-label[data-v-d9e8595e]{font-weight:600;color:var(--text-secondary);font-size:10px;text-transform:uppercase;letter-spacing:.05em}.ai-agent-step--thought .ai-agent-step-label[data-v-d9e8595e]{color:var(--accent)}.ai-agent-step--action .ai-agent-step-label[data-v-d9e8595e]{color:var(--status-warning, #f59e0b)}.ai-agent-step--observation .ai-agent-step-label[data-v-d9e8595e]{color:var(--status-info, #3b82f6)}.ai-agent-step--answer .ai-agent-step-label[data-v-d9e8595e]{color:var(--status-success, #22c55e)}.ai-agent-step--error .ai-agent-step-label[data-v-d9e8595e]{color:var(--status-error, #ef4444)}.ai-agent-step--pending .ai-agent-step-label[data-v-d9e8595e]{color:var(--text-tertiary)}.ai-agent-step-text[data-v-d9e8595e]{color:var(--text);line-height:1.5;word-break:break-word;margin-top:2px}.ai-agent-step-meta[data-v-d9e8595e]{margin-top:3px;font-size:10px;color:var(--text-tertiary);word-break:break-all}.ai-agent-step-meta code[data-v-d9e8595e]{background-color:var(--surface-alt);padding:0 4px;border-radius:2px;font-size:10px;color:var(--text-secondary);max-width:100%;overflow:hidden;text-overflow:ellipsis;display:inline-block;vertical-align:bottom}.ai-conversations-sidebar[data-v-d9e8595e]{border-bottom:1px solid var(--border);background-color:var(--background);flex-shrink:0;max-height:40vh;display:flex;flex-direction:column}.ai-conversations-header[data-v-d9e8595e]{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;border-bottom:1px solid var(--border);background-color:var(--surface-alt)}.ai-conversations-title[data-v-d9e8595e]{font-size:12px;font-weight:600;color:var(--text-secondary)}.ai-conversations-actions[data-v-d9e8595e]{display:flex;gap:4px}.ai-conversations-list[data-v-d9e8595e]{flex:1;overflow-y:auto;padding:4px 0}.ai-conversations-list[data-v-d9e8595e]::-webkit-scrollbar{width:3px}.ai-conversations-list[data-v-d9e8595e]::-webkit-scrollbar-thumb{background-color:var(--text-tertiary);border-radius:2px}.ai-conversations-empty[data-v-d9e8595e]{padding:16px 12px;text-align:center;font-size:12px;color:var(--text-tertiary)}.ai-conversation-item[data-v-d9e8595e]{display:flex;align-items:flex-start;gap:6px;padding:6px 10px;cursor:pointer;transition:background-color .15s;border-bottom:1px solid var(--border)}.ai-conversation-item[data-v-d9e8595e]:last-child{border-bottom:none}.ai-conversation-item[data-v-d9e8595e]:hover{background-color:var(--hover)}.ai-conversation-item--active[data-v-d9e8595e]{background-color:var(--surface-alt);border-left:2px solid var(--accent);padding-left:8px}.ai-conversation-main[data-v-d9e8595e]{flex:1;min-width:0}.ai-conversation-title[data-v-d9e8595e]{font-size:12px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.4}.ai-conversation-item--active .ai-conversation-title[data-v-d9e8595e]{font-weight:600;color:var(--accent)}.ai-conversation-meta[data-v-d9e8595e]{display:flex;gap:8px;margin-top:2px;font-size:10px;color:var(--text-tertiary)}.ai-conversation-count[data-v-d9e8595e]{color:var(--text-secondary)}.ai-conversation-delete[data-v-d9e8595e]{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:20px;height:20px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-tertiary);cursor:pointer;opacity:0;transition:all .15s}.ai-conversation-item:hover .ai-conversation-delete[data-v-d9e8595e]{opacity:1}.ai-conversation-delete[data-v-d9e8595e]:hover:not(:disabled){background-color:var(--status-error-bg, rgba(239, 68, 68, .1));color:var(--status-error, #ef4444)}.ai-conversation-delete[data-v-d9e8595e]:disabled{opacity:.3;cursor:not-allowed}.ai-clone-params[data-v-d9e8595e]{display:flex;flex-direction:column;gap:6px;margin-bottom:8px;padding:8px;border:1px solid var(--border);border-radius:var(--radius-md);background-color:var(--elevated)}.ai-clone-params-title[data-v-d9e8595e]{font-size:11px;color:var(--text-tertiary)}.ai-clone-route[data-v-d9e8595e]{display:flex;align-items:center;gap:6px;margin-bottom:6px}.ai-clone-route-label[data-v-d9e8595e]{flex-shrink:0;font-size:11px;color:var(--text-tertiary)}.ai-clone-grid[data-v-d9e8595e]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.ai-clone-input[data-v-d9e8595e]{min-width:0;padding:5px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);background-color:var(--surface);color:var(--text);font-size:12px}.ai-clone-input[data-v-d9e8595e]:focus{outline:none;border-color:var(--accent)}.ai-clone-input[data-v-d9e8595e]:disabled{opacity:.6}.ai-clone-ref[data-v-d9e8595e]{display:flex;flex-direction:column;gap:6px;margin-bottom:6px;padding:6px;border:1px dashed transparent;border-radius:var(--radius-sm)}.ai-clone-ref--dragging[data-v-d9e8595e]{border-color:var(--accent);background-color:var(--surface)}.ai-clone-ref-row[data-v-d9e8595e]{display:flex;gap:6px;align-items:center}.ai-clone-ref-input[data-v-d9e8595e]{min-width:0;flex:1}.ai-clone-ref-btn[data-v-d9e8595e]{flex:none;padding:5px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);background-color:var(--surface);color:var(--text-secondary);font-size:11px;cursor:pointer}.ai-clone-ref-btn[data-v-d9e8595e]:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.ai-clone-ref-btn[data-v-d9e8595e]:disabled{opacity:.5;cursor:not-allowed}.ai-clone-ref-preview[data-v-d9e8595e]{display:flex;gap:8px;align-items:center}.ai-clone-ref-preview img[data-v-d9e8595e]{max-width:84px;max-height:52px;border:1px solid var(--border);border-radius:var(--radius-sm);object-fit:contain}.ai-clone-ref-path[data-v-d9e8595e]{overflow:hidden;color:var(--text-tertiary);text-overflow:ellipsis;white-space:nowrap;font-size:11px}.ai-clone-ref-hint[data-v-d9e8595e]{color:var(--text-tertiary);font-size:11px}.ai-clone-ref-error[data-v-d9e8595e]{color:var(--status-error, #ef4444);font-size:11px}.ai-clone-ref-file[data-v-d9e8595e]{display:none}.ai-clone-textarea[data-v-d9e8595e]{width:100%;padding:5px 8px;border:1px solid var(--border);border-radius:var(--radius-sm);background-color:var(--surface);color:var(--text);font-size:12px;resize:vertical}.ai-clone-textarea[data-v-d9e8595e]:focus{outline:none;border-color:var(--accent)}.ai-fab[data-v-65909ff0]{position:fixed;z-index:9998;width:48px;height:48px;border:none;border-radius:50%;background:linear-gradient(135deg,var(--accent, #6366f1),var(--primary, #3b82f6));color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 16px #0000004d;transition:transform .2s,box-shadow .2s}.ai-fab[data-v-65909ff0]:hover{transform:scale(1.08);box-shadow:0 6px 24px #6366f166}.ai-fab[data-v-65909ff0]:active{transform:scale(.95)}.ai-floating-panel[data-v-65909ff0]{position:fixed;z-index:9999;display:flex;flex-direction:column;background-color:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 32px #0006;overflow:hidden}.ai-resize-handle[data-v-65909ff0]{position:absolute;right:0;bottom:0;width:16px;height:16px;cursor:nwse-resize;z-index:10;background:linear-gradient(135deg,transparent 0 50%,var(--border, #8888) 50% 56%,transparent 56% 66%,var(--border, #8888) 66% 72%,transparent 72% 82%,var(--border, #8888) 82% 88%,transparent 88%);border-bottom-right-radius:8px}.ai-resize-handle[data-v-65909ff0]:hover{background:linear-gradient(135deg,transparent 0 50%,var(--accent, #409eff) 50% 56%,transparent 56% 66%,var(--accent, #409eff) 66% 72%,transparent 72% 82%,var(--accent, #409eff) 82% 88%,transparent 88%)}.ai-floating-panel[data-v-65909ff0]>.ai-assistant-panel{flex:1;border-left:none;display:flex;flex-direction:column;overflow:hidden}.ai-floating-panel[data-v-65909ff0] .ai-header{cursor:move;-webkit-user-select:none;user-select:none}.ai-floating-panel[data-v-65909ff0] .ai-header:hover{background-color:var(--elevated, var(--background))}.modal-overlay[data-v-f5c4ee9e]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal[data-v-f5c4ee9e]{background:var(--surface);border:1px solid var(--border-light);border-radius:12px;width:440px;max-width:90vw;box-shadow:0 20px 60px #00000080}.modal-header[data-v-f5c4ee9e]{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 0}.modal-header h2[data-v-f5c4ee9e]{font-size:18px;font-weight:600;color:var(--text);margin:0}.modal-close[data-v-f5c4ee9e]{background:none;border:none;font-size:24px;color:var(--text-secondary);cursor:pointer;padding:0;line-height:1}.modal-close[data-v-f5c4ee9e]:hover{color:var(--text)}.modal-body[data-v-f5c4ee9e]{padding:16px 24px 8px}.modal-footer[data-v-f5c4ee9e]{display:flex;justify-content:flex-end;gap:8px;padding:8px 24px 20px}.profile-section[data-v-f5c4ee9e]{border:1px solid var(--border-light);border-radius:8px;padding:16px;margin-bottom:16px}.section-title[data-v-f5c4ee9e]{font-size:14px;font-weight:600;color:var(--text);padding:0 4px}.form-group[data-v-f5c4ee9e]{margin-bottom:12px}.form-label[data-v-f5c4ee9e]{display:block;font-size:13px;font-weight:500;color:var(--text-secondary);margin-bottom:4px}.form-input[data-v-f5c4ee9e]{width:100%;padding:8px 12px;background:var(--background);border:1px solid var(--border-light);border-radius:6px;color:var(--text);font-size:14px;outline:none;transition:border-color .2s;box-sizing:border-box}.form-input[data-v-f5c4ee9e]::placeholder{color:var(--border)}.form-input[data-v-f5c4ee9e]:focus{border-color:var(--primary)}.form-input-disabled[data-v-f5c4ee9e]{opacity:.5;cursor:not-allowed}.form-error[data-v-f5c4ee9e]{color:var(--status-error);font-size:12px;margin:-4px 0 8px}.form-success[data-v-f5c4ee9e]{color:var(--status-success);font-size:12px;margin:-4px 0 8px}.sys-btn[data-v-f5c4ee9e]{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;line-height:1.5}.sys-btn[data-v-f5c4ee9e]:disabled{opacity:.5;cursor:not-allowed}.sys-btn-primary[data-v-f5c4ee9e]{background:var(--primary);color:var(--text)}.sys-btn-primary[data-v-f5c4ee9e]:hover:not(:disabled){background:var(--button-hover)}.sys-btn-secondary[data-v-f5c4ee9e]{background:var(--border-light);color:var(--text)}.sys-btn-secondary[data-v-f5c4ee9e]:hover:not(:disabled){background:var(--border)}.sys-btn-sm[data-v-f5c4ee9e]{padding:6px 12px;font-size:13px}.system-layout[data-v-ac6670ce]{display:flex;flex-direction:column;height:100vh;overflow:hidden}.system-topbar[data-v-ac6670ce]{display:flex;align-items:center;justify-content:space-between;height:var(--header-height, 60px);padding:0 20px;background:var(--header-background);color:var(--header-text);box-shadow:var(--shadow-small);flex-shrink:0;z-index:10;border-bottom:1px solid rgba(255,255,255,.06)}.topbar-left[data-v-ac6670ce]{display:flex;align-items:center;gap:10px}.topbar-logo[data-v-ac6670ce]{flex-shrink:0;transition:transform .3s ease}.topbar-logo[data-v-ac6670ce]:hover{transform:rotate(-8deg)}.topbar-brand[data-v-ac6670ce]{font-size:16px;font-weight:700;color:var(--header-text);margin-right:16px;flex-shrink:0;letter-spacing:.5px;background:linear-gradient(135deg,var(--header-text) 0%,var(--primary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.topbar-nav[data-v-ac6670ce]{display:flex;align-items:center;gap:2px}.topbar-nav-item[data-v-ac6670ce]{padding:8px 14px;border-radius:6px;font-size:13px;font-weight:500;color:var(--header-text);opacity:.75;text-decoration:none;transition:all .2s ease;white-space:nowrap;position:relative}.topbar-nav-item[data-v-ac6670ce]:hover{opacity:1;background:#ffffff1a}.topbar-nav-item--active[data-v-ac6670ce]{opacity:1;font-weight:600;background:#ffffff1f}.topbar-nav-item--active[data-v-ac6670ce]:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:20px;height:2px;background:var(--primary, #1a73e8);border-radius:1px}.topbar-right[data-v-ac6670ce]{display:flex;align-items:center;gap:8px}.topbar-btn[data-v-ac6670ce]{display:flex;align-items:center;gap:6px;height:36px;padding:0 14px;background:#ffffff14;border:none;border-radius:6px;color:var(--header-text);cursor:pointer;text-decoration:none;transition:all .2s ease;font-size:13px;white-space:nowrap}.topbar-btn[data-v-ac6670ce]:hover{background:#ffffff29;transform:translateY(-1px)}.topbar-btn[data-v-ac6670ce]:active{transform:translateY(0)}.topbar-btn-label[data-v-ac6670ce]{font-size:13px;font-weight:500;white-space:nowrap}.topbar-btn--logout[data-v-ac6670ce]:hover{background:#ef444426;color:var(--status-error)}.topbar-divider[data-v-ac6670ce]{width:1px;height:20px;background:#ffffff26}.topbar-user-info[data-v-ac6670ce]{display:flex;align-items:center;gap:8px;padding:0 0 0 8px;border-left:1px solid rgba(255,255,255,.15);cursor:pointer;opacity:.85;transition:opacity .2s}.topbar-user-info[data-v-ac6670ce]:hover{opacity:1}.topbar-user-avatar[data-v-ac6670ce]{width:30px;height:30px;border-radius:6px;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark, #1557b0) 100%);color:#fff;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;letter-spacing:0}.topbar-user-name[data-v-ac6670ce]{font-size:13px;color:var(--header-text);max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;opacity:.8}.topbar-user-chevron[data-v-ac6670ce]{opacity:.4;flex-shrink:0}.system-body[data-v-ac6670ce]{display:flex;flex:1;overflow:hidden}.sidebar[data-v-ac6670ce]{width:var(--sidebar-width, 200px);min-width:var(--sidebar-width, 200px);background:var(--surface);border-right:1px solid var(--border);display:flex;flex-direction:column;-webkit-user-select:none;user-select:none;transition:width .3s cubic-bezier(.4,0,.2,1),min-width .3s cubic-bezier(.4,0,.2,1);overflow:hidden;position:relative}.sidebar--collapsed[data-v-ac6670ce]{width:var(--sidebar-collapsed-width, 56px);min-width:var(--sidebar-collapsed-width, 56px)}.sidebar-nav[data-v-ac6670ce]{flex:1;display:flex;flex-direction:column;gap:2px;padding:12px 8px;overflow-y:auto;overflow-x:hidden}.nav-item-row[data-v-ac6670ce]{display:flex;align-items:center;position:relative}.nav-item-row .nav-item[data-v-ac6670ce]{flex:1;min-width:0}.nav-item[data-v-ac6670ce]{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:8px;color:var(--text-secondary);text-decoration:none;font-size:13px;transition:all .15s;white-space:nowrap;overflow:hidden;position:relative}.nav-item[data-v-ac6670ce]:hover{background:#ffffff0f;color:var(--text)}.nav-item--active[data-v-ac6670ce]{background:#1a73e81f;color:var(--primary)}.nav-item--active[data-v-ac6670ce]:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:16px;background:var(--primary);border-radius:0 3px 3px 0;opacity:0;transition:opacity .2s}.nav-item--active[data-v-ac6670ce]:before{opacity:1}.nav-icon[data-v-ac6670ce]{display:flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0}.nav-label[data-v-ac6670ce]{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:opacity .2s ease,width .2s ease}.nav-label--hidden[data-v-ac6670ce]{opacity:0;width:0;display:none}.nav-sub-toggle[data-v-ac6670ce]{display:flex;align-items:center;justify-content:center;width:24px;height:24px;margin-right:4px;border:none;border-radius:4px;background:transparent;color:var(--text-secondary);cursor:pointer;flex-shrink:0;opacity:0;transition:opacity .15s,transform .25s cubic-bezier(.4,0,.2,1),color .15s}.nav-item-row:hover .nav-sub-toggle[data-v-ac6670ce]{opacity:.7}.nav-sub-toggle[data-v-ac6670ce]:hover{opacity:1!important;color:var(--text);background:#ffffff14}.nav-sub-toggle--expanded svg[data-v-ac6670ce]{transform:rotate(180deg)}.nav-sub-wrapper[data-v-ac6670ce]{display:grid;grid-template-rows:0fr;transition:grid-template-rows .25s cubic-bezier(.4,0,.2,1);overflow:hidden}.nav-sub-wrapper--expanded[data-v-ac6670ce]{grid-template-rows:1fr}.nav-sub-items[data-v-ac6670ce]{display:flex;flex-direction:column;gap:1px;padding-left:14px;min-height:0}.nav-sub-item[data-v-ac6670ce]{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:6px;color:var(--text-secondary);text-decoration:none;font-size:12.5px;transition:all .15s;white-space:nowrap;overflow:hidden;position:relative}.nav-sub-item[data-v-ac6670ce]:hover{background:#ffffff0d;color:var(--text)}.nav-sub-item--active[data-v-ac6670ce]{color:var(--primary);font-weight:500}.nav-sub-icon[data-v-ac6670ce]{display:flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0;opacity:.6}.nav-sub-item--active .nav-sub-icon[data-v-ac6670ce]{opacity:1}.sidebar-collapse-btn[data-v-ac6670ce]{display:flex;align-items:center;justify-content:center;height:40px;margin:4px 8px 8px;border:none;border-radius:6px;background:transparent;color:var(--text-secondary);cursor:pointer;transition:all .2s ease;flex-shrink:0}.sidebar-collapse-btn[data-v-ac6670ce]:hover{background:#ffffff14;color:var(--text)}.sidebar-collapse-btn svg[data-v-ac6670ce]{transition:transform .3s cubic-bezier(.4,0,.2,1)}.sidebar-collapse-btn svg.rotate-180[data-v-ac6670ce]{transform:rotate(180deg)}.main-content[data-v-ac6670ce]{flex:1;display:flex;flex-direction:column;overflow:hidden;background:var(--background)}.system-tab-bar[data-v-ac6670ce]{display:flex;align-items:stretch;height:36px;background:var(--surface);border-bottom:1px solid var(--border);overflow-x:auto;overflow-y:hidden;flex-shrink:0}.system-tab-bar[data-v-ac6670ce]::-webkit-scrollbar{height:2px}.system-tab-bar[data-v-ac6670ce]::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.system-tab-item[data-v-ac6670ce]{display:flex;align-items:center;gap:6px;padding:0 12px;height:100%;font-size:12px;color:var(--text-secondary);cursor:pointer;white-space:nowrap;border-right:1px solid var(--border);background:transparent;transition:background .15s,color .15s;-webkit-user-select:none;user-select:none;flex-shrink:0}.system-tab-item[data-v-ac6670ce]:hover{background:#ffffff0a;color:var(--text)}.system-tab-item--active[data-v-ac6670ce]{color:var(--primary);background:var(--background);border-bottom:2px solid var(--primary);margin-bottom:-1px}.system-tab-item--active[data-v-ac6670ce]:hover{background:var(--background);color:var(--primary)}.system-tab-title[data-v-ac6670ce]{max-width:160px;overflow:hidden;text-overflow:ellipsis}.system-tab-close[data-v-ac6670ce]{display:flex;align-items:center;justify-content:center;width:16px;height:16px;margin-left:2px;padding:0;border:none;border-radius:3px;background:transparent;color:var(--text-secondary);cursor:pointer;opacity:0;transition:opacity .15s,background .15s,color .15s}.system-tab-item:hover .system-tab-close[data-v-ac6670ce]{opacity:1}.system-tab-item--active .system-tab-close[data-v-ac6670ce]{opacity:.8}.system-tab-close[data-v-ac6670ce]:hover{background:#ef444426;color:var(--status-error)}.system-tab-content[data-v-ac6670ce]{flex:1;display:flex;flex-direction:column;overflow-y:auto;overflow-x:hidden;min-height:0}.system-tab-pin-icon[data-v-ac6670ce]{display:flex;align-items:center;justify-content:center;width:14px;height:14px;color:var(--text-secondary);opacity:.6;flex-shrink:0}.system-tab-item--pinned[data-v-ac6670ce]{padding-left:8px}.tab-context-menu[data-v-ac6670ce]{position:fixed;z-index:10000;min-width:140px;background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 32px #00000059;padding:4px;display:flex;flex-direction:column;gap:1px}.tab-context-menu[data-v-ac6670ce]:focus{outline:none}.context-menu-item[data-v-ac6670ce]{display:flex;align-items:center;padding:8px 14px;border:none;border-radius:5px;background:transparent;color:var(--text);cursor:pointer;font-size:12.5px;text-align:left;transition:background .12s}.context-menu-item[data-v-ac6670ce]:hover:not(:disabled){background:#1a73e81f;color:var(--primary)}.context-menu-item--disabled[data-v-ac6670ce],.context-menu-item[data-v-ac6670ce]:disabled{color:var(--text-tertiary);opacity:.5;cursor:not-allowed}.theme-switcher[data-v-ac6670ce]{position:relative;display:flex;align-items:center}.theme-btn[data-v-ac6670ce]{width:36px;padding:0!important;justify-content:center}.language-switcher[data-v-ac6670ce]{position:relative;display:flex;align-items:center}.language-btn[data-v-ac6670ce]{width:36px;padding:0!important;justify-content:center}.language-dropdown-menu[data-v-ac6670ce]{position:absolute;top:100%;right:0;margin-top:8px;background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 32px #0000004d;padding:6px;display:flex;flex-direction:column;gap:2px;z-index:1000;min-width:140px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.language-dropdown-item[data-v-ac6670ce]{display:flex;align-items:center;gap:8px;padding:8px 12px;border:none;border-radius:6px;background:none;color:var(--text);cursor:pointer;transition:all .15s;font-size:13px}.language-dropdown-item[data-v-ac6670ce]:hover{background:#ffffff14}.language-dropdown-item.active[data-v-ac6670ce]{background:#1a73e826;color:var(--primary)}.theme-dropdown-menu[data-v-ac6670ce]{position:absolute;top:100%;right:0;margin-top:8px;background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:0 8px 32px #0000004d;padding:6px;display:flex;flex-direction:column;gap:2px;z-index:1000;min-width:140px;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.theme-dropdown-item[data-v-ac6670ce]{display:flex;align-items:center;gap:8px;padding:8px 12px;border:none;border-radius:6px;background:none;color:var(--text);cursor:pointer;transition:all .15s;font-size:13px}.theme-dropdown-item[data-v-ac6670ce]:hover{background:#ffffff14}.theme-dropdown-item.active[data-v-ac6670ce]{background:#1a73e826;color:var(--primary)}.sidebar-nav[data-v-ac6670ce]::-webkit-scrollbar{width:3px}.sidebar-nav[data-v-ac6670ce]::-webkit-scrollbar-track{background:transparent}.sidebar-nav[data-v-ac6670ce]::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.sidebar-nav[data-v-ac6670ce]::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}.graphic-renderer[data-v-e5c69972]{position:relative;display:inline-block}.graphic-canvas[data-v-e5c69972]{display:block}.graphic-wrapper[data-v-9e295fa2]{position:absolute;cursor:move;-webkit-user-select:none;user-select:none}.graphic-wrapper.selected[data-v-9e295fa2]{border:2px solid #4caf50;box-shadow:0 0 0 2px #4caf504d}.resize-handles[data-v-9e295fa2]{position:absolute;top:-4px;left:-4px;right:-4px;bottom:-4px;pointer-events:none}.resize-handle[data-v-9e295fa2]{position:absolute;width:8px;height:8px;background-color:#4caf50;border:2px solid white;border-radius:50%;pointer-events:all;cursor:nwse-resize}.resize-handle.top-left[data-v-9e295fa2]{top:0;left:0}.resize-handle.top-right[data-v-9e295fa2]{top:0;right:0;cursor:nesw-resize}.resize-handle.bottom-left[data-v-9e295fa2]{bottom:0;left:0;cursor:nesw-resize}.resize-handle.bottom-right[data-v-9e295fa2]{bottom:0;right:0;cursor:nwse-resize}.toolbar[data-v-e0dc52de]{background-color:#f5f5f5;border-right:1px solid #ccc;padding:10px;width:200px;height:100%;overflow-y:auto}.toolbar-section[data-v-e0dc52de]{margin-bottom:20px}.toolbar-section h3[data-v-e0dc52de]{margin:0 0 10px;font-size:14px;font-weight:700;color:#333}.toolbar-buttons[data-v-e0dc52de]{display:flex;flex-direction:column;gap:5px}.toolbar-appearance[data-v-e0dc52de]{gap:8px}.toolbar-appearance .appearance-item[data-v-e0dc52de]{display:flex;flex-direction:column;gap:2px}.toolbar-appearance .appearance-item[data-v-e0dc52de]:before{content:"";font-size:11px;color:#666}.toolbar-appearance .appearance-item[data-v-e0dc52de]:first-child:before{content:"主题"}.toolbar-appearance .appearance-item[data-v-e0dc52de]:last-child:before{content:"语言"}.toolbar-appearance[data-v-e0dc52de] .ss-theme-switcher,.toolbar-appearance[data-v-e0dc52de] .ss-language-switcher{width:100%}.toolbar-button[data-v-e0dc52de]{padding:8px;border:1px solid #ccc;border-radius:4px;background-color:#fff;cursor:pointer;transition:all .2s;width:32px;height:32px;object-fit:contain;display:block}.toolbar-button[data-v-e0dc52de]:hover{background-color:#e3f2fd;border-color:#2196f3}.toolbar-button.active[data-v-e0dc52de]{background-color:#2196f3;border-color:#2196f3;filter:brightness(1.2)}.render-toggle-btn[data-v-e0dc52de]{padding:6px 10px;border:1px solid #ccc;border-radius:4px;background-color:#fff;cursor:pointer;font-size:12px;color:#333;transition:all .2s;width:100%;text-align:center}.render-toggle-btn[data-v-e0dc52de]:hover{background-color:#e3f2fd;border-color:#2196f3}.render-toggle-btn.active[data-v-e0dc52de]{background-color:#4caf50;border-color:#4caf50;color:#fff}.component-panel[data-v-d5bb5f0c]{background-color:var(--surface);height:100%;display:flex;flex-direction:column;overflow:hidden;border-radius:8px}.panel-header[data-v-d5bb5f0c]{padding:16px 20px;border-bottom:1px solid var(--border);background-color:var(--surface)}.panel-title[data-v-d5bb5f0c]{margin:0;font-size:15px;font-weight:600;color:var(--text);letter-spacing:.5px}.panel-body[data-v-d5bb5f0c]{flex:1;display:flex;flex-direction:column;overflow:hidden;padding:0 16px}.primary-categories[data-v-d5bb5f0c]{display:flex;gap:8px;padding:16px 0 12px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.primary-categories[data-v-d5bb5f0c]::-webkit-scrollbar{display:none}.primary-category-btn[data-v-d5bb5f0c]{padding:8px 16px;border:none;border-radius:6px;background-color:transparent;cursor:pointer;font-size:13px;font-weight:500;transition:all .25s ease;color:var(--text-secondary);white-space:nowrap;position:relative}.primary-category-btn[data-v-d5bb5f0c]:hover{color:var(--text);background-color:var(--control-button-hover)}.primary-category-btn.active[data-v-d5bb5f0c]{color:var(--primary);background-color:#3b82f61a;font-weight:600}.secondary-categories[data-v-d5bb5f0c]{display:flex;gap:10px;padding:8px 0 16px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}.secondary-categories[data-v-d5bb5f0c]::-webkit-scrollbar{display:none}.secondary-category-btn[data-v-d5bb5f0c]{padding:6px 14px;border:1px solid var(--border);border-radius:20px;background-color:transparent;cursor:pointer;font-size:12px;font-weight:500;transition:all .25s ease;color:var(--text-secondary);white-space:nowrap}.secondary-category-btn[data-v-d5bb5f0c]:hover{border-color:var(--primary);color:var(--primary);background-color:#3b82f60d}.secondary-category-btn.active[data-v-d5bb5f0c]{background-color:var(--primary);color:#fff;border-color:var(--primary);box-shadow:0 2px 8px #3b82f659}.components-grid[data-v-d5bb5f0c]{flex:1;display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding:12px 0 20px;overflow-y:auto;align-content:start}.component-card[data-v-d5bb5f0c]{display:flex;flex-direction:column;align-items:center;padding:18px 14px;background:linear-gradient(145deg,#2a2a2a,#1f1f1f);border:1px solid var(--border);border-radius:10px;cursor:grab;transition:all .25s cubic-bezier(.4,0,.2,1);color:var(--text);min-height:168px;position:relative;overflow:hidden}.component-card[data-v-d5bb5f0c]:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,transparent 0%,rgba(59,130,246,0) 100%);opacity:0;transition:opacity .25s ease;pointer-events:none}.component-card[data-v-d5bb5f0c]:hover{transform:translateY(-4px) scale(1.02);border-color:#3b82f699;box-shadow:0 12px 28px #00000080,0 0 30px #3b82f633}.component-card[data-v-d5bb5f0c]:hover:before{opacity:1;background:linear-gradient(135deg,transparent 0%,rgba(59,130,246,.08) 100%)}.component-card[data-v-d5bb5f0c]:active{cursor:grabbing;transform:translateY(-1px)}.component-preview[data-v-d5bb5f0c]{width:110px;height:88px;display:flex;align-items:center;justify-content:center;margin-bottom:14px;background:linear-gradient(135deg,#152b45,#0d1f3c);border-radius:8px;border:1px solid rgba(59,130,246,.25);box-shadow:inset 0 0 14px #3b82f614;position:relative;overflow:hidden}.preview-image[data-v-d5bb5f0c]{width:82px;height:68px;object-fit:contain;filter:drop-shadow(0 0 8px rgba(59,130,246,.55));transition:transform .25s ease}.component-card:hover .preview-image[data-v-d5bb5f0c]{transform:scale(1.08)}.preview-component[data-v-d5bb5f0c]{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.preview-emoji[data-v-d5bb5f0c]{font-size:32px;filter:drop-shadow(0 0 6px rgba(59,130,246,.5))}.preview-placeholder[data-v-d5bb5f0c]{width:82px;height:68px;display:flex;align-items:center;justify-content:center;border-radius:8px;background:linear-gradient(135deg,#3b82f624,#3b82f60a);border:1px dashed rgba(59,130,246,.4);color:var(--primary);font-size:22px;font-weight:700;letter-spacing:.5px;-webkit-user-select:none;user-select:none}.component-info[data-v-d5bb5f0c]{text-align:center;width:100%}.component-name[data-v-d5bb5f0c]{font-size:13px;color:var(--text-secondary);line-height:1.4;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-weight:500}.component-card:hover .component-name[data-v-d5bb5f0c]{color:var(--text)}.empty-state[data-v-d5bb5f0c]{grid-column:1 / -1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;color:var(--text-secondary)}.empty-icon[data-v-d5bb5f0c]{font-size:48px;margin-bottom:12px;opacity:.5}.empty-text[data-v-d5bb5f0c]{font-size:14px;opacity:.7}.components-grid[data-v-d5bb5f0c]::-webkit-scrollbar{width:6px}.components-grid[data-v-d5bb5f0c]::-webkit-scrollbar-track{background:var(--background);border-radius:3px}.components-grid[data-v-d5bb5f0c]::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.components-grid[data-v-d5bb5f0c]::-webkit-scrollbar-thumb:hover{background:var(--border-light)}.layer-group[data-v-08788ee4]{margin-bottom:4px}.layer-group-header[data-v-08788ee4]{display:flex;align-items:center;gap:4px;padding:4px 8px;background-color:var(--surface);border:1px solid var(--border);border-radius:6px;cursor:pointer;transition:all .2s ease}.layer-group-header[data-v-08788ee4]:hover{background-color:var(--control-button-hover)}.group-expand-icon[data-v-08788ee4]{font-size:8px;color:var(--text-secondary);width:12px;text-align:center}.group-icon[data-v-08788ee4]{font-size:12px}.group-name[data-v-08788ee4]{flex:1;font-size:12px;font-weight:500;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.group-count[data-v-08788ee4]{font-size:11px;color:var(--text-secondary)}.group-lock-btn[data-v-08788ee4],.group-visibility-btn[data-v-08788ee4],.group-rename-btn[data-v-08788ee4],.group-delete-btn[data-v-08788ee4]{width:18px;height:18px;display:flex;align-items:center;justify-content:center;border:none;background:none;color:var(--text-secondary);cursor:pointer;border-radius:3px;font-size:10px;transition:all .2s ease}.group-lock-btn[data-v-08788ee4]:hover,.group-visibility-btn[data-v-08788ee4]:hover,.group-rename-btn[data-v-08788ee4]:hover,.group-delete-btn[data-v-08788ee4]:hover{background-color:var(--border);color:var(--text)}.group-delete-btn[data-v-08788ee4]:hover{color:#ef4444}.layer-group-content[data-v-08788ee4]{padding-left:16px;margin-top:2px}.layer-item[data-v-08788ee4]{background-color:var(--background);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:4px;margin-bottom:4px;transition:all .2s ease;cursor:pointer}.layer-item[data-v-08788ee4]:hover{background-color:var(--control-button-hover);border-color:var(--primary)}.layer-item.selected[data-v-08788ee4]{background-color:#3498db26;border-color:var(--primary);box-shadow:0 0 0 2px #3498db33}.layer-item.dragging[data-v-08788ee4]{opacity:.5;border-style:dashed}.layer-item-in-group[data-v-08788ee4]{margin-left:8px}.layer-header[data-v-08788ee4]{display:flex;align-items:center;gap:6px}.layer-checkbox[data-v-08788ee4]{flex-shrink:0}.layer-checkbox input[type=checkbox][data-v-08788ee4]{width:14px;height:14px;accent-color:var(--primary)}.layer-button[data-v-08788ee4]{width:22px;height:22px;display:flex;align-items:center;justify-content:center;border:none;background:none;color:var(--text-secondary);cursor:pointer;transition:all .2s ease;font-size:12px;border-radius:3px}.layer-button[data-v-08788ee4]:hover{background-color:var(--border);color:var(--text)}.layer-thumbnail[data-v-08788ee4]{width:24px;height:24px;border-radius:3px;background-color:var(--surface);overflow:hidden;flex-shrink:0}.layer-name[data-v-08788ee4]{flex:1;font-size:12px;font-weight:500;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 4px}.layer-controls[data-v-08788ee4]{display:flex;gap:2px}.layer-action[data-v-08788ee4]{width:18px;height:18px;font-size:10px}.layer-dropdown[data-v-08788ee4]{position:relative}.layer-panel[data-v-dd4ea3d2]{height:100%;display:flex;flex-direction:column;color:var(--text);background:var(--elevated);border-right:1px solid var(--border)}.layer-section[data-v-dd4ea3d2]{display:flex;flex-direction:column;height:100%;padding:16px}.layer-header-bar[data-v-dd4ea3d2]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.layer-header-bar h3[data-v-dd4ea3d2]{margin:0;font-size:16px;font-weight:600;color:var(--text)}.layer-toolbar[data-v-dd4ea3d2]{display:flex;gap:4px}.toolbar-button[data-v-dd4ea3d2]{width:28px;height:28px;border:none;background:none;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:14px;transition:background-color .2s ease}.toolbar-button[data-v-dd4ea3d2]:hover:not(:disabled){background-color:var(--control-button-hover);color:var(--text)}.toolbar-button[data-v-dd4ea3d2]:disabled{opacity:.4;cursor:not-allowed}.toolbar-button-danger[data-v-dd4ea3d2]:hover:not(:disabled){background-color:#ef444426;color:#ef4444}.layer-multi-select-bar[data-v-dd4ea3d2]{background:linear-gradient(135deg,var(--surface) 0%,var(--background) 100%);border-bottom:1px solid var(--border);padding:4px 8px;display:flex;align-items:center;justify-content:space-between;font-size:11px;color:var(--text-secondary);border-radius:4px;margin-bottom:8px}.multi-select-count[data-v-dd4ea3d2]{background-color:var(--primary);color:#fff;font-size:10px;font-weight:600;padding:2px 6px;border-radius:10px;min-width:20px;text-align:center}.multi-select-actions[data-v-dd4ea3d2]{display:flex;align-items:center;gap:2px}.multi-select-btn[data-v-dd4ea3d2]{width:28px;height:26px;display:flex;align-items:center;justify-content:center;border:none;background-color:transparent;color:var(--text-secondary);font-size:14px;border-radius:4px;cursor:pointer;transition:all .2s ease;position:relative}.multi-select-btn[data-v-dd4ea3d2]:hover{background-color:var(--control-button-hover);color:var(--text)}.multi-select-btn.tooltip-btn[data-v-dd4ea3d2]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 4px);left:50%;transform:translate(-50%);background-color:var(--surface);color:var(--text);font-size:10px;padding:4px 8px;border-radius:4px;white-space:nowrap;opacity:0;visibility:hidden;transition:all .2s ease;z-index:100;border:1px solid var(--border);box-shadow:0 2px 8px #00000026}.multi-select-btn.tooltip-btn[data-v-dd4ea3d2]:hover:after{opacity:1;visibility:visible}.layer-search-bar[data-v-dd4ea3d2]{display:flex;gap:8px;align-items:center;margin-bottom:16px}.layer-search[data-v-dd4ea3d2]{flex:1;padding:6px 12px;border:1px solid var(--border);border-radius:6px;background:var(--background);color:var(--text);font-size:13px}.layer-select-all[data-v-dd4ea3d2]{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--text-secondary);cursor:pointer}.layer-select-all input[type=checkbox][data-v-dd4ea3d2]{width:12px;height:12px}.layer-list[data-v-dd4ea3d2]{flex:1;overflow-y:auto;padding:6px}.layer-empty[data-v-dd4ea3d2]{background-color:var(--background);border:1px dashed var(--border);border-radius:8px;padding:40px 20px;text-align:center;color:var(--text-secondary);font-size:13px}.layer-context-menu[data-v-dd4ea3d2]{position:fixed;background-color:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:0 4px 20px #0003;padding:4px;z-index:1000;min-width:160px}.context-menu-item[data-v-dd4ea3d2]{display:block;width:100%;padding:8px 12px;border:none;background:none;color:var(--text);font-size:13px;text-align:left;cursor:pointer;border-radius:4px;transition:background-color .2s ease}.context-menu-item[data-v-dd4ea3d2]:hover{background-color:var(--control-button-hover)}.context-menu-item-danger[data-v-dd4ea3d2]{color:#ef4444}.context-menu-divider[data-v-dd4ea3d2]{height:1px;background-color:var(--border);margin:4px 0}.page-panel[data-v-10ff5d86]{height:100%;display:flex;flex-direction:column;color:var(--text)}.page-panel-header[data-v-10ff5d86]{height:var(--toolbar-height, 42px);padding:0 16px;border-bottom:1px solid var(--border);flex-shrink:0;display:flex;align-items:center;justify-content:space-between}.page-panel-header-actions[data-v-10ff5d86]{display:flex;align-items:center;gap:4px;margin-left:auto}.page-add-btn[data-v-10ff5d86],.page-refresh-btn[data-v-10ff5d86],.page-import-btn[data-v-10ff5d86],.page-export-btn[data-v-10ff5d86],.group-add-btn[data-v-10ff5d86],.group-toggle-all-btn[data-v-10ff5d86]{width:24px;height:24px;border:1px solid var(--border);background-color:var(--surface);color:var(--text);border-radius:4px;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s}.page-add-btn[data-v-10ff5d86]:hover,.page-refresh-btn[data-v-10ff5d86]:hover,.page-import-btn[data-v-10ff5d86]:hover,.page-export-btn[data-v-10ff5d86]:hover,.group-add-btn[data-v-10ff5d86]:hover,.group-toggle-all-btn[data-v-10ff5d86]:hover{background-color:var(--control-button-hover);border-color:var(--primary);color:var(--primary)}.page-import-wrapper[data-v-10ff5d86]{position:relative}.import-dropdown-menu[data-v-10ff5d86]{position:absolute;top:100%;right:0;margin-top:4px;background-color:var(--surface);border:1px solid var(--border);border-radius:6px;box-shadow:var(--shadow-medium);z-index:1000;min-width:180px;padding:4px 0}.dropdown-item[data-v-10ff5d86]{display:flex;align-items:center;gap:8px;padding:8px 12px;cursor:pointer;font-size:13px;color:var(--text);white-space:nowrap;transition:background-color .15s}.dropdown-item[data-v-10ff5d86]:hover{background-color:var(--control-button-hover)}.dropdown-icon[data-v-10ff5d86]{font-size:14px;width:18px;text-align:center;flex-shrink:0}.page-panel-groups[data-v-10ff5d86]{flex:1;overflow-y:auto;padding:12px 12px 8px}.group-item[data-v-10ff5d86]{margin-bottom:6px;border-radius:8px;border:1px solid var(--border);overflow:hidden;transition:border-color .18s ease,box-shadow .18s ease}.group-item-active[data-v-10ff5d86]{border-color:var(--primary);box-shadow:inset 3px 0 0 var(--primary),0 1px 3px #3b82f61a}.group-header[data-v-10ff5d86]{display:flex;align-items:center;gap:6px;padding:8px 10px;cursor:pointer;transition:background-color .15s ease;-webkit-user-select:none;user-select:none}.group-header[data-v-10ff5d86]:hover{background-color:var(--control-button-hover)}.group-arrow[data-v-10ff5d86]{font-size:10px;color:var(--text-secondary);transition:transform .2s ease;flex-shrink:0}.group-arrow.expanded[data-v-10ff5d86]{transform:rotate(90deg)}.group-name[data-v-10ff5d86]{flex:1;font-size:12px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.group-count[data-v-10ff5d86]{font-size:11px;color:var(--text-secondary);flex-shrink:0}.group-actions[data-v-10ff5d86]{display:flex;gap:2px;opacity:0;transition:opacity .15s ease}.group-header:hover .group-actions[data-v-10ff5d86]{opacity:1}.group-action-btn[data-v-10ff5d86]{width:20px;height:20px;border:none;background:none;border-radius:3px;cursor:pointer;font-size:12px;color:var(--text-secondary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.group-action-btn[data-v-10ff5d86]:hover{background-color:var(--control-button-hover);color:var(--text)}.group-action-rename[data-v-10ff5d86]:hover{color:var(--primary)}.group-action-delete[data-v-10ff5d86]:hover{background-color:#ef444426;color:#ef4444}.group-pages[data-v-10ff5d86]{padding:2px 4px 4px}.group-empty[data-v-10ff5d86]{padding:12px;text-align:center;color:var(--text-secondary);font-size:11px;font-style:italic}.ungrouped-section[data-v-10ff5d86]{margin-top:8px}.page-item[data-v-10ff5d86]{display:flex;align-items:center;gap:8px;padding:7px 8px;border-radius:6px;cursor:pointer;font-size:12px;transition:background-color .15s ease,box-shadow .15s ease;position:relative}.page-item[data-v-10ff5d86]:hover{background-color:var(--control-button-hover)}.page-item-active[data-v-10ff5d86]{background:linear-gradient(90deg,rgba(59,130,246,.15),transparent 70%);color:var(--primary);box-shadow:inset 3px 0 0 var(--primary)}.page-item-preview[data-v-10ff5d86]{width:80px;height:54px;border-radius:5px;border:1px solid var(--border);object-fit:cover;flex-shrink:0;background:var(--surface);box-shadow:0 1px 4px #0000001a;transition:transform .15s ease,box-shadow .15s ease}.page-item:hover .page-item-preview[data-v-10ff5d86]{box-shadow:0 3px 8px #00000026;transform:scale(1.03)}.page-item-preview-loading[data-v-10ff5d86]{width:80px;height:54px;border-radius:5px;border:1px solid var(--border);flex-shrink:0;background:linear-gradient(90deg,var(--surface) 25%,var(--control-button-hover) 50%,var(--surface) 75%);background-size:200% 100%;animation:preview-loading-pulse-10ff5d86 1.5s ease-in-out infinite}@keyframes preview-loading-pulse-10ff5d86{0%{background-position:200% 0}to{background-position:-200% 0}}.page-item-name[data-v-10ff5d86]{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:450;line-height:1.4;padding:0 2px}.page-item-badge[data-v-10ff5d86]{font-size:10px;padding:2px 7px;border-radius:10px;background:var(--primary);color:#fff;flex-shrink:0;font-weight:500;letter-spacing:.3px;box-shadow:0 1px 4px #3b82f64d}.page-item-remove[data-v-10ff5d86]{width:18px;height:18px;border:none;background:none;border-radius:3px;cursor:pointer;font-size:14px;color:var(--text-secondary);display:flex;align-items:center;justify-content:center;flex-shrink:0;opacity:0;transition:opacity .15s ease}.page-item:hover .page-item-remove[data-v-10ff5d86]{opacity:1}.page-item-remove[data-v-10ff5d86]:hover{background-color:#ef444426;color:#ef4444}.page-context-menu[data-v-10ff5d86]{position:fixed;background-color:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:0 4px 20px #0003;padding:4px;z-index:1000;min-width:180px}.page-context-menu .menu-item[data-v-10ff5d86]{display:block;width:100%;padding:8px 12px;border:none;background:none;color:var(--text);font-size:13px;text-align:left;cursor:pointer;border-radius:4px;transition:background-color .2s ease}.page-context-menu .menu-item[data-v-10ff5d86]:hover{background-color:var(--control-button-hover)}.page-context-menu .menu-item-danger[data-v-10ff5d86]{color:#ef4444}.page-context-menu .menu-divider[data-v-10ff5d86]{height:1px;background-color:var(--border);margin:4px 0}.page-item-drag-handle[data-v-10ff5d86]{cursor:grab;font-size:12px;color:var(--text-secondary);opacity:0;flex-shrink:0;-webkit-user-select:none;user-select:none;transition:opacity .15s ease}.page-item:hover .page-item-drag-handle[data-v-10ff5d86]{opacity:.6}.page-item-drag-handle[data-v-10ff5d86]:active{cursor:grabbing}.page-item-dragging[data-v-10ff5d86]{opacity:.4}.page-item-drag-over[data-v-10ff5d86]{border-top:2px solid var(--primary)}.group-drag-over[data-v-10ff5d86]{border-color:var(--primary);box-shadow:0 0 0 1px var(--primary)}.group-empty-drag-over[data-v-10ff5d86]{background-color:#3b82f61a;border:1px dashed var(--primary);border-radius:4px}.ungrouped-drag-over[data-v-10ff5d86]{outline:2px dashed var(--primary);outline-offset:-2px;border-radius:6px}.page-panel-footer[data-v-10ff5d86]{flex-shrink:0;padding:8px 14px;border-top:1px solid var(--border);background:var(--elevated)}.footer-stats[data-v-10ff5d86]{font-size:11px;color:var(--text-secondary);-webkit-user-select:none;user-select:none}.page-panel-groups[data-v-10ff5d86]::-webkit-scrollbar{width:4px}.page-panel-groups[data-v-10ff5d86]::-webkit-scrollbar-track{background:transparent}.page-panel-groups[data-v-10ff5d86]::-webkit-scrollbar-thumb{background-color:var(--border);border-radius:4px}.page-panel-groups[data-v-10ff5d86]::-webkit-scrollbar-thumb:hover{background-color:var(--text-secondary)}.sync-dialog-overlay[data-v-9f8baf13]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000}.sync-dialog[data-v-9f8baf13]{width:480px;max-height:80vh;background:var(--elevated);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 32px #0003;display:flex;flex-direction:column}.sync-dialog-header[data-v-9f8baf13]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border)}.sync-dialog-title[data-v-9f8baf13]{font-size:15px;font-weight:600;color:var(--text)}.sync-dialog-close[data-v-9f8baf13]{background:none;border:none;font-size:20px;cursor:pointer;color:var(--text-secondary);padding:0;line-height:1}.sync-dialog-close[data-v-9f8baf13]:hover{color:var(--text)}.sync-dialog-body[data-v-9f8baf13]{padding:16px 20px;flex:1;overflow-y:auto}.sync-dialog-desc[data-v-9f8baf13]{margin:0 0 12px;font-size:13px;color:var(--text-secondary)}.sync-dialog-pages[data-v-9f8baf13]{display:flex;flex-direction:column;gap:6px;margin-bottom:16px;max-height:200px;overflow-y:auto}.sync-dialog-page[data-v-9f8baf13]{display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--border);border-radius:4px;cursor:pointer;transition:background .15s}.sync-dialog-page[data-v-9f8baf13]:hover{background:var(--background)}.sync-dialog-page input[type=checkbox][data-v-9f8baf13]{width:16px;height:16px;cursor:pointer}.sync-dialog-page-name[data-v-9f8baf13]{font-size:13px;color:var(--text)}.sync-dialog-page.is-lazy[data-v-9f8baf13]{opacity:.6;cursor:not-allowed}.sync-dialog-page.is-lazy input[type=checkbox][data-v-9f8baf13]{cursor:not-allowed}.sync-dialog-page-tag[data-v-9f8baf13]{margin-left:auto;font-size:11px;color:var(--status-warning)}.sync-dialog-page-hint[data-v-9f8baf13]{margin-left:auto;font-size:11px;color:var(--text-secondary)}.sync-dialog-warning[data-v-9f8baf13]{padding:10px 12px;background:#faad1426;border:1px solid var(--status-warning);border-radius:4px;font-size:12px;color:var(--text-secondary)}.sync-dialog-warning p[data-v-9f8baf13]{margin:0 0 4px}.sync-dialog-warning-text[data-v-9f8baf13]{color:var(--status-warning)}.sync-dialog-footer[data-v-9f8baf13]{display:flex;justify-content:flex-end;gap:8px;padding:12px 20px;border-top:1px solid var(--border)}.sync-dialog-btn[data-v-9f8baf13]{padding:6px 16px;border-radius:4px;font-size:13px;cursor:pointer;border:1px solid var(--border);transition:all .15s}.sync-dialog-btn-cancel[data-v-9f8baf13]{background:var(--elevated);color:var(--text)}.sync-dialog-btn-cancel[data-v-9f8baf13]:hover{border-color:var(--primary);color:var(--primary)}.sync-dialog-btn-confirm[data-v-9f8baf13]{background:var(--primary);color:#fff;border-color:var(--primary)}.sync-dialog-btn-confirm[data-v-9f8baf13]:hover{opacity:.85}.sync-dialog-btn-confirm[data-v-9f8baf13]:disabled{opacity:.5;cursor:not-allowed}.tpl-var-editor[data-v-521b04dc]{display:flex;flex-direction:column;gap:8px}.var-row[data-v-521b04dc]{display:grid;grid-template-columns:1fr auto;grid-template-areas:"grid grid" "extra extra" "required remove";gap:4px 8px;align-items:center;padding:6px;border:1px solid #e0e0e0;border-radius:4px}.var-grid[data-v-521b04dc]{grid-area:grid;display:grid;grid-template-columns:1fr 1fr 1fr;gap:4px}.var-extra[data-v-521b04dc]{grid-area:extra;display:flex;gap:6px;align-items:center}.var-required[data-v-521b04dc]{grid-area:required;font-size:12px}.var-remove[data-v-521b04dc]{grid-area:remove;border:none;background:#f5f5f5;cursor:pointer;width:24px;height:24px;border-radius:4px}.var-error[data-v-521b04dc]{color:#d4380d;font-size:12px}.var-add[data-v-521b04dc]{align-self:flex-start;border:1px dashed #bbb;background:#fafafa;padding:4px 12px;cursor:pointer;border-radius:4px}.widget-template-panel[data-v-48a908d3]{height:100%;display:flex;flex-direction:column;color:var(--text);background:var(--elevated)}.wtp-toolbar[data-v-48a908d3]{display:flex;gap:6px;padding:8px;border-bottom:1px solid var(--border);flex-shrink:0}.wtp-select[data-v-48a908d3]{flex:1;background:var(--background);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-sm, 4px);padding:4px 6px;font-size:12px}.wtp-btn[data-v-48a908d3]{background:var(--background);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-sm, 4px);padding:4px 8px;font-size:12px;cursor:pointer}.wtp-btn[data-v-48a908d3]:hover{border-color:var(--border-focus)}.wtp-btn.primary[data-v-48a908d3]{background:var(--primary);color:#fff;border-color:var(--primary)}.wtp-btn[data-v-48a908d3]:disabled{opacity:.5;cursor:not-allowed}.wtp-list[data-v-48a908d3]{flex:1;overflow-y:auto;padding:8px}.wtp-loading[data-v-48a908d3],.wtp-empty[data-v-48a908d3]{padding:16px;text-align:center;color:var(--text-secondary);font-size:12px}.wtp-item[data-v-48a908d3]{display:grid;grid-template-columns:40px minmax(0,1fr) auto;grid-template-areas:"thumb name actions" "thumb sub sub";column-gap:8px;row-gap:2px;align-items:center;padding:8px;border:1px solid var(--border);border-radius:6px;margin-bottom:8px;background:var(--background);cursor:grab}.wtp-item[data-v-48a908d3]:active{cursor:grabbing}.wtp-thumb[data-v-48a908d3]{grid-area:thumb;grid-row:1 / 3;width:40px;height:40px;border-radius:4px;background:var(--control-button-hover);display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}.wtp-thumb img[data-v-48a908d3]{width:100%;height:100%;object-fit:cover}.wtp-thumb-placeholder[data-v-48a908d3]{font-size:20px;color:var(--text-secondary)}.wtp-name[data-v-48a908d3]{grid-area:name;min-width:0;font-size:13px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wtp-sub[data-v-48a908d3]{grid-area:sub;display:flex;gap:4px;margin-top:2px;overflow:hidden}.wtp-badge[data-v-48a908d3]{flex-shrink:0;white-space:nowrap;font-size:10px;padding:1px 5px;border-radius:3px;background:var(--control-button-hover);color:var(--text-secondary)}.wtp-badge.src-builtin[data-v-48a908d3]{background:var(--primary);color:var(--button-text)}.wtp-badge.src-user[data-v-48a908d3]{background:var(--status-success);color:var(--button-text)}.wtp-badge.var[data-v-48a908d3]{background:var(--status-warning);color:var(--text)}.wtp-badge.scope[data-v-48a908d3]{background:var(--border-light);color:var(--text-secondary)}.wtp-actions[data-v-48a908d3]{grid-area:actions;grid-row:1 / 3;display:flex;flex-direction:column;gap:4px;flex-shrink:0}.wtp-icon[data-v-48a908d3]{width:24px;height:24px;border:1px solid var(--border);border-radius:4px;background:var(--elevated);color:var(--text);cursor:pointer;font-size:13px;line-height:1}.wtp-icon.danger[data-v-48a908d3]:hover{background:#5c1e1e;color:#ff9e9e}.wtp-modal-mask[data-v-48a908d3]{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop, rgba(0, 0, 0, .45));display:flex;align-items:center;justify-content:center;z-index:1000}.wtp-modal[data-v-48a908d3]{width:320px;background:var(--elevated);border:1px solid var(--border);border-radius:var(--radius-lg, 8px);box-shadow:var(--shadow-modal);padding:16px;display:flex;flex-direction:column;gap:6px}.wtp-modal h3[data-v-48a908d3]{margin:0 0 8px;font-size:14px}.wtp-modal label[data-v-48a908d3]{font-size:12px;color:var(--text-secondary);margin-top:4px}.wtp-input[data-v-48a908d3]{background:var(--background);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-sm, 4px);padding:6px 8px;font-size:13px}.wtp-input[data-v-48a908d3]:focus{border-color:var(--border-focus);outline:none}.wtp-modal-actions[data-v-48a908d3]{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.wtp-instance-name[data-v-48a908d3]{margin:0 0 8px;font-size:12px;color:var(--text-secondary)}.wtp-mode-row[data-v-48a908d3]{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}.wtp-mode-option[data-v-48a908d3]{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text);cursor:pointer}.wtp-var-row[data-v-48a908d3]{display:flex;align-items:center;gap:8px;margin-bottom:6px}.wtp-var-label[data-v-48a908d3]{flex:0 0 88px;font-size:12px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.wtp-var-required[data-v-48a908d3]{color:var(--status-error)}.wtp-required-hint[data-v-48a908d3]{margin:4px 0 0;font-size:11px;color:var(--status-error)}.lte-mask[data-v-324edbb0]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000}.lte-modal[data-v-324edbb0]{width:520px;max-height:86vh;overflow-y:auto;padding:20px;border-radius:8px;background:var(--background, #fff);box-shadow:var(--shadow-large, 0 8px 24px rgba(0, 0, 0, .18))}.lte-modal h3[data-v-324edbb0]{margin:0 0 14px;font-size:16px;color:var(--text, #333)}.lte-modal label[data-v-324edbb0]{display:block;margin:10px 0 4px;font-size:13px;color:var(--text-secondary, #666)}.lte-input[data-v-324edbb0]{width:100%;padding:7px 10px;border:1px solid var(--border, #d9d9d9);border-radius:4px;background:var(--background, #fff);color:var(--text, #333);font-size:13px;box-sizing:border-box;min-width:0}.lte-input[type=color][data-v-324edbb0]{padding:3px}.lte-section[data-v-324edbb0]{display:flex;align-items:center;justify-content:space-between;margin-top:16px;padding-top:12px;border-top:1px solid var(--border, #eee);font-size:13px;font-weight:600;color:var(--text, #333)}.lte-count[data-v-324edbb0]{font-size:12px;font-weight:400;color:var(--text-secondary, #999)}.lte-row[data-v-324edbb0]{display:grid;grid-template-columns:1fr 1fr 48px;gap:8px;margin-top:8px}.lte-region[data-v-324edbb0]{display:grid;grid-template-columns:1.2fr repeat(4,56px) 30px 24px;gap:6px;align-items:center;margin-top:8px}.lte-region-name[data-v-324edbb0]{min-width:0}.lte-region .lte-lock[data-v-324edbb0]{display:flex;align-items:center;justify-content:center;margin:0}.lte-mini[data-v-324edbb0]{width:24px;height:24px;border:1px solid var(--border, #d9d9d9);border-radius:4px;background:var(--background, #fff);color:var(--text, #333);cursor:pointer;font-size:12px;line-height:1}.lte-mini.danger[data-v-324edbb0]{color:var(--status-error, #f44336);border-color:var(--status-error, #f44336)}.lte-mini.danger[data-v-324edbb0]:hover{opacity:.8}.lte-empty[data-v-324edbb0]{padding:8px 0;font-size:12px;color:var(--text-secondary, #999)}.lte-btn[data-v-324edbb0]{margin-top:8px;margin-right:8px;padding:6px 14px;border:1px solid var(--border, #d9d9d9);border-radius:4px;background:var(--background, #fff);color:var(--text, #333);font-size:13px;cursor:pointer}.lte-btn[data-v-324edbb0]:disabled{opacity:.5;cursor:not-allowed}.lte-btn.primary[data-v-324edbb0]{background:var(--primary, #409eff);border-color:var(--primary, #409eff);color:var(--button-text, #fff)}.lte-actions[data-v-324edbb0]{display:flex;justify-content:flex-end;gap:8px;margin-top:20px;padding-top:14px;border-top:1px solid var(--border, #eee)}.lte-actions .lte-btn[data-v-324edbb0]{margin:0}.ltp[data-v-68b6e303]{height:100%;display:flex;flex-direction:column;color:var(--text);background:var(--elevated)}.ltp-toolbar[data-v-68b6e303]{display:flex;gap:6px;padding:8px;border-bottom:1px solid var(--border);flex-shrink:0}.ltp-btn[data-v-68b6e303]{flex:1;padding:4px 8px;font-size:12px;color:var(--text);background:var(--background);border:1px solid var(--border);border-radius:4px;cursor:pointer}.ltp-list[data-v-68b6e303]{flex:1;overflow-y:auto;padding:8px}.ltp-tip[data-v-68b6e303]{padding:16px;text-align:center;color:var(--text-secondary);font-size:12px}.ltp-item[data-v-68b6e303]{display:grid;grid-template-columns:48px minmax(0,1fr) auto;grid-template-areas:"thumb name actions" "thumb sub sub";column-gap:8px;row-gap:2px;align-items:center;padding:8px;border:1px solid var(--border);border-radius:6px;margin-bottom:8px;background:var(--background)}.ltp-item.active[data-v-68b6e303]{border-color:var(--primary)}.ltp-thumb[data-v-68b6e303]{grid-area:thumb;grid-row:1 / 3;width:48px;height:32px;border-radius:4px;background:var(--control-button-hover);display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0}.ltp-thumb img[data-v-68b6e303]{width:100%;height:100%;object-fit:cover}.ltp-thumb-placeholder[data-v-68b6e303]{font-size:16px;color:var(--text-secondary)}.ltp-name[data-v-68b6e303]{grid-area:name;min-width:0;font-size:13px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ltp-sub[data-v-68b6e303]{grid-area:sub;display:flex;gap:4px;margin-top:2px;overflow:hidden}.ltp-badge[data-v-68b6e303]{flex-shrink:0;white-space:nowrap;font-size:10px;padding:1px 5px;border-radius:3px;background:var(--control-button-hover);color:var(--text-secondary)}.ltp-actions[data-v-68b6e303]{grid-area:actions;grid-row:1 / 3;display:flex;gap:3px;flex-shrink:0}.ltp-icon[data-v-68b6e303]{width:24px;height:24px;border:1px solid var(--border);border-radius:4px;background:var(--elevated);color:var(--text);cursor:pointer;font-size:12px;line-height:1}.ltp-icon.danger[data-v-68b6e303]:hover{background:#5c1e1e;color:#ff9e9e}.side-panel[data-v-336c6b1f]{height:100%;display:flex;flex-direction:column;color:var(--text);background:var(--elevated);border-right:1px solid var(--border)}.side-panel-tabs[data-v-336c6b1f]{display:flex;align-items:center;height:var(--toolbar-height, 42px);border-bottom:2px solid var(--border);flex-shrink:0}.side-panel-tab[data-v-336c6b1f]{flex:1;padding:10px 8px;border:none;background:none;color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease;border-bottom:2px solid transparent;margin-bottom:-2px;white-space:nowrap}.side-panel-tab[data-v-336c6b1f]:hover{color:var(--text);background-color:var(--control-button-hover)}.side-panel-tab.active[data-v-336c6b1f]{color:var(--primary);border-bottom-color:var(--primary)}.side-panel-content[data-v-336c6b1f]{flex:1;overflow:hidden;display:flex;flex-direction:column}.property-panel[data-v-e7881616]{height:100%;overflow-y:auto;background-color:var(--surface);display:flex;flex-direction:column;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 12px;--spacing-lg: 20px}.property-section[data-v-e7881616]{flex:1;display:flex;flex-direction:column}.property-section h3[data-v-e7881616]{margin:0;font-size:13px;font-weight:600;color:var(--text);text-transform:uppercase;letter-spacing:.5px;padding:12px;border-bottom:1px solid var(--border);background-color:var(--background)}.property-tabs[data-v-e7881616]{display:flex;background-color:var(--background);border-bottom:1px solid var(--border);margin:0;padding:0}.tab-button[data-v-e7881616]{flex:1;padding:10px 12px;background-color:transparent;border:none;color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease;position:relative}.tab-button[data-v-e7881616]:hover{background-color:var(--control-button-hover);color:var(--text)}.tab-button.active[data-v-e7881616]{color:var(--primary);font-weight:600}.tab-button.active[data-v-e7881616]:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background-color:var(--primary)}.tab-content[data-v-e7881616]{flex:1;padding:12px;overflow-y:auto;background-color:var(--surface)}.property-group[data-v-e7881616]{margin-bottom:0;padding:10px;background-color:var(--background);border:1px solid var(--border);border-radius:6px;transition:all .2s ease;width:100%;box-sizing:border-box}.property-group[data-v-e7881616]:last-child{margin-bottom:0}.property-group[data-v-e7881616]:hover{border-color:var(--primary);box-shadow:0 2px 4px #3498db1a}.property-group label[data-v-e7881616]{display:block;font-size:11px;font-weight:600;color:var(--text);margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.property-item[data-v-e7881616]{display:flex;align-items:center;margin-bottom:6px;gap:8px;width:100%;box-sizing:border-box}.property-item[data-v-e7881616]:last-child{margin-bottom:0}.property-item>span[data-v-e7881616]{min-width:70px;width:auto;flex-shrink:0;font-size:11px;font-weight:500;color:var(--text-secondary)}.property-item input[type=text][data-v-e7881616],.property-item input[type=number][data-v-e7881616],.property-item select[data-v-e7881616],.form-input[data-v-e7881616]{flex:1;padding:5px 8px;border:1px solid var(--border);border-radius:4px;background-color:var(--surface);color:var(--text);font-size:13px;transition:all .2s ease;min-width:0}.property-item select[data-v-e7881616],.config-item select[data-v-e7881616]{height:30px!important;min-height:30px!important;line-height:1.4!important;min-width:80px;padding-right:24px;cursor:pointer}.property-panel select[data-v-e7881616],.style-panel-content select[data-v-e7881616],.generic-config select[data-v-e7881616]{height:30px!important;min-height:30px!important;line-height:1.4}.property-item input[type=text][data-v-e7881616]:focus,.property-item input[type=number][data-v-e7881616]:focus,.property-item select[data-v-e7881616]:focus,.form-input[data-v-e7881616]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #3498db33}.property-item input[type=checkbox][data-v-e7881616]{width:14px;height:14px;accent-color:var(--primary);cursor:pointer}.property-item input[type=color][data-v-e7881616]{width:40px;height:24px;border:none;border-radius:4px;cursor:pointer;padding:2px;background-color:var(--surface)}.position-size-container[data-v-e7881616]{background-color:var(--surface);border:1px solid var(--border);border-radius:4px;padding:8px;margin-bottom:8px;width:100%;box-sizing:border-box}.position-size-row[data-v-e7881616]{display:flex;align-items:center;margin-bottom:6px;gap:6px;width:100%}.position-size-item[data-v-e7881616]{flex:1;display:flex;align-items:center;gap:var(--spacing-sm)}.position-size-row[data-v-e7881616]:last-child{margin-bottom:0}.position-size-input[data-v-e7881616]{flex:1;padding:4px 8px;border:1px solid var(--border);border-radius:4px;background-color:var(--surface);color:var(--text);font-size:11px;text-align:center;transition:all .2s ease}.position-size-input[data-v-e7881616]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #3498db33}.position-size-control[data-v-e7881616]{display:flex;align-items:center;flex:1;gap:6px}.position-size-buttons[data-v-e7881616]{display:flex;flex-direction:column;gap:2px}.position-size-btn[data-v-e7881616]{width:20px;height:14px;padding:0;border:1px solid var(--border);border-radius:2px;background-color:var(--surface);color:var(--text);font-size:10px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.position-size-btn[data-v-e7881616]:hover{background-color:var(--control-button-hover);border-color:var(--primary);color:var(--text)}.position-size-btn[data-v-e7881616]:active{background-color:var(--primary);color:#fff}.position-size-label[data-v-e7881616]{width:20px;font-size:11px;font-weight:600;color:var(--text);text-align:center;flex-shrink:0}.btn[data-v-e7881616]{padding:4px 8px;border:1px solid var(--border);border-radius:4px;font-size:11px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn--sm[data-v-e7881616]{padding:2px 4px;font-size:10px}.btn--primary[data-v-e7881616]{background-color:var(--primary);color:#fff;border-color:var(--primary)}.btn--primary[data-v-e7881616]:hover{background-color:var(--button-hover);border-color:var(--button-hover)}.btn--danger[data-v-e7881616]{background-color:var(--status-error);color:#fff;border-color:var(--status-error)}.btn--danger[data-v-e7881616]:hover{background-color:#c0392b;border-color:#c0392b}.btn--text[data-v-e7881616]{background-color:transparent;color:var(--text-secondary);border-color:transparent}.btn--text[data-v-e7881616]:hover{background-color:var(--control-button-hover);color:var(--text)}.property-panel[data-v-e7881616]::-webkit-scrollbar,.tab-content[data-v-e7881616]::-webkit-scrollbar{width:6px}.property-panel[data-v-e7881616]::-webkit-scrollbar-track,.tab-content[data-v-e7881616]::-webkit-scrollbar-track{background:var(--background);border-radius:3px}.property-panel[data-v-e7881616]::-webkit-scrollbar-thumb,.tab-content[data-v-e7881616]::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.property-panel[data-v-e7881616]::-webkit-scrollbar-thumb:hover,.tab-content[data-v-e7881616]::-webkit-scrollbar-thumb:hover{background:var(--border-light)}.style-panel-content[data-v-e7881616]{flex:1;padding:12px;overflow-y:auto;background-color:var(--surface)}.small-size-item[data-v-e7881616]{flex:1;display:flex;align-items:center;gap:var(--spacing-sm)}.small-size-item span[data-v-e7881616]{width:40px;font-size:12px;font-weight:500;color:var(--text-secondary);flex-shrink:0}[data-v-e7881616]:root{--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .1);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .15), 0 1px 3px rgba(0, 0, 0, .1);--shadow-md: 0 4px 16px rgba(0, 0, 0, .2), 0 2px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .25), 0 4px 12px rgba(0, 0, 0, .15);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .3), 0 8px 24px rgba(0, 0, 0, .2);--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .35s ease;--color-success: #10b981;--color-warning: #f59e0b;--color-error: #ef4444;--color-info: #3b82f6}[data-v-e7881616]{box-sizing:border-box}button[data-v-e7881616],[role=button][data-v-e7881616],.btn[data-v-e7881616]{cursor:pointer;transition:all var(--transition-normal)}button[data-v-e7881616]:focus-visible,[role=button][data-v-e7881616]:focus-visible,.btn[data-v-e7881616]:focus-visible{outline:2px solid var(--primary);outline-offset:2px}button[data-v-e7881616]:disabled,[role=button][data-v-e7881616]:disabled,.btn[data-v-e7881616]:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}input[type=text][data-v-e7881616],input[type=number][data-v-e7881616],input[type=email][data-v-e7881616],input[type=password][data-v-e7881616],textarea[data-v-e7881616],select[data-v-e7881616]{transition:all var(--transition-normal)}input[type=text][data-v-e7881616]::placeholder,input[type=number][data-v-e7881616]::placeholder,input[type=email][data-v-e7881616]::placeholder,input[type=password][data-v-e7881616]::placeholder,textarea[data-v-e7881616]::placeholder,select[data-v-e7881616]::placeholder{color:var(--text-secondary);opacity:.7}input[type=text][data-v-e7881616]:focus,input[type=number][data-v-e7881616]:focus,input[type=email][data-v-e7881616]:focus,input[type=password][data-v-e7881616]:focus,textarea[data-v-e7881616]:focus,select[data-v-e7881616]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #3b82f626}input[type=text][data-v-e7881616]:hover:not(:focus),input[type=number][data-v-e7881616]:hover:not(:focus),input[type=email][data-v-e7881616]:hover:not(:focus),input[type=password][data-v-e7881616]:hover:not(:focus),textarea[data-v-e7881616]:hover:not(:focus),select[data-v-e7881616]:hover:not(:focus){border-color:#3b82f666}a[data-v-e7881616]{color:var(--primary);text-decoration:none;transition:color var(--transition-fast)}a[data-v-e7881616]:hover{color:var(--color-info);text-decoration:underline}[data-tooltip][data-v-e7881616]{position:relative}[data-tooltip][data-v-e7881616]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background-color:#000000e6;color:#fff;padding:6px 12px;border-radius:var(--radius-sm);font-size:12px;white-space:nowrap;opacity:0;visibility:hidden;transition:all var(--transition-normal);z-index:10000;pointer-events:none;box-shadow:var(--shadow-md)}[data-tooltip][data-v-e7881616]:hover:after{opacity:1;visibility:visible}.loading-spinner[data-v-e7881616]{display:inline-block;width:20px;height:20px;border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin-e7881616 .8s linear infinite}@keyframes spin-e7881616{to{transform:rotate(360deg)}}.feedback-success[data-v-e7881616]{background-color:#10b9811a;border-color:var(--color-success);color:var(--color-success)}.feedback-error[data-v-e7881616]{background-color:#ef44441a;border-color:var(--color-error);color:var(--color-error)}.feedback-warning[data-v-e7881616]{background-color:#f59e0b1a;border-color:var(--color-warning);color:var(--color-warning)}.kbd[data-v-e7881616]{display:inline-block;padding:2px 6px;font-family:monospace;font-size:11px;background-color:var(--background);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:0 1px 2px #0000001a}.id-copy-bar[data-v-e7881616]{display:flex;align-items:center;gap:6px;padding:6px 8px;margin-bottom:4px;border-bottom:1px solid var(--border)}.id-label[data-v-e7881616]{font-size:11px;font-weight:500;color:var(--text-secondary);flex-shrink:0}.id-input[data-v-e7881616]{flex:1;min-width:0;font-size:11px;padding:3px 6px}.copy-btn-inline[data-v-e7881616]{padding:4px 6px;border:1px solid var(--border);border-radius:4px;background-color:transparent;cursor:pointer;transition:all .2s ease;line-height:1;display:inline-flex;align-items:center;justify-content:center;color:var(--text-secondary);flex-shrink:0;margin-right:6px}.copy-btn-inline[data-v-e7881616]:hover{background-color:var(--control-button-hover);border-color:var(--primary);color:var(--primary)}.copy-btn-inline[data-v-e7881616]:active{transform:scale(.92)}.copy-btn-inline svg[data-v-e7881616]{display:block}.group-label[data-v-e7881616]{display:flex;align-items:center;justify-content:space-between;font-size:12px;font-weight:600;color:var(--primary);margin-bottom:0;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border);padding-bottom:8px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .15s ease}.group-label[data-v-e7881616]:hover{color:var(--text)}.group-label:hover .collapse-icon[data-v-e7881616]{opacity:1}.group-title[data-v-e7881616]{flex:1}.group-label-sub[data-v-e7881616]{font-size:11px;color:var(--text-secondary);letter-spacing:.3px;padding-left:12px;border-bottom:none;margin-top:6px;margin-bottom:0}.collapse-icon[data-v-e7881616]{display:inline-block;width:0;height:0;border-left:5px solid var(--text-secondary);border-top:4px solid transparent;border-bottom:4px solid transparent;transition:transform .2s ease,opacity .15s ease;margin-left:6px;opacity:.6;font-size:0}.collapse-icon.expanded[data-v-e7881616]{transform:rotate(90deg)}.group-body[data-v-e7881616]{overflow:hidden;transition:max-height .25s ease;padding-top:8px}.sub-group[data-v-e7881616]{border-left:2px solid var(--primary-light, #e0e0ff);margin-left:8px;padding-left:8px}.copy-btn[data-v-e7881616]{padding:4px 6px;border:1px solid var(--border);border-radius:4px;background-color:var(--background);cursor:pointer;transition:all .2s ease;line-height:1;display:inline-flex;align-items:center;justify-content:center;color:var(--text-secondary);flex-shrink:0}.copy-btn[data-v-e7881616]:hover{background-color:var(--control-button-hover);border-color:var(--primary);color:var(--primary)}.copy-btn[data-v-e7881616]:active{transform:scale(.92)}.copy-btn svg[data-v-e7881616]{display:block}.readonly-input[data-v-e7881616]{background-color:var(--background);color:var(--text-tertiary);cursor:not-allowed}.position-size-row[data-v-e7881616]{display:flex;gap:8px}.position-size-item[data-v-e7881616]{display:flex;align-items:center;gap:6px;flex:1}.flex-1[data-v-e7881616]{flex:1}.link-btn[data-v-e7881616]{width:26px;height:26px;border:1px solid var(--border);border-radius:4px;background:var(--background);cursor:pointer;font-size:12px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s ease;padding:0}.link-btn[data-v-e7881616]:hover{border-color:var(--primary)}.link-btn.active[data-v-e7881616]{background:var(--primary-light, #e8e8ff);border-color:var(--primary)}.link-btn-placeholder[data-v-e7881616]{width:26px;height:26px;flex-shrink:0;display:inline-block}.position-label[data-v-e7881616]{width:36px;font-size:11px;font-weight:500;color:var(--text-secondary);flex-shrink:0}.property-row[data-v-e7881616]{display:flex;gap:8px}.rotation-row[data-v-e7881616],.scale-row[data-v-e7881616],.zindex-row[data-v-e7881616],.scale-zindex-row[data-v-e7881616]{display:flex;align-items:center;gap:4px}.quick-btn[data-v-e7881616]{height:28px;padding:0 8px;border:1px solid var(--border);border-radius:4px;background:var(--background);cursor:pointer;font-size:11px;color:var(--text-secondary);white-space:nowrap;flex-shrink:0;transition:all .15s ease}.quick-btn[data-v-e7881616]:hover{border-color:var(--primary);color:var(--primary)}.color-with-enable[data-v-e7881616]{align-items:stretch}.enable-check[data-v-e7881616]{display:flex;align-items:center;gap:3px;cursor:pointer;white-space:nowrap;flex-shrink:0;font-size:12px;color:var(--text-secondary);-webkit-user-select:none;user-select:none}.enable-check-sm[data-v-e7881616]{font-size:11px}.disabled-hint[data-v-e7881616]{color:var(--text-tertiary);font-style:italic;font-size:12px}.opacity-row[data-v-e7881616]{display:flex;align-items:center;gap:8px}.opacity-slider[data-v-e7881616]{flex:1;accent-color:var(--primary);height:4px}.opacity-value[data-v-e7881616]{min-width:36px;text-align:right;font-size:12px;color:var(--text-secondary);font-weight:500}.align-radio-row[data-v-e7881616]{display:flex;align-items:center;gap:4px}.radio-option[data-v-e7881616]{display:flex;align-items:center;justify-content:center;gap:2px;padding:4px 10px;border:1px solid var(--border);border-radius:4px;cursor:pointer;font-size:12px;transition:all .15s ease;-webkit-user-select:none;user-select:none;white-space:nowrap;min-width:52px}.radio-option[data-v-e7881616]:hover{border-color:var(--primary)}.radio-option.active[data-v-e7881616]{background:var(--primary-light, #e8e8ff);border-color:var(--primary);color:var(--primary)}.radio-option input[type=radio][data-v-e7881616]{margin:0;accent-color:var(--primary);flex-shrink:0}.range-input[data-v-e7881616]{flex:1;accent-color:var(--primary);height:3px}.range-inline-value[data-v-e7881616]{min-width:32px;text-align:right;font-size:11px;color:var(--text-secondary)}.shadow-header[data-v-e7881616]{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.shadow-preview[data-v-e7881616]{width:44px;height:44px;border-radius:4px;border:1px solid var(--border);flex-shrink:0}.spacing-section[data-v-e7881616]{display:flex;align-items:flex-start;gap:8px;margin-bottom:10px}.spacing-label[data-v-e7881616]{width:50px;font-size:11px;font-weight:500;color:var(--text-secondary);line-height:28px;flex-shrink:0}.spacing-box[data-v-e7881616]{display:grid;grid-template-areas:". top ." ". left right ." ". bottom .";grid-template-columns:1fr auto 1fr;gap:2px;flex:1}.spacing-cell[data-v-e7881616]{display:flex;align-items:center;justify-content:center}.spacing-top[data-v-e7881616]{grid-area:top}.spacing-middle[data-v-e7881616]{grid-area:left / span 2}.spacing-bottom[data-v-e7881616]{grid-area:bottom}.spacing-input[data-v-e7881616]{width:100%;height:26px;padding:2px 4px;border:1px solid var(--border);border-radius:3px;font-size:12px;text-align:center;background:var(--background);color:var(--text)}.sync-btn[data-v-e7881616]{width:22px;height:22px;border:1px solid var(--border);border-radius:3px;background:var(--background);cursor:pointer;font-size:11px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .15s ease;padding:0}.sync-btn[data-v-e7881616]:hover{border-color:var(--primary);color:var(--primary)}.unit-row[data-v-e7881616]{display:flex;align-items:center;gap:8px}.prop-key[data-v-e7881616]{min-width:50px;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;color:var(--text-secondary)}.prop-input-sm[data-v-e7881616]{flex:1;min-width:0;padding:4px 8px;font-size:11px;border-radius:4px;border:1px solid var(--border);background:var(--background)}.add-prop-row[data-v-e7881616]{flex-wrap:wrap;gap:4px}.graphic-body[data-v-e7881616]{display:flex;flex-direction:column;gap:8px}.graphic-body .property-item[data-v-e7881616],.graphic-body .position-size-row[data-v-e7881616]{margin-bottom:0}.graphic-body .property-item>span[data-v-e7881616],.graphic-body .position-label[data-v-e7881616]{flex:none;width:auto;min-width:34px;font-size:11px;font-weight:500;letter-spacing:.2px;color:var(--text-secondary);white-space:nowrap}.graphic-body[data-v-e7881616] .value-adjuster{flex:1;min-width:0}.graphic-body .name-row input[type=text][data-v-e7881616]{height:28px;padding:0 10px;font-size:12px;border-radius:6px;box-sizing:border-box}.graphic-body .rotation-row[data-v-e7881616]{gap:6px}.graphic-body .scale-zindex-row[data-v-e7881616]{gap:8px}.graphic-body .scale-row .value-adjuster[data-v-e7881616],.graphic-body .zindex-row .value-adjuster[data-v-e7881616]{flex:1;min-width:0}.graphic-body .rotation-row .value-adjuster[data-v-e7881616]{flex:0 0 auto;width:106px}.graphic-body .quick-btn[data-v-e7881616]{height:28px;padding:0 8px;border-radius:6px;background:var(--surface);color:var(--text-secondary);font-size:11px}.graphic-body .quick-btn[data-v-e7881616]:hover{border-color:var(--primary);color:var(--primary)}.graphic-body .quick-btn[data-v-e7881616]:active{transform:scale(.94)}.graphic-body .link-btn[data-v-e7881616],.graphic-body .link-btn-placeholder[data-v-e7881616]{width:28px;height:28px}.graphic-body .link-btn[data-v-e7881616]{border-radius:6px;background:var(--surface)}.graphic-body .link-btn[data-v-e7881616]:hover{border-color:var(--primary)}.graphic-body .link-btn.active[data-v-e7881616]{border-color:var(--primary);background:color-mix(in srgb,var(--primary) 15%,transparent);color:var(--primary)}.graphic-type-badge[data-v-e7881616]{flex:none;max-width:100px;padding:0 6px;border:1px solid color-mix(in srgb,var(--primary) 35%,transparent);border-radius:8px;background:color-mix(in srgb,var(--primary) 15%,transparent);color:var(--primary);font-size:10px;font-weight:600;line-height:16px;letter-spacing:.2px;text-transform:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.new-ds-form[data-v-0266663e]{border:1px solid var(--primary, #2080f0);border-radius:8px;overflow:hidden;background:var(--surface)}.form-title[data-v-0266663e]{display:flex;align-items:center;gap:6px;padding:10px 14px;background:color-mix(in srgb,var(--primary, #2080f0) 8%,transparent);font-size:14px;font-weight:600;color:var(--text);border-bottom:1px solid var(--border)}.form-icon[data-v-0266663e]{font-size:16px}.form-body[data-v-0266663e]{padding:14px;display:flex;flex-direction:column;gap:12px}.form-item[data-v-0266663e]{display:flex;flex-direction:column;gap:4px}.form-label[data-v-0266663e]{font-size:12px;color:var(--text-secondary);font-weight:500}.required[data-v-0266663e]{color:var(--status-error, #d03050)}.form-input[data-v-0266663e],.form-select[data-v-0266663e]{padding:6px 10px;border:1px solid var(--border);border-radius:4px;font-size:13px;background:var(--background);color:var(--text);outline:none;transition:border-color .2s}.form-input[data-v-0266663e]:focus,.form-select[data-v-0266663e]:focus{border-color:var(--primary, #2080f0);box-shadow:0 0 0 2px color-mix(in srgb,var(--primary, #2080f0) 20%,transparent)}.form-select[data-v-0266663e]{cursor:pointer}.form-hint[data-v-0266663e]{font-size:11px;color:var(--text-tertiary)}.divider-label[data-v-0266663e]{font-size:12px;font-weight:600;color:var(--text-secondary);padding:4px 0;border-top:1px dashed var(--border);margin-top:4px}.no-polling-hint[data-v-0266663e]{padding:8px 12px;font-size:12px;color:var(--text-tertiary);background:color-mix(in srgb,var(--background) 70%,var(--surface));border-radius:4px;text-align:center}.form-footer[data-v-0266663e]{display:flex;justify-content:flex-end;gap:8px;padding:10px 14px;border-top:1px solid var(--border);background:color-mix(in srgb,var(--background) 80%,var(--surface))}.btn-cancel[data-v-0266663e]{padding:5px 14px;border:1px solid var(--border);border-radius:4px;background:transparent;color:var(--text-secondary);font-size:13px;cursor:pointer}.btn-cancel[data-v-0266663e]:hover{background:var(--control-button-hover)}.btn-create[data-v-0266663e]{padding:5px 14px;border:none;border-radius:4px;background:var(--primary, #2080f0);color:#fff;font-size:13px;cursor:pointer}.btn-create[data-v-0266663e]:hover:not(:disabled){opacity:.9}.btn-create[data-v-0266663e]:disabled{opacity:.5;cursor:not-allowed}[data-v-7cc89d03]:root{--ds-type-static: #64748b;--ds-type-tag: #2080f0;--ds-type-api: #18a058;--ds-type-sql: #f59e0b;--ds-type-opc: #8b5cf6;--ds-type-mqtt: #ec4899;--ds-type-modbus: #06b6d4;--ds-status-connected: #10b981;--ds-status-disconnected: #94a3b8;--ds-status-connecting: #f59e0b;--ds-status-error: #ef4444;--ds-quality-good: #10b981;--ds-quality-uncertain: #f59e0b;--ds-quality-bad: #ef4444;--ds-quality-stale: #94a3b8;--ds-quality-disconnected: #d1d5db;--ds-spacing-xs: 4px;--ds-spacing-sm: 8px;--ds-spacing-md: 12px;--ds-spacing-lg: 16px;--ds-modal-header-bg: var(--surface);--ds-sidebar-bg: var(--background, rgba(0, 0, 0, .02))}.ds-btn[data-v-7cc89d03]{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--text);cursor:pointer;font-size:13px;padding:4px 12px;line-height:1.5;transition:background-color var(--transition-fast),border-color var(--transition-fast)}.ds-btn[data-v-7cc89d03]:hover{border-color:var(--primary)}.ds-btn[data-v-7cc89d03]:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.ds-btn--primary[data-v-7cc89d03]{background:var(--primary);border-color:var(--primary);color:#fff}.ds-btn--primary[data-v-7cc89d03]:hover{background:var(--button-hover);border-color:var(--button-hover)}.ds-btn--sm[data-v-7cc89d03]{font-size:13px;padding:3px 10px}.ds-btn--xs[data-v-7cc89d03]{font-size:12px;padding:2px 8px}.ds-btn--icon[data-v-7cc89d03]{width:28px;height:24px;padding:0;font-size:14px}.ds-btn--danger[data-v-7cc89d03]{color:var(--color-error, #ef4444);border-color:transparent;background:transparent}.ds-btn--danger[data-v-7cc89d03]:hover{background:#ef444414}.ds-form-label[data-v-7cc89d03]{display:block;margin-bottom:4px;font-size:13px;font-weight:500;color:var(--text)}.ds-form-required[data-v-7cc89d03]{color:var(--color-error, #ef4444);margin-left:2px}.ds-input[data-v-7cc89d03],.ds-select[data-v-7cc89d03]{width:100%;padding:6px 10px;font-size:13px;border:1px solid var(--border);border-radius:var(--radius-sm, 4px);background:var(--surface);color:var(--text);outline:none;box-sizing:border-box;transition:border-color var(--transition-fast, .15s ease)}.ds-input[data-v-7cc89d03]:focus,.ds-select[data-v-7cc89d03]:focus{border-color:var(--primary, #2080f0)}.ds-select[data-v-7cc89d03]{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.ds-divider[data-v-7cc89d03]{border:none;border-top:1px solid var(--border);margin:16px 0}.ds-row[data-v-7cc89d03]{display:flex;gap:12px;margin-bottom:16px}.ds-item[data-v-7cc89d03]{flex:1;min-width:0;margin-bottom:0}.ds-tag[data-v-7cc89d03]{display:inline-block;padding:1px 8px;font-size:11px;border-radius:3px;line-height:1.6;white-space:nowrap}.ds-tag--success[data-v-7cc89d03]{background:#10b9811f;color:var(--ds-status-connected)}.ds-tag--default[data-v-7cc89d03]{background:#94a3b826;color:var(--text-secondary, #999)}.ds-tag--type-static[data-v-7cc89d03]{background:#64748b1f;color:var(--ds-type-static)}.ds-tag--type-tag[data-v-7cc89d03]{background:#2080f01f;color:var(--ds-type-tag)}.ds-tag--type-api[data-v-7cc89d03]{background:#18a0581f;color:var(--ds-type-api)}.ds-tag--type-sql[data-v-7cc89d03]{background:#f59e0b1f;color:var(--ds-type-sql)}.ds-status-dot[data-v-7cc89d03]{display:inline-block;width:7px;height:7px;border-radius:50%;flex-shrink:0}.ds-status-dot--connected[data-v-7cc89d03]{background-color:var(--ds-status-connected)}.ds-status-dot--disconnected[data-v-7cc89d03]{background-color:var(--ds-status-disconnected)}.ds-status-dot--connecting[data-v-7cc89d03]{background-color:var(--ds-status-connecting);animation:ds-pulse-7cc89d03 1.5s ease-in-out infinite}.ds-status-dot--error[data-v-7cc89d03]{background-color:var(--ds-status-error)}@keyframes ds-pulse-7cc89d03{0%,to{opacity:1}50%{opacity:.4}}.ds-status-tag[data-v-7cc89d03]{display:inline-block;padding:1px 6px;border-radius:3px;font-size:11px;line-height:1.5;color:#fff}.ds-status-tag--connected[data-v-7cc89d03]{background:var(--ds-status-connected)}.ds-status-tag--disconnected[data-v-7cc89d03]{background:var(--ds-status-disconnected)}.ds-status-tag--connecting[data-v-7cc89d03]{background:var(--ds-status-connecting)}.ds-status-tag--error[data-v-7cc89d03]{background:var(--ds-status-error)}.ds-sidebar-header[data-v-7cc89d03]{display:flex;align-items:center;justify-content:space-between;padding:10px 12px 8px;border-bottom:1px solid var(--border)}.sidebar-title[data-v-7cc89d03]{font-size:13px;font-weight:600;color:var(--text);letter-spacing:.3px}.sidebar-header-actions[data-v-7cc89d03]{display:flex;align-items:center;gap:4px}.ds-sidebar-list[data-v-7cc89d03]{flex:1;overflow-y:auto;padding:4px 0}.ds-sidebar-item[data-v-7cc89d03]{display:flex;align-items:center;gap:8px;padding:10px 12px;cursor:pointer;border-bottom:1px solid transparent;border-radius:6px;margin:2px 4px;transition:background-color .15s ease,box-shadow .15s ease}.ds-sidebar-item[data-v-7cc89d03]:hover{background-color:color-mix(in srgb,var(--primary) 6%,transparent)}.ds-sidebar-item--active[data-v-7cc89d03]{background-color:color-mix(in srgb,var(--primary) 10%,transparent);box-shadow:inset 2px 0 0 var(--primary)}.ds-sidebar-item--active .sidebar-item-name[data-v-7cc89d03]{font-weight:600}.ds-sidebar-item-name[data-v-7cc89d03]{flex:1;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}.sidebar-item-info[data-v-7cc89d03]{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.sidebar-item-type[data-v-7cc89d03]{display:flex;align-items:center;gap:6px}.sidebar-var-count[data-v-7cc89d03]{font-size:10px;color:var(--text-secondary);background:color-mix(in srgb,var(--text-secondary) 8%,transparent);padding:0 4px;border-radius:2px}.sidebar-data-preview[data-v-7cc89d03]{font-size:10px;color:var(--text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:120px}.ds-summary-table-wrapper[data-v-7cc89d03]{width:100%;overflow:visible}.summary-title[data-v-7cc89d03]{font-size:13px;font-weight:600;color:var(--text);margin:0 0 10px;padding-bottom:8px;border-bottom:1px solid var(--border);letter-spacing:.3px;position:sticky;top:0;background:var(--surface);z-index:2}.ds-summary-table[data-v-7cc89d03]{width:100%;border-collapse:separate;border-spacing:0;font-size:12px;table-layout:fixed}.ds-summary-table thead[data-v-7cc89d03]{position:sticky;top:0;z-index:3}.ds-summary-table th[data-v-7cc89d03]{padding:9px 10px;background-color:color-mix(in srgb,var(--text-secondary) 8%,var(--surface));color:var(--text-secondary);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;border-bottom:1px solid var(--border)}.ds-summary-table th[data-v-7cc89d03]:first-child{border-radius:6px 0 0}.ds-summary-table th[data-v-7cc89d03]:last-child{border-radius:0 6px 0 0}.ds-summary-table td[data-v-7cc89d03]{padding:8px 10px;border-bottom:1px solid var(--border);color:var(--text);vertical-align:middle;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ds-summary-table tbody tr[data-v-7cc89d03]{transition:background-color .12s ease}.ds-summary-table tbody tr[data-v-7cc89d03]:hover{background-color:color-mix(in srgb,var(--primary) 4%,transparent)}.ds-summary-table tbody tr:last-child td[data-v-7cc89d03]:first-child{border-radius:0 0 0 6px}.ds-summary-table tbody tr:last-child td[data-v-7cc89d03]:last-child{border-radius:0 0 6px}.ds-summary-table tbody tr:last-child td[data-v-7cc89d03]{border-bottom:none}.ds-summary-table .cell-name[data-v-7cc89d03]{font-weight:500;color:var(--text)}.ds-summary-table .cell-bound[data-v-7cc89d03]{max-width:120px}.ds-summary-table .cell-time[data-v-7cc89d03]{color:var(--text-secondary);font-variant-numeric:tabular-nums;font-size:11.5px}.ds-summary-table .cell-data[data-v-7cc89d03]{max-width:160px;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:11.5px}.ds-bound-tag[data-v-7cc89d03]{display:inline-block;padding:1px 6px;margin:1px 2px;background:#2080f014;color:var(--primary, #2080f0);border-radius:3px;font-size:10px;border:1px solid rgba(32,128,240,.2)}.ds-empty[data-v-7cc89d03]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 16px;color:var(--text-tertiary);font-size:13px;gap:8px}.ds-empty[data-v-7cc89d03]:before{content:"📦";font-size:28px;opacity:.4}.ds-placeholder[data-v-7cc89d03]{display:flex;align-items:center;justify-content:center;height:100%;min-height:200px;color:var(--text-tertiary);font-size:13px}.placeholder-text[data-v-7cc89d03]{text-align:center;padding:32px 16px;color:var(--text-tertiary);font-size:13px;line-height:1.6}.text-muted[data-v-7cc89d03]{color:var(--text-tertiary);font-style:italic}.modal-overlay[data-v-7cc89d03]{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-header[data-v-7cc89d03]{background:linear-gradient(135deg,var(--ds-modal-header-bg) 0%,color-mix(in srgb,var(--primary) 3%,var(--ds-modal-header-bg)) 100%)}.modal-header h3[data-v-7cc89d03]{font-size:15px;font-weight:700;letter-spacing:.3px;background:linear-gradient(90deg,var(--text) 0%,var(--text-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.modal-sidebar[data-v-7cc89d03]{background-color:var(--ds-sidebar-bg)}.data-panel-scroll[data-v-7cc89d03]::-webkit-scrollbar,.modal-body[data-v-7cc89d03]::-webkit-scrollbar,.modal-sidebar[data-v-7cc89d03]::-webkit-scrollbar{width:5px}.data-panel-scroll[data-v-7cc89d03]::-webkit-scrollbar-track,.modal-body[data-v-7cc89d03]::-webkit-scrollbar-track,.modal-sidebar[data-v-7cc89d03]::-webkit-scrollbar-track{background:transparent}.data-panel-scroll[data-v-7cc89d03]::-webkit-scrollbar-thumb,.modal-body[data-v-7cc89d03]::-webkit-scrollbar-thumb,.modal-sidebar[data-v-7cc89d03]::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.data-panel-scroll[data-v-7cc89d03]::-webkit-scrollbar-thumb:hover,.modal-body[data-v-7cc89d03]::-webkit-scrollbar-thumb:hover,.modal-sidebar[data-v-7cc89d03]::-webkit-scrollbar-thumb:hover{background:var(--text-secondary, #999)}.binding-panel[data-v-7cc89d03]{display:flex;flex-direction:column}.binding-summary[data-v-7cc89d03]{padding:6px 0}.summary-card[data-v-7cc89d03]{border:1px solid var(--border);border-radius:8px;padding:12px 14px;background:linear-gradient(135deg,var(--surface) 0%,color-mix(in srgb,var(--background) 40%,var(--surface)) 100%);box-shadow:0 1px 3px #0000000a}.summary-header[data-v-7cc89d03]{display:flex;align-items:center;gap:8px;margin-bottom:10px;font-size:14px}.summary-icon[data-v-7cc89d03]{font-size:16px}.summary-source-name[data-v-7cc89d03]{font-weight:600;color:var(--text)}.ds-tag[data-v-7cc89d03]{font-size:10px;padding:2px 7px;border-radius:10px;color:#fff;font-weight:500;letter-spacing:.3px}.tag-static[data-v-7cc89d03]{background:linear-gradient(135deg,#64748b,#94a3b8)}.tag-tag[data-v-7cc89d03]{background:linear-gradient(135deg,#2080f0,#4098fc)}.tag-api[data-v-7cc89d03]{background:linear-gradient(135deg,#18a058,#36ad6a)}.tag-sql[data-v-7cc89d03]{background:linear-gradient(135deg,#f59e0b,#fbbf24)}.status-dot[data-v-7cc89d03]{width:8px;height:8px;border-radius:50%;flex-shrink:0;box-shadow:0 0 0 2px #ffffff4d}.status-connected[data-v-7cc89d03]{background-color:var(--ds-status-connected);animation:dot-pulse-7cc89d03 2s ease-in-out infinite}.status-disconnected[data-v-7cc89d03]{background-color:var(--ds-status-disconnected)}.status-connecting[data-v-7cc89d03]{background-color:var(--ds-status-connecting);animation:dot-pulse-7cc89d03 1s ease-in-out infinite}.status-error[data-v-7cc89d03]{background-color:var(--ds-status-error)}@keyframes dot-pulse-7cc89d03{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.85)}}.status-text[data-v-7cc89d03]{font-size:11.5px;color:var(--text-secondary);font-variant-numeric:tabular-nums}.summary-body[data-v-7cc89d03]{font-size:12px}.summary-row[data-v-7cc89d03]{display:flex;align-items:center;gap:8px;padding:3px 0}.summary-label[data-v-7cc89d03]{color:var(--text-secondary);min-width:64px;flex-shrink:0;font-size:11.5px}.summary-value[data-v-7cc89d03]{color:var(--text);font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:11.5px}.summary-url[data-v-7cc89d03]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px}.summary-meta[data-v-7cc89d03]{font-size:11px;color:var(--text-secondary);margin-left:auto}.result-format[data-v-7cc89d03]{font-size:11.5px;color:var(--primary);font-family:inherit;font-weight:500}.summary-actions[data-v-7cc89d03]{display:flex;gap:6px;margin-top:10px;padding-top:10px;border-top:1px solid var(--border)}.no-binding[data-v-7cc89d03]{display:flex;flex-direction:column;align-items:center;gap:10px;padding:20px 0}.no-binding-hint[data-v-7cc89d03]{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary)}.hint-icon[data-v-7cc89d03]{font-size:20px;opacity:.6}.no-binding-actions[data-v-7cc89d03]{display:flex;gap:8px}.create-form-wrapper[data-v-7cc89d03]{padding:4px 0}.section-header[data-v-56c0a07d]{margin-top:8px;margin-bottom:4px;padding-bottom:4px;font-size:13px;font-weight:600;color:var(--text);border-bottom:1px solid var(--border)}.form-item[data-v-56c0a07d]{display:flex;flex-direction:column;gap:2px;margin-bottom:6px}.form-item label[data-v-56c0a07d]{font-size:12px;color:var(--text-secondary)}.form-item label.required[data-v-56c0a07d]:after{content:" *";color:var(--status-error, #d03050)}.form-item-flex[data-v-56c0a07d]{flex:1}.form-row[data-v-56c0a07d]{display:flex;gap:8px}.form-row .form-item-method[data-v-56c0a07d]{width:110px;flex-shrink:0}input[data-v-56c0a07d],select[data-v-56c0a07d],textarea[data-v-56c0a07d]{width:100%;padding:4px 8px;border:1px solid var(--border);border-radius:4px;font-size:12px;background:var(--surface);color:var(--text)}textarea[data-v-56c0a07d]{resize:vertical}button[data-v-56c0a07d]{padding:4px 12px;border:1px solid var(--border);border-radius:4px;background:var(--surface);color:var(--text);font-size:12px;cursor:pointer}button[data-v-56c0a07d]:hover{border-color:var(--status-info)}.btn-primary[data-v-56c0a07d]{background:var(--status-info);color:#fff;border-color:var(--status-info)}.btn-add[data-v-56c0a07d]{margin-top:4px}.btn-remove[data-v-56c0a07d]{padding:4px 8px;color:var(--status-error, #d03050)}.btn-row[data-v-56c0a07d]{display:flex;gap:4px;flex-wrap:wrap}.btn-row.action-row[data-v-56c0a07d]{margin-top:8px;justify-content:flex-end}.kv-list[data-v-56c0a07d]{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.kv-row[data-v-56c0a07d]{display:flex;gap:4px}.kv-row input[data-v-56c0a07d]{flex:1}table[data-v-56c0a07d]{width:100%;border-collapse:collapse;font-size:12px}table th[data-v-56c0a07d],table td[data-v-56c0a07d]{padding:4px 8px;border:1px solid var(--border);text-align:left}table th[data-v-56c0a07d]{background:var(--background);font-weight:600}.static-source-editor[data-v-56c0a07d]{display:flex;flex-direction:column;gap:4px}.json-error[data-v-56c0a07d]{color:var(--status-error, #d03050);font-size:12px;padding:4px 8px;background-color:color-mix(in srgb,var(--status-error, #d03050) 8%,transparent);border-radius:4px}.preview-section[data-v-56c0a07d]{margin-top:4px}.preview-title[data-v-56c0a07d]{display:block;margin-bottom:4px;font-size:12px;color:var(--text-tertiary)}.section-header[data-v-fffd4c2b]{margin-top:8px;margin-bottom:4px;padding-bottom:4px;font-size:13px;font-weight:600;color:var(--text);border-bottom:1px solid var(--border)}.form-item[data-v-fffd4c2b]{display:flex;flex-direction:column;gap:2px;margin-bottom:6px}.form-item label[data-v-fffd4c2b]{font-size:12px;color:var(--text-secondary)}.form-item label.required[data-v-fffd4c2b]:after{content:" *";color:var(--status-error, #d03050)}.form-item-flex[data-v-fffd4c2b]{flex:1}.form-row[data-v-fffd4c2b]{display:flex;gap:8px}.form-row .form-item-method[data-v-fffd4c2b]{width:110px;flex-shrink:0}input[data-v-fffd4c2b],select[data-v-fffd4c2b],textarea[data-v-fffd4c2b]{width:100%;padding:4px 8px;border:1px solid var(--border);border-radius:4px;font-size:12px;background:var(--surface);color:var(--text)}textarea[data-v-fffd4c2b]{resize:vertical}button[data-v-fffd4c2b]{padding:4px 12px;border:1px solid var(--border);border-radius:4px;background:var(--surface);color:var(--text);font-size:12px;cursor:pointer}button[data-v-fffd4c2b]:hover{border-color:var(--status-info)}.btn-primary[data-v-fffd4c2b]{background:var(--status-info);color:#fff;border-color:var(--status-info)}.btn-add[data-v-fffd4c2b]{margin-top:4px}.btn-remove[data-v-fffd4c2b]{padding:4px 8px;color:var(--status-error, #d03050)}.btn-row[data-v-fffd4c2b]{display:flex;gap:4px;flex-wrap:wrap}.btn-row.action-row[data-v-fffd4c2b]{margin-top:8px;justify-content:flex-end}.kv-list[data-v-fffd4c2b]{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.kv-row[data-v-fffd4c2b]{display:flex;gap:4px}.kv-row input[data-v-fffd4c2b]{flex:1}table[data-v-fffd4c2b]{width:100%;border-collapse:collapse;font-size:12px}table th[data-v-fffd4c2b],table td[data-v-fffd4c2b]{padding:4px 8px;border:1px solid var(--border);text-align:left}table th[data-v-fffd4c2b]{background:var(--background);font-weight:600}.tag-source-selector[data-v-fffd4c2b]{display:flex;flex-direction:column;gap:4px}.hint-text[data-v-fffd4c2b]{font-size:12px;color:var(--text-tertiary);margin-bottom:2px}.tag-layout[data-v-fffd4c2b]{display:flex;gap:8px}.tag-tree-panel[data-v-fffd4c2b]{flex:1;min-width:0;border:1px solid var(--border);border-radius:4px;padding:6px;max-height:200px;overflow-y:auto}.search-input[data-v-fffd4c2b]{width:100%;margin:4px 0;padding:3px 6px;font-size:11px;border:1px solid var(--border);border-radius:3px;background:var(--surface);color:var(--text)}.search-input[data-v-fffd4c2b]::placeholder{color:var(--text-tertiary)}.status-hint[data-v-fffd4c2b]{color:var(--text-tertiary);font-size:12px;text-align:center;padding:20px 0}.device-group[data-v-fffd4c2b]{margin-bottom:6px}.device-group[data-v-fffd4c2b]:last-child{margin-bottom:0}.device-header[data-v-fffd4c2b]{display:flex;align-items:center;gap:4px;padding:2px 0;margin-bottom:2px}.device-select-all[data-v-fffd4c2b]{display:flex;align-items:center;cursor:pointer}.device-select-all input[type=checkbox][data-v-fffd4c2b]{width:auto;flex-shrink:0;margin:0}.device-label[data-v-fffd4c2b]{font-size:12px;font-weight:600;color:var(--text);flex:1}.device-tag-count[data-v-fffd4c2b]{font-size:10px;color:var(--text-tertiary);flex-shrink:0}.tag-checkbox[data-v-fffd4c2b]{display:flex;align-items:center;gap:4px;padding:2px 0 2px 12px;font-size:12px;cursor:pointer;color:var(--text)}.tag-checkbox input[type=checkbox][data-v-fffd4c2b]{width:auto;flex-shrink:0}.tag-selected-panel[data-v-fffd4c2b]{flex:1;min-width:0;border:1px solid var(--border);border-radius:4px;padding:6px;max-height:200px;overflow-y:auto}.panel-label[data-v-fffd4c2b]{font-size:12px;font-weight:600;color:var(--text-secondary)}.panel-header[data-v-fffd4c2b]{display:flex;align-items:center;gap:6px;margin-bottom:4px}.panel-header .panel-label[data-v-fffd4c2b]{margin-bottom:0;flex:1}.refresh-btn[data-v-fffd4c2b]{font-size:14px;line-height:1;color:var(--text-secondary);background:none;border:1px solid var(--border);border-radius:3px;padding:1px 5px;cursor:pointer;transition:transform .3s}.refresh-btn[data-v-fffd4c2b]:hover:not(:disabled){color:var(--text);background:var(--background)}.refresh-btn[data-v-fffd4c2b]:disabled{opacity:.4;cursor:not-allowed}.refresh-btn[data-v-fffd4c2b]:active:not(:disabled){transform:rotate(180deg)}.clear-all-btn[data-v-fffd4c2b]{font-size:10px;color:var(--text-secondary);background:none;border:1px solid var(--border);border-radius:3px;padding:1px 6px;cursor:pointer}.clear-all-btn[data-v-fffd4c2b]:hover{color:var(--status-error, #d03050);border-color:var(--status-error, #d03050)}.selected-count[data-v-fffd4c2b]{font-size:11px;color:var(--text-tertiary);background:var(--background);border-radius:8px;padding:0 6px;min-width:18px;text-align:center}.empty-hint[data-v-fffd4c2b]{color:var(--text-tertiary);font-size:12px;text-align:center;padding:10px 0}.selected-item[data-v-fffd4c2b]{display:flex;align-items:center;justify-content:space-between;padding:3px 6px;border-bottom:1px solid var(--border);font-size:12px}.selected-name[data-v-fffd4c2b]{color:var(--text)}.selected-id[data-v-fffd4c2b]{color:var(--text-tertiary);font-size:11px}.preview-section[data-v-fffd4c2b]{margin-top:4px}.quality-indicator[data-v-fffd4c2b]{width:8px;height:8px;border-radius:50%;display:inline-block}.section-header[data-v-9963bd2c]{margin-top:8px;margin-bottom:4px;padding-bottom:4px;font-size:13px;font-weight:600;color:var(--text);border-bottom:1px solid var(--border)}.form-item[data-v-9963bd2c]{display:flex;flex-direction:column;gap:2px;margin-bottom:6px}.form-item label[data-v-9963bd2c]{font-size:12px;color:var(--text-secondary)}.form-item label.required[data-v-9963bd2c]:after{content:" *";color:var(--status-error, #d03050)}.form-item-flex[data-v-9963bd2c]{flex:1}.form-row[data-v-9963bd2c]{display:flex;gap:8px}.form-row .form-item-method[data-v-9963bd2c]{width:110px;flex-shrink:0}input[data-v-9963bd2c],select[data-v-9963bd2c],textarea[data-v-9963bd2c]{width:100%;padding:4px 8px;border:1px solid var(--border);border-radius:4px;font-size:12px;background:var(--surface);color:var(--text)}textarea[data-v-9963bd2c]{resize:vertical}button[data-v-9963bd2c]{padding:4px 12px;border:1px solid var(--border);border-radius:4px;background:var(--surface);color:var(--text);font-size:12px;cursor:pointer}button[data-v-9963bd2c]:hover{border-color:var(--status-info)}.btn-primary[data-v-9963bd2c]{background:var(--status-info);color:#fff;border-color:var(--status-info)}.btn-add[data-v-9963bd2c]{margin-top:4px}.btn-remove[data-v-9963bd2c]{padding:4px 8px;color:var(--status-error, #d03050)}.btn-row[data-v-9963bd2c]{display:flex;gap:4px;flex-wrap:wrap}.btn-row.action-row[data-v-9963bd2c]{margin-top:8px;justify-content:flex-end}.kv-list[data-v-9963bd2c]{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.kv-row[data-v-9963bd2c]{display:flex;gap:4px}.kv-row input[data-v-9963bd2c]{flex:1}table[data-v-9963bd2c]{width:100%;border-collapse:collapse;font-size:12px}table th[data-v-9963bd2c],table td[data-v-9963bd2c]{padding:4px 8px;border:1px solid var(--border);text-align:left}table th[data-v-9963bd2c]{background:var(--background);font-weight:600}.api-source-editor[data-v-9963bd2c]{display:flex;flex-direction:column;gap:2px}select[data-v-9963bd2c]{cursor:pointer}.input-narrow[data-v-9963bd2c]{width:70px}.btn-add[data-v-9963bd2c]{padding:2px 8px;font-size:11px;border-style:dashed}.btn-remove[data-v-9963bd2c]{padding:0 6px;font-size:14px;line-height:1;border:none;background:transparent;color:var(--status-error, #d03050);flex-shrink:0}.btn-remove[data-v-9963bd2c]:hover{background:color-mix(in srgb,var(--status-error, #d03050) 12%,transparent)}.kv-row[data-v-9963bd2c]{align-items:center;gap:6px}.kv-row[data-v-9963bd2c]>:first-child,.kv-row[data-v-9963bd2c]>:nth-child(2){flex:1;min-width:0}.field-mapping-table[data-v-9963bd2c]{margin-top:4px}.json-error[data-v-9963bd2c]{color:var(--status-error, #d03050);font-size:12px;padding:4px 8px;background-color:color-mix(in srgb,var(--status-error, #d03050) 8%,transparent);border-radius:4px}.response-preview[data-v-9963bd2c]{margin-top:4px;max-height:200px;overflow:auto;border:1px solid var(--border);border-radius:4px;padding:6px;background:var(--background)}.response-preview pre[data-v-9963bd2c]{margin:0;font-size:11px;white-space:pre-wrap;word-break:break-all;color:var(--text-secondary)}.section-header[data-v-5114e50b]{margin-top:8px;margin-bottom:4px;padding-bottom:4px;font-size:13px;font-weight:600;color:var(--text);border-bottom:1px solid var(--border)}.form-item[data-v-5114e50b]{display:flex;flex-direction:column;gap:2px;margin-bottom:6px}.form-item label[data-v-5114e50b]{font-size:12px;color:var(--text-secondary)}.form-item label.required[data-v-5114e50b]:after{content:" *";color:var(--status-error, #d03050)}.form-item-flex[data-v-5114e50b]{flex:1}.form-row[data-v-5114e50b]{display:flex;gap:8px}.form-row .form-item-method[data-v-5114e50b]{width:110px;flex-shrink:0}input[data-v-5114e50b],select[data-v-5114e50b],textarea[data-v-5114e50b]{width:100%;padding:4px 8px;border:1px solid var(--border);border-radius:4px;font-size:12px;background:var(--surface);color:var(--text)}textarea[data-v-5114e50b]{resize:vertical}button[data-v-5114e50b]{padding:4px 12px;border:1px solid var(--border);border-radius:4px;background:var(--surface);color:var(--text);font-size:12px;cursor:pointer}button[data-v-5114e50b]:hover{border-color:var(--status-info)}.btn-primary[data-v-5114e50b]{background:var(--status-info);color:#fff;border-color:var(--status-info)}.btn-add[data-v-5114e50b]{margin-top:4px}.btn-remove[data-v-5114e50b]{padding:4px 8px;color:var(--status-error, #d03050)}.btn-row[data-v-5114e50b]{display:flex;gap:4px;flex-wrap:wrap}.btn-row.action-row[data-v-5114e50b]{margin-top:8px;justify-content:flex-end}.kv-list[data-v-5114e50b]{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.kv-row[data-v-5114e50b]{display:flex;gap:4px}.kv-row input[data-v-5114e50b]{flex:1}table[data-v-5114e50b]{width:100%;border-collapse:collapse;font-size:12px}table th[data-v-5114e50b],table td[data-v-5114e50b]{padding:4px 8px;border:1px solid var(--border);text-align:left}table th[data-v-5114e50b]{background:var(--background);font-weight:600}.db-source-editor[data-v-5114e50b]{display:flex;flex-direction:column;gap:1px}.form-item-half[data-v-5114e50b]{flex:1;min-width:0}.readonly-input[data-v-5114e50b]{background:var(--background);color:var(--text-secondary)}input[type=checkbox][data-v-5114e50b],input[type=radio][data-v-5114e50b]{width:auto;cursor:pointer}.radio-group[data-v-5114e50b]{display:flex;gap:16px}.radio-label[data-v-5114e50b]{display:flex;align-items:center;gap:4px;font-size:12px;cursor:pointer;color:var(--text)}.btn-add[data-v-5114e50b]{padding:2px 8px;font-size:11px;border-style:dashed}.btn-remove[data-v-5114e50b]{padding:0 6px;font-size:14px;line-height:1;border:none;background:transparent;color:var(--status-error, #d03050);flex-shrink:0}.btn-remove[data-v-5114e50b]:hover{background:color-mix(in srgb,var(--status-error, #d03050) 12%,transparent)}.column-table[data-v-5114e50b]{margin-top:2px}.col-select[data-v-5114e50b]{width:40px}.dynamic-pair-list[data-v-5114e50b]{display:flex;flex-direction:column;gap:3px}.dynamic-pair-row[data-v-5114e50b]{display:flex;align-items:center;gap:6px}.dynamic-pair-row[data-v-5114e50b]>:first-child,.dynamic-pair-row[data-v-5114e50b]>:nth-child(2){flex:1;min-width:0}[data-v-8c81f2e2]:root{--ds-type-static: #64748b;--ds-type-tag: #2080f0;--ds-type-api: #18a058;--ds-type-sql: #f59e0b;--ds-type-opc: #8b5cf6;--ds-type-mqtt: #ec4899;--ds-type-modbus: #06b6d4;--ds-status-connected: #10b981;--ds-status-disconnected: #94a3b8;--ds-status-connecting: #f59e0b;--ds-status-error: #ef4444;--ds-quality-good: #10b981;--ds-quality-uncertain: #f59e0b;--ds-quality-bad: #ef4444;--ds-quality-stale: #94a3b8;--ds-quality-disconnected: #d1d5db;--ds-spacing-xs: 4px;--ds-spacing-sm: 8px;--ds-spacing-md: 12px;--ds-spacing-lg: 16px;--ds-modal-header-bg: var(--surface);--ds-sidebar-bg: var(--background, rgba(0, 0, 0, .02))}.ds-btn[data-v-8c81f2e2]{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--text);cursor:pointer;font-size:13px;padding:4px 12px;line-height:1.5;transition:background-color var(--transition-fast),border-color var(--transition-fast)}.ds-btn[data-v-8c81f2e2]:hover{border-color:var(--primary)}.ds-btn[data-v-8c81f2e2]:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.ds-btn--primary[data-v-8c81f2e2]{background:var(--primary);border-color:var(--primary);color:#fff}.ds-btn--primary[data-v-8c81f2e2]:hover{background:var(--button-hover);border-color:var(--button-hover)}.ds-btn--sm[data-v-8c81f2e2]{font-size:13px;padding:3px 10px}.ds-btn--xs[data-v-8c81f2e2]{font-size:12px;padding:2px 8px}.ds-btn--icon[data-v-8c81f2e2]{width:28px;height:24px;padding:0;font-size:14px}.ds-btn--danger[data-v-8c81f2e2]{color:var(--color-error, #ef4444);border-color:transparent;background:transparent}.ds-btn--danger[data-v-8c81f2e2]:hover{background:#ef444414}.ds-form-label[data-v-8c81f2e2]{display:block;margin-bottom:4px;font-size:13px;font-weight:500;color:var(--text)}.ds-form-required[data-v-8c81f2e2]{color:var(--color-error, #ef4444);margin-left:2px}.ds-input[data-v-8c81f2e2],.ds-select[data-v-8c81f2e2]{width:100%;padding:6px 10px;font-size:13px;border:1px solid var(--border);border-radius:var(--radius-sm, 4px);background:var(--surface);color:var(--text);outline:none;box-sizing:border-box;transition:border-color var(--transition-fast, .15s ease)}.ds-input[data-v-8c81f2e2]:focus,.ds-select[data-v-8c81f2e2]:focus{border-color:var(--primary, #2080f0)}.ds-select[data-v-8c81f2e2]{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.ds-divider[data-v-8c81f2e2]{border:none;border-top:1px solid var(--border);margin:16px 0}.ds-row[data-v-8c81f2e2]{display:flex;gap:12px;margin-bottom:16px}.ds-item[data-v-8c81f2e2]{flex:1;min-width:0;margin-bottom:0}.ds-tag[data-v-8c81f2e2]{display:inline-block;padding:1px 8px;font-size:11px;border-radius:3px;line-height:1.6;white-space:nowrap}.ds-tag--success[data-v-8c81f2e2]{background:#10b9811f;color:var(--ds-status-connected)}.ds-tag--default[data-v-8c81f2e2]{background:#94a3b826;color:var(--text-secondary, #999)}.ds-tag--type-static[data-v-8c81f2e2]{background:#64748b1f;color:var(--ds-type-static)}.ds-tag--type-tag[data-v-8c81f2e2]{background:#2080f01f;color:var(--ds-type-tag)}.ds-tag--type-api[data-v-8c81f2e2]{background:#18a0581f;color:var(--ds-type-api)}.ds-tag--type-sql[data-v-8c81f2e2]{background:#f59e0b1f;color:var(--ds-type-sql)}.ds-status-dot[data-v-8c81f2e2]{display:inline-block;width:7px;height:7px;border-radius:50%;flex-shrink:0}.ds-status-dot--connected[data-v-8c81f2e2]{background-color:var(--ds-status-connected)}.ds-status-dot--disconnected[data-v-8c81f2e2]{background-color:var(--ds-status-disconnected)}.ds-status-dot--connecting[data-v-8c81f2e2]{background-color:var(--ds-status-connecting);animation:ds-pulse-8c81f2e2 1.5s ease-in-out infinite}.ds-status-dot--error[data-v-8c81f2e2]{background-color:var(--ds-status-error)}@keyframes ds-pulse-8c81f2e2{0%,to{opacity:1}50%{opacity:.4}}.ds-status-tag[data-v-8c81f2e2]{display:inline-block;padding:1px 6px;border-radius:3px;font-size:11px;line-height:1.5;color:#fff}.ds-status-tag--connected[data-v-8c81f2e2]{background:var(--ds-status-connected)}.ds-status-tag--disconnected[data-v-8c81f2e2]{background:var(--ds-status-disconnected)}.ds-status-tag--connecting[data-v-8c81f2e2]{background:var(--ds-status-connecting)}.ds-status-tag--error[data-v-8c81f2e2]{background:var(--ds-status-error)}.ds-sidebar-header[data-v-8c81f2e2]{display:flex;align-items:center;justify-content:space-between;padding:10px 12px 8px;border-bottom:1px solid var(--border)}.sidebar-title[data-v-8c81f2e2]{font-size:13px;font-weight:600;color:var(--text);letter-spacing:.3px}.sidebar-header-actions[data-v-8c81f2e2]{display:flex;align-items:center;gap:4px}.ds-sidebar-list[data-v-8c81f2e2]{flex:1;overflow-y:auto;padding:4px 0}.ds-sidebar-item[data-v-8c81f2e2]{display:flex;align-items:center;gap:8px;padding:10px 12px;cursor:pointer;border-bottom:1px solid transparent;border-radius:6px;margin:2px 4px;transition:background-color .15s ease,box-shadow .15s ease}.ds-sidebar-item[data-v-8c81f2e2]:hover{background-color:color-mix(in srgb,var(--primary) 6%,transparent)}.ds-sidebar-item--active[data-v-8c81f2e2]{background-color:color-mix(in srgb,var(--primary) 10%,transparent);box-shadow:inset 2px 0 0 var(--primary)}.ds-sidebar-item--active .sidebar-item-name[data-v-8c81f2e2]{font-weight:600}.ds-sidebar-item-name[data-v-8c81f2e2]{flex:1;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}.sidebar-item-info[data-v-8c81f2e2]{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.sidebar-item-type[data-v-8c81f2e2]{display:flex;align-items:center;gap:6px}.sidebar-var-count[data-v-8c81f2e2]{font-size:10px;color:var(--text-secondary);background:color-mix(in srgb,var(--text-secondary) 8%,transparent);padding:0 4px;border-radius:2px}.sidebar-data-preview[data-v-8c81f2e2]{font-size:10px;color:var(--text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:120px}.ds-summary-table-wrapper[data-v-8c81f2e2]{width:100%;overflow:visible}.summary-title[data-v-8c81f2e2]{font-size:13px;font-weight:600;color:var(--text);margin:0 0 10px;padding-bottom:8px;border-bottom:1px solid var(--border);letter-spacing:.3px;position:sticky;top:0;background:var(--surface);z-index:2}.ds-summary-table[data-v-8c81f2e2]{width:100%;border-collapse:separate;border-spacing:0;font-size:12px;table-layout:fixed}.ds-summary-table thead[data-v-8c81f2e2]{position:sticky;top:0;z-index:3}.ds-summary-table th[data-v-8c81f2e2]{padding:9px 10px;background-color:color-mix(in srgb,var(--text-secondary) 8%,var(--surface));color:var(--text-secondary);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;border-bottom:1px solid var(--border)}.ds-summary-table th[data-v-8c81f2e2]:first-child{border-radius:6px 0 0}.ds-summary-table th[data-v-8c81f2e2]:last-child{border-radius:0 6px 0 0}.ds-summary-table td[data-v-8c81f2e2]{padding:8px 10px;border-bottom:1px solid var(--border);color:var(--text);vertical-align:middle;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ds-summary-table tbody tr[data-v-8c81f2e2]{transition:background-color .12s ease}.ds-summary-table tbody tr[data-v-8c81f2e2]:hover{background-color:color-mix(in srgb,var(--primary) 4%,transparent)}.ds-summary-table tbody tr:last-child td[data-v-8c81f2e2]:first-child{border-radius:0 0 0 6px}.ds-summary-table tbody tr:last-child td[data-v-8c81f2e2]:last-child{border-radius:0 0 6px}.ds-summary-table tbody tr:last-child td[data-v-8c81f2e2]{border-bottom:none}.ds-summary-table .cell-name[data-v-8c81f2e2]{font-weight:500;color:var(--text)}.ds-summary-table .cell-bound[data-v-8c81f2e2]{max-width:120px}.ds-summary-table .cell-time[data-v-8c81f2e2]{color:var(--text-secondary);font-variant-numeric:tabular-nums;font-size:11.5px}.ds-summary-table .cell-data[data-v-8c81f2e2]{max-width:160px;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:11.5px}.ds-bound-tag[data-v-8c81f2e2]{display:inline-block;padding:1px 6px;margin:1px 2px;background:#2080f014;color:var(--primary, #2080f0);border-radius:3px;font-size:10px;border:1px solid rgba(32,128,240,.2)}.ds-empty[data-v-8c81f2e2]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 16px;color:var(--text-tertiary);font-size:13px;gap:8px}.ds-empty[data-v-8c81f2e2]:before{content:"📦";font-size:28px;opacity:.4}.ds-placeholder[data-v-8c81f2e2]{display:flex;align-items:center;justify-content:center;height:100%;min-height:200px;color:var(--text-tertiary);font-size:13px}.placeholder-text[data-v-8c81f2e2]{text-align:center;padding:32px 16px;color:var(--text-tertiary);font-size:13px;line-height:1.6}.text-muted[data-v-8c81f2e2]{color:var(--text-tertiary);font-style:italic}.modal-overlay[data-v-8c81f2e2]{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-header[data-v-8c81f2e2]{background:linear-gradient(135deg,var(--ds-modal-header-bg) 0%,color-mix(in srgb,var(--primary) 3%,var(--ds-modal-header-bg)) 100%)}.modal-header h3[data-v-8c81f2e2]{font-size:15px;font-weight:700;letter-spacing:.3px;background:linear-gradient(90deg,var(--text) 0%,var(--text-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.modal-sidebar[data-v-8c81f2e2]{background-color:var(--ds-sidebar-bg)}.data-panel-scroll[data-v-8c81f2e2]::-webkit-scrollbar,.modal-body[data-v-8c81f2e2]::-webkit-scrollbar,.modal-sidebar[data-v-8c81f2e2]::-webkit-scrollbar{width:5px}.data-panel-scroll[data-v-8c81f2e2]::-webkit-scrollbar-track,.modal-body[data-v-8c81f2e2]::-webkit-scrollbar-track,.modal-sidebar[data-v-8c81f2e2]::-webkit-scrollbar-track{background:transparent}.data-panel-scroll[data-v-8c81f2e2]::-webkit-scrollbar-thumb,.modal-body[data-v-8c81f2e2]::-webkit-scrollbar-thumb,.modal-sidebar[data-v-8c81f2e2]::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.data-panel-scroll[data-v-8c81f2e2]::-webkit-scrollbar-thumb:hover,.modal-body[data-v-8c81f2e2]::-webkit-scrollbar-thumb:hover,.modal-sidebar[data-v-8c81f2e2]::-webkit-scrollbar-thumb:hover{background:var(--text-secondary, #999)}.modal-overlay[data-v-8c81f2e2]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:10001}.modal[data-v-8c81f2e2]{background:var(--surface);border-radius:var(--radius-lg, 12px);padding:0;width:980px;max-height:86vh;display:flex;flex-direction:column;box-shadow:0 0 0 1px color-mix(in srgb,var(--border) 50%,transparent),0 16px 48px -8px #0003,0 8px 24px -6px #0000001f}.modal-header[data-v-8c81f2e2]{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;border-bottom:1px solid var(--border)}.modal-header h3[data-v-8c81f2e2]{margin:0;font-size:15px}.header-actions[data-v-8c81f2e2]{display:flex;gap:8px}.modal-body[data-v-8c81f2e2]{display:flex;flex:1;overflow:hidden;min-height:520px}.modal-sidebar[data-v-8c81f2e2]{width:220px;min-width:220px;border-right:1px solid var(--border);overflow-y:auto;padding:0;display:flex;flex-direction:column}.modal-main[data-v-8c81f2e2]{flex:1;overflow-y:auto;padding:16px 20px}.modal-main .ds-placeholder[data-v-8c81f2e2]{display:block;min-height:unset}.filter-preview-panel[data-v-9eae9108]{display:flex;flex-direction:column;gap:8px}.comparison-section[data-v-9eae9108]{display:flex;align-items:flex-start;gap:8px}.comparison-panel[data-v-9eae9108]{flex:1;min-width:0;border:1px solid var(--border);border-radius:4px;overflow:hidden}.comparison-title[data-v-9eae9108]{font-size:12px;font-weight:600;padding:4px 8px;background-color:var(--background-secondary);border-bottom:1px solid var(--border)}.comparison-content[data-v-9eae9108]{padding:8px;max-height:160px;overflow-y:auto}.comparison-content pre[data-v-9eae9108]{margin:0;font-size:12px;font-family:Consolas,monospace;white-space:pre-wrap}.comparison-arrow[data-v-9eae9108]{display:flex;align-items:center;padding-top:24px;font-size:14px;color:var(--text-tertiary);flex-shrink:0}.empty-text[data-v-9eae9108]{color:var(--text-tertiary);font-size:13px}.test-error[data-v-9eae9108]{color:var(--status-error);font-size:12px;padding:4px 8px;background-color:color-mix(in srgb,var(--status-error) 6%,transparent);border-radius:4px}.test-success[data-v-9eae9108]{color:var(--status-success);font-size:12px}[data-v-4e3359d4]:root{--ds-type-static: #64748b;--ds-type-tag: #2080f0;--ds-type-api: #18a058;--ds-type-sql: #f59e0b;--ds-type-opc: #8b5cf6;--ds-type-mqtt: #ec4899;--ds-type-modbus: #06b6d4;--ds-status-connected: #10b981;--ds-status-disconnected: #94a3b8;--ds-status-connecting: #f59e0b;--ds-status-error: #ef4444;--ds-quality-good: #10b981;--ds-quality-uncertain: #f59e0b;--ds-quality-bad: #ef4444;--ds-quality-stale: #94a3b8;--ds-quality-disconnected: #d1d5db;--ds-spacing-xs: 4px;--ds-spacing-sm: 8px;--ds-spacing-md: 12px;--ds-spacing-lg: 16px;--ds-modal-header-bg: var(--surface);--ds-sidebar-bg: var(--background, rgba(0, 0, 0, .02))}.ds-btn[data-v-4e3359d4]{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--text);cursor:pointer;font-size:13px;padding:4px 12px;line-height:1.5;transition:background-color var(--transition-fast),border-color var(--transition-fast)}.ds-btn[data-v-4e3359d4]:hover{border-color:var(--primary)}.ds-btn[data-v-4e3359d4]:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.ds-btn--primary[data-v-4e3359d4]{background:var(--primary);border-color:var(--primary);color:#fff}.ds-btn--primary[data-v-4e3359d4]:hover{background:var(--button-hover);border-color:var(--button-hover)}.ds-btn--sm[data-v-4e3359d4]{font-size:13px;padding:3px 10px}.ds-btn--xs[data-v-4e3359d4]{font-size:12px;padding:2px 8px}.ds-btn--icon[data-v-4e3359d4]{width:28px;height:24px;padding:0;font-size:14px}.ds-btn--danger[data-v-4e3359d4]{color:var(--color-error, #ef4444);border-color:transparent;background:transparent}.ds-btn--danger[data-v-4e3359d4]:hover{background:#ef444414}.ds-form-label[data-v-4e3359d4]{display:block;margin-bottom:4px;font-size:13px;font-weight:500;color:var(--text)}.ds-form-required[data-v-4e3359d4]{color:var(--color-error, #ef4444);margin-left:2px}.ds-input[data-v-4e3359d4],.ds-select[data-v-4e3359d4]{width:100%;padding:6px 10px;font-size:13px;border:1px solid var(--border);border-radius:var(--radius-sm, 4px);background:var(--surface);color:var(--text);outline:none;box-sizing:border-box;transition:border-color var(--transition-fast, .15s ease)}.ds-input[data-v-4e3359d4]:focus,.ds-select[data-v-4e3359d4]:focus{border-color:var(--primary, #2080f0)}.ds-select[data-v-4e3359d4]{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.ds-divider[data-v-4e3359d4]{border:none;border-top:1px solid var(--border);margin:16px 0}.ds-row[data-v-4e3359d4]{display:flex;gap:12px;margin-bottom:16px}.ds-item[data-v-4e3359d4]{flex:1;min-width:0;margin-bottom:0}.ds-tag[data-v-4e3359d4]{display:inline-block;padding:1px 8px;font-size:11px;border-radius:3px;line-height:1.6;white-space:nowrap}.ds-tag--success[data-v-4e3359d4]{background:#10b9811f;color:var(--ds-status-connected)}.ds-tag--default[data-v-4e3359d4]{background:#94a3b826;color:var(--text-secondary, #999)}.ds-tag--type-static[data-v-4e3359d4]{background:#64748b1f;color:var(--ds-type-static)}.ds-tag--type-tag[data-v-4e3359d4]{background:#2080f01f;color:var(--ds-type-tag)}.ds-tag--type-api[data-v-4e3359d4]{background:#18a0581f;color:var(--ds-type-api)}.ds-tag--type-sql[data-v-4e3359d4]{background:#f59e0b1f;color:var(--ds-type-sql)}.ds-status-dot[data-v-4e3359d4]{display:inline-block;width:7px;height:7px;border-radius:50%;flex-shrink:0}.ds-status-dot--connected[data-v-4e3359d4]{background-color:var(--ds-status-connected)}.ds-status-dot--disconnected[data-v-4e3359d4]{background-color:var(--ds-status-disconnected)}.ds-status-dot--connecting[data-v-4e3359d4]{background-color:var(--ds-status-connecting);animation:ds-pulse-4e3359d4 1.5s ease-in-out infinite}.ds-status-dot--error[data-v-4e3359d4]{background-color:var(--ds-status-error)}@keyframes ds-pulse-4e3359d4{0%,to{opacity:1}50%{opacity:.4}}.ds-status-tag[data-v-4e3359d4]{display:inline-block;padding:1px 6px;border-radius:3px;font-size:11px;line-height:1.5;color:#fff}.ds-status-tag--connected[data-v-4e3359d4]{background:var(--ds-status-connected)}.ds-status-tag--disconnected[data-v-4e3359d4]{background:var(--ds-status-disconnected)}.ds-status-tag--connecting[data-v-4e3359d4]{background:var(--ds-status-connecting)}.ds-status-tag--error[data-v-4e3359d4]{background:var(--ds-status-error)}.ds-sidebar-header[data-v-4e3359d4]{display:flex;align-items:center;justify-content:space-between;padding:10px 12px 8px;border-bottom:1px solid var(--border)}.sidebar-title[data-v-4e3359d4]{font-size:13px;font-weight:600;color:var(--text);letter-spacing:.3px}.sidebar-header-actions[data-v-4e3359d4]{display:flex;align-items:center;gap:4px}.ds-sidebar-list[data-v-4e3359d4]{flex:1;overflow-y:auto;padding:4px 0}.ds-sidebar-item[data-v-4e3359d4]{display:flex;align-items:center;gap:8px;padding:10px 12px;cursor:pointer;border-bottom:1px solid transparent;border-radius:6px;margin:2px 4px;transition:background-color .15s ease,box-shadow .15s ease}.ds-sidebar-item[data-v-4e3359d4]:hover{background-color:color-mix(in srgb,var(--primary) 6%,transparent)}.ds-sidebar-item--active[data-v-4e3359d4]{background-color:color-mix(in srgb,var(--primary) 10%,transparent);box-shadow:inset 2px 0 0 var(--primary)}.ds-sidebar-item--active .sidebar-item-name[data-v-4e3359d4]{font-weight:600}.ds-sidebar-item-name[data-v-4e3359d4]{flex:1;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}.sidebar-item-info[data-v-4e3359d4]{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.sidebar-item-type[data-v-4e3359d4]{display:flex;align-items:center;gap:6px}.sidebar-var-count[data-v-4e3359d4]{font-size:10px;color:var(--text-secondary);background:color-mix(in srgb,var(--text-secondary) 8%,transparent);padding:0 4px;border-radius:2px}.sidebar-data-preview[data-v-4e3359d4]{font-size:10px;color:var(--text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:120px}.ds-summary-table-wrapper[data-v-4e3359d4]{width:100%;overflow:visible}.summary-title[data-v-4e3359d4]{font-size:13px;font-weight:600;color:var(--text);margin:0 0 10px;padding-bottom:8px;border-bottom:1px solid var(--border);letter-spacing:.3px;position:sticky;top:0;background:var(--surface);z-index:2}.ds-summary-table[data-v-4e3359d4]{width:100%;border-collapse:separate;border-spacing:0;font-size:12px;table-layout:fixed}.ds-summary-table thead[data-v-4e3359d4]{position:sticky;top:0;z-index:3}.ds-summary-table th[data-v-4e3359d4]{padding:9px 10px;background-color:color-mix(in srgb,var(--text-secondary) 8%,var(--surface));color:var(--text-secondary);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;border-bottom:1px solid var(--border)}.ds-summary-table th[data-v-4e3359d4]:first-child{border-radius:6px 0 0}.ds-summary-table th[data-v-4e3359d4]:last-child{border-radius:0 6px 0 0}.ds-summary-table td[data-v-4e3359d4]{padding:8px 10px;border-bottom:1px solid var(--border);color:var(--text);vertical-align:middle;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ds-summary-table tbody tr[data-v-4e3359d4]{transition:background-color .12s ease}.ds-summary-table tbody tr[data-v-4e3359d4]:hover{background-color:color-mix(in srgb,var(--primary) 4%,transparent)}.ds-summary-table tbody tr:last-child td[data-v-4e3359d4]:first-child{border-radius:0 0 0 6px}.ds-summary-table tbody tr:last-child td[data-v-4e3359d4]:last-child{border-radius:0 0 6px}.ds-summary-table tbody tr:last-child td[data-v-4e3359d4]{border-bottom:none}.ds-summary-table .cell-name[data-v-4e3359d4]{font-weight:500;color:var(--text)}.ds-summary-table .cell-bound[data-v-4e3359d4]{max-width:120px}.ds-summary-table .cell-time[data-v-4e3359d4]{color:var(--text-secondary);font-variant-numeric:tabular-nums;font-size:11.5px}.ds-summary-table .cell-data[data-v-4e3359d4]{max-width:160px;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:11.5px}.ds-bound-tag[data-v-4e3359d4]{display:inline-block;padding:1px 6px;margin:1px 2px;background:#2080f014;color:var(--primary, #2080f0);border-radius:3px;font-size:10px;border:1px solid rgba(32,128,240,.2)}.ds-empty[data-v-4e3359d4]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 16px;color:var(--text-tertiary);font-size:13px;gap:8px}.ds-empty[data-v-4e3359d4]:before{content:"📦";font-size:28px;opacity:.4}.ds-placeholder[data-v-4e3359d4]{display:flex;align-items:center;justify-content:center;height:100%;min-height:200px;color:var(--text-tertiary);font-size:13px}.placeholder-text[data-v-4e3359d4]{text-align:center;padding:32px 16px;color:var(--text-tertiary);font-size:13px;line-height:1.6}.text-muted[data-v-4e3359d4]{color:var(--text-tertiary);font-style:italic}.modal-overlay[data-v-4e3359d4]{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-header[data-v-4e3359d4]{background:linear-gradient(135deg,var(--ds-modal-header-bg) 0%,color-mix(in srgb,var(--primary) 3%,var(--ds-modal-header-bg)) 100%)}.modal-header h3[data-v-4e3359d4]{font-size:15px;font-weight:700;letter-spacing:.3px;background:linear-gradient(90deg,var(--text) 0%,var(--text-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.modal-sidebar[data-v-4e3359d4]{background-color:var(--ds-sidebar-bg)}.data-panel-scroll[data-v-4e3359d4]::-webkit-scrollbar,.modal-body[data-v-4e3359d4]::-webkit-scrollbar,.modal-sidebar[data-v-4e3359d4]::-webkit-scrollbar{width:5px}.data-panel-scroll[data-v-4e3359d4]::-webkit-scrollbar-track,.modal-body[data-v-4e3359d4]::-webkit-scrollbar-track,.modal-sidebar[data-v-4e3359d4]::-webkit-scrollbar-track{background:transparent}.data-panel-scroll[data-v-4e3359d4]::-webkit-scrollbar-thumb,.modal-body[data-v-4e3359d4]::-webkit-scrollbar-thumb,.modal-sidebar[data-v-4e3359d4]::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.data-panel-scroll[data-v-4e3359d4]::-webkit-scrollbar-thumb:hover,.modal-body[data-v-4e3359d4]::-webkit-scrollbar-thumb:hover,.modal-sidebar[data-v-4e3359d4]::-webkit-scrollbar-thumb:hover{background:var(--text-secondary, #999)}.filter-script-editor[data-v-4e3359d4]{display:flex;flex-direction:column;gap:10px}.editor-header[data-v-4e3359d4]{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px}.hint-text[data-v-4e3359d4]{font-size:11.5px;color:var(--text-tertiary);line-height:1.5}.hint-text code[data-v-4e3359d4]{background:color-mix(in srgb,var(--primary) 8%,transparent);color:var(--primary);padding:1px 5px;border-radius:3px;font-size:10.5px;font-weight:600;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace}.btn-row[data-v-4e3359d4]{display:flex;gap:4px;flex-wrap:wrap}.code-block[data-v-4e3359d4]{border:1px solid var(--border);border-radius:8px;overflow:hidden;font-family:Cascadia Code,Fira Code,Consolas,Courier New,monospace;font-size:12.5px;line-height:1.55;background:var(--surface);box-shadow:0 1px 3px #0000000a}.code-prefix[data-v-4e3359d4],.code-suffix[data-v-4e3359d4]{margin:0;padding:7px 10px;background:linear-gradient(90deg,color-mix(in srgb,var(--text-secondary) 4%,var(--surface)),color-mix(in srgb,var(--text-secondary) 2%,var(--surface)));color:var(--text-secondary);white-space:pre;overflow-x:auto;-webkit-user-select:none;user-select:none;border-bottom:1px solid var(--border);font-size:12.5px;line-height:1.55}.code-suffix[data-v-4e3359d4]{border-bottom:none;border-top:1px solid var(--border)}.code-prefix code[data-v-4e3359d4],.code-suffix code[data-v-4e3359d4]{background:transparent;padding:0;font-size:inherit;color:inherit}.code-body[data-v-4e3359d4]{width:100%;padding:8px 10px;border:none;border-radius:0;outline:none;font-family:inherit;font-size:inherit;line-height:inherit;resize:vertical;min-height:60px;background:var(--surface);color:var(--text);-moz-tab-size:2;tab-size:2}.code-body[data-v-4e3359d4]:focus{background:color-mix(in srgb,var(--primary) 2%,var(--surface));box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--primary) 8%,transparent)}[data-v-74873d3c]:root{--ds-type-static: #64748b;--ds-type-tag: #2080f0;--ds-type-api: #18a058;--ds-type-sql: #f59e0b;--ds-type-opc: #8b5cf6;--ds-type-mqtt: #ec4899;--ds-type-modbus: #06b6d4;--ds-status-connected: #10b981;--ds-status-disconnected: #94a3b8;--ds-status-connecting: #f59e0b;--ds-status-error: #ef4444;--ds-quality-good: #10b981;--ds-quality-uncertain: #f59e0b;--ds-quality-bad: #ef4444;--ds-quality-stale: #94a3b8;--ds-quality-disconnected: #d1d5db;--ds-spacing-xs: 4px;--ds-spacing-sm: 8px;--ds-spacing-md: 12px;--ds-spacing-lg: 16px;--ds-modal-header-bg: var(--surface);--ds-sidebar-bg: var(--background, rgba(0, 0, 0, .02))}.ds-btn[data-v-74873d3c]{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--text);cursor:pointer;font-size:13px;padding:4px 12px;line-height:1.5;transition:background-color var(--transition-fast),border-color var(--transition-fast)}.ds-btn[data-v-74873d3c]:hover{border-color:var(--primary)}.ds-btn[data-v-74873d3c]:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.ds-btn--primary[data-v-74873d3c]{background:var(--primary);border-color:var(--primary);color:#fff}.ds-btn--primary[data-v-74873d3c]:hover{background:var(--button-hover);border-color:var(--button-hover)}.ds-btn--sm[data-v-74873d3c]{font-size:13px;padding:3px 10px}.ds-btn--xs[data-v-74873d3c]{font-size:12px;padding:2px 8px}.ds-btn--icon[data-v-74873d3c]{width:28px;height:24px;padding:0;font-size:14px}.ds-btn--danger[data-v-74873d3c]{color:var(--color-error, #ef4444);border-color:transparent;background:transparent}.ds-btn--danger[data-v-74873d3c]:hover{background:#ef444414}.ds-form-label[data-v-74873d3c]{display:block;margin-bottom:4px;font-size:13px;font-weight:500;color:var(--text)}.ds-form-required[data-v-74873d3c]{color:var(--color-error, #ef4444);margin-left:2px}.ds-input[data-v-74873d3c],.ds-select[data-v-74873d3c]{width:100%;padding:6px 10px;font-size:13px;border:1px solid var(--border);border-radius:var(--radius-sm, 4px);background:var(--surface);color:var(--text);outline:none;box-sizing:border-box;transition:border-color var(--transition-fast, .15s ease)}.ds-input[data-v-74873d3c]:focus,.ds-select[data-v-74873d3c]:focus{border-color:var(--primary, #2080f0)}.ds-select[data-v-74873d3c]{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.ds-divider[data-v-74873d3c]{border:none;border-top:1px solid var(--border);margin:16px 0}.ds-row[data-v-74873d3c]{display:flex;gap:12px;margin-bottom:16px}.ds-item[data-v-74873d3c]{flex:1;min-width:0;margin-bottom:0}.ds-tag[data-v-74873d3c]{display:inline-block;padding:1px 8px;font-size:11px;border-radius:3px;line-height:1.6;white-space:nowrap}.ds-tag--success[data-v-74873d3c]{background:#10b9811f;color:var(--ds-status-connected)}.ds-tag--default[data-v-74873d3c]{background:#94a3b826;color:var(--text-secondary, #999)}.ds-tag--type-static[data-v-74873d3c]{background:#64748b1f;color:var(--ds-type-static)}.ds-tag--type-tag[data-v-74873d3c]{background:#2080f01f;color:var(--ds-type-tag)}.ds-tag--type-api[data-v-74873d3c]{background:#18a0581f;color:var(--ds-type-api)}.ds-tag--type-sql[data-v-74873d3c]{background:#f59e0b1f;color:var(--ds-type-sql)}.ds-status-dot[data-v-74873d3c]{display:inline-block;width:7px;height:7px;border-radius:50%;flex-shrink:0}.ds-status-dot--connected[data-v-74873d3c]{background-color:var(--ds-status-connected)}.ds-status-dot--disconnected[data-v-74873d3c]{background-color:var(--ds-status-disconnected)}.ds-status-dot--connecting[data-v-74873d3c]{background-color:var(--ds-status-connecting);animation:ds-pulse-74873d3c 1.5s ease-in-out infinite}.ds-status-dot--error[data-v-74873d3c]{background-color:var(--ds-status-error)}@keyframes ds-pulse-74873d3c{0%,to{opacity:1}50%{opacity:.4}}.ds-status-tag[data-v-74873d3c]{display:inline-block;padding:1px 6px;border-radius:3px;font-size:11px;line-height:1.5;color:#fff}.ds-status-tag--connected[data-v-74873d3c]{background:var(--ds-status-connected)}.ds-status-tag--disconnected[data-v-74873d3c]{background:var(--ds-status-disconnected)}.ds-status-tag--connecting[data-v-74873d3c]{background:var(--ds-status-connecting)}.ds-status-tag--error[data-v-74873d3c]{background:var(--ds-status-error)}.ds-sidebar-header[data-v-74873d3c]{display:flex;align-items:center;justify-content:space-between;padding:10px 12px 8px;border-bottom:1px solid var(--border)}.sidebar-title[data-v-74873d3c]{font-size:13px;font-weight:600;color:var(--text);letter-spacing:.3px}.sidebar-header-actions[data-v-74873d3c]{display:flex;align-items:center;gap:4px}.ds-sidebar-list[data-v-74873d3c]{flex:1;overflow-y:auto;padding:4px 0}.ds-sidebar-item[data-v-74873d3c]{display:flex;align-items:center;gap:8px;padding:10px 12px;cursor:pointer;border-bottom:1px solid transparent;border-radius:6px;margin:2px 4px;transition:background-color .15s ease,box-shadow .15s ease}.ds-sidebar-item[data-v-74873d3c]:hover{background-color:color-mix(in srgb,var(--primary) 6%,transparent)}.ds-sidebar-item--active[data-v-74873d3c]{background-color:color-mix(in srgb,var(--primary) 10%,transparent);box-shadow:inset 2px 0 0 var(--primary)}.ds-sidebar-item--active .sidebar-item-name[data-v-74873d3c]{font-weight:600}.ds-sidebar-item-name[data-v-74873d3c]{flex:1;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}.sidebar-item-info[data-v-74873d3c]{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.sidebar-item-type[data-v-74873d3c]{display:flex;align-items:center;gap:6px}.sidebar-var-count[data-v-74873d3c]{font-size:10px;color:var(--text-secondary);background:color-mix(in srgb,var(--text-secondary) 8%,transparent);padding:0 4px;border-radius:2px}.sidebar-data-preview[data-v-74873d3c]{font-size:10px;color:var(--text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:120px}.ds-summary-table-wrapper[data-v-74873d3c]{width:100%;overflow:visible}.summary-title[data-v-74873d3c]{font-size:13px;font-weight:600;color:var(--text);margin:0 0 10px;padding-bottom:8px;border-bottom:1px solid var(--border);letter-spacing:.3px;position:sticky;top:0;background:var(--surface);z-index:2}.ds-summary-table[data-v-74873d3c]{width:100%;border-collapse:separate;border-spacing:0;font-size:12px;table-layout:fixed}.ds-summary-table thead[data-v-74873d3c]{position:sticky;top:0;z-index:3}.ds-summary-table th[data-v-74873d3c]{padding:9px 10px;background-color:color-mix(in srgb,var(--text-secondary) 8%,var(--surface));color:var(--text-secondary);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;border-bottom:1px solid var(--border)}.ds-summary-table th[data-v-74873d3c]:first-child{border-radius:6px 0 0}.ds-summary-table th[data-v-74873d3c]:last-child{border-radius:0 6px 0 0}.ds-summary-table td[data-v-74873d3c]{padding:8px 10px;border-bottom:1px solid var(--border);color:var(--text);vertical-align:middle;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ds-summary-table tbody tr[data-v-74873d3c]{transition:background-color .12s ease}.ds-summary-table tbody tr[data-v-74873d3c]:hover{background-color:color-mix(in srgb,var(--primary) 4%,transparent)}.ds-summary-table tbody tr:last-child td[data-v-74873d3c]:first-child{border-radius:0 0 0 6px}.ds-summary-table tbody tr:last-child td[data-v-74873d3c]:last-child{border-radius:0 0 6px}.ds-summary-table tbody tr:last-child td[data-v-74873d3c]{border-bottom:none}.ds-summary-table .cell-name[data-v-74873d3c]{font-weight:500;color:var(--text)}.ds-summary-table .cell-bound[data-v-74873d3c]{max-width:120px}.ds-summary-table .cell-time[data-v-74873d3c]{color:var(--text-secondary);font-variant-numeric:tabular-nums;font-size:11.5px}.ds-summary-table .cell-data[data-v-74873d3c]{max-width:160px;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:11.5px}.ds-bound-tag[data-v-74873d3c]{display:inline-block;padding:1px 6px;margin:1px 2px;background:#2080f014;color:var(--primary, #2080f0);border-radius:3px;font-size:10px;border:1px solid rgba(32,128,240,.2)}.ds-empty[data-v-74873d3c]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 16px;color:var(--text-tertiary);font-size:13px;gap:8px}.ds-empty[data-v-74873d3c]:before{content:"📦";font-size:28px;opacity:.4}.ds-placeholder[data-v-74873d3c]{display:flex;align-items:center;justify-content:center;height:100%;min-height:200px;color:var(--text-tertiary);font-size:13px}.placeholder-text[data-v-74873d3c]{text-align:center;padding:32px 16px;color:var(--text-tertiary);font-size:13px;line-height:1.6}.text-muted[data-v-74873d3c]{color:var(--text-tertiary);font-style:italic}.modal-overlay[data-v-74873d3c]{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-header[data-v-74873d3c]{background:linear-gradient(135deg,var(--ds-modal-header-bg) 0%,color-mix(in srgb,var(--primary) 3%,var(--ds-modal-header-bg)) 100%)}.modal-header h3[data-v-74873d3c]{font-size:15px;font-weight:700;letter-spacing:.3px;background:linear-gradient(90deg,var(--text) 0%,var(--text-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.modal-sidebar[data-v-74873d3c]{background-color:var(--ds-sidebar-bg)}.data-panel-scroll[data-v-74873d3c]::-webkit-scrollbar,.modal-body[data-v-74873d3c]::-webkit-scrollbar,.modal-sidebar[data-v-74873d3c]::-webkit-scrollbar{width:5px}.data-panel-scroll[data-v-74873d3c]::-webkit-scrollbar-track,.modal-body[data-v-74873d3c]::-webkit-scrollbar-track,.modal-sidebar[data-v-74873d3c]::-webkit-scrollbar-track{background:transparent}.data-panel-scroll[data-v-74873d3c]::-webkit-scrollbar-thumb,.modal-body[data-v-74873d3c]::-webkit-scrollbar-thumb,.modal-sidebar[data-v-74873d3c]::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.data-panel-scroll[data-v-74873d3c]::-webkit-scrollbar-thumb:hover,.modal-body[data-v-74873d3c]::-webkit-scrollbar-thumb:hover,.modal-sidebar[data-v-74873d3c]::-webkit-scrollbar-thumb:hover{background:var(--text-secondary, #999)}.script-api-reference[data-v-74873d3c]{display:flex;flex-direction:column;gap:8px;padding:6px;height:100%;overflow-y:auto}.api-section[data-v-74873d3c]{border:1px solid var(--border);border-radius:6px;overflow:hidden;background:var(--surface)}.api-section-title[data-v-74873d3c]{font-size:11.5px;font-weight:700;padding:7px 10px;background:linear-gradient(90deg,color-mix(in srgb,var(--primary) 8%,transparent),color-mix(in srgb,var(--primary) 3%,transparent));color:var(--text);letter-spacing:.3px;text-transform:uppercase;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:1}.api-item[data-v-74873d3c]{padding:7px 10px;border-bottom:1px solid color-mix(in srgb,var(--border) 40%,transparent);transition:background-color .1s ease}.api-item[data-v-74873d3c]:hover{background-color:color-mix(in srgb,var(--primary) 4%,transparent)}.api-item[data-v-74873d3c]:last-child{border-bottom:none}.api-name[data-v-74873d3c]{font-size:11.5px;font-weight:600;color:var(--primary);font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;line-height:1.4}.api-desc[data-v-74873d3c]{font-size:11px;color:var(--text-secondary);margin-top:2px;line-height:1.4}.api-example[data-v-74873d3c]{font-size:10.5px;color:var(--text-tertiary);font-family:Cascadia Code,Fira Code,Consolas,monospace;background:color-mix(in srgb,var(--background) 80%,transparent);padding:3px 6px;border-radius:3px;margin-top:4px;word-break:break-all;line-height:1.45;border:1px solid color-mix(in srgb,var(--border) 50%,transparent)}[data-v-86cb65f6]:root{--ds-type-static: #64748b;--ds-type-tag: #2080f0;--ds-type-api: #18a058;--ds-type-sql: #f59e0b;--ds-type-opc: #8b5cf6;--ds-type-mqtt: #ec4899;--ds-type-modbus: #06b6d4;--ds-status-connected: #10b981;--ds-status-disconnected: #94a3b8;--ds-status-connecting: #f59e0b;--ds-status-error: #ef4444;--ds-quality-good: #10b981;--ds-quality-uncertain: #f59e0b;--ds-quality-bad: #ef4444;--ds-quality-stale: #94a3b8;--ds-quality-disconnected: #d1d5db;--ds-spacing-xs: 4px;--ds-spacing-sm: 8px;--ds-spacing-md: 12px;--ds-spacing-lg: 16px;--ds-modal-header-bg: var(--surface);--ds-sidebar-bg: var(--background, rgba(0, 0, 0, .02))}.ds-btn[data-v-86cb65f6]{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--text);cursor:pointer;font-size:13px;padding:4px 12px;line-height:1.5;transition:background-color var(--transition-fast),border-color var(--transition-fast)}.ds-btn[data-v-86cb65f6]:hover{border-color:var(--primary)}.ds-btn[data-v-86cb65f6]:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.ds-btn--primary[data-v-86cb65f6]{background:var(--primary);border-color:var(--primary);color:#fff}.ds-btn--primary[data-v-86cb65f6]:hover{background:var(--button-hover);border-color:var(--button-hover)}.ds-btn--sm[data-v-86cb65f6]{font-size:13px;padding:3px 10px}.ds-btn--xs[data-v-86cb65f6]{font-size:12px;padding:2px 8px}.ds-btn--icon[data-v-86cb65f6]{width:28px;height:24px;padding:0;font-size:14px}.ds-btn--danger[data-v-86cb65f6]{color:var(--color-error, #ef4444);border-color:transparent;background:transparent}.ds-btn--danger[data-v-86cb65f6]:hover{background:#ef444414}.ds-form-label[data-v-86cb65f6]{display:block;margin-bottom:4px;font-size:13px;font-weight:500;color:var(--text)}.ds-form-required[data-v-86cb65f6]{color:var(--color-error, #ef4444);margin-left:2px}.ds-input[data-v-86cb65f6],.ds-select[data-v-86cb65f6]{width:100%;padding:6px 10px;font-size:13px;border:1px solid var(--border);border-radius:var(--radius-sm, 4px);background:var(--surface);color:var(--text);outline:none;box-sizing:border-box;transition:border-color var(--transition-fast, .15s ease)}.ds-input[data-v-86cb65f6]:focus,.ds-select[data-v-86cb65f6]:focus{border-color:var(--primary, #2080f0)}.ds-select[data-v-86cb65f6]{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.ds-divider[data-v-86cb65f6]{border:none;border-top:1px solid var(--border);margin:16px 0}.ds-row[data-v-86cb65f6]{display:flex;gap:12px;margin-bottom:16px}.ds-item[data-v-86cb65f6]{flex:1;min-width:0;margin-bottom:0}.ds-tag[data-v-86cb65f6]{display:inline-block;padding:1px 8px;font-size:11px;border-radius:3px;line-height:1.6;white-space:nowrap}.ds-tag--success[data-v-86cb65f6]{background:#10b9811f;color:var(--ds-status-connected)}.ds-tag--default[data-v-86cb65f6]{background:#94a3b826;color:var(--text-secondary, #999)}.ds-tag--type-static[data-v-86cb65f6]{background:#64748b1f;color:var(--ds-type-static)}.ds-tag--type-tag[data-v-86cb65f6]{background:#2080f01f;color:var(--ds-type-tag)}.ds-tag--type-api[data-v-86cb65f6]{background:#18a0581f;color:var(--ds-type-api)}.ds-tag--type-sql[data-v-86cb65f6]{background:#f59e0b1f;color:var(--ds-type-sql)}.ds-status-dot[data-v-86cb65f6]{display:inline-block;width:7px;height:7px;border-radius:50%;flex-shrink:0}.ds-status-dot--connected[data-v-86cb65f6]{background-color:var(--ds-status-connected)}.ds-status-dot--disconnected[data-v-86cb65f6]{background-color:var(--ds-status-disconnected)}.ds-status-dot--connecting[data-v-86cb65f6]{background-color:var(--ds-status-connecting);animation:ds-pulse-86cb65f6 1.5s ease-in-out infinite}.ds-status-dot--error[data-v-86cb65f6]{background-color:var(--ds-status-error)}@keyframes ds-pulse-86cb65f6{0%,to{opacity:1}50%{opacity:.4}}.ds-status-tag[data-v-86cb65f6]{display:inline-block;padding:1px 6px;border-radius:3px;font-size:11px;line-height:1.5;color:#fff}.ds-status-tag--connected[data-v-86cb65f6]{background:var(--ds-status-connected)}.ds-status-tag--disconnected[data-v-86cb65f6]{background:var(--ds-status-disconnected)}.ds-status-tag--connecting[data-v-86cb65f6]{background:var(--ds-status-connecting)}.ds-status-tag--error[data-v-86cb65f6]{background:var(--ds-status-error)}.ds-sidebar-header[data-v-86cb65f6]{display:flex;align-items:center;justify-content:space-between;padding:10px 12px 8px;border-bottom:1px solid var(--border)}.sidebar-title[data-v-86cb65f6]{font-size:13px;font-weight:600;color:var(--text);letter-spacing:.3px}.sidebar-header-actions[data-v-86cb65f6]{display:flex;align-items:center;gap:4px}.ds-sidebar-list[data-v-86cb65f6]{flex:1;overflow-y:auto;padding:4px 0}.ds-sidebar-item[data-v-86cb65f6]{display:flex;align-items:center;gap:8px;padding:10px 12px;cursor:pointer;border-bottom:1px solid transparent;border-radius:6px;margin:2px 4px;transition:background-color .15s ease,box-shadow .15s ease}.ds-sidebar-item[data-v-86cb65f6]:hover{background-color:color-mix(in srgb,var(--primary) 6%,transparent)}.ds-sidebar-item--active[data-v-86cb65f6]{background-color:color-mix(in srgb,var(--primary) 10%,transparent);box-shadow:inset 2px 0 0 var(--primary)}.ds-sidebar-item--active .sidebar-item-name[data-v-86cb65f6]{font-weight:600}.ds-sidebar-item-name[data-v-86cb65f6]{flex:1;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}.sidebar-item-info[data-v-86cb65f6]{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.sidebar-item-type[data-v-86cb65f6]{display:flex;align-items:center;gap:6px}.sidebar-var-count[data-v-86cb65f6]{font-size:10px;color:var(--text-secondary);background:color-mix(in srgb,var(--text-secondary) 8%,transparent);padding:0 4px;border-radius:2px}.sidebar-data-preview[data-v-86cb65f6]{font-size:10px;color:var(--text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:120px}.ds-summary-table-wrapper[data-v-86cb65f6]{width:100%;overflow:visible}.summary-title[data-v-86cb65f6]{font-size:13px;font-weight:600;color:var(--text);margin:0 0 10px;padding-bottom:8px;border-bottom:1px solid var(--border);letter-spacing:.3px;position:sticky;top:0;background:var(--surface);z-index:2}.ds-summary-table[data-v-86cb65f6]{width:100%;border-collapse:separate;border-spacing:0;font-size:12px;table-layout:fixed}.ds-summary-table thead[data-v-86cb65f6]{position:sticky;top:0;z-index:3}.ds-summary-table th[data-v-86cb65f6]{padding:9px 10px;background-color:color-mix(in srgb,var(--text-secondary) 8%,var(--surface));color:var(--text-secondary);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;border-bottom:1px solid var(--border)}.ds-summary-table th[data-v-86cb65f6]:first-child{border-radius:6px 0 0}.ds-summary-table th[data-v-86cb65f6]:last-child{border-radius:0 6px 0 0}.ds-summary-table td[data-v-86cb65f6]{padding:8px 10px;border-bottom:1px solid var(--border);color:var(--text);vertical-align:middle;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ds-summary-table tbody tr[data-v-86cb65f6]{transition:background-color .12s ease}.ds-summary-table tbody tr[data-v-86cb65f6]:hover{background-color:color-mix(in srgb,var(--primary) 4%,transparent)}.ds-summary-table tbody tr:last-child td[data-v-86cb65f6]:first-child{border-radius:0 0 0 6px}.ds-summary-table tbody tr:last-child td[data-v-86cb65f6]:last-child{border-radius:0 0 6px}.ds-summary-table tbody tr:last-child td[data-v-86cb65f6]{border-bottom:none}.ds-summary-table .cell-name[data-v-86cb65f6]{font-weight:500;color:var(--text)}.ds-summary-table .cell-bound[data-v-86cb65f6]{max-width:120px}.ds-summary-table .cell-time[data-v-86cb65f6]{color:var(--text-secondary);font-variant-numeric:tabular-nums;font-size:11.5px}.ds-summary-table .cell-data[data-v-86cb65f6]{max-width:160px;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:11.5px}.ds-bound-tag[data-v-86cb65f6]{display:inline-block;padding:1px 6px;margin:1px 2px;background:#2080f014;color:var(--primary, #2080f0);border-radius:3px;font-size:10px;border:1px solid rgba(32,128,240,.2)}.ds-empty[data-v-86cb65f6]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 16px;color:var(--text-tertiary);font-size:13px;gap:8px}.ds-empty[data-v-86cb65f6]:before{content:"📦";font-size:28px;opacity:.4}.ds-placeholder[data-v-86cb65f6]{display:flex;align-items:center;justify-content:center;height:100%;min-height:200px;color:var(--text-tertiary);font-size:13px}.placeholder-text[data-v-86cb65f6]{text-align:center;padding:32px 16px;color:var(--text-tertiary);font-size:13px;line-height:1.6}.text-muted[data-v-86cb65f6]{color:var(--text-tertiary);font-style:italic}.modal-overlay[data-v-86cb65f6]{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-header[data-v-86cb65f6]{background:linear-gradient(135deg,var(--ds-modal-header-bg) 0%,color-mix(in srgb,var(--primary) 3%,var(--ds-modal-header-bg)) 100%)}.modal-header h3[data-v-86cb65f6]{font-size:15px;font-weight:700;letter-spacing:.3px;background:linear-gradient(90deg,var(--text) 0%,var(--text-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.modal-sidebar[data-v-86cb65f6]{background-color:var(--ds-sidebar-bg)}.data-panel-scroll[data-v-86cb65f6]::-webkit-scrollbar,.modal-body[data-v-86cb65f6]::-webkit-scrollbar,.modal-sidebar[data-v-86cb65f6]::-webkit-scrollbar{width:5px}.data-panel-scroll[data-v-86cb65f6]::-webkit-scrollbar-track,.modal-body[data-v-86cb65f6]::-webkit-scrollbar-track,.modal-sidebar[data-v-86cb65f6]::-webkit-scrollbar-track{background:transparent}.data-panel-scroll[data-v-86cb65f6]::-webkit-scrollbar-thumb,.modal-body[data-v-86cb65f6]::-webkit-scrollbar-thumb,.modal-sidebar[data-v-86cb65f6]::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.data-panel-scroll[data-v-86cb65f6]::-webkit-scrollbar-thumb:hover,.modal-body[data-v-86cb65f6]::-webkit-scrollbar-thumb:hover,.modal-sidebar[data-v-86cb65f6]::-webkit-scrollbar-thumb:hover{background:var(--text-secondary, #999)}.driver-script-editor[data-v-86cb65f6]{display:flex;flex-direction:column;gap:10px}.editor-header[data-v-86cb65f6]{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:6px}.hint-text[data-v-86cb65f6]{font-size:11.5px;color:var(--text-tertiary);line-height:1.5}.hint-text code[data-v-86cb65f6]{background:color-mix(in srgb,var(--primary) 8%,transparent);color:var(--primary);padding:1px 5px;border-radius:3px;font-size:10.5px;font-weight:600;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace}.btn-row[data-v-86cb65f6]{display:flex;gap:4px;flex-wrap:wrap}.dropdown[data-v-86cb65f6]{position:relative;display:inline-block}.dropdown-menu[data-v-86cb65f6]{display:none;position:absolute;z-index:100;top:calc(100% + 4px);left:0;background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:4px 0;min-width:160px;box-shadow:0 4px 12px -2px #0000001f,0 2px 6px -1px #0000000f}.dropdown.open .dropdown-menu[data-v-86cb65f6]{display:block;animation:dropdown-fade-in-86cb65f6 .12s ease-out}@keyframes dropdown-fade-in-86cb65f6{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.dropdown-item[data-v-86cb65f6]{padding:7px 14px;font-size:12px;cursor:pointer;transition:background-color .1s ease;color:var(--text)}.dropdown-item[data-v-86cb65f6]:hover{background:color-mix(in srgb,var(--primary) 6%,transparent);color:var(--primary)}.code-block[data-v-86cb65f6]{border:1px solid var(--border);border-radius:8px;overflow:hidden;font-family:Cascadia Code,Fira Code,Consolas,Courier New,monospace;font-size:12.5px;line-height:1.55;background:var(--surface);box-shadow:0 1px 3px #0000000a}.code-body[data-v-86cb65f6]{width:100%;padding:8px 10px;border:none;border-radius:0;outline:none;font-family:inherit;font-size:inherit;line-height:inherit;resize:vertical;min-height:80px;background:var(--surface);color:var(--text);-moz-tab-size:2;tab-size:2}.code-body[data-v-86cb65f6]:focus{background:color-mix(in srgb,var(--primary) 2%,var(--surface));box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--primary) 8%,transparent)}.code-body[data-v-86cb65f6]::placeholder{color:var(--text-tertiary);opacity:.6}.execution-status-bar[data-v-86cb65f6]{display:flex;align-items:center;gap:6px;padding:6px 10px;font-size:11.5px;background:linear-gradient(90deg,color-mix(in srgb,var(--background) 80%,transparent),color-mix(in srgb,var(--background) 50%,transparent));border-radius:6px;border:1px solid var(--border);line-height:1.5}.execution-time[data-v-86cb65f6],.execution-idle[data-v-86cb65f6]{color:var(--text-tertiary);font-variant-numeric:tabular-nums}.status-ok[data-v-86cb65f6]{color:#10b981;font-weight:600}.status-fail[data-v-86cb65f6]{color:#ef4444;font-weight:600}.status-error-msg[data-v-86cb65f6]{color:#ef4444;margin-left:6px;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.api-reference-collapse[data-v-86cb65f6]{margin-top:2px;border:1px solid var(--border);border-radius:8px;overflow:hidden;max-height:320px;overflow-y:auto}.fetch-panel[data-v-7a196fd2]{display:flex;flex-direction:column;gap:10px}.fetch-toolbar[data-v-7a196fd2]{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.fetch-time[data-v-7a196fd2]{font-size:11.5px;color:var(--text-tertiary);font-variant-numeric:tabular-nums}.fetch-error[data-v-7a196fd2]{color:var(--status-error);font-size:11.5px;padding:7px 10px;background-color:color-mix(in srgb,#ef4444 6%,transparent);border-radius:6px;border:1px solid color-mix(in srgb,#ef4444 15%,transparent);font-weight:500}.fetch-results[data-v-7a196fd2]{display:flex;flex-direction:column;gap:8px}.results-title[data-v-7a196fd2]{font-size:12px;font-weight:600;color:var(--text-secondary);display:flex;align-items:center;gap:6px}.results-source[data-v-7a196fd2]{font-size:11px;color:var(--text-tertiary);font-weight:400}.results-list[data-v-7a196fd2]{display:flex;flex-direction:column;gap:0;border:1px solid var(--border);border-radius:8px;padding:4px 8px;background:linear-gradient(180deg,color-mix(in srgb,var(--background) 50%,transparent),transparent);overflow:hidden}.result-item[data-v-7a196fd2]{display:flex;align-items:center;gap:8px;font-size:12px;padding:7px 6px;border-bottom:1px solid color-mix(in srgb,var(--border) 40%,transparent);transition:background-color .1s ease}.result-item[data-v-7a196fd2]:hover{background-color:color-mix(in srgb,var(--primary) 3%,transparent)}.result-item[data-v-7a196fd2]:last-child{border-bottom:none}.result-tag-id[data-v-7a196fd2]{font-weight:600;color:var(--text);font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:11.5px;min-width:80px}.result-arrow[data-v-7a196fd2]{color:var(--text-tertiary);font-size:9px}.result-value[data-v-7a196fd2]{color:var(--primary, #2080f0);font-weight:600;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:11.5px}.quality-dot[data-v-7a196fd2]{width:7px;height:7px;border-radius:50%;flex-shrink:0;box-shadow:0 0 0 2px #ffffff4d}.result-quality[data-v-7a196fd2]{color:var(--text-secondary);font-size:10.5px;text-transform:uppercase;letter-spacing:.5px}.result-time[data-v-7a196fd2]{color:var(--text-tertiary);font-size:10.5px;margin-left:auto;font-variant-numeric:tabular-nums}.raw-data-section[data-v-7a196fd2]{margin-top:8px;padding-top:8px;border-top:1px dashed var(--border)}.raw-data-toggle[data-v-7a196fd2]{display:flex;align-items:center;gap:6px;cursor:pointer;font-size:11.5px;color:var(--text-secondary);-webkit-user-select:none;user-select:none;transition:color .12s ease}.raw-data-toggle[data-v-7a196fd2]:hover{color:var(--primary)}.toggle-icon[data-v-7a196fd2]{font-size:10px;transition:transform .15s ease}.toggle-label[data-v-7a196fd2]{font-size:11.5px}.raw-data-content[data-v-7a196fd2]{margin-top:6px;padding:10px 12px;background:linear-gradient(135deg,color-mix(in srgb,var(--surface) 60%,var(--background)),var(--surface));border:1px solid var(--border);border-radius:6px;font-size:11.5px;font-family:Cascadia Code,Fira Code,Consolas,Courier New,monospace;line-height:1.55;max-height:200px;overflow:auto;white-space:pre;color:var(--text)}.raw-data-content[data-v-7a196fd2]::-webkit-scrollbar{width:4px;height:4px}.raw-data-content[data-v-7a196fd2]::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.fetch-loading[data-v-7a196fd2]{display:flex;justify-content:center;padding:20px 0}.fetch-empty[data-v-7a196fd2]{padding:16px 0;text-align:center}.btn-group[data-v-7a196fd2]{display:flex;gap:4px}.btn-primary[data-v-7a196fd2]{background:linear-gradient(135deg,#2080f0,#4098fc);color:#fff;border:none;padding:5px 14px;border-radius:6px;cursor:pointer;font-size:11.5px;font-weight:500;display:inline-flex;align-items:center;gap:4px;transition:all .15s ease}.btn-primary[data-v-7a196fd2]:hover:not(:disabled){filter:brightness(1.08);box-shadow:0 2px 6px #2080f040}.btn-primary[data-v-7a196fd2]:disabled{opacity:.5;cursor:not-allowed}.btn-spinner[data-v-7a196fd2]{width:12px;height:12px;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;border-radius:50%;animation:spin-7a196fd2 .6s linear infinite}.spinner[data-v-7a196fd2]{width:16px;height:16px;border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin-7a196fd2 .6s linear infinite}.text-secondary[data-v-7a196fd2]{color:var(--text-secondary)}@keyframes spin-7a196fd2{to{transform:rotate(360deg)}}[data-v-21827044]:root{--ds-type-static: #64748b;--ds-type-tag: #2080f0;--ds-type-api: #18a058;--ds-type-sql: #f59e0b;--ds-type-opc: #8b5cf6;--ds-type-mqtt: #ec4899;--ds-type-modbus: #06b6d4;--ds-status-connected: #10b981;--ds-status-disconnected: #94a3b8;--ds-status-connecting: #f59e0b;--ds-status-error: #ef4444;--ds-quality-good: #10b981;--ds-quality-uncertain: #f59e0b;--ds-quality-bad: #ef4444;--ds-quality-stale: #94a3b8;--ds-quality-disconnected: #d1d5db;--ds-spacing-xs: 4px;--ds-spacing-sm: 8px;--ds-spacing-md: 12px;--ds-spacing-lg: 16px;--ds-modal-header-bg: var(--surface);--ds-sidebar-bg: var(--background, rgba(0, 0, 0, .02))}.ds-btn[data-v-21827044]{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--text);cursor:pointer;font-size:13px;padding:4px 12px;line-height:1.5;transition:background-color var(--transition-fast),border-color var(--transition-fast)}.ds-btn[data-v-21827044]:hover{border-color:var(--primary)}.ds-btn[data-v-21827044]:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.ds-btn--primary[data-v-21827044]{background:var(--primary);border-color:var(--primary);color:#fff}.ds-btn--primary[data-v-21827044]:hover{background:var(--button-hover);border-color:var(--button-hover)}.ds-btn--sm[data-v-21827044]{font-size:13px;padding:3px 10px}.ds-btn--xs[data-v-21827044]{font-size:12px;padding:2px 8px}.ds-btn--icon[data-v-21827044]{width:28px;height:24px;padding:0;font-size:14px}.ds-btn--danger[data-v-21827044]{color:var(--color-error, #ef4444);border-color:transparent;background:transparent}.ds-btn--danger[data-v-21827044]:hover{background:#ef444414}.ds-form-label[data-v-21827044]{display:block;margin-bottom:4px;font-size:13px;font-weight:500;color:var(--text)}.ds-form-required[data-v-21827044]{color:var(--color-error, #ef4444);margin-left:2px}.ds-input[data-v-21827044],.ds-select[data-v-21827044]{width:100%;padding:6px 10px;font-size:13px;border:1px solid var(--border);border-radius:var(--radius-sm, 4px);background:var(--surface);color:var(--text);outline:none;box-sizing:border-box;transition:border-color var(--transition-fast, .15s ease)}.ds-input[data-v-21827044]:focus,.ds-select[data-v-21827044]:focus{border-color:var(--primary, #2080f0)}.ds-select[data-v-21827044]{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.ds-divider[data-v-21827044]{border:none;border-top:1px solid var(--border);margin:16px 0}.ds-row[data-v-21827044]{display:flex;gap:12px;margin-bottom:16px}.ds-item[data-v-21827044]{flex:1;min-width:0;margin-bottom:0}.ds-tag[data-v-21827044]{display:inline-block;padding:1px 8px;font-size:11px;border-radius:3px;line-height:1.6;white-space:nowrap}.ds-tag--success[data-v-21827044]{background:#10b9811f;color:var(--ds-status-connected)}.ds-tag--default[data-v-21827044]{background:#94a3b826;color:var(--text-secondary, #999)}.ds-tag--type-static[data-v-21827044]{background:#64748b1f;color:var(--ds-type-static)}.ds-tag--type-tag[data-v-21827044]{background:#2080f01f;color:var(--ds-type-tag)}.ds-tag--type-api[data-v-21827044]{background:#18a0581f;color:var(--ds-type-api)}.ds-tag--type-sql[data-v-21827044]{background:#f59e0b1f;color:var(--ds-type-sql)}.ds-status-dot[data-v-21827044]{display:inline-block;width:7px;height:7px;border-radius:50%;flex-shrink:0}.ds-status-dot--connected[data-v-21827044]{background-color:var(--ds-status-connected)}.ds-status-dot--disconnected[data-v-21827044]{background-color:var(--ds-status-disconnected)}.ds-status-dot--connecting[data-v-21827044]{background-color:var(--ds-status-connecting);animation:ds-pulse-21827044 1.5s ease-in-out infinite}.ds-status-dot--error[data-v-21827044]{background-color:var(--ds-status-error)}@keyframes ds-pulse-21827044{0%,to{opacity:1}50%{opacity:.4}}.ds-status-tag[data-v-21827044]{display:inline-block;padding:1px 6px;border-radius:3px;font-size:11px;line-height:1.5;color:#fff}.ds-status-tag--connected[data-v-21827044]{background:var(--ds-status-connected)}.ds-status-tag--disconnected[data-v-21827044]{background:var(--ds-status-disconnected)}.ds-status-tag--connecting[data-v-21827044]{background:var(--ds-status-connecting)}.ds-status-tag--error[data-v-21827044]{background:var(--ds-status-error)}.ds-sidebar-header[data-v-21827044]{display:flex;align-items:center;justify-content:space-between;padding:10px 12px 8px;border-bottom:1px solid var(--border)}.sidebar-title[data-v-21827044]{font-size:13px;font-weight:600;color:var(--text);letter-spacing:.3px}.sidebar-header-actions[data-v-21827044]{display:flex;align-items:center;gap:4px}.ds-sidebar-list[data-v-21827044]{flex:1;overflow-y:auto;padding:4px 0}.ds-sidebar-item[data-v-21827044]{display:flex;align-items:center;gap:8px;padding:10px 12px;cursor:pointer;border-bottom:1px solid transparent;border-radius:6px;margin:2px 4px;transition:background-color .15s ease,box-shadow .15s ease}.ds-sidebar-item[data-v-21827044]:hover{background-color:color-mix(in srgb,var(--primary) 6%,transparent)}.ds-sidebar-item--active[data-v-21827044]{background-color:color-mix(in srgb,var(--primary) 10%,transparent);box-shadow:inset 2px 0 0 var(--primary)}.ds-sidebar-item--active .sidebar-item-name[data-v-21827044]{font-weight:600}.ds-sidebar-item-name[data-v-21827044]{flex:1;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}.sidebar-item-info[data-v-21827044]{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.sidebar-item-type[data-v-21827044]{display:flex;align-items:center;gap:6px}.sidebar-var-count[data-v-21827044]{font-size:10px;color:var(--text-secondary);background:color-mix(in srgb,var(--text-secondary) 8%,transparent);padding:0 4px;border-radius:2px}.sidebar-data-preview[data-v-21827044]{font-size:10px;color:var(--text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:120px}.ds-summary-table-wrapper[data-v-21827044]{width:100%;overflow:visible}.summary-title[data-v-21827044]{font-size:13px;font-weight:600;color:var(--text);margin:0 0 10px;padding-bottom:8px;border-bottom:1px solid var(--border);letter-spacing:.3px;position:sticky;top:0;background:var(--surface);z-index:2}.ds-summary-table[data-v-21827044]{width:100%;border-collapse:separate;border-spacing:0;font-size:12px;table-layout:fixed}.ds-summary-table thead[data-v-21827044]{position:sticky;top:0;z-index:3}.ds-summary-table th[data-v-21827044]{padding:9px 10px;background-color:color-mix(in srgb,var(--text-secondary) 8%,var(--surface));color:var(--text-secondary);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;border-bottom:1px solid var(--border)}.ds-summary-table th[data-v-21827044]:first-child{border-radius:6px 0 0}.ds-summary-table th[data-v-21827044]:last-child{border-radius:0 6px 0 0}.ds-summary-table td[data-v-21827044]{padding:8px 10px;border-bottom:1px solid var(--border);color:var(--text);vertical-align:middle;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ds-summary-table tbody tr[data-v-21827044]{transition:background-color .12s ease}.ds-summary-table tbody tr[data-v-21827044]:hover{background-color:color-mix(in srgb,var(--primary) 4%,transparent)}.ds-summary-table tbody tr:last-child td[data-v-21827044]:first-child{border-radius:0 0 0 6px}.ds-summary-table tbody tr:last-child td[data-v-21827044]:last-child{border-radius:0 0 6px}.ds-summary-table tbody tr:last-child td[data-v-21827044]{border-bottom:none}.ds-summary-table .cell-name[data-v-21827044]{font-weight:500;color:var(--text)}.ds-summary-table .cell-bound[data-v-21827044]{max-width:120px}.ds-summary-table .cell-time[data-v-21827044]{color:var(--text-secondary);font-variant-numeric:tabular-nums;font-size:11.5px}.ds-summary-table .cell-data[data-v-21827044]{max-width:160px;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:11.5px}.ds-bound-tag[data-v-21827044]{display:inline-block;padding:1px 6px;margin:1px 2px;background:#2080f014;color:var(--primary, #2080f0);border-radius:3px;font-size:10px;border:1px solid rgba(32,128,240,.2)}.ds-empty[data-v-21827044]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 16px;color:var(--text-tertiary);font-size:13px;gap:8px}.ds-empty[data-v-21827044]:before{content:"📦";font-size:28px;opacity:.4}.ds-placeholder[data-v-21827044]{display:flex;align-items:center;justify-content:center;height:100%;min-height:200px;color:var(--text-tertiary);font-size:13px}.placeholder-text[data-v-21827044]{text-align:center;padding:32px 16px;color:var(--text-tertiary);font-size:13px;line-height:1.6}.text-muted[data-v-21827044]{color:var(--text-tertiary);font-style:italic}.modal-overlay[data-v-21827044]{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-header[data-v-21827044]{background:linear-gradient(135deg,var(--ds-modal-header-bg) 0%,color-mix(in srgb,var(--primary) 3%,var(--ds-modal-header-bg)) 100%)}.modal-header h3[data-v-21827044]{font-size:15px;font-weight:700;letter-spacing:.3px;background:linear-gradient(90deg,var(--text) 0%,var(--text-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.modal-sidebar[data-v-21827044]{background-color:var(--ds-sidebar-bg)}.data-panel-scroll[data-v-21827044]::-webkit-scrollbar,.modal-body[data-v-21827044]::-webkit-scrollbar,.modal-sidebar[data-v-21827044]::-webkit-scrollbar{width:5px}.data-panel-scroll[data-v-21827044]::-webkit-scrollbar-track,.modal-body[data-v-21827044]::-webkit-scrollbar-track,.modal-sidebar[data-v-21827044]::-webkit-scrollbar-track{background:transparent}.data-panel-scroll[data-v-21827044]::-webkit-scrollbar-thumb,.modal-body[data-v-21827044]::-webkit-scrollbar-thumb,.modal-sidebar[data-v-21827044]::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.data-panel-scroll[data-v-21827044]::-webkit-scrollbar-thumb:hover,.modal-body[data-v-21827044]::-webkit-scrollbar-thumb:hover,.modal-sidebar[data-v-21827044]::-webkit-scrollbar-thumb:hover{background:var(--text-secondary, #999)}.modal-overlay[data-v-21827044]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:10001}.modal[data-v-21827044]{background:var(--surface);border-radius:var(--radius-md, 8px);padding:16px;min-width:500px;max-width:680px;max-height:80vh;overflow-y:auto;box-shadow:0 4px 20px #00000026}.modal-header[data-v-21827044]{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.modal-close[data-v-21827044]{background:none;border:none;font-size:18px;cursor:pointer;color:var(--text-secondary)}.modal-title[data-v-21827044]{font-size:16px;font-weight:600;color:var(--text)}.modal-header-actions[data-v-21827044]{display:flex;align-items:center;gap:8px}.btn-confirm[data-v-21827044]{padding:4px 12px;border:1px solid var(--status-success);border-radius:var(--radius-sm, 4px);background:var(--status-success);color:#fff;font-size:13px;cursor:pointer;transition:opacity .15s}.btn-confirm[data-v-21827044]:disabled{opacity:.4;cursor:not-allowed}.btn-confirm[data-v-21827044]:not(:disabled):hover{opacity:.85}.btn-new-ds[data-v-21827044]{padding:4px 12px;border:1px solid var(--primary, #2080f0);border-radius:var(--radius-sm, 4px);background:transparent;color:var(--primary, #2080f0);font-size:13px;cursor:pointer}.btn-new-ds[data-v-21827044]:hover{background:#2080f014}.variable-selector-body[data-v-21827044]{min-height:200px}.empty-state[data-v-21827044]{display:flex;align-items:center;justify-content:center;padding:40px 0}.text-tertiary[data-v-21827044]{color:var(--text-tertiary)}.property-group[data-v-21827044]{border:1px solid var(--border);border-radius:var(--radius-sm, 4px);overflow:hidden}.property-group+.property-group[data-v-21827044]{margin-top:8px}.property-group--selected[data-v-21827044]{border-color:var(--primary, #2080f0);background:#2080f008}.property-group-header[data-v-21827044]{display:flex;align-items:center;gap:6px;padding:8px 12px;background:color-mix(in srgb,var(--surface) 95%,#000);cursor:pointer;-webkit-user-select:none;user-select:none;font-size:14px;font-weight:500;color:var(--text)}.property-group-header[data-v-21827044]:hover{background:color-mix(in srgb,var(--surface) 90%,#000)}.ds-radio[data-v-21827044]{display:flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0}.radio-circle[data-v-21827044]{width:16px;height:16px;border:2px solid var(--border);border-radius:50%;display:inline-block}.radio-checked[data-v-21827044]{border-color:var(--primary, #2080f0);background:var(--primary, #2080f0);box-shadow:inset 0 0 0 3px var(--surface)}.ds-icons[data-v-21827044]{flex-shrink:0;font-size:16px}.ds-name[data-v-21827044]{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ds-tag[data-v-21827044]{font-size:11px;padding:1px 6px;border-radius:var(--radius-xs, 3px);color:#fff;flex-shrink:0}.tag-static[data-v-21827044]{background:var(--ds-type-static, #909399)}.tag-tag[data-v-21827044]{background:var(--ds-type-tag, #2080f0)}.tag-api[data-v-21827044]{background:var(--ds-type-api, #18a058)}.tag-sql[data-v-21827044]{background:var(--ds-type-sql, #f0a020)}.group-arrow[data-v-21827044]{font-size:10px;color:var(--text-secondary);flex-shrink:0;margin-left:auto}.property-group-body[data-v-21827044]{padding:8px 12px 12px 38px;border-top:1px solid var(--border)}.ds-meta-section[data-v-21827044]{margin-bottom:8px;padding:6px 8px;background:var(--background);border-radius:var(--radius-sm, 4px);font-size:12px}.ds-meta-row[data-v-21827044]{display:flex;align-items:center;gap:6px;line-height:1.8}.meta-label[data-v-21827044]{color:var(--text-secondary);min-width:60px;flex-shrink:0}.meta-value[data-v-21827044]{color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:monospace;font-size:11px}.status-dot-sm[data-v-21827044]{display:inline-block;width:7px;height:7px;border-radius:50%;flex-shrink:0}.status-connected[data-v-21827044]{background-color:var(--ds-status-connected, #18a058)}.status-disconnected[data-v-21827044]{background-color:var(--ds-status-disconnected, #909399)}.status-connecting[data-v-21827044]{background-color:var(--ds-status-connecting, #f0a020)}.status-error[data-v-21827044]{background-color:var(--ds-status-error, #d03050)}.ds-variables-header[data-v-21827044]{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.variables-title[data-v-21827044]{font-size:12px;font-weight:600;color:var(--text-secondary)}.result-hint[data-v-21827044]{font-size:11px;color:var(--primary, #2080f0);background:#2080f014;padding:1px 6px;border-radius:var(--radius-xs, 3px)}.variable-list[data-v-21827044]{max-height:180px;overflow-y:auto}.no-vars[data-v-21827044]{font-size:12px;color:var(--text-tertiary);padding:8px 0;text-align:center}.no-vars-hint[data-v-21827044]{font-size:12px;color:var(--text-tertiary);padding:4px 0}.no-vars-static[data-v-21827044]{text-align:left}.no-vars-static-hint[data-v-21827044]{font-size:11px;color:var(--text-secondary);margin-bottom:4px;font-weight:500}.no-vars-json[data-v-21827044]{font-size:11px;font-family:Consolas,Courier New,monospace;line-height:1.4;background:color-mix(in srgb,var(--surface) 50%,var(--background));border:1px solid var(--border);border-radius:4px;padding:6px 8px;max-height:120px;overflow:auto;white-space:pre;color:var(--text)}.variable-item[data-v-21827044]{display:flex;justify-content:space-between;align-items:center;padding:4px 8px;border-bottom:1px solid var(--border);font-size:13px}.variable-item[data-v-21827044]:last-child{border-bottom:none}.variable-info[data-v-21827044]{display:flex;align-items:center;gap:6px;flex:1;min-width:0}.variable-name[data-v-21827044]{font-weight:500;color:var(--text);white-space:nowrap}.variable-id[data-v-21827044]{font-size:11px;color:var(--text-secondary);font-family:monospace;white-space:nowrap}.tag[data-v-21827044]{font-size:11px;padding:1px 6px;border-radius:var(--radius-xs, 3px);white-space:nowrap}.tag-default[data-v-21827044]{background:var(--surface);color:var(--text-secondary)}.tag-info[data-v-21827044]{background:#2080f01a;color:var(--primary, #2080f0)}.variable-value[data-v-21827044]{display:flex;align-items:center;gap:4px;flex-shrink:0}.current-value[data-v-21827044]{font-family:monospace;font-size:13px;color:var(--text)}.quality-dot[data-v-21827044]{width:6px;height:6px;border-radius:50%;flex-shrink:0}.update-time[data-v-21827044]{font-size:11px;color:var(--text-tertiary)}.property-panel[data-v-5f2b5aef]{height:100%;overflow-y:auto;background-color:var(--surface);display:flex;flex-direction:column;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 12px;--spacing-lg: 20px}.property-section[data-v-5f2b5aef]{flex:1;display:flex;flex-direction:column}.property-section h3[data-v-5f2b5aef]{margin:0;font-size:13px;font-weight:600;color:var(--text);text-transform:uppercase;letter-spacing:.5px;padding:12px;border-bottom:1px solid var(--border);background-color:var(--background)}.property-tabs[data-v-5f2b5aef]{display:flex;background-color:var(--background);border-bottom:1px solid var(--border);margin:0;padding:0}.tab-button[data-v-5f2b5aef]{flex:1;padding:10px 12px;background-color:transparent;border:none;color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease;position:relative}.tab-button[data-v-5f2b5aef]:hover{background-color:var(--control-button-hover);color:var(--text)}.tab-button.active[data-v-5f2b5aef]{color:var(--primary);font-weight:600}.tab-button.active[data-v-5f2b5aef]:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background-color:var(--primary)}.tab-content[data-v-5f2b5aef]{flex:1;padding:12px;overflow-y:auto;background-color:var(--surface)}.property-group[data-v-5f2b5aef]{margin-bottom:0;padding:10px;background-color:var(--background);border:1px solid var(--border);border-radius:6px;transition:all .2s ease;width:100%;box-sizing:border-box}.property-group[data-v-5f2b5aef]:last-child{margin-bottom:0}.property-group[data-v-5f2b5aef]:hover{border-color:var(--primary);box-shadow:0 2px 4px #3498db1a}.property-group label[data-v-5f2b5aef]{display:block;font-size:11px;font-weight:600;color:var(--text);margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.property-item[data-v-5f2b5aef]{display:flex;align-items:center;margin-bottom:6px;gap:8px;width:100%;box-sizing:border-box}.property-item[data-v-5f2b5aef]:last-child{margin-bottom:0}.property-item>span[data-v-5f2b5aef]{min-width:70px;width:auto;flex-shrink:0;font-size:11px;font-weight:500;color:var(--text-secondary)}.property-item input[type=text][data-v-5f2b5aef],.property-item input[type=number][data-v-5f2b5aef],.property-item select[data-v-5f2b5aef],.form-input[data-v-5f2b5aef]{flex:1;padding:5px 8px;border:1px solid var(--border);border-radius:4px;background-color:var(--surface);color:var(--text);font-size:13px;transition:all .2s ease;min-width:0}.property-item select[data-v-5f2b5aef],.config-item select[data-v-5f2b5aef]{height:30px!important;min-height:30px!important;line-height:1.4!important;min-width:80px;padding-right:24px;cursor:pointer}.property-panel select[data-v-5f2b5aef],.style-panel-content select[data-v-5f2b5aef],.generic-config select[data-v-5f2b5aef]{height:30px!important;min-height:30px!important;line-height:1.4}.property-item input[type=text][data-v-5f2b5aef]:focus,.property-item input[type=number][data-v-5f2b5aef]:focus,.property-item select[data-v-5f2b5aef]:focus,.form-input[data-v-5f2b5aef]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #3498db33}.property-item input[type=checkbox][data-v-5f2b5aef]{width:14px;height:14px;accent-color:var(--primary);cursor:pointer}.property-item input[type=color][data-v-5f2b5aef]{width:40px;height:24px;border:none;border-radius:4px;cursor:pointer;padding:2px;background-color:var(--surface)}.position-size-container[data-v-5f2b5aef]{background-color:var(--surface);border:1px solid var(--border);border-radius:4px;padding:8px;margin-bottom:8px;width:100%;box-sizing:border-box}.position-size-row[data-v-5f2b5aef]{display:flex;align-items:center;margin-bottom:6px;gap:6px;width:100%}.position-size-item[data-v-5f2b5aef]{flex:1;display:flex;align-items:center;gap:var(--spacing-sm)}.position-size-row[data-v-5f2b5aef]:last-child{margin-bottom:0}.position-size-input[data-v-5f2b5aef]{flex:1;padding:4px 8px;border:1px solid var(--border);border-radius:4px;background-color:var(--surface);color:var(--text);font-size:11px;text-align:center;transition:all .2s ease}.position-size-input[data-v-5f2b5aef]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #3498db33}.position-size-control[data-v-5f2b5aef]{display:flex;align-items:center;flex:1;gap:6px}.position-size-buttons[data-v-5f2b5aef]{display:flex;flex-direction:column;gap:2px}.position-size-btn[data-v-5f2b5aef]{width:20px;height:14px;padding:0;border:1px solid var(--border);border-radius:2px;background-color:var(--surface);color:var(--text);font-size:10px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.position-size-btn[data-v-5f2b5aef]:hover{background-color:var(--control-button-hover);border-color:var(--primary);color:var(--text)}.position-size-btn[data-v-5f2b5aef]:active{background-color:var(--primary);color:#fff}.position-size-label[data-v-5f2b5aef]{width:20px;font-size:11px;font-weight:600;color:var(--text);text-align:center;flex-shrink:0}.btn[data-v-5f2b5aef]{padding:4px 8px;border:1px solid var(--border);border-radius:4px;font-size:11px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn--sm[data-v-5f2b5aef]{padding:2px 4px;font-size:10px}.btn--primary[data-v-5f2b5aef]{background-color:var(--primary);color:#fff;border-color:var(--primary)}.btn--primary[data-v-5f2b5aef]:hover{background-color:var(--button-hover);border-color:var(--button-hover)}.btn--danger[data-v-5f2b5aef]{background-color:var(--status-error);color:#fff;border-color:var(--status-error)}.btn--danger[data-v-5f2b5aef]:hover{background-color:#c0392b;border-color:#c0392b}.btn--text[data-v-5f2b5aef]{background-color:transparent;color:var(--text-secondary);border-color:transparent}.btn--text[data-v-5f2b5aef]:hover{background-color:var(--control-button-hover);color:var(--text)}.property-panel[data-v-5f2b5aef]::-webkit-scrollbar,.tab-content[data-v-5f2b5aef]::-webkit-scrollbar{width:6px}.property-panel[data-v-5f2b5aef]::-webkit-scrollbar-track,.tab-content[data-v-5f2b5aef]::-webkit-scrollbar-track{background:var(--background);border-radius:3px}.property-panel[data-v-5f2b5aef]::-webkit-scrollbar-thumb,.tab-content[data-v-5f2b5aef]::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.property-panel[data-v-5f2b5aef]::-webkit-scrollbar-thumb:hover,.tab-content[data-v-5f2b5aef]::-webkit-scrollbar-thumb:hover{background:var(--border-light)}.style-panel-content[data-v-5f2b5aef]{flex:1;padding:12px;overflow-y:auto;background-color:var(--surface)}.small-size-item[data-v-5f2b5aef]{flex:1;display:flex;align-items:center;gap:var(--spacing-sm)}.small-size-item span[data-v-5f2b5aef]{width:40px;font-size:12px;font-weight:500;color:var(--text-secondary);flex-shrink:0}[data-v-5f2b5aef]:root{--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .1);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .15), 0 1px 3px rgba(0, 0, 0, .1);--shadow-md: 0 4px 16px rgba(0, 0, 0, .2), 0 2px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .25), 0 4px 12px rgba(0, 0, 0, .15);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .3), 0 8px 24px rgba(0, 0, 0, .2);--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .35s ease;--color-success: #10b981;--color-warning: #f59e0b;--color-error: #ef4444;--color-info: #3b82f6}[data-v-5f2b5aef]{box-sizing:border-box}button[data-v-5f2b5aef],[role=button][data-v-5f2b5aef],.btn[data-v-5f2b5aef]{cursor:pointer;transition:all var(--transition-normal)}button[data-v-5f2b5aef]:focus-visible,[role=button][data-v-5f2b5aef]:focus-visible,.btn[data-v-5f2b5aef]:focus-visible{outline:2px solid var(--primary);outline-offset:2px}button[data-v-5f2b5aef]:disabled,[role=button][data-v-5f2b5aef]:disabled,.btn[data-v-5f2b5aef]:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}input[type=text][data-v-5f2b5aef],input[type=number][data-v-5f2b5aef],input[type=email][data-v-5f2b5aef],input[type=password][data-v-5f2b5aef],textarea[data-v-5f2b5aef],select[data-v-5f2b5aef]{transition:all var(--transition-normal)}input[type=text][data-v-5f2b5aef]::placeholder,input[type=number][data-v-5f2b5aef]::placeholder,input[type=email][data-v-5f2b5aef]::placeholder,input[type=password][data-v-5f2b5aef]::placeholder,textarea[data-v-5f2b5aef]::placeholder,select[data-v-5f2b5aef]::placeholder{color:var(--text-secondary);opacity:.7}input[type=text][data-v-5f2b5aef]:focus,input[type=number][data-v-5f2b5aef]:focus,input[type=email][data-v-5f2b5aef]:focus,input[type=password][data-v-5f2b5aef]:focus,textarea[data-v-5f2b5aef]:focus,select[data-v-5f2b5aef]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #3b82f626}input[type=text][data-v-5f2b5aef]:hover:not(:focus),input[type=number][data-v-5f2b5aef]:hover:not(:focus),input[type=email][data-v-5f2b5aef]:hover:not(:focus),input[type=password][data-v-5f2b5aef]:hover:not(:focus),textarea[data-v-5f2b5aef]:hover:not(:focus),select[data-v-5f2b5aef]:hover:not(:focus){border-color:#3b82f666}a[data-v-5f2b5aef]{color:var(--primary);text-decoration:none;transition:color var(--transition-fast)}a[data-v-5f2b5aef]:hover{color:var(--color-info);text-decoration:underline}[data-tooltip][data-v-5f2b5aef]{position:relative}[data-tooltip][data-v-5f2b5aef]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background-color:#000000e6;color:#fff;padding:6px 12px;border-radius:var(--radius-sm);font-size:12px;white-space:nowrap;opacity:0;visibility:hidden;transition:all var(--transition-normal);z-index:10000;pointer-events:none;box-shadow:var(--shadow-md)}[data-tooltip][data-v-5f2b5aef]:hover:after{opacity:1;visibility:visible}.loading-spinner[data-v-5f2b5aef]{display:inline-block;width:20px;height:20px;border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin-5f2b5aef .8s linear infinite}@keyframes spin-5f2b5aef{to{transform:rotate(360deg)}}.feedback-success[data-v-5f2b5aef]{background-color:#10b9811a;border-color:var(--color-success);color:var(--color-success)}.feedback-error[data-v-5f2b5aef]{background-color:#ef44441a;border-color:var(--color-error);color:var(--color-error)}.feedback-warning[data-v-5f2b5aef]{background-color:#f59e0b1a;border-color:var(--color-warning);color:var(--color-warning)}.kbd[data-v-5f2b5aef]{display:inline-block;padding:2px 6px;font-family:monospace;font-size:11px;background-color:var(--background);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:0 1px 2px #0000001a}[data-v-5f2b5aef]:root{--ds-type-static: #64748b;--ds-type-tag: #2080f0;--ds-type-api: #18a058;--ds-type-sql: #f59e0b;--ds-type-opc: #8b5cf6;--ds-type-mqtt: #ec4899;--ds-type-modbus: #06b6d4;--ds-status-connected: #10b981;--ds-status-disconnected: #94a3b8;--ds-status-connecting: #f59e0b;--ds-status-error: #ef4444;--ds-quality-good: #10b981;--ds-quality-uncertain: #f59e0b;--ds-quality-bad: #ef4444;--ds-quality-stale: #94a3b8;--ds-quality-disconnected: #d1d5db;--ds-spacing-xs: 4px;--ds-spacing-sm: 8px;--ds-spacing-md: 12px;--ds-spacing-lg: 16px;--ds-modal-header-bg: var(--surface);--ds-sidebar-bg: var(--background, rgba(0, 0, 0, .02))}.ds-btn[data-v-5f2b5aef]{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--text);cursor:pointer;font-size:13px;padding:4px 12px;line-height:1.5;transition:background-color var(--transition-fast),border-color var(--transition-fast)}.ds-btn[data-v-5f2b5aef]:hover{border-color:var(--primary)}.ds-btn[data-v-5f2b5aef]:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.ds-btn--primary[data-v-5f2b5aef]{background:var(--primary);border-color:var(--primary);color:#fff}.ds-btn--primary[data-v-5f2b5aef]:hover{background:var(--button-hover);border-color:var(--button-hover)}.ds-btn--sm[data-v-5f2b5aef]{font-size:13px;padding:3px 10px}.ds-btn--xs[data-v-5f2b5aef]{font-size:12px;padding:2px 8px}.ds-btn--icon[data-v-5f2b5aef]{width:28px;height:24px;padding:0;font-size:14px}.ds-btn--danger[data-v-5f2b5aef]{color:var(--color-error, #ef4444);border-color:transparent;background:transparent}.ds-btn--danger[data-v-5f2b5aef]:hover{background:#ef444414}.ds-form-label[data-v-5f2b5aef]{display:block;margin-bottom:4px;font-size:13px;font-weight:500;color:var(--text)}.ds-form-required[data-v-5f2b5aef]{color:var(--color-error, #ef4444);margin-left:2px}.ds-input[data-v-5f2b5aef],.ds-select[data-v-5f2b5aef]{width:100%;padding:6px 10px;font-size:13px;border:1px solid var(--border);border-radius:var(--radius-sm, 4px);background:var(--surface);color:var(--text);outline:none;box-sizing:border-box;transition:border-color var(--transition-fast, .15s ease)}.ds-input[data-v-5f2b5aef]:focus,.ds-select[data-v-5f2b5aef]:focus{border-color:var(--primary, #2080f0)}.ds-select[data-v-5f2b5aef]{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.ds-divider[data-v-5f2b5aef]{border:none;border-top:1px solid var(--border);margin:16px 0}.ds-row[data-v-5f2b5aef]{display:flex;gap:12px;margin-bottom:16px}.ds-item[data-v-5f2b5aef]{flex:1;min-width:0;margin-bottom:0}.ds-tag[data-v-5f2b5aef]{display:inline-block;padding:1px 8px;font-size:11px;border-radius:3px;line-height:1.6;white-space:nowrap}.ds-tag--success[data-v-5f2b5aef]{background:#10b9811f;color:var(--ds-status-connected)}.ds-tag--default[data-v-5f2b5aef]{background:#94a3b826;color:var(--text-secondary, #999)}.ds-tag--type-static[data-v-5f2b5aef]{background:#64748b1f;color:var(--ds-type-static)}.ds-tag--type-tag[data-v-5f2b5aef]{background:#2080f01f;color:var(--ds-type-tag)}.ds-tag--type-api[data-v-5f2b5aef]{background:#18a0581f;color:var(--ds-type-api)}.ds-tag--type-sql[data-v-5f2b5aef]{background:#f59e0b1f;color:var(--ds-type-sql)}.ds-status-dot[data-v-5f2b5aef]{display:inline-block;width:7px;height:7px;border-radius:50%;flex-shrink:0}.ds-status-dot--connected[data-v-5f2b5aef]{background-color:var(--ds-status-connected)}.ds-status-dot--disconnected[data-v-5f2b5aef]{background-color:var(--ds-status-disconnected)}.ds-status-dot--connecting[data-v-5f2b5aef]{background-color:var(--ds-status-connecting);animation:ds-pulse-5f2b5aef 1.5s ease-in-out infinite}.ds-status-dot--error[data-v-5f2b5aef]{background-color:var(--ds-status-error)}@keyframes ds-pulse-5f2b5aef{0%,to{opacity:1}50%{opacity:.4}}.ds-status-tag[data-v-5f2b5aef]{display:inline-block;padding:1px 6px;border-radius:3px;font-size:11px;line-height:1.5;color:#fff}.ds-status-tag--connected[data-v-5f2b5aef]{background:var(--ds-status-connected)}.ds-status-tag--disconnected[data-v-5f2b5aef]{background:var(--ds-status-disconnected)}.ds-status-tag--connecting[data-v-5f2b5aef]{background:var(--ds-status-connecting)}.ds-status-tag--error[data-v-5f2b5aef]{background:var(--ds-status-error)}.ds-sidebar-header[data-v-5f2b5aef]{display:flex;align-items:center;justify-content:space-between;padding:10px 12px 8px;border-bottom:1px solid var(--border)}.sidebar-title[data-v-5f2b5aef]{font-size:13px;font-weight:600;color:var(--text);letter-spacing:.3px}.sidebar-header-actions[data-v-5f2b5aef]{display:flex;align-items:center;gap:4px}.ds-sidebar-list[data-v-5f2b5aef]{flex:1;overflow-y:auto;padding:4px 0}.ds-sidebar-item[data-v-5f2b5aef]{display:flex;align-items:center;gap:8px;padding:10px 12px;cursor:pointer;border-bottom:1px solid transparent;border-radius:6px;margin:2px 4px;transition:background-color .15s ease,box-shadow .15s ease}.ds-sidebar-item[data-v-5f2b5aef]:hover{background-color:color-mix(in srgb,var(--primary) 6%,transparent)}.ds-sidebar-item--active[data-v-5f2b5aef]{background-color:color-mix(in srgb,var(--primary) 10%,transparent);box-shadow:inset 2px 0 0 var(--primary)}.ds-sidebar-item--active .sidebar-item-name[data-v-5f2b5aef]{font-weight:600}.ds-sidebar-item-name[data-v-5f2b5aef]{flex:1;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}.sidebar-item-info[data-v-5f2b5aef]{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.sidebar-item-type[data-v-5f2b5aef]{display:flex;align-items:center;gap:6px}.sidebar-var-count[data-v-5f2b5aef]{font-size:10px;color:var(--text-secondary);background:color-mix(in srgb,var(--text-secondary) 8%,transparent);padding:0 4px;border-radius:2px}.sidebar-data-preview[data-v-5f2b5aef]{font-size:10px;color:var(--text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:120px}.ds-summary-table-wrapper[data-v-5f2b5aef]{width:100%;overflow:visible}.summary-title[data-v-5f2b5aef]{font-size:13px;font-weight:600;color:var(--text);margin:0 0 10px;padding-bottom:8px;border-bottom:1px solid var(--border);letter-spacing:.3px;position:sticky;top:0;background:var(--surface);z-index:2}.ds-summary-table[data-v-5f2b5aef]{width:100%;border-collapse:separate;border-spacing:0;font-size:12px;table-layout:fixed}.ds-summary-table thead[data-v-5f2b5aef]{position:sticky;top:0;z-index:3}.ds-summary-table th[data-v-5f2b5aef]{padding:9px 10px;background-color:color-mix(in srgb,var(--text-secondary) 8%,var(--surface));color:var(--text-secondary);font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;border-bottom:1px solid var(--border)}.ds-summary-table th[data-v-5f2b5aef]:first-child{border-radius:6px 0 0}.ds-summary-table th[data-v-5f2b5aef]:last-child{border-radius:0 6px 0 0}.ds-summary-table td[data-v-5f2b5aef]{padding:8px 10px;border-bottom:1px solid var(--border);color:var(--text);vertical-align:middle;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ds-summary-table tbody tr[data-v-5f2b5aef]{transition:background-color .12s ease}.ds-summary-table tbody tr[data-v-5f2b5aef]:hover{background-color:color-mix(in srgb,var(--primary) 4%,transparent)}.ds-summary-table tbody tr:last-child td[data-v-5f2b5aef]:first-child{border-radius:0 0 0 6px}.ds-summary-table tbody tr:last-child td[data-v-5f2b5aef]:last-child{border-radius:0 0 6px}.ds-summary-table tbody tr:last-child td[data-v-5f2b5aef]{border-bottom:none}.ds-summary-table .cell-name[data-v-5f2b5aef]{font-weight:500;color:var(--text)}.ds-summary-table .cell-bound[data-v-5f2b5aef]{max-width:120px}.ds-summary-table .cell-time[data-v-5f2b5aef]{color:var(--text-secondary);font-variant-numeric:tabular-nums;font-size:11.5px}.ds-summary-table .cell-data[data-v-5f2b5aef]{max-width:160px;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace;font-size:11.5px}.ds-bound-tag[data-v-5f2b5aef]{display:inline-block;padding:1px 6px;margin:1px 2px;background:#2080f014;color:var(--primary, #2080f0);border-radius:3px;font-size:10px;border:1px solid rgba(32,128,240,.2)}.ds-empty[data-v-5f2b5aef]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 16px;color:var(--text-tertiary);font-size:13px;gap:8px}.ds-empty[data-v-5f2b5aef]:before{content:"📦";font-size:28px;opacity:.4}.ds-placeholder[data-v-5f2b5aef]{display:flex;align-items:center;justify-content:center;height:100%;min-height:200px;color:var(--text-tertiary);font-size:13px}.placeholder-text[data-v-5f2b5aef]{text-align:center;padding:32px 16px;color:var(--text-tertiary);font-size:13px;line-height:1.6}.text-muted[data-v-5f2b5aef]{color:var(--text-tertiary);font-style:italic}.modal-overlay[data-v-5f2b5aef]{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal-header[data-v-5f2b5aef]{background:linear-gradient(135deg,var(--ds-modal-header-bg) 0%,color-mix(in srgb,var(--primary) 3%,var(--ds-modal-header-bg)) 100%)}.modal-header h3[data-v-5f2b5aef]{font-size:15px;font-weight:700;letter-spacing:.3px;background:linear-gradient(90deg,var(--text) 0%,var(--text-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.modal-sidebar[data-v-5f2b5aef]{background-color:var(--ds-sidebar-bg)}.data-panel-scroll[data-v-5f2b5aef]::-webkit-scrollbar,.modal-body[data-v-5f2b5aef]::-webkit-scrollbar,.modal-sidebar[data-v-5f2b5aef]::-webkit-scrollbar{width:5px}.data-panel-scroll[data-v-5f2b5aef]::-webkit-scrollbar-track,.modal-body[data-v-5f2b5aef]::-webkit-scrollbar-track,.modal-sidebar[data-v-5f2b5aef]::-webkit-scrollbar-track{background:transparent}.data-panel-scroll[data-v-5f2b5aef]::-webkit-scrollbar-thumb,.modal-body[data-v-5f2b5aef]::-webkit-scrollbar-thumb,.modal-sidebar[data-v-5f2b5aef]::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.data-panel-scroll[data-v-5f2b5aef]::-webkit-scrollbar-thumb:hover,.modal-body[data-v-5f2b5aef]::-webkit-scrollbar-thumb:hover,.modal-sidebar[data-v-5f2b5aef]::-webkit-scrollbar-thumb:hover{background:var(--text-secondary, #999)}.data-panel[data-v-5f2b5aef]{display:flex;flex-direction:column;height:100%}.graphic-info-bar[data-v-5f2b5aef]{padding:10px 14px;display:flex;flex-direction:column;gap:6px;border-bottom:1px solid var(--border);background:linear-gradient(135deg,var(--surface) 0%,color-mix(in srgb,var(--primary) 2%,var(--surface)) 100%)}.overlay-toggle-bar[data-v-5f2b5aef]{padding:6px 14px;border-bottom:1px solid var(--border);background:var(--surface)}.overlay-toggle-label[data-v-5f2b5aef]{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none}.overlay-toggle-checkbox[data-v-5f2b5aef]{width:14px;height:14px;cursor:pointer;accent-color:var(--primary, #409EFF)}.graphic-info-row[data-v-5f2b5aef]{display:flex;align-items:center;gap:8px;min-height:24px}.graphic-label[data-v-5f2b5aef]{font-size:11px;color:var(--text-secondary);min-width:56px;flex-shrink:0;text-transform:uppercase;letter-spacing:.5px;font-weight:500}.graphic-value[data-v-5f2b5aef]{font-size:13px;color:var(--text);font-weight:500;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace}.graphic-id-text[data-v-5f2b5aef]{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.copy-btn-inline[data-v-5f2b5aef]{padding:2px 6px;border:1px solid transparent;border-radius:var(--radius-sm);background-color:transparent;cursor:pointer;transition:all .15s ease;line-height:1;display:inline-flex;align-items:center;justify-content:center;color:var(--text-tertiary);flex-shrink:0;font-size:12px;opacity:0}.graphic-info-row:hover .copy-btn-inline[data-v-5f2b5aef]{opacity:1}.copy-btn-inline[data-v-5f2b5aef]:hover{background-color:color-mix(in srgb,var(--primary) 10%,transparent);border-color:var(--primary);color:var(--primary)}.type-tag[data-v-5f2b5aef]{margin-left:auto;font-size:10px;padding:2px 8px;border-radius:10px;color:#fff;background:linear-gradient(135deg,var(--primary),var(--status-info));line-height:1.6;white-space:nowrap;font-weight:600;letter-spacing:.3px}.steps-panel[data-v-5f2b5aef]{flex:1;display:flex;flex-direction:column;gap:2px;padding:8px 4px;overflow-y:auto}.steps-panel .property-group[data-v-5f2b5aef]{margin-bottom:0;border:1px solid var(--border);border-radius:8px;overflow:hidden;transition:box-shadow .15s ease}.steps-panel .property-group[data-v-5f2b5aef]:hover{box-shadow:0 1px 4px #0000000f}.group-label[data-v-5f2b5aef]{display:flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none;padding:10px 12px;background:linear-gradient(90deg,var(--surface) 0%,color-mix(in srgb,var(--background) 60%,var(--surface)) 100%);border-bottom:1px solid var(--border)}.group-label[data-v-5f2b5aef]:hover{background:linear-gradient(90deg,color-mix(in srgb,var(--primary) 3%,var(--surface)),color-mix(in srgb,var(--primary) 2%,var(--surface)))}.step-header[data-v-5f2b5aef]{display:flex;align-items:center;gap:10px;flex:1}.step-badge[data-v-5f2b5aef]{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;font-size:11px;font-weight:700;border-radius:50%;padding:0;line-height:1;color:#fff;flex-shrink:0;box-shadow:0 1px 3px #0000002e}.badge-primary[data-v-5f2b5aef]{background:linear-gradient(135deg,#2080f0,#4098fc)}.badge-info[data-v-5f2b5aef]{background:linear-gradient(135deg,#18a058,#36ad6a)}.badge-warning[data-v-5f2b5aef]{background:linear-gradient(135deg,#f0a020,#fcb040)}.step-title[data-v-5f2b5aef]{font-size:13px;font-weight:600;color:var(--text);letter-spacing:.2px}.status-tag[data-v-5f2b5aef]{font-size:10px;padding:2px 8px;border-radius:10px;line-height:1.6;white-space:nowrap;flex-shrink:0;font-weight:500;letter-spacing:.3px}.status-tag.status-success[data-v-5f2b5aef]{color:#fff;background:linear-gradient(135deg,#10b981,#34d399);box-shadow:0 1px 3px #10b98140}.status-tag.status-default[data-v-5f2b5aef]{color:var(--text-secondary);background:color-mix(in srgb,var(--text-tertiary) 10%,transparent);border:1px solid var(--border)}.collapse-icon[data-v-5f2b5aef]{display:inline-block;width:0;height:0;border-left:5px solid var(--text-tertiary);border-top:4px solid transparent;border-bottom:4px solid transparent;transition:transform .2s ease,opacity .2s ease;margin-left:4px;opacity:.5;flex-shrink:0}.collapse-icon.expanded[data-v-5f2b5aef]{transform:rotate(90deg);opacity:.9}.group-body[data-v-5f2b5aef]{overflow:hidden;padding:10px 12px;background:var(--surface)}.group-disabled[data-v-5f2b5aef]{opacity:.45;pointer-events:none}.group-disabled .group-label[data-v-5f2b5aef]{cursor:not-allowed}.group-locked .lock-icon[data-v-5f2b5aef]{font-size:11px;opacity:.5;flex-shrink:0}.lock-icon[data-v-5f2b5aef]{font-size:11px;flex-shrink:0;margin-left:4px}.lock-icon.unlocked[data-v-5f2b5aef]{opacity:.25}.step-content[data-v-5f2b5aef]{padding:0}.step-divider[data-v-5f2b5aef]{height:1px;background:linear-gradient(90deg,transparent,var(--border),transparent);margin:10px 0}.property-selector-row[data-v-5f2b5aef]{display:flex;align-items:center;gap:8px;padding:8px 0;margin-top:4px}.takeover-hint[data-v-5f2b5aef]{margin-top:8px;padding:6px 8px;border-radius:4px;background:#e6a23c1f;border:1px solid rgba(230,162,60,.45);color:var(--status-warning, #e6a23c);font-size:12px;line-height:1.5}.property-selector-label[data-v-5f2b5aef]{font-size:12px;color:var(--text-secondary);white-space:nowrap;min-width:56px}.property-selector-select[data-v-5f2b5aef]{flex:1;min-width:0;height:28px;padding:0 8px;font-size:12px;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:4px;cursor:pointer;outline:none;transition:border-color .2s}.property-selector-select[data-v-5f2b5aef]:hover{border-color:var(--primary)}.property-selector-select[data-v-5f2b5aef]:focus{border-color:var(--primary)}.filter-hint[data-v-5f2b5aef],.driver-hint[data-v-5f2b5aef]{padding:0 0 8px}.text-secondary[data-v-5f2b5aef]{font-size:12px;color:var(--text-secondary);line-height:1.5}.filter-editor-inline[data-v-5f2b5aef],.driver-editor-inline[data-v-5f2b5aef]{margin-top:0}.interaction-panel[data-v-ff6e3502]{padding:8px 0;display:flex;flex-direction:column;gap:10px}.section-title[data-v-ff6e3502]{font-weight:600;font-size:13px;color:var(--text)}.subsection-title[data-v-ff6e3502]{font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin:6px 0 4px;display:block}.event-card[data-v-ff6e3502]{border:1px solid var(--border);border-left:3px solid var(--primary, #4a9ef8);border-radius:6px;padding:8px 10px;background:var(--surface)}.event-header[data-v-ff6e3502]{display:flex;align-items:center;gap:6px;padding-bottom:6px;border-bottom:1px dashed var(--border)}.event-type-select[data-v-ff6e3502]{flex:1;padding:3px 6px;border:1px solid var(--border);border-radius:4px;background:var(--elevated);color:var(--text);font-size:12px}.actions-section[data-v-ff6e3502]{padding-left:4px}.action-card[data-v-ff6e3502]{border:1px dashed var(--border);border-radius:4px;padding:6px 8px;margin:6px 0;background:var(--elevated)}.action-header[data-v-ff6e3502]{display:flex;align-items:center;gap:4px;margin-bottom:6px}.action-type-select[data-v-ff6e3502],.script-method-select[data-v-ff6e3502]{flex:1;padding:3px 6px;border:1px solid var(--border);border-radius:4px;background:var(--surface);color:var(--text);font-size:12px}.form-row[data-v-ff6e3502]{display:flex;align-items:center;gap:6px;margin-bottom:4px}.form-row label[data-v-ff6e3502]{width:50px;flex-shrink:0;font-size:11px;color:var(--text-secondary);text-align:right}.form-row input[data-v-ff6e3502],.form-row textarea[data-v-ff6e3502],.form-row select[data-v-ff6e3502]{flex:1;padding:3px 6px;border:1px solid var(--border);border-radius:3px;background:var(--surface);color:var(--text);font-size:11px;font-family:Consolas,Courier New,monospace}.form-row textarea[data-v-ff6e3502]{resize:vertical;min-height:48px}.form-row input[data-v-ff6e3502]:focus,.form-row textarea[data-v-ff6e3502]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 1px #4a9ef833}.conditions-section[data-v-ff6e3502]{padding-left:6px;margin-top:6px;border-left:2px solid var(--status-warning, #e6a23c)}.condition-card[data-v-ff6e3502]{padding:4px 4px 4px 8px;margin:4px 0;border:1px dotted var(--border);border-radius:3px;background:var(--surface)}.btn-delete[data-v-ff6e3502]{width:22px;height:22px;padding:0;border:1px solid var(--danger, #f56c6c);border-radius:50%;background:transparent;color:var(--danger, #f56c6c);font-size:14px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s}.btn-delete[data-v-ff6e3502]:hover{background:var(--danger, #f56c6c);color:#fff}.btn-delete-sm[data-v-ff6e3502]{padding:1px 6px;border:1px solid var(--border);border-radius:3px;background:transparent;color:var(--text-secondary);font-size:11px;cursor:pointer;transition:all .15s}.btn-delete-sm[data-v-ff6e3502]:hover{background:var(--danger, #f56c6c);color:#fff;border-color:var(--danger)}.action-order[data-v-ff6e3502]{display:flex;align-items:center;gap:2px;margin-left:auto}.btn-order[data-v-ff6e3502]{padding:1px 5px;border:1px solid var(--border);border-radius:3px;background:transparent;color:var(--text-secondary);font-size:11px;line-height:1.2;cursor:pointer;transition:all .15s}.btn-order[data-v-ff6e3502]:hover:not(:disabled){border-color:var(--primary);color:var(--primary)}.btn-order[data-v-ff6e3502]:disabled{opacity:.35;cursor:not-allowed}.btn-add[data-v-ff6e3502]{width:100%;padding:4px 0;border:1px dashed var(--border);border-radius:4px;background:transparent;color:var(--text-secondary);font-size:11px;cursor:pointer;transition:all .15s}.btn-add[data-v-ff6e3502]:hover{border-color:var(--primary);color:var(--primary);background:#4a9ef80d}.btn-add-event[data-v-ff6e3502]{margin-top:2px;padding:6px 0;font-size:12px}select[data-v-ff6e3502]{cursor:pointer}optgroup[data-v-ff6e3502]{font-weight:600;font-style:normal;color:var(--text-secondary);font-size:11px}.script-preview-container[data-v-ff6e3502]{margin-bottom:6px}.script-preview[data-v-ff6e3502]{background-color:var(--background, #1e1e1e);border:1px solid var(--border);border-radius:4px;padding:6px 8px;max-height:60px;overflow:auto;margin-bottom:6px}.script-preview-code[data-v-ff6e3502]{font-family:Consolas,Monaco,Courier New,monospace;font-size:11px;color:var(--text-secondary, #a0a0a0);white-space:pre-wrap;word-break:break-all}.btn-open-drawer[data-v-ff6e3502]{display:flex;align-items:center;justify-content:center;gap:4px;border-color:var(--primary, #4a9ef8);color:var(--primary, #4a9ef8)}.btn-open-drawer[data-v-ff6e3502]:hover{background:var(--primary, #4a9ef8);color:#fff}.btn-open-drawer .btn-icon[data-v-ff6e3502]{font-size:13px}.widget-instance-panel[data-v-0e45910d]{display:flex;flex-direction:column;gap:10px}.wip-header[data-v-0e45910d]{display:flex;align-items:baseline;gap:6px;padding-bottom:6px;border-bottom:1px solid var(--border-light, #e0e0e0)}.wip-name[data-v-0e45910d]{font-size:13px;font-weight:600;color:var(--text, #333)}.wip-count[data-v-0e45910d],.wip-tip[data-v-0e45910d],.wip-hint[data-v-0e45910d]{font-size:11px;color:var(--text-secondary, #888)}.wip-hint[data-v-0e45910d]{margin:0;line-height:1.5}.wip-warn[data-v-0e45910d]{margin:0;font-size:11px;line-height:1.5;color:var(--status-error, #f44336)}.wip-field[data-v-0e45910d]{display:flex;flex-direction:column;gap:4px}.wip-label[data-v-0e45910d]{font-size:12px;color:var(--text-secondary, #666)}.wip-required[data-v-0e45910d]{color:#f44336}.wip-input[data-v-0e45910d]{width:100%;padding:5px 8px;font-size:12px;border:1px solid var(--border, #ccc);border-radius:4px;background:var(--surface, #fff);color:var(--text, #333)}.wip-checkbox[data-v-0e45910d]{width:14px;height:14px}.wip-apply[data-v-0e45910d]{padding:6px 10px;font-size:12px;color:#fff;background:var(--button-background, #2196f3);border:none;border-radius:4px;cursor:pointer}.wip-apply[data-v-0e45910d]:disabled{opacity:.5;cursor:not-allowed}.property-panel[data-v-aa7f7e26]{height:100%;overflow-y:auto;background-color:var(--surface);display:flex;flex-direction:column;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 12px;--spacing-lg: 20px}.property-section[data-v-aa7f7e26]{flex:1;display:flex;flex-direction:column}.property-section h3[data-v-aa7f7e26]{margin:0;font-size:13px;font-weight:600;color:var(--text);text-transform:uppercase;letter-spacing:.5px;padding:12px;border-bottom:1px solid var(--border);background-color:var(--background)}.property-tabs[data-v-aa7f7e26]{display:flex;background-color:var(--background);border-bottom:1px solid var(--border);margin:0;padding:0}.tab-button[data-v-aa7f7e26]{flex:1;padding:10px 12px;background-color:transparent;border:none;color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease;position:relative}.tab-button[data-v-aa7f7e26]:hover{background-color:var(--control-button-hover);color:var(--text)}.tab-button.active[data-v-aa7f7e26]{color:var(--primary);font-weight:600}.tab-button.active[data-v-aa7f7e26]:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background-color:var(--primary)}.tab-content[data-v-aa7f7e26]{flex:1;padding:12px;overflow-y:auto;background-color:var(--surface)}.property-group[data-v-aa7f7e26]{margin-bottom:0;padding:10px;background-color:var(--background);border:1px solid var(--border);border-radius:6px;transition:all .2s ease;width:100%;box-sizing:border-box}.property-group[data-v-aa7f7e26]:last-child{margin-bottom:0}.property-group[data-v-aa7f7e26]:hover{border-color:var(--primary);box-shadow:0 2px 4px #3498db1a}.property-group label[data-v-aa7f7e26]{display:block;font-size:11px;font-weight:600;color:var(--text);margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.property-item[data-v-aa7f7e26]{display:flex;align-items:center;margin-bottom:6px;gap:8px;width:100%;box-sizing:border-box}.property-item[data-v-aa7f7e26]:last-child{margin-bottom:0}.property-item>span[data-v-aa7f7e26]{min-width:70px;width:auto;flex-shrink:0;font-size:11px;font-weight:500;color:var(--text-secondary)}.property-item input[type=text][data-v-aa7f7e26],.property-item input[type=number][data-v-aa7f7e26],.property-item select[data-v-aa7f7e26],.form-input[data-v-aa7f7e26]{flex:1;padding:5px 8px;border:1px solid var(--border);border-radius:4px;background-color:var(--surface);color:var(--text);font-size:13px;transition:all .2s ease;min-width:0}.property-item select[data-v-aa7f7e26],.config-item select[data-v-aa7f7e26]{height:30px!important;min-height:30px!important;line-height:1.4!important;min-width:80px;padding-right:24px;cursor:pointer}.property-panel select[data-v-aa7f7e26],.style-panel-content select[data-v-aa7f7e26],.generic-config select[data-v-aa7f7e26]{height:30px!important;min-height:30px!important;line-height:1.4}.property-item input[type=text][data-v-aa7f7e26]:focus,.property-item input[type=number][data-v-aa7f7e26]:focus,.property-item select[data-v-aa7f7e26]:focus,.form-input[data-v-aa7f7e26]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #3498db33}.property-item input[type=checkbox][data-v-aa7f7e26]{width:14px;height:14px;accent-color:var(--primary);cursor:pointer}.property-item input[type=color][data-v-aa7f7e26]{width:40px;height:24px;border:none;border-radius:4px;cursor:pointer;padding:2px;background-color:var(--surface)}.position-size-container[data-v-aa7f7e26]{background-color:var(--surface);border:1px solid var(--border);border-radius:4px;padding:8px;margin-bottom:8px;width:100%;box-sizing:border-box}.position-size-row[data-v-aa7f7e26]{display:flex;align-items:center;margin-bottom:6px;gap:6px;width:100%}.position-size-item[data-v-aa7f7e26]{flex:1;display:flex;align-items:center;gap:var(--spacing-sm)}.position-size-row[data-v-aa7f7e26]:last-child{margin-bottom:0}.position-size-input[data-v-aa7f7e26]{flex:1;padding:4px 8px;border:1px solid var(--border);border-radius:4px;background-color:var(--surface);color:var(--text);font-size:11px;text-align:center;transition:all .2s ease}.position-size-input[data-v-aa7f7e26]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #3498db33}.position-size-control[data-v-aa7f7e26]{display:flex;align-items:center;flex:1;gap:6px}.position-size-buttons[data-v-aa7f7e26]{display:flex;flex-direction:column;gap:2px}.position-size-btn[data-v-aa7f7e26]{width:20px;height:14px;padding:0;border:1px solid var(--border);border-radius:2px;background-color:var(--surface);color:var(--text);font-size:10px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.position-size-btn[data-v-aa7f7e26]:hover{background-color:var(--control-button-hover);border-color:var(--primary);color:var(--text)}.position-size-btn[data-v-aa7f7e26]:active{background-color:var(--primary);color:#fff}.position-size-label[data-v-aa7f7e26]{width:20px;font-size:11px;font-weight:600;color:var(--text);text-align:center;flex-shrink:0}.btn[data-v-aa7f7e26]{padding:4px 8px;border:1px solid var(--border);border-radius:4px;font-size:11px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn--sm[data-v-aa7f7e26]{padding:2px 4px;font-size:10px}.btn--primary[data-v-aa7f7e26]{background-color:var(--primary);color:#fff;border-color:var(--primary)}.btn--primary[data-v-aa7f7e26]:hover{background-color:var(--button-hover);border-color:var(--button-hover)}.btn--danger[data-v-aa7f7e26]{background-color:var(--status-error);color:#fff;border-color:var(--status-error)}.btn--danger[data-v-aa7f7e26]:hover{background-color:#c0392b;border-color:#c0392b}.btn--text[data-v-aa7f7e26]{background-color:transparent;color:var(--text-secondary);border-color:transparent}.btn--text[data-v-aa7f7e26]:hover{background-color:var(--control-button-hover);color:var(--text)}.property-panel[data-v-aa7f7e26]::-webkit-scrollbar,.tab-content[data-v-aa7f7e26]::-webkit-scrollbar{width:6px}.property-panel[data-v-aa7f7e26]::-webkit-scrollbar-track,.tab-content[data-v-aa7f7e26]::-webkit-scrollbar-track{background:var(--background);border-radius:3px}.property-panel[data-v-aa7f7e26]::-webkit-scrollbar-thumb,.tab-content[data-v-aa7f7e26]::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.property-panel[data-v-aa7f7e26]::-webkit-scrollbar-thumb:hover,.tab-content[data-v-aa7f7e26]::-webkit-scrollbar-thumb:hover{background:var(--border-light)}.style-panel-content[data-v-aa7f7e26]{flex:1;padding:12px;overflow-y:auto;background-color:var(--surface)}.small-size-item[data-v-aa7f7e26]{flex:1;display:flex;align-items:center;gap:var(--spacing-sm)}.small-size-item span[data-v-aa7f7e26]{width:40px;font-size:12px;font-weight:500;color:var(--text-secondary);flex-shrink:0}[data-v-aa7f7e26]:root{--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .1);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .15), 0 1px 3px rgba(0, 0, 0, .1);--shadow-md: 0 4px 16px rgba(0, 0, 0, .2), 0 2px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .25), 0 4px 12px rgba(0, 0, 0, .15);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .3), 0 8px 24px rgba(0, 0, 0, .2);--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .35s ease;--color-success: #10b981;--color-warning: #f59e0b;--color-error: #ef4444;--color-info: #3b82f6}[data-v-aa7f7e26]{box-sizing:border-box}button[data-v-aa7f7e26],[role=button][data-v-aa7f7e26],.btn[data-v-aa7f7e26]{cursor:pointer;transition:all var(--transition-normal)}button[data-v-aa7f7e26]:focus-visible,[role=button][data-v-aa7f7e26]:focus-visible,.btn[data-v-aa7f7e26]:focus-visible{outline:2px solid var(--primary);outline-offset:2px}button[data-v-aa7f7e26]:disabled,[role=button][data-v-aa7f7e26]:disabled,.btn[data-v-aa7f7e26]:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}input[type=text][data-v-aa7f7e26],input[type=number][data-v-aa7f7e26],input[type=email][data-v-aa7f7e26],input[type=password][data-v-aa7f7e26],textarea[data-v-aa7f7e26],select[data-v-aa7f7e26]{transition:all var(--transition-normal)}input[type=text][data-v-aa7f7e26]::placeholder,input[type=number][data-v-aa7f7e26]::placeholder,input[type=email][data-v-aa7f7e26]::placeholder,input[type=password][data-v-aa7f7e26]::placeholder,textarea[data-v-aa7f7e26]::placeholder,select[data-v-aa7f7e26]::placeholder{color:var(--text-secondary);opacity:.7}input[type=text][data-v-aa7f7e26]:focus,input[type=number][data-v-aa7f7e26]:focus,input[type=email][data-v-aa7f7e26]:focus,input[type=password][data-v-aa7f7e26]:focus,textarea[data-v-aa7f7e26]:focus,select[data-v-aa7f7e26]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #3b82f626}input[type=text][data-v-aa7f7e26]:hover:not(:focus),input[type=number][data-v-aa7f7e26]:hover:not(:focus),input[type=email][data-v-aa7f7e26]:hover:not(:focus),input[type=password][data-v-aa7f7e26]:hover:not(:focus),textarea[data-v-aa7f7e26]:hover:not(:focus),select[data-v-aa7f7e26]:hover:not(:focus){border-color:#3b82f666}a[data-v-aa7f7e26]{color:var(--primary);text-decoration:none;transition:color var(--transition-fast)}a[data-v-aa7f7e26]:hover{color:var(--color-info);text-decoration:underline}[data-tooltip][data-v-aa7f7e26]{position:relative}[data-tooltip][data-v-aa7f7e26]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background-color:#000000e6;color:#fff;padding:6px 12px;border-radius:var(--radius-sm);font-size:12px;white-space:nowrap;opacity:0;visibility:hidden;transition:all var(--transition-normal);z-index:10000;pointer-events:none;box-shadow:var(--shadow-md)}[data-tooltip][data-v-aa7f7e26]:hover:after{opacity:1;visibility:visible}.loading-spinner[data-v-aa7f7e26]{display:inline-block;width:20px;height:20px;border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin-aa7f7e26 .8s linear infinite}@keyframes spin-aa7f7e26{to{transform:rotate(360deg)}}.feedback-success[data-v-aa7f7e26]{background-color:#10b9811a;border-color:var(--color-success);color:var(--color-success)}.feedback-error[data-v-aa7f7e26]{background-color:#ef44441a;border-color:var(--color-error);color:var(--color-error)}.feedback-warning[data-v-aa7f7e26]{background-color:#f59e0b1a;border-color:var(--color-warning);color:var(--color-warning)}.kbd[data-v-aa7f7e26]{display:inline-block;padding:2px 6px;font-family:monospace;font-size:11px;background-color:var(--background);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:0 1px 2px #0000001a}.layout-template-select[data-v-aa7f7e26]{flex:1;min-width:0;background:var(--background);color:var(--text);border:1px solid var(--border);border-radius:4px;padding:4px 6px;font-size:12px}.layout-disassociate-btn[data-v-aa7f7e26]{padding:4px 10px;font-size:12px;color:var(--text);background:var(--background);border:1px solid var(--border);border-radius:4px;cursor:pointer}.layout-disassociate-btn[data-v-aa7f7e26]:hover{background:var(--control-button-hover)}.property-section[data-v-aa7f7e26]{flex:1;display:flex;flex-direction:column;padding:0;gap:2px}.property-section h3[data-v-aa7f7e26]{margin:0;font-size:14px;font-weight:600;color:var(--text);text-transform:uppercase;letter-spacing:.5px;padding:8px;border-bottom:1px solid var(--border);background-color:var(--background)}.background-upload-container[data-v-aa7f7e26]{flex-direction:column;align-items:flex-start;gap:var(--spacing-sm)}.background-upload-area[data-v-aa7f7e26]{width:100%;display:flex;justify-content:center;margin:var(--spacing-sm) 0;position:relative}.background-upload-input[data-v-aa7f7e26]{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.background-upload-placeholder[data-v-aa7f7e26]{width:120px;height:120px;border:1px dashed var(--border);display:flex;flex-direction:column;align-items:center;justify-content:center;background-size:cover;background-position:center}.background-upload-content[data-v-aa7f7e26]{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.background-upload-icon[data-v-aa7f7e26]{font-size:24px;margin-bottom:5px}.background-upload-text[data-v-aa7f7e26]{text-align:center;color:var(--text-secondary);font-size:12px}.background-upload-hint[data-v-aa7f7e26]{font-size:12px;color:var(--text-secondary);text-align:center;width:100%;margin:0;cursor:help}.background-control-buttons[data-v-aa7f7e26]{flex-direction:row;gap:var(--spacing-sm);justify-content:center}.fit-mode-buttons[data-v-aa7f7e26]{flex-direction:row;flex-wrap:wrap;gap:var(--spacing-sm);justify-content:center}.fit-mode-button[data-v-aa7f7e26]{width:40px;height:40px;border:1px solid var(--border);border-radius:4px;background-color:var(--surface);color:var(--text);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.fit-mode-button[data-v-aa7f7e26]:hover{background-color:var(--control-button-hover);border-color:var(--primary)}.fit-mode-button.active[data-v-aa7f7e26]{background-color:var(--primary);color:#fff;border-color:var(--primary)}.viewport-fit-buttons[data-v-aa7f7e26]{flex-direction:row;flex-wrap:wrap;gap:var(--spacing-sm);justify-content:center}.viewport-fit-button[data-v-aa7f7e26]{width:40px;height:40px;border:1px solid var(--border);border-radius:4px;background-color:var(--surface);color:var(--text);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;font-size:16px}.viewport-fit-button[data-v-aa7f7e26]:hover{background-color:var(--control-button-hover);border-color:var(--primary)}.viewport-fit-button.active[data-v-aa7f7e26]{background-color:var(--primary);color:#fff;border-color:var(--primary)}.viewport-hint[data-v-aa7f7e26]{font-size:12px;color:var(--text-secondary);text-align:center;margin:4px 0 0}.canvas-size-container[data-v-aa7f7e26]{display:flex;gap:var(--spacing-xs);width:100%;margin:0;padding:0}.property-group[data-v-aa7f7e26]{margin:0 0 4px;padding:4px 6px;gap:4px;display:flex;flex-direction:column}.canvas-size-item[data-v-aa7f7e26]{flex:1;display:flex;align-items:center;gap:var(--spacing-sm)}.canvas-size-item span[data-v-aa7f7e26]{width:40px;font-size:12px;font-weight:500;color:var(--text-secondary);flex-shrink:0}.renderer-select[data-v-aa7f7e26]{width:100%;padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--border);border-radius:4px;background-color:var(--surface);color:var(--text);font-size:12px;cursor:pointer;transition:all .2s ease}.renderer-select[data-v-aa7f7e26]:hover{border-color:var(--primary)}.renderer-select[data-v-aa7f7e26]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #3b82f61a}.renderer-hint[data-v-aa7f7e26]{font-size:11px;color:var(--text-secondary);margin:0;padding:0 var(--spacing-xs);line-height:1.4;opacity:.8}.selection-mode-select[data-v-aa7f7e26]{width:100%;padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--border);border-radius:4px;background-color:var(--surface);color:var(--text);font-size:12px;cursor:pointer;transition:all .2s ease}.selection-mode-select[data-v-aa7f7e26]:hover{border-color:var(--primary)}.selection-mode-select[data-v-aa7f7e26]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #3b82f61a}.json-editor-wrapper[data-v-117ff984]{display:flex;flex-direction:column;height:100%;background-color:var(--surface);border:1px solid var(--border);border-radius:4px;overflow:hidden;min-height:0}.editor-toolbar[data-v-117ff984]{display:flex;align-items:center;gap:0;padding:2px 4px;border-bottom:1px solid var(--border);background-color:var(--background);flex-wrap:wrap;min-height:30px;row-gap:2px}.toolbar-section[data-v-117ff984]{display:flex;align-items:center;gap:1px}.toolbar-divider[data-v-117ff984]{width:1px;height:18px;background-color:var(--border);margin:0 4px}.toolbar-spacer[data-v-117ff984]{flex:1}.toolbar-btn[data-v-117ff984]{display:flex;align-items:center;justify-content:center;gap:0;padding:2px 4px;font-size:12px;border:1px solid transparent;border-radius:3px;background-color:transparent;color:var(--text);cursor:pointer;transition:all .15s ease;min-width:26px;min-height:24px}.toolbar-btn[data-v-117ff984]:hover:not(:disabled){background-color:var(--control-button-hover);border-color:var(--border)}.toolbar-btn[data-v-117ff984]:disabled{opacity:.4;cursor:not-allowed}.toolbar-btn.active[data-v-117ff984]{background-color:var(--primary);border-color:var(--primary);color:#fff}.toolbar-btn.active[data-v-117ff984]:hover:not(:disabled){filter:brightness(1.1)}.toolbar-btn.primary[data-v-117ff984]{background-color:var(--primary);border-color:var(--primary);color:#fff}.toolbar-btn.primary[data-v-117ff984]:hover:not(:disabled){filter:brightness(1.1)}.btn-icon[data-v-117ff984]{font-size:14px;line-height:1}.btn-text[data-v-117ff984]{display:none}.indent-select[data-v-117ff984]{padding:2px 4px;border:1px solid var(--border);border-radius:3px;background-color:var(--surface);color:var(--text);font-size:10px;cursor:pointer;height:24px}.search-bar[data-v-117ff984]{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:8px;border-bottom:1px solid var(--border);background-color:var(--background)}.search-input-group[data-v-117ff984]{display:flex;flex:1;gap:8px}.search-input[data-v-117ff984]{flex:1;min-width:150px;padding:6px 10px;border:1px solid var(--border);border-radius:4px;font-size:12px;background-color:var(--surface);color:var(--text)}.search-input[data-v-117ff984]:focus{outline:none;border-color:var(--primary)}.search-controls[data-v-117ff984]{display:flex;align-items:center;gap:4px}.search-btn[data-v-117ff984]{padding:5px 8px;font-size:12px;border:1px solid var(--border);border-radius:4px;background-color:var(--surface);color:var(--text);cursor:pointer;transition:all .2s ease}.search-btn[data-v-117ff984]:hover{background-color:var(--control-button-hover);border-color:var(--primary)}.search-btn.close-btn[data-v-117ff984]{background-color:transparent;border:none;font-size:16px}.search-count[data-v-117ff984]{font-size:12px;color:var(--text-secondary);min-width:60px;text-align:center}.editor-body[data-v-117ff984]{display:flex;flex:1;overflow:auto;position:relative;min-height:0}.line-numbers[data-v-117ff984]{min-width:50px;padding:8px 0;text-align:right;background-color:var(--background);border-right:1px solid var(--border);overflow-y:auto;-webkit-user-select:none;user-select:none;flex-shrink:0}.line-number[data-v-117ff984]{padding:0 8px;font-size:12px;line-height:1.6;color:var(--text-secondary);font-family:Consolas,Monaco,monospace}.highlight-layer[data-v-117ff984],.editor-textarea[data-v-117ff984]{position:absolute;top:0;left:50px;right:0;bottom:0;padding:8px;font-family:Consolas,Monaco,monospace;font-size:12px;line-height:1.6;word-wrap:break-word;white-space:pre-wrap}.highlight-layer[data-v-117ff984]{pointer-events:none;overflow:auto;color:transparent;background-color:transparent;z-index:1}.editor-textarea[data-v-117ff984]{z-index:2;resize:none;border:none;outline:none;background-color:transparent;color:var(--text);caret-color:var(--text)}.token.string[data-v-117ff984]{color:#690}.token.number[data-v-117ff984]{color:#07a}.token.keyword[data-v-117ff984]{color:#a11}.token.punctuation[data-v-117ff984]{color:#999}.search-match[data-v-117ff984]{background-color:#ffeb3b66;border-radius:2px}.search-match.current[data-v-117ff984]{background-color:#ffc107b3;border:1px solid #ff9800}.status-bar[data-v-117ff984]{display:flex;justify-content:space-between;align-items:center;padding:6px 10px;border-top:1px solid var(--border);background-color:var(--background);font-size:11px;flex-shrink:0;min-height:30px;box-sizing:border-box}.status-left[data-v-117ff984],.status-right[data-v-117ff984]{display:flex;gap:16px}.status-item[data-v-117ff984]{color:var(--text-secondary)}.status-item.valid[data-v-117ff984]{color:#67c23a}.status-item.error[data-v-117ff984]{color:#f56c6c}@media (max-width: 600px){.btn-text[data-v-117ff984],.status-item[data-v-117ff984]{display:none}.status-item[data-v-117ff984]:last-child{display:inline}}.property-panel[data-v-2c66048c]{height:100%;overflow-y:auto;background-color:var(--surface);display:flex;flex-direction:column;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 12px;--spacing-lg: 20px}.property-section[data-v-2c66048c]{flex:1;display:flex;flex-direction:column}.property-section h3[data-v-2c66048c]{margin:0;font-size:13px;font-weight:600;color:var(--text);text-transform:uppercase;letter-spacing:.5px;padding:12px;border-bottom:1px solid var(--border);background-color:var(--background)}.property-tabs[data-v-2c66048c]{display:flex;background-color:var(--background);border-bottom:1px solid var(--border);margin:0;padding:0}.tab-button[data-v-2c66048c]{flex:1;padding:10px 12px;background-color:transparent;border:none;color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease;position:relative}.tab-button[data-v-2c66048c]:hover{background-color:var(--control-button-hover);color:var(--text)}.tab-button.active[data-v-2c66048c]{color:var(--primary);font-weight:600}.tab-button.active[data-v-2c66048c]:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background-color:var(--primary)}.tab-content[data-v-2c66048c]{flex:1;padding:12px;overflow-y:auto;background-color:var(--surface)}.property-group[data-v-2c66048c]{margin-bottom:0;padding:10px;background-color:var(--background);border:1px solid var(--border);border-radius:6px;transition:all .2s ease;width:100%;box-sizing:border-box}.property-group[data-v-2c66048c]:last-child{margin-bottom:0}.property-group[data-v-2c66048c]:hover{border-color:var(--primary);box-shadow:0 2px 4px #3498db1a}.property-group label[data-v-2c66048c]{display:block;font-size:11px;font-weight:600;color:var(--text);margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.property-item[data-v-2c66048c]{display:flex;align-items:center;margin-bottom:6px;gap:8px;width:100%;box-sizing:border-box}.property-item[data-v-2c66048c]:last-child{margin-bottom:0}.property-item>span[data-v-2c66048c]{min-width:70px;width:auto;flex-shrink:0;font-size:11px;font-weight:500;color:var(--text-secondary)}.property-item input[type=text][data-v-2c66048c],.property-item input[type=number][data-v-2c66048c],.property-item select[data-v-2c66048c],.form-input[data-v-2c66048c]{flex:1;padding:5px 8px;border:1px solid var(--border);border-radius:4px;background-color:var(--surface);color:var(--text);font-size:13px;transition:all .2s ease;min-width:0}.property-item select[data-v-2c66048c],.config-item select[data-v-2c66048c]{height:30px!important;min-height:30px!important;line-height:1.4!important;min-width:80px;padding-right:24px;cursor:pointer}.property-panel select[data-v-2c66048c],.style-panel-content select[data-v-2c66048c],.generic-config select[data-v-2c66048c]{height:30px!important;min-height:30px!important;line-height:1.4}.property-item input[type=text][data-v-2c66048c]:focus,.property-item input[type=number][data-v-2c66048c]:focus,.property-item select[data-v-2c66048c]:focus,.form-input[data-v-2c66048c]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #3498db33}.property-item input[type=checkbox][data-v-2c66048c]{width:14px;height:14px;accent-color:var(--primary);cursor:pointer}.property-item input[type=color][data-v-2c66048c]{width:40px;height:24px;border:none;border-radius:4px;cursor:pointer;padding:2px;background-color:var(--surface)}.position-size-container[data-v-2c66048c]{background-color:var(--surface);border:1px solid var(--border);border-radius:4px;padding:8px;margin-bottom:8px;width:100%;box-sizing:border-box}.position-size-row[data-v-2c66048c]{display:flex;align-items:center;margin-bottom:6px;gap:6px;width:100%}.position-size-item[data-v-2c66048c]{flex:1;display:flex;align-items:center;gap:var(--spacing-sm)}.position-size-row[data-v-2c66048c]:last-child{margin-bottom:0}.position-size-input[data-v-2c66048c]{flex:1;padding:4px 8px;border:1px solid var(--border);border-radius:4px;background-color:var(--surface);color:var(--text);font-size:11px;text-align:center;transition:all .2s ease}.position-size-input[data-v-2c66048c]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #3498db33}.position-size-control[data-v-2c66048c]{display:flex;align-items:center;flex:1;gap:6px}.position-size-buttons[data-v-2c66048c]{display:flex;flex-direction:column;gap:2px}.position-size-btn[data-v-2c66048c]{width:20px;height:14px;padding:0;border:1px solid var(--border);border-radius:2px;background-color:var(--surface);color:var(--text);font-size:10px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.position-size-btn[data-v-2c66048c]:hover{background-color:var(--control-button-hover);border-color:var(--primary);color:var(--text)}.position-size-btn[data-v-2c66048c]:active{background-color:var(--primary);color:#fff}.position-size-label[data-v-2c66048c]{width:20px;font-size:11px;font-weight:600;color:var(--text);text-align:center;flex-shrink:0}.btn[data-v-2c66048c]{padding:4px 8px;border:1px solid var(--border);border-radius:4px;font-size:11px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn--sm[data-v-2c66048c]{padding:2px 4px;font-size:10px}.btn--primary[data-v-2c66048c]{background-color:var(--primary);color:#fff;border-color:var(--primary)}.btn--primary[data-v-2c66048c]:hover{background-color:var(--button-hover);border-color:var(--button-hover)}.btn--danger[data-v-2c66048c]{background-color:var(--status-error);color:#fff;border-color:var(--status-error)}.btn--danger[data-v-2c66048c]:hover{background-color:#c0392b;border-color:#c0392b}.btn--text[data-v-2c66048c]{background-color:transparent;color:var(--text-secondary);border-color:transparent}.btn--text[data-v-2c66048c]:hover{background-color:var(--control-button-hover);color:var(--text)}.property-panel[data-v-2c66048c]::-webkit-scrollbar,.tab-content[data-v-2c66048c]::-webkit-scrollbar{width:6px}.property-panel[data-v-2c66048c]::-webkit-scrollbar-track,.tab-content[data-v-2c66048c]::-webkit-scrollbar-track{background:var(--background);border-radius:3px}.property-panel[data-v-2c66048c]::-webkit-scrollbar-thumb,.tab-content[data-v-2c66048c]::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.property-panel[data-v-2c66048c]::-webkit-scrollbar-thumb:hover,.tab-content[data-v-2c66048c]::-webkit-scrollbar-thumb:hover{background:var(--border-light)}.style-panel-content[data-v-2c66048c]{flex:1;padding:12px;overflow-y:auto;background-color:var(--surface)}.small-size-item[data-v-2c66048c]{flex:1;display:flex;align-items:center;gap:var(--spacing-sm)}.small-size-item span[data-v-2c66048c]{width:40px;font-size:12px;font-weight:500;color:var(--text-secondary);flex-shrink:0}[data-v-2c66048c]:root{--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .1);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .15), 0 1px 3px rgba(0, 0, 0, .1);--shadow-md: 0 4px 16px rgba(0, 0, 0, .2), 0 2px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .25), 0 4px 12px rgba(0, 0, 0, .15);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .3), 0 8px 24px rgba(0, 0, 0, .2);--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .35s ease;--color-success: #10b981;--color-warning: #f59e0b;--color-error: #ef4444;--color-info: #3b82f6}[data-v-2c66048c]{box-sizing:border-box}button[data-v-2c66048c],[role=button][data-v-2c66048c],.btn[data-v-2c66048c]{cursor:pointer;transition:all var(--transition-normal)}button[data-v-2c66048c]:focus-visible,[role=button][data-v-2c66048c]:focus-visible,.btn[data-v-2c66048c]:focus-visible{outline:2px solid var(--primary);outline-offset:2px}button[data-v-2c66048c]:disabled,[role=button][data-v-2c66048c]:disabled,.btn[data-v-2c66048c]:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}input[type=text][data-v-2c66048c],input[type=number][data-v-2c66048c],input[type=email][data-v-2c66048c],input[type=password][data-v-2c66048c],textarea[data-v-2c66048c],select[data-v-2c66048c]{transition:all var(--transition-normal)}input[type=text][data-v-2c66048c]::placeholder,input[type=number][data-v-2c66048c]::placeholder,input[type=email][data-v-2c66048c]::placeholder,input[type=password][data-v-2c66048c]::placeholder,textarea[data-v-2c66048c]::placeholder,select[data-v-2c66048c]::placeholder{color:var(--text-secondary);opacity:.7}input[type=text][data-v-2c66048c]:focus,input[type=number][data-v-2c66048c]:focus,input[type=email][data-v-2c66048c]:focus,input[type=password][data-v-2c66048c]:focus,textarea[data-v-2c66048c]:focus,select[data-v-2c66048c]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #3b82f626}input[type=text][data-v-2c66048c]:hover:not(:focus),input[type=number][data-v-2c66048c]:hover:not(:focus),input[type=email][data-v-2c66048c]:hover:not(:focus),input[type=password][data-v-2c66048c]:hover:not(:focus),textarea[data-v-2c66048c]:hover:not(:focus),select[data-v-2c66048c]:hover:not(:focus){border-color:#3b82f666}a[data-v-2c66048c]{color:var(--primary);text-decoration:none;transition:color var(--transition-fast)}a[data-v-2c66048c]:hover{color:var(--color-info);text-decoration:underline}[data-tooltip][data-v-2c66048c]{position:relative}[data-tooltip][data-v-2c66048c]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background-color:#000000e6;color:#fff;padding:6px 12px;border-radius:var(--radius-sm);font-size:12px;white-space:nowrap;opacity:0;visibility:hidden;transition:all var(--transition-normal);z-index:10000;pointer-events:none;box-shadow:var(--shadow-md)}[data-tooltip][data-v-2c66048c]:hover:after{opacity:1;visibility:visible}.loading-spinner[data-v-2c66048c]{display:inline-block;width:20px;height:20px;border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin-2c66048c .8s linear infinite}@keyframes spin-2c66048c{to{transform:rotate(360deg)}}.feedback-success[data-v-2c66048c]{background-color:#10b9811a;border-color:var(--color-success);color:var(--color-success)}.feedback-error[data-v-2c66048c]{background-color:#ef44441a;border-color:var(--color-error);color:var(--color-error)}.feedback-warning[data-v-2c66048c]{background-color:#f59e0b1a;border-color:var(--color-warning);color:var(--color-warning)}.kbd[data-v-2c66048c]{display:inline-block;padding:2px 6px;font-family:monospace;font-size:11px;background-color:var(--background);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:0 1px 2px #0000001a}.json-panel[data-v-2c66048c]{display:flex;flex-direction:column;height:100%;padding:0;background-color:var(--surface);min-height:0;overflow:hidden}.json-panel[data-v-2c66048c]:not(.compact){border-left:0}.property-panel[data-v-9325822c]{height:100%;overflow-y:auto;background-color:var(--surface);display:flex;flex-direction:column;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 12px;--spacing-lg: 20px}.property-section[data-v-9325822c]{flex:1;display:flex;flex-direction:column}.property-section h3[data-v-9325822c]{margin:0;font-size:13px;font-weight:600;color:var(--text);text-transform:uppercase;letter-spacing:.5px;padding:12px;border-bottom:1px solid var(--border);background-color:var(--background)}.property-tabs[data-v-9325822c]{display:flex;background-color:var(--background);border-bottom:1px solid var(--border);margin:0;padding:0}.tab-button[data-v-9325822c]{flex:1;padding:10px 12px;background-color:transparent;border:none;color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease;position:relative}.tab-button[data-v-9325822c]:hover{background-color:var(--control-button-hover);color:var(--text)}.tab-button.active[data-v-9325822c]{color:var(--primary);font-weight:600}.tab-button.active[data-v-9325822c]:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background-color:var(--primary)}.tab-content[data-v-9325822c]{flex:1;padding:12px;overflow-y:auto;background-color:var(--surface)}.property-group[data-v-9325822c]{margin-bottom:0;padding:10px;background-color:var(--background);border:1px solid var(--border);border-radius:6px;transition:all .2s ease;width:100%;box-sizing:border-box}.property-group[data-v-9325822c]:last-child{margin-bottom:0}.property-group[data-v-9325822c]:hover{border-color:var(--primary);box-shadow:0 2px 4px #3498db1a}.property-group label[data-v-9325822c]{display:block;font-size:11px;font-weight:600;color:var(--text);margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.property-item[data-v-9325822c]{display:flex;align-items:center;margin-bottom:6px;gap:8px;width:100%;box-sizing:border-box}.property-item[data-v-9325822c]:last-child{margin-bottom:0}.property-item>span[data-v-9325822c]{min-width:70px;width:auto;flex-shrink:0;font-size:11px;font-weight:500;color:var(--text-secondary)}.property-item input[type=text][data-v-9325822c],.property-item input[type=number][data-v-9325822c],.property-item select[data-v-9325822c],.form-input[data-v-9325822c]{flex:1;padding:5px 8px;border:1px solid var(--border);border-radius:4px;background-color:var(--surface);color:var(--text);font-size:13px;transition:all .2s ease;min-width:0}.property-item select[data-v-9325822c],.config-item select[data-v-9325822c]{height:30px!important;min-height:30px!important;line-height:1.4!important;min-width:80px;padding-right:24px;cursor:pointer}.property-panel select[data-v-9325822c],.style-panel-content select[data-v-9325822c],.generic-config select[data-v-9325822c]{height:30px!important;min-height:30px!important;line-height:1.4}.property-item input[type=text][data-v-9325822c]:focus,.property-item input[type=number][data-v-9325822c]:focus,.property-item select[data-v-9325822c]:focus,.form-input[data-v-9325822c]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #3498db33}.property-item input[type=checkbox][data-v-9325822c]{width:14px;height:14px;accent-color:var(--primary);cursor:pointer}.property-item input[type=color][data-v-9325822c]{width:40px;height:24px;border:none;border-radius:4px;cursor:pointer;padding:2px;background-color:var(--surface)}.position-size-container[data-v-9325822c]{background-color:var(--surface);border:1px solid var(--border);border-radius:4px;padding:8px;margin-bottom:8px;width:100%;box-sizing:border-box}.position-size-row[data-v-9325822c]{display:flex;align-items:center;margin-bottom:6px;gap:6px;width:100%}.position-size-item[data-v-9325822c]{flex:1;display:flex;align-items:center;gap:var(--spacing-sm)}.position-size-row[data-v-9325822c]:last-child{margin-bottom:0}.position-size-input[data-v-9325822c]{flex:1;padding:4px 8px;border:1px solid var(--border);border-radius:4px;background-color:var(--surface);color:var(--text);font-size:11px;text-align:center;transition:all .2s ease}.position-size-input[data-v-9325822c]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #3498db33}.position-size-control[data-v-9325822c]{display:flex;align-items:center;flex:1;gap:6px}.position-size-buttons[data-v-9325822c]{display:flex;flex-direction:column;gap:2px}.position-size-btn[data-v-9325822c]{width:20px;height:14px;padding:0;border:1px solid var(--border);border-radius:2px;background-color:var(--surface);color:var(--text);font-size:10px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.position-size-btn[data-v-9325822c]:hover{background-color:var(--control-button-hover);border-color:var(--primary);color:var(--text)}.position-size-btn[data-v-9325822c]:active{background-color:var(--primary);color:#fff}.position-size-label[data-v-9325822c]{width:20px;font-size:11px;font-weight:600;color:var(--text);text-align:center;flex-shrink:0}.btn[data-v-9325822c]{padding:4px 8px;border:1px solid var(--border);border-radius:4px;font-size:11px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn--sm[data-v-9325822c]{padding:2px 4px;font-size:10px}.btn--primary[data-v-9325822c]{background-color:var(--primary);color:#fff;border-color:var(--primary)}.btn--primary[data-v-9325822c]:hover{background-color:var(--button-hover);border-color:var(--button-hover)}.btn--danger[data-v-9325822c]{background-color:var(--status-error);color:#fff;border-color:var(--status-error)}.btn--danger[data-v-9325822c]:hover{background-color:#c0392b;border-color:#c0392b}.btn--text[data-v-9325822c]{background-color:transparent;color:var(--text-secondary);border-color:transparent}.btn--text[data-v-9325822c]:hover{background-color:var(--control-button-hover);color:var(--text)}.property-panel[data-v-9325822c]::-webkit-scrollbar,.tab-content[data-v-9325822c]::-webkit-scrollbar{width:6px}.property-panel[data-v-9325822c]::-webkit-scrollbar-track,.tab-content[data-v-9325822c]::-webkit-scrollbar-track{background:var(--background);border-radius:3px}.property-panel[data-v-9325822c]::-webkit-scrollbar-thumb,.tab-content[data-v-9325822c]::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.property-panel[data-v-9325822c]::-webkit-scrollbar-thumb:hover,.tab-content[data-v-9325822c]::-webkit-scrollbar-thumb:hover{background:var(--border-light)}.style-panel-content[data-v-9325822c]{flex:1;padding:12px;overflow-y:auto;background-color:var(--surface)}.small-size-item[data-v-9325822c]{flex:1;display:flex;align-items:center;gap:var(--spacing-sm)}.small-size-item span[data-v-9325822c]{width:40px;font-size:12px;font-weight:500;color:var(--text-secondary);flex-shrink:0}[data-v-9325822c]:root{--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .1);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .15), 0 1px 3px rgba(0, 0, 0, .1);--shadow-md: 0 4px 16px rgba(0, 0, 0, .2), 0 2px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .25), 0 4px 12px rgba(0, 0, 0, .15);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .3), 0 8px 24px rgba(0, 0, 0, .2);--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .35s ease;--color-success: #10b981;--color-warning: #f59e0b;--color-error: #ef4444;--color-info: #3b82f6}[data-v-9325822c]{box-sizing:border-box}button[data-v-9325822c],[role=button][data-v-9325822c],.btn[data-v-9325822c]{cursor:pointer;transition:all var(--transition-normal)}button[data-v-9325822c]:focus-visible,[role=button][data-v-9325822c]:focus-visible,.btn[data-v-9325822c]:focus-visible{outline:2px solid var(--primary);outline-offset:2px}button[data-v-9325822c]:disabled,[role=button][data-v-9325822c]:disabled,.btn[data-v-9325822c]:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}input[type=text][data-v-9325822c],input[type=number][data-v-9325822c],input[type=email][data-v-9325822c],input[type=password][data-v-9325822c],textarea[data-v-9325822c],select[data-v-9325822c]{transition:all var(--transition-normal)}input[type=text][data-v-9325822c]::placeholder,input[type=number][data-v-9325822c]::placeholder,input[type=email][data-v-9325822c]::placeholder,input[type=password][data-v-9325822c]::placeholder,textarea[data-v-9325822c]::placeholder,select[data-v-9325822c]::placeholder{color:var(--text-secondary);opacity:.7}input[type=text][data-v-9325822c]:focus,input[type=number][data-v-9325822c]:focus,input[type=email][data-v-9325822c]:focus,input[type=password][data-v-9325822c]:focus,textarea[data-v-9325822c]:focus,select[data-v-9325822c]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #3b82f626}input[type=text][data-v-9325822c]:hover:not(:focus),input[type=number][data-v-9325822c]:hover:not(:focus),input[type=email][data-v-9325822c]:hover:not(:focus),input[type=password][data-v-9325822c]:hover:not(:focus),textarea[data-v-9325822c]:hover:not(:focus),select[data-v-9325822c]:hover:not(:focus){border-color:#3b82f666}a[data-v-9325822c]{color:var(--primary);text-decoration:none;transition:color var(--transition-fast)}a[data-v-9325822c]:hover{color:var(--color-info);text-decoration:underline}[data-tooltip][data-v-9325822c]{position:relative}[data-tooltip][data-v-9325822c]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background-color:#000000e6;color:#fff;padding:6px 12px;border-radius:var(--radius-sm);font-size:12px;white-space:nowrap;opacity:0;visibility:hidden;transition:all var(--transition-normal);z-index:10000;pointer-events:none;box-shadow:var(--shadow-md)}[data-tooltip][data-v-9325822c]:hover:after{opacity:1;visibility:visible}.loading-spinner[data-v-9325822c]{display:inline-block;width:20px;height:20px;border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin-9325822c .8s linear infinite}@keyframes spin-9325822c{to{transform:rotate(360deg)}}.feedback-success[data-v-9325822c]{background-color:#10b9811a;border-color:var(--color-success);color:var(--color-success)}.feedback-error[data-v-9325822c]{background-color:#ef44441a;border-color:var(--color-error);color:var(--color-error)}.feedback-warning[data-v-9325822c]{background-color:#f59e0b1a;border-color:var(--color-warning);color:var(--color-warning)}.kbd[data-v-9325822c]{display:inline-block;padding:2px 6px;font-family:monospace;font-size:11px;background-color:var(--background);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:0 1px 2px #0000001a}.timer-panel-content[data-v-9325822c]{flex:1;display:flex;flex-direction:column;padding:var(--spacing-sm);gap:var(--spacing-xs);overflow-y:auto}.timer-header[data-v-9325822c]{display:flex;justify-content:flex-end;padding-bottom:var(--spacing-xs)}.timer-empty[data-v-9325822c]{padding:var(--spacing-md);text-align:center;color:var(--text-secondary);font-size:12px}.timer-list[data-v-9325822c]{display:flex;flex-direction:column;gap:var(--spacing-xs)}.timer-item[data-v-9325822c]{background-color:var(--background);border:1px solid var(--border);border-radius:4px;overflow:hidden;transition:all .2s ease}.timer-item[data-v-9325822c]:hover{border-color:var(--primary);box-shadow:0 1px 3px #3498db1a}.timer-item.active[data-v-9325822c]{border-color:var(--primary)}.timer-item-header[data-v-9325822c]{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-xs) var(--spacing-sm);background-color:var(--surface);cursor:pointer;transition:background-color .2s;min-height:28px}.timer-item-header[data-v-9325822c]:hover{background-color:var(--control-button-hover)}.timer-item-name[data-v-9325822c]{flex:1}.timer-name-input[data-v-9325822c]{width:100%;border:none;background:transparent;font-weight:600;color:var(--text);font-size:12px;padding:2px 0}.timer-name-input[data-v-9325822c]:focus{outline:none}.timer-item-status[data-v-9325822c]{display:flex;align-items:center}.toggle-switch[data-v-9325822c]{position:relative;display:inline-block;width:36px;height:20px}.toggle-switch input[data-v-9325822c]{opacity:0;width:0;height:0}.toggle-slider[data-v-9325822c]{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--border);transition:.3s;border-radius:20px}.toggle-slider[data-v-9325822c]:before{position:absolute;content:"";height:16px;width:16px;left:2px;bottom:2px;background-color:#fff;transition:.3s;border-radius:50%}input:checked+.toggle-slider[data-v-9325822c]{background-color:var(--primary)}input:checked+.toggle-slider[data-v-9325822c]:before{transform:translate(16px)}.timer-item-details[data-v-9325822c]{padding:var(--spacing-sm);border-top:1px solid var(--border);display:flex;flex-direction:column;gap:var(--spacing-sm)}.script-preview-container[data-v-9325822c]{display:flex;flex-direction:column;gap:6px}.script-preview[data-v-9325822c]{background-color:var(--background);border:1px solid var(--border);border-radius:4px;padding:6px 8px;max-height:60px;overflow:auto}.script-preview-code[data-v-9325822c]{font-family:Consolas,Monaco,monospace;font-size:11px;color:var(--text-secondary);white-space:pre-wrap;word-break:break-all}.btn--open-editor[data-v-9325822c]{display:flex;align-items:center;justify-content:center;gap:4px;font-size:12px;padding:4px 8px;width:100%}.btn--open-editor .btn-icon[data-v-9325822c]{font-size:13px}.timer-actions[data-v-9325822c]{display:flex;gap:var(--spacing-xs);justify-content:flex-end}.timer-logs[data-v-9325822c]{border-top:1px solid var(--border);padding-top:var(--spacing-sm)}.timer-logs h4[data-v-9325822c]{font-size:11px;font-weight:600;color:var(--text-secondary);margin-bottom:var(--spacing-xs);text-transform:uppercase;letter-spacing:.3px}.log-list[data-v-9325822c]{max-height:60px;overflow-y:auto;display:flex;flex-direction:column;gap:2px}.log-item[data-v-9325822c]{display:flex;gap:var(--spacing-xs);font-size:10px;padding:3px 6px;background-color:var(--surface);border-radius:2px;border-left:2px solid var(--primary)}.log-item.error[data-v-9325822c]{background-color:#ffebee;border-left-color:var(--status-error)}.log-time[data-v-9325822c]{color:var(--text-secondary);flex-shrink:0;font-weight:500}.log-success[data-v-9325822c]{color:var(--status-success)}.log-error[data-v-9325822c]{color:var(--status-error)}.timer-panel-content[data-v-9325822c]::-webkit-scrollbar,.log-list[data-v-9325822c]::-webkit-scrollbar{width:5px}.timer-panel-content[data-v-9325822c]::-webkit-scrollbar-track,.log-list[data-v-9325822c]::-webkit-scrollbar-track{background:var(--background);border-radius:2px}.timer-panel-content[data-v-9325822c]::-webkit-scrollbar-thumb,.log-list[data-v-9325822c]::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.timer-panel-content[data-v-9325822c]::-webkit-scrollbar-thumb:hover,.log-list[data-v-9325822c]::-webkit-scrollbar-thumb:hover{background:var(--border-light)}.property-panel{height:100%;overflow-y:auto;background-color:var(--surface);display:flex;flex-direction:column;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 12px;--spacing-lg: 20px}.property-section{flex:1;display:flex;flex-direction:column}.property-section h3{margin:0;font-size:13px;font-weight:600;color:var(--text);text-transform:uppercase;letter-spacing:.5px;padding:12px;border-bottom:1px solid var(--border);background-color:var(--background)}.property-tabs{display:flex;background-color:var(--background);border-bottom:1px solid var(--border);margin:0;padding:0}.tab-button{flex:1;padding:10px 12px;background-color:transparent;border:none;color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease;position:relative}.tab-button:hover{background-color:var(--control-button-hover);color:var(--text)}.tab-button.active{color:var(--primary);font-weight:600}.tab-button.active:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background-color:var(--primary)}.tab-content{flex:1;padding:12px;overflow-y:auto;background-color:var(--surface)}.property-group{margin-bottom:0;padding:10px;background-color:var(--background);border:1px solid var(--border);border-radius:6px;transition:all .2s ease;width:100%;box-sizing:border-box}.property-group:last-child{margin-bottom:0}.property-group:hover{border-color:var(--primary);box-shadow:0 2px 4px #3498db1a}.property-group label{display:block;font-size:11px;font-weight:600;color:var(--text);margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.property-item{display:flex;align-items:center;margin-bottom:6px;gap:8px;width:100%;box-sizing:border-box}.property-item:last-child{margin-bottom:0}.property-item>span{min-width:70px;width:auto;flex-shrink:0;font-size:11px;font-weight:500;color:var(--text-secondary)}.property-item input[type=text],.property-item input[type=number],.property-item select,.form-input{flex:1;padding:5px 8px;border:1px solid var(--border);border-radius:4px;background-color:var(--surface);color:var(--text);font-size:13px;transition:all .2s ease;min-width:0}.property-item select,.config-item select{height:30px!important;min-height:30px!important;line-height:1.4!important;min-width:80px;padding-right:24px;cursor:pointer}.property-panel select,.style-panel-content select,.generic-config select{height:30px!important;min-height:30px!important;line-height:1.4}.property-item input[type=text]:focus,.property-item input[type=number]:focus,.property-item select:focus,.form-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #3498db33}.property-item input[type=checkbox]{width:14px;height:14px;accent-color:var(--primary);cursor:pointer}.property-item input[type=color]{width:40px;height:24px;border:none;border-radius:4px;cursor:pointer;padding:2px;background-color:var(--surface)}.position-size-container{background-color:var(--surface);border:1px solid var(--border);border-radius:4px;padding:8px;margin-bottom:8px;width:100%;box-sizing:border-box}.position-size-row{display:flex;align-items:center;margin-bottom:6px;gap:6px;width:100%}.position-size-item{flex:1;display:flex;align-items:center;gap:var(--spacing-sm)}.position-size-row:last-child{margin-bottom:0}.position-size-input{flex:1;padding:4px 8px;border:1px solid var(--border);border-radius:4px;background-color:var(--surface);color:var(--text);font-size:11px;text-align:center;transition:all .2s ease}.position-size-input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #3498db33}.position-size-control{display:flex;align-items:center;flex:1;gap:6px}.position-size-buttons{display:flex;flex-direction:column;gap:2px}.position-size-btn{width:20px;height:14px;padding:0;border:1px solid var(--border);border-radius:2px;background-color:var(--surface);color:var(--text);font-size:10px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.position-size-btn:hover{background-color:var(--control-button-hover);border-color:var(--primary);color:var(--text)}.position-size-btn:active{background-color:var(--primary);color:#fff}.position-size-label{width:20px;font-size:11px;font-weight:600;color:var(--text);text-align:center;flex-shrink:0}.btn{padding:4px 8px;border:1px solid var(--border);border-radius:4px;font-size:11px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn--sm{padding:2px 4px;font-size:10px}.btn--primary{background-color:var(--primary);color:#fff;border-color:var(--primary)}.btn--primary:hover{background-color:var(--button-hover);border-color:var(--button-hover)}.btn--danger{background-color:var(--status-error);color:#fff;border-color:var(--status-error)}.btn--danger:hover{background-color:#c0392b;border-color:#c0392b}.btn--text{background-color:transparent;color:var(--text-secondary);border-color:transparent}.btn--text:hover{background-color:var(--control-button-hover);color:var(--text)}.property-panel::-webkit-scrollbar,.tab-content::-webkit-scrollbar{width:6px}.property-panel::-webkit-scrollbar-track,.tab-content::-webkit-scrollbar-track{background:var(--background);border-radius:3px}.property-panel::-webkit-scrollbar-thumb,.tab-content::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.property-panel::-webkit-scrollbar-thumb:hover,.tab-content::-webkit-scrollbar-thumb:hover{background:var(--border-light)}.style-panel-content{flex:1;padding:12px;overflow-y:auto;background-color:var(--surface)}.small-size-item{flex:1;display:flex;align-items:center;gap:var(--spacing-sm)}.small-size-item span{width:40px;font-size:12px;font-weight:500;color:var(--text-secondary);flex-shrink:0}:root{--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .1);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .15), 0 1px 3px rgba(0, 0, 0, .1);--shadow-md: 0 4px 16px rgba(0, 0, 0, .2), 0 2px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .25), 0 4px 12px rgba(0, 0, 0, .15);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .3), 0 8px 24px rgba(0, 0, 0, .2);--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .35s ease;--color-success: #10b981;--color-warning: #f59e0b;--color-error: #ef4444;--color-info: #3b82f6}*{box-sizing:border-box}button,[role=button],.btn{cursor:pointer;transition:all var(--transition-normal)}button:focus-visible,[role=button]:focus-visible,.btn:focus-visible{outline:2px solid var(--primary);outline-offset:2px}button:disabled,[role=button]:disabled,.btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}input[type=text],input[type=number],input[type=email],input[type=password],textarea,select{transition:all var(--transition-normal)}input[type=text]::placeholder,input[type=number]::placeholder,input[type=email]::placeholder,input[type=password]::placeholder,textarea::placeholder,select::placeholder{color:var(--text-secondary);opacity:.7}input[type=text]:focus,input[type=number]:focus,input[type=email]:focus,input[type=password]:focus,textarea:focus,select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #3b82f626}input[type=text]:hover:not(:focus),input[type=number]:hover:not(:focus),input[type=email]:hover:not(:focus),input[type=password]:hover:not(:focus),textarea:hover:not(:focus),select:hover:not(:focus){border-color:#3b82f666}a{color:var(--primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-info);text-decoration:underline}[data-tooltip]{position:relative}[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background-color:#000000e6;color:#fff;padding:6px 12px;border-radius:var(--radius-sm);font-size:12px;white-space:nowrap;opacity:0;visibility:hidden;transition:all var(--transition-normal);z-index:10000;pointer-events:none;box-shadow:var(--shadow-md)}[data-tooltip]:hover:after{opacity:1;visibility:visible}.loading-spinner{display:inline-block;width:20px;height:20px;border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.feedback-success{background-color:#10b9811a;border-color:var(--color-success);color:var(--color-success)}.feedback-error{background-color:#ef44441a;border-color:var(--color-error);color:var(--color-error)}.feedback-warning{background-color:#f59e0b1a;border-color:var(--color-warning);color:var(--color-warning)}.kbd{display:inline-block;padding:2px 6px;font-family:monospace;font-size:11px;background-color:var(--background);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:0 1px 2px #0000001a}.property-panel[data-v-71faa899]{margin:0;padding:0;display:flex;flex-direction:column;height:100%}.property-tabs[data-v-71faa899]{display:flex;height:var(--toolbar-height, 42px);background-color:var(--background);border-bottom:1px solid var(--border);margin:0;padding:0}.tab-button[data-v-71faa899]{flex:1;padding:10px 12px;background-color:transparent;border:none;color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:all .25s ease;position:relative;margin:0}.tab-button[data-v-71faa899]:hover{background-color:var(--control-button-hover);color:var(--text)}.tab-button.active[data-v-71faa899]{color:var(--primary);font-weight:600}.tab-button.active[data-v-71faa899]:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background-color:var(--primary);border-radius:2px 2px 0 0}.property-section h3[data-v-71faa899]{margin:0;display:flex;align-items:center;height:var(--toolbar-height, 42px);font-size:14px;font-weight:600;color:var(--text);padding:0 16px;border-bottom:1px solid var(--border);background-color:var(--background);letter-spacing:.3px}.property-section p[data-v-71faa899]{margin:0;color:var(--text-secondary);font-size:14px;text-align:center;padding:60px 24px;line-height:1.6}.tab-content[data-v-71faa899]{padding:0!important;margin:0!important;border:none!important;outline:none!important}.tab-content[data-v-71faa899]>*{margin-top:0!important}.style-panel-content[data-v-71faa899]{padding:0!important;margin:0!important}.template-card[data-v-34fcbadc]{width:220px;border:1px solid var(--border, #e0e0e0);border-radius:8px;overflow:hidden;cursor:pointer;transition:all .2s ease;background:var(--surface, #fff);flex-shrink:0}.template-card[data-v-34fcbadc]:hover{border-color:var(--primary, #409EFF);box-shadow:0 2px 12px #0000001a;transform:translateY(-2px)}.template-card--selected[data-v-34fcbadc]{border-color:var(--primary, #409EFF);box-shadow:0 0 0 2px var(--primary, #409EFF)}.template-card-preview[data-v-34fcbadc]{height:110px;position:relative;display:flex;align-items:center;justify-content:center}.template-card-size[data-v-34fcbadc]{position:absolute;top:4px;left:6px;font-size:10px;color:#ffffff80;background:#0000004d;padding:1px 6px;border-radius:3px}.template-card-icon[data-v-34fcbadc]{font-size:32px;opacity:.6}.template-card-thumb[data-v-34fcbadc]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.template-card-source[data-v-34fcbadc]{position:absolute;top:4px;right:6px;font-size:10px;color:#fffc;background:#0000004d;padding:1px 6px;border-radius:3px}.source-builtin[data-v-34fcbadc]{background:#409eff99}.source-user[data-v-34fcbadc]{background:#67c23a99}.source-market[data-v-34fcbadc]{background:#e6a23c99}.template-card-scope[data-v-34fcbadc]{position:absolute;bottom:4px;right:6px;font-size:9px;color:#ffffffa6;background:#00000040;padding:0 5px;border-radius:3px}.scope-project[data-v-34fcbadc]{background:#e6a23c80}.template-card-info[data-v-34fcbadc]{padding:8px 10px}.template-card-name[data-v-34fcbadc]{font-size:13px;font-weight:600;color:var(--text, #333);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.template-card-desc[data-v-34fcbadc]{font-size:11px;color:var(--text-secondary, #999);margin-top:2px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.template-card-tags[data-v-34fcbadc]{display:flex;gap:4px;margin-top:6px;flex-wrap:wrap}.template-card-tag[data-v-34fcbadc]{font-size:10px;color:var(--text-secondary, #999);background:var(--elevated, #f0f0f0);padding:0 4px;border-radius:2px}.template-card-actions[data-v-34fcbadc]{display:flex;justify-content:flex-end;gap:4px;padding:0 8px 6px}.gallery-overlay[data-v-6068942a]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:#0006;display:flex;align-items:center;justify-content:center}.gallery-panel[data-v-6068942a]{width:820px;max-height:85vh;background:var(--surface, #fff);border:1px solid var(--border, #e0e0e0);border-radius:8px;box-shadow:var(--shadow-modal, 0 4px 24px rgba(0, 0, 0, .15));overflow:hidden;display:flex;flex-direction:column}.gallery-header[data-v-6068942a]{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;border-bottom:1px solid var(--border, #e0e0e0)}.gallery-title[data-v-6068942a]{font-size:15px;font-weight:600;color:var(--text, #333)}.gallery-header-right[data-v-6068942a]{display:flex;align-items:center;gap:6px}.header-action-btn[data-v-6068942a]{padding:5px 12px;font-size:12px;border:1px solid var(--border, #d0d0d0);border-radius:4px;background:transparent;color:var(--text, #333);cursor:pointer;transition:all .15s}.header-action-btn[data-v-6068942a]:hover{background:var(--elevated, #f0f0f0);border-color:var(--primary, #409EFF);color:var(--primary, #409EFF)}.gallery-close[data-v-6068942a]{width:28px;height:28px;border:none;border-radius:4px;background:transparent;color:var(--text-secondary, #999);font-size:14px;cursor:pointer}.gallery-close[data-v-6068942a]:hover{background:var(--elevated, #f0f0f0);color:var(--text, #333)}.gallery-tabs[data-v-6068942a]{display:flex;gap:2px;padding:8px 16px;border-bottom:1px solid var(--border, #e0e0e0);overflow-x:auto}.gallery-tab[data-v-6068942a]{padding:5px 12px;font-size:12px;border:1px solid transparent;border-radius:4px;background:transparent;color:var(--text-secondary, #666);cursor:pointer;white-space:nowrap;transition:all .15s}.gallery-tab[data-v-6068942a]:hover{background:var(--elevated, #f0f0f0);color:var(--text, #333)}.gallery-tab.active[data-v-6068942a]{background:var(--primary, #409EFF);color:#fff}.gallery-search[data-v-6068942a]{padding:10px 16px}.search-input[data-v-6068942a]{width:100%;padding:7px 10px;font-size:13px;color:var(--text, #333);background:var(--elevated, #fafafa);border:1px solid var(--border, #d0d0d0);border-radius:4px;outline:none;box-sizing:border-box}.search-input[data-v-6068942a]:focus{border-color:var(--primary, #409EFF)}.gallery-loading[data-v-6068942a],.gallery-empty[data-v-6068942a]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px;color:var(--text-secondary, #999)}.empty-icon[data-v-6068942a]{font-size:40px;margin-bottom:8px}.empty-text[data-v-6068942a]{font-size:14px;font-weight:500;margin-bottom:4px}.empty-hint[data-v-6068942a]{font-size:12px}.gallery-grid[data-v-6068942a]{flex:1;overflow-y:auto;padding:12px 16px;display:flex;flex-wrap:wrap;gap:12px;align-content:flex-start}.gallery-footer[data-v-6068942a]{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;border-top:1px solid var(--border, #e0e0e0)}.footer-info[data-v-6068942a]{font-size:12px;color:var(--text-secondary, #999)}.footer-actions[data-v-6068942a]{display:flex;gap:8px}.btn[data-v-6068942a]{padding:7px 20px;font-size:13px;border:1px solid transparent;border-radius:4px;cursor:pointer;transition:all .15s}.btn-primary[data-v-6068942a]{background:var(--primary, #409EFF);color:#fff}.btn-primary[data-v-6068942a]:hover:not(:disabled){opacity:.85}.btn-primary[data-v-6068942a]:disabled{opacity:.5;cursor:not-allowed}.btn-secondary[data-v-6068942a]{background:transparent;color:var(--text, #333);border-color:var(--border, #d0d0d0)}.btn-secondary[data-v-6068942a]:hover{background:var(--elevated, #f0f0f0)}.dialog-overlay[data-v-03ab8e62]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:#0006;display:flex;align-items:center;justify-content:center}.dialog-panel[data-v-03ab8e62]{width:480px;max-height:80vh;background:var(--surface, #fff);border:1px solid var(--border, #e0e0e0);border-radius:8px;box-shadow:var(--shadow-modal, 0 4px 24px rgba(0, 0, 0, .15));overflow:hidden;display:flex;flex-direction:column}.dialog-header[data-v-03ab8e62]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border, #e0e0e0)}.dialog-title[data-v-03ab8e62]{font-size:15px;font-weight:600;color:var(--text, #333)}.dialog-close[data-v-03ab8e62]{width:28px;height:28px;border:none;border-radius:4px;background:transparent;color:var(--text-secondary, #999);font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center}.dialog-close[data-v-03ab8e62]:hover{background:var(--elevated, #f0f0f0);color:var(--text, #333)}.dialog-body[data-v-03ab8e62]{padding:20px;overflow-y:auto;flex:1}.form-group[data-v-03ab8e62]{margin-bottom:16px}.form-group[data-v-03ab8e62]:last-child{margin-bottom:0}.form-label[data-v-03ab8e62]{display:block;font-size:13px;font-weight:500;color:var(--text, #333);margin-bottom:6px}.required[data-v-03ab8e62]{color:var(--status-error, #F56C6C)}.form-input[data-v-03ab8e62],.form-select[data-v-03ab8e62],.form-textarea[data-v-03ab8e62]{width:100%;padding:8px 10px;font-size:13px;color:var(--text, #333);background:var(--elevated, #fafafa);border:1px solid var(--border, #d0d0d0);border-radius:4px;outline:none;transition:border-color .15s;box-sizing:border-box}.form-input[data-v-03ab8e62]:focus,.form-select[data-v-03ab8e62]:focus,.form-textarea[data-v-03ab8e62]:focus{border-color:var(--primary, #409EFF)}.form-textarea[data-v-03ab8e62]{resize:vertical;min-height:60px}.form-hint[data-v-03ab8e62]{display:block;font-size:11px;color:var(--text-secondary, #999);margin-top:4px}.dialog-footer[data-v-03ab8e62]{display:flex;justify-content:flex-end;gap:8px;padding:12px 20px;border-top:1px solid var(--border, #e0e0e0)}.btn[data-v-03ab8e62]{padding:7px 20px;font-size:13px;border:1px solid transparent;border-radius:4px;cursor:pointer;transition:all .15s}.btn-primary[data-v-03ab8e62]{background:var(--primary, #409EFF);color:#fff}.btn-primary[data-v-03ab8e62]:hover:not(:disabled){opacity:.85}.btn-primary[data-v-03ab8e62]:disabled{opacity:.5;cursor:not-allowed}.btn-secondary[data-v-03ab8e62]{background:transparent;color:var(--text, #333);border-color:var(--border, #d0d0d0)}.btn-secondary[data-v-03ab8e62]:hover{background:var(--elevated, #f0f0f0)}.page-tabs[data-v-8ace0a22]{background-color:transparent;border-bottom:1px solid var(--border);padding:0 10px;height:40px;display:flex;align-items:center;position:relative}.scroll-arrow[data-v-8ace0a22]{width:24px;height:30px;border:1px solid var(--border);background-color:var(--surface);color:var(--text);border-radius:4px;cursor:pointer;font-size:18px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;z-index:2;transition:all .2s}.scroll-arrow[data-v-8ace0a22]:hover{background-color:var(--control-button-hover);border-color:var(--primary);color:var(--primary)}.tabs-container[data-v-8ace0a22]{display:flex;align-items:center;gap:4px;height:100%;flex:1;overflow-x:auto;overflow-y:hidden;scroll-behavior:smooth;padding:0 4px}.tabs-container[data-v-8ace0a22]::-webkit-scrollbar{height:4px}.tabs-container[data-v-8ace0a22]::-webkit-scrollbar-track{background:transparent}.tabs-container[data-v-8ace0a22]::-webkit-scrollbar-thumb{background:var(--border);border-radius:2px}.tabs-container[data-v-8ace0a22]::-webkit-scrollbar-thumb:hover{background:var(--border-light)}.tab-item[data-v-8ace0a22]{display:flex;align-items:center;gap:6px;padding:0 10px;height:30px;background-color:var(--surface);border:1px solid var(--border);border-radius:4px 4px 0 0;cursor:pointer;transition:all .2s;position:relative;bottom:-1px;color:var(--text);font-size:12px;-webkit-user-select:none;user-select:none;flex-shrink:0;min-width:80px;max-width:200px}.tab-item[data-v-8ace0a22]:hover{background-color:var(--control-button-hover)}.tab-item.active[data-v-8ace0a22]{background-color:var(--primary);color:#fff;border-color:var(--primary);z-index:1}.tab-item.dragging[data-v-8ace0a22]{opacity:.4}.tab-item.drag-over[data-v-8ace0a22]{border-left:3px solid var(--primary)}.tab-icon[data-v-8ace0a22]{font-size:13px;flex-shrink:0}.tab-icon-default[data-v-8ace0a22]{opacity:.5}.tab-name[data-v-8ace0a22]{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.tab-dirty[data-v-8ace0a22]{color:#ff9800;font-size:14px;flex-shrink:0;line-height:1}.tab-item.active .tab-dirty[data-v-8ace0a22]{color:#fff5cc}.tab-outdated[data-v-8ace0a22]{color:var(--status-info, #2196f3);font-size:12px;font-weight:700;flex-shrink:0;line-height:1}.tab-item.active .tab-outdated[data-v-8ace0a22]{color:#d6ecff}.tab-close[data-v-8ace0a22]{width:18px;height:18px;border:none;background:transparent;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;border-radius:2px;color:inherit;opacity:.6;flex-shrink:0;padding:0;line-height:1;transition:all .2s}.tab-close[data-v-8ace0a22]:hover{background-color:var(--primary-hover-overlay, rgba(255, 255, 255, .3));opacity:1}.tab-close[data-v-8ace0a22]:disabled{opacity:.3;cursor:not-allowed}.add-tab-button[data-v-8ace0a22]{width:30px;height:30px;border:1px dashed var(--border);background-color:var(--surface);border-radius:4px 4px 0 0;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;transition:all .2s;position:relative;bottom:-1px;color:var(--text);flex-shrink:0}.add-tab-button[data-v-8ace0a22]:hover{background-color:var(--control-button-hover);border-color:var(--primary);border-style:solid}.tab-context-menu[data-v-8ace0a22]{position:fixed;background-color:var(--surface);border:1px solid var(--border);border-radius:6px;box-shadow:var(--shadow-medium);z-index:9999;min-width:180px;padding:4px 0;font-size:13px;color:var(--text)}.menu-item[data-v-8ace0a22]{display:flex;align-items:center;gap:8px;padding:8px 12px;cursor:pointer;transition:background-color .15s}.menu-item[data-v-8ace0a22]:hover{background-color:var(--control-button-hover)}.menu-item.disabled[data-v-8ace0a22]{opacity:.4;cursor:not-allowed}.menu-item.disabled[data-v-8ace0a22]:hover{background-color:transparent}.menu-item-danger[data-v-8ace0a22]{color:var(--status-error)}.menu-item-danger[data-v-8ace0a22]:hover{background-color:#f443361a}.menu-icon[data-v-8ace0a22]{font-size:14px;width:18px;text-align:center;flex-shrink:0}.menu-divider[data-v-8ace0a22]{height:1px;background-color:var(--border);margin:4px 0}.icon-picker-overlay[data-v-8ace0a22]{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--backdrop, rgba(0, 0, 0, .4));z-index:10000;display:flex;align-items:center;justify-content:center}.icon-picker[data-v-8ace0a22]{background-color:var(--surface);border-radius:8px;box-shadow:var(--shadow-large);width:380px;max-width:90vw;padding:16px}.icon-picker-header[data-v-8ace0a22]{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:14px;font-weight:600;color:var(--text)}.icon-picker-close[data-v-8ace0a22]{width:24px;height:24px;border:none;background:transparent;font-size:18px;cursor:pointer;border-radius:4px;color:var(--text)}.icon-picker-close[data-v-8ace0a22]:hover{background-color:var(--control-button-hover)}.icon-picker-grid[data-v-8ace0a22]{display:grid;grid-template-columns:repeat(6,1fr);gap:4px;max-height:280px;overflow-y:auto}.icon-picker-item[data-v-8ace0a22]{width:100%;aspect-ratio:1;border:1px solid var(--border);background-color:var(--surface);border-radius:4px;cursor:pointer;font-size:22px;display:flex;align-items:center;justify-content:center;transition:all .2s}.icon-picker-item[data-v-8ace0a22]:hover{background-color:var(--control-button-hover);border-color:var(--primary);transform:scale(1.05)}.icon-picker-item.active[data-v-8ace0a22]{background-color:var(--primary);color:#fff;border-color:var(--primary)}.icon-picker-footer[data-v-8ace0a22]{margin-top:12px;display:flex;justify-content:flex-end}.icon-picker-clear[data-v-8ace0a22]{padding:6px 12px;border:1px solid var(--border);background-color:var(--surface);color:var(--text);border-radius:4px;cursor:pointer;font-size:12px}.icon-picker-clear[data-v-8ace0a22]:hover{background-color:var(--control-button-hover)}.property-panel[data-v-6c973b56]{height:100%;overflow-y:auto;background-color:var(--surface);display:flex;flex-direction:column;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 12px;--spacing-lg: 20px}.property-section[data-v-6c973b56]{flex:1;display:flex;flex-direction:column}.property-section h3[data-v-6c973b56]{margin:0;font-size:13px;font-weight:600;color:var(--text);text-transform:uppercase;letter-spacing:.5px;padding:12px;border-bottom:1px solid var(--border);background-color:var(--background)}.property-tabs[data-v-6c973b56]{display:flex;background-color:var(--background);border-bottom:1px solid var(--border);margin:0;padding:0}.tab-button[data-v-6c973b56]{flex:1;padding:10px 12px;background-color:transparent;border:none;color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:all .2s ease;position:relative}.tab-button[data-v-6c973b56]:hover{background-color:var(--control-button-hover);color:var(--text)}.tab-button.active[data-v-6c973b56]{color:var(--primary);font-weight:600}.tab-button.active[data-v-6c973b56]:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background-color:var(--primary)}.tab-content[data-v-6c973b56]{flex:1;padding:12px;overflow-y:auto;background-color:var(--surface)}.property-group[data-v-6c973b56]{margin-bottom:0;padding:10px;background-color:var(--background);border:1px solid var(--border);border-radius:6px;transition:all .2s ease;width:100%;box-sizing:border-box}.property-group[data-v-6c973b56]:last-child{margin-bottom:0}.property-group[data-v-6c973b56]:hover{border-color:var(--primary);box-shadow:0 2px 4px #3498db1a}.property-group label[data-v-6c973b56]{display:block;font-size:11px;font-weight:600;color:var(--text);margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.property-item[data-v-6c973b56]{display:flex;align-items:center;margin-bottom:6px;gap:8px;width:100%;box-sizing:border-box}.property-item[data-v-6c973b56]:last-child{margin-bottom:0}.property-item>span[data-v-6c973b56]{min-width:70px;width:auto;flex-shrink:0;font-size:11px;font-weight:500;color:var(--text-secondary)}.property-item input[type=text][data-v-6c973b56],.property-item input[type=number][data-v-6c973b56],.property-item select[data-v-6c973b56],.form-input[data-v-6c973b56]{flex:1;padding:5px 8px;border:1px solid var(--border);border-radius:4px;background-color:var(--surface);color:var(--text);font-size:13px;transition:all .2s ease;min-width:0}.property-item select[data-v-6c973b56],.config-item select[data-v-6c973b56]{height:30px!important;min-height:30px!important;line-height:1.4!important;min-width:80px;padding-right:24px;cursor:pointer}.property-panel select[data-v-6c973b56],.style-panel-content select[data-v-6c973b56],.generic-config select[data-v-6c973b56]{height:30px!important;min-height:30px!important;line-height:1.4}.property-item input[type=text][data-v-6c973b56]:focus,.property-item input[type=number][data-v-6c973b56]:focus,.property-item select[data-v-6c973b56]:focus,.form-input[data-v-6c973b56]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #3498db33}.property-item input[type=checkbox][data-v-6c973b56]{width:14px;height:14px;accent-color:var(--primary);cursor:pointer}.property-item input[type=color][data-v-6c973b56]{width:40px;height:24px;border:none;border-radius:4px;cursor:pointer;padding:2px;background-color:var(--surface)}.position-size-container[data-v-6c973b56]{background-color:var(--surface);border:1px solid var(--border);border-radius:4px;padding:8px;margin-bottom:8px;width:100%;box-sizing:border-box}.position-size-row[data-v-6c973b56]{display:flex;align-items:center;margin-bottom:6px;gap:6px;width:100%}.position-size-item[data-v-6c973b56]{flex:1;display:flex;align-items:center;gap:var(--spacing-sm)}.position-size-row[data-v-6c973b56]:last-child{margin-bottom:0}.position-size-input[data-v-6c973b56]{flex:1;padding:4px 8px;border:1px solid var(--border);border-radius:4px;background-color:var(--surface);color:var(--text);font-size:11px;text-align:center;transition:all .2s ease}.position-size-input[data-v-6c973b56]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #3498db33}.position-size-control[data-v-6c973b56]{display:flex;align-items:center;flex:1;gap:6px}.position-size-buttons[data-v-6c973b56]{display:flex;flex-direction:column;gap:2px}.position-size-btn[data-v-6c973b56]{width:20px;height:14px;padding:0;border:1px solid var(--border);border-radius:2px;background-color:var(--surface);color:var(--text);font-size:10px;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center}.position-size-btn[data-v-6c973b56]:hover{background-color:var(--control-button-hover);border-color:var(--primary);color:var(--text)}.position-size-btn[data-v-6c973b56]:active{background-color:var(--primary);color:#fff}.position-size-label[data-v-6c973b56]{width:20px;font-size:11px;font-weight:600;color:var(--text);text-align:center;flex-shrink:0}.btn[data-v-6c973b56]{padding:4px 8px;border:1px solid var(--border);border-radius:4px;font-size:11px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn--sm[data-v-6c973b56]{padding:2px 4px;font-size:10px}.btn--primary[data-v-6c973b56]{background-color:var(--primary);color:#fff;border-color:var(--primary)}.btn--primary[data-v-6c973b56]:hover{background-color:var(--button-hover);border-color:var(--button-hover)}.btn--danger[data-v-6c973b56]{background-color:var(--status-error);color:#fff;border-color:var(--status-error)}.btn--danger[data-v-6c973b56]:hover{background-color:#c0392b;border-color:#c0392b}.btn--text[data-v-6c973b56]{background-color:transparent;color:var(--text-secondary);border-color:transparent}.btn--text[data-v-6c973b56]:hover{background-color:var(--control-button-hover);color:var(--text)}.property-panel[data-v-6c973b56]::-webkit-scrollbar,.tab-content[data-v-6c973b56]::-webkit-scrollbar{width:6px}.property-panel[data-v-6c973b56]::-webkit-scrollbar-track,.tab-content[data-v-6c973b56]::-webkit-scrollbar-track{background:var(--background);border-radius:3px}.property-panel[data-v-6c973b56]::-webkit-scrollbar-thumb,.tab-content[data-v-6c973b56]::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.property-panel[data-v-6c973b56]::-webkit-scrollbar-thumb:hover,.tab-content[data-v-6c973b56]::-webkit-scrollbar-thumb:hover{background:var(--border-light)}.style-panel-content[data-v-6c973b56]{flex:1;padding:12px;overflow-y:auto;background-color:var(--surface)}.small-size-item[data-v-6c973b56]{flex:1;display:flex;align-items:center;gap:var(--spacing-sm)}.small-size-item span[data-v-6c973b56]{width:40px;font-size:12px;font-weight:500;color:var(--text-secondary);flex-shrink:0}[data-v-6c973b56]:root{--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--shadow-xs: 0 1px 2px rgba(0, 0, 0, .1);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .15), 0 1px 3px rgba(0, 0, 0, .1);--shadow-md: 0 4px 16px rgba(0, 0, 0, .2), 0 2px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .25), 0 4px 12px rgba(0, 0, 0, .15);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .3), 0 8px 24px rgba(0, 0, 0, .2);--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .35s ease;--color-success: #10b981;--color-warning: #f59e0b;--color-error: #ef4444;--color-info: #3b82f6}[data-v-6c973b56]{box-sizing:border-box}button[data-v-6c973b56],[role=button][data-v-6c973b56],.btn[data-v-6c973b56]{cursor:pointer;transition:all var(--transition-normal)}button[data-v-6c973b56]:focus-visible,[role=button][data-v-6c973b56]:focus-visible,.btn[data-v-6c973b56]:focus-visible{outline:2px solid var(--primary);outline-offset:2px}button[data-v-6c973b56]:disabled,[role=button][data-v-6c973b56]:disabled,.btn[data-v-6c973b56]:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}input[type=text][data-v-6c973b56],input[type=number][data-v-6c973b56],input[type=email][data-v-6c973b56],input[type=password][data-v-6c973b56],textarea[data-v-6c973b56],select[data-v-6c973b56]{transition:all var(--transition-normal)}input[type=text][data-v-6c973b56]::placeholder,input[type=number][data-v-6c973b56]::placeholder,input[type=email][data-v-6c973b56]::placeholder,input[type=password][data-v-6c973b56]::placeholder,textarea[data-v-6c973b56]::placeholder,select[data-v-6c973b56]::placeholder{color:var(--text-secondary);opacity:.7}input[type=text][data-v-6c973b56]:focus,input[type=number][data-v-6c973b56]:focus,input[type=email][data-v-6c973b56]:focus,input[type=password][data-v-6c973b56]:focus,textarea[data-v-6c973b56]:focus,select[data-v-6c973b56]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #3b82f626}input[type=text][data-v-6c973b56]:hover:not(:focus),input[type=number][data-v-6c973b56]:hover:not(:focus),input[type=email][data-v-6c973b56]:hover:not(:focus),input[type=password][data-v-6c973b56]:hover:not(:focus),textarea[data-v-6c973b56]:hover:not(:focus),select[data-v-6c973b56]:hover:not(:focus){border-color:#3b82f666}a[data-v-6c973b56]{color:var(--primary);text-decoration:none;transition:color var(--transition-fast)}a[data-v-6c973b56]:hover{color:var(--color-info);text-decoration:underline}[data-tooltip][data-v-6c973b56]{position:relative}[data-tooltip][data-v-6c973b56]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background-color:#000000e6;color:#fff;padding:6px 12px;border-radius:var(--radius-sm);font-size:12px;white-space:nowrap;opacity:0;visibility:hidden;transition:all var(--transition-normal);z-index:10000;pointer-events:none;box-shadow:var(--shadow-md)}[data-tooltip][data-v-6c973b56]:hover:after{opacity:1;visibility:visible}.loading-spinner[data-v-6c973b56]{display:inline-block;width:20px;height:20px;border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;animation:spin-6c973b56 .8s linear infinite}@keyframes spin-6c973b56{to{transform:rotate(360deg)}}.feedback-success[data-v-6c973b56]{background-color:#10b9811a;border-color:var(--color-success);color:var(--color-success)}.feedback-error[data-v-6c973b56]{background-color:#ef44441a;border-color:var(--color-error);color:var(--color-error)}.feedback-warning[data-v-6c973b56]{background-color:#f59e0b1a;border-color:var(--color-warning);color:var(--color-warning)}.kbd[data-v-6c973b56]{display:inline-block;padding:2px 6px;font-family:monospace;font-size:11px;background-color:var(--background);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:0 1px 2px #0000001a}.tab-panel[data-v-6c973b56]{display:flex;flex-direction:column;height:100%;background-color:var(--surface);overflow:hidden}[data-v-6c973b56] .property-tabs{display:flex;background-color:var(--background);border-bottom:1px solid var(--border);margin:0;padding:0}[data-v-6c973b56] .tab-button{flex:1;padding:4px 8px;background-color:transparent;border:none;color:var(--text-secondary);font-size:11px;font-weight:500;cursor:pointer;transition:all .2s ease;position:relative;margin:0}[data-v-6c973b56] .tab-button:hover{background-color:var(--control-button-hover);color:var(--text)}[data-v-6c973b56] .tab-button.active{color:var(--primary);font-weight:600}[data-v-6c973b56] .tab-button.active:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:2px;background-color:var(--primary);border-radius:2px 2px 0 0}.tab-content[data-v-6c973b56]{flex:1;padding:0!important;overflow-y:auto;background-color:var(--surface);margin:0!important;border:none!important;outline:none!important}.tab-content[data-v-6c973b56]>*{margin-top:0!important}.layer-section[data-v-6c973b56]{border-top:1px solid var(--border);flex-shrink:0;max-height:250px;overflow:auto}.debug-tools-container[data-v-ded1c35d]{display:flex;height:100%;position:relative}.drawer-button[data-v-ded1c35d]{position:absolute;top:50%;left:0;transform:translateY(-50%);width:20px;height:60px;border:1px solid var(--border);border-left:none;border-top-right-radius:4px;border-bottom-right-radius:4px;background-color:var(--surface);color:var(--text);font-size:12px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease;z-index:10}.drawer-button[data-v-ded1c35d]:hover{background-color:var(--control-button-hover)}.drawer-button.expanded[data-v-ded1c35d]{left:300px}.debug-tools[data-v-ded1c35d]{background-color:var(--background);border-left:1px solid var(--border);padding:10px;width:300px;height:100%;overflow-y:hidden;transition:all .3s ease;transform:translate(0)}.debug-tools[data-v-ded1c35d]:not(.expanded){transform:translate(-100%)}.debug-section[data-v-ded1c35d]{margin-bottom:20px}.debug-section h3[data-v-ded1c35d]{margin:0 0 10px;font-size:14px;font-weight:700;color:var(--text)}.debug-panel[data-v-ded1c35d]{margin-bottom:15px;padding:10px;background-color:var(--surface);border-radius:4px;border:1px solid var(--border)}.debug-panel h4[data-v-ded1c35d]{margin:0 0 10px;font-size:12px;font-weight:700;color:var(--text)}.hierarchy-view[data-v-ded1c35d]{max-height:200px;overflow-y:hidden}.hierarchy-list[data-v-ded1c35d]{display:flex;flex-direction:column;gap:2px}.hierarchy-item[data-v-ded1c35d]{display:flex;align-items:center;gap:5px;padding:5px;border-radius:3px;cursor:pointer;font-size:11px;transition:all .2s;color:var(--text)}.hierarchy-item[data-v-ded1c35d]:hover{background-color:var(--control-button-hover)}.hierarchy-item.selected[data-v-ded1c35d]{background-color:var(--primary);color:#fff}.hierarchy-indent[data-v-ded1c35d]{flex-shrink:0}.hierarchy-icon[data-v-ded1c35d]{font-size:12px;flex-shrink:0}.hierarchy-name[data-v-ded1c35d]{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hierarchy-type[data-v-ded1c35d]{color:var(--text-secondary);flex-shrink:0}.hierarchy-id[data-v-ded1c35d]{color:var(--text-secondary);flex-shrink:0;font-size:10px;max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hierarchy-zindex[data-v-ded1c35d]{color:var(--text-secondary);flex-shrink:0;font-size:10px}.no-graphics[data-v-ded1c35d]{padding:20px;text-align:center;color:var(--text-secondary);font-size:12px}.debug-info[data-v-ded1c35d]{display:flex;flex-direction:column;gap:5px}.info-item[data-v-ded1c35d]{display:flex;justify-content:space-between;font-size:11px;color:var(--text)}.info-item span[data-v-ded1c35d]:last-child{color:var(--text-secondary)}.panel-header[data-v-ded1c35d]{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.clear-button[data-v-ded1c35d]{padding:2px 6px;border:1px solid var(--border);border-radius:3px;font-size:10px;background-color:var(--control-button-background);color:var(--control-button-text);cursor:pointer;transition:all .2s}.clear-button[data-v-ded1c35d]:hover{background-color:var(--control-button-hover)}.console-logs[data-v-ded1c35d]{max-height:200px;overflow-y:hidden;border:1px solid var(--border);border-radius:3px;padding:5px;background-color:var(--background)}.log-item[data-v-ded1c35d]{display:flex;align-items:flex-start;gap:5px;margin-bottom:3px;font-size:10px;line-height:1.2}.log-time[data-v-ded1c35d]{color:var(--text-secondary);flex-shrink:0;min-width:60px}.log-level[data-v-ded1c35d]{flex-shrink:0;min-width:50px;font-weight:700}.log-level.LOG[data-v-ded1c35d]{color:var(--text)}.log-level.ERROR[data-v-ded1c35d]{color:#f44336}.log-level.WARN[data-v-ded1c35d]{color:#ff9800}.log-level.INFO[data-v-ded1c35d]{color:#2196f3}.log-message[data-v-ded1c35d]{flex:1;word-break:break-all;color:var(--text)}.log-item.log[data-v-ded1c35d]{border-left:2px solid var(--text);padding-left:5px}.log-item.error[data-v-ded1c35d]{border-left:2px solid #f44336;padding-left:5px}.log-item.warn[data-v-ded1c35d]{border-left:2px solid #ff9800;padding-left:5px}.log-item.info[data-v-ded1c35d]{border-left:2px solid #2196f3;padding-left:5px}.error-history[data-v-ded1c35d]{max-height:200px;overflow-y:auto;border:1px solid var(--border);border-radius:3px;padding:5px;background-color:var(--background)}.error-item[data-v-ded1c35d]{margin-bottom:5px;padding:8px;border-radius:4px;cursor:pointer;transition:all .2s}.error-item[data-v-ded1c35d]:hover{background-color:var(--control-button-hover)}.error-item.storageerror[data-v-ded1c35d]{border-left:3px solid #ff9800;background-color:#ff98000d}.error-item.scripterror[data-v-ded1c35d]{border-left:3px solid #9c27b0;background-color:#9c27b00d}.error-item.exporterror[data-v-ded1c35d]{border-left:3px solid #f44336;background-color:#f443360d}.error-item.importerror[data-v-ded1c35d]{border-left:3px solid #e91e63;background-color:#e91e630d}.error-item.serializationerror[data-v-ded1c35d]{border-left:3px solid #673ab7;background-color:#673ab70d}.error-item.validationerror[data-v-ded1c35d]{border-left:3px solid #3f51b5;background-color:#3f51b50d}.error-item.graphicerror[data-v-ded1c35d]{border-left:3px solid #f44336;background-color:#f443360d}.error-header[data-v-ded1c35d]{display:flex;align-items:center;gap:6px;margin-bottom:4px}.error-icon[data-v-ded1c35d]{font-size:12px}.error-type[data-v-ded1c35d]{font-weight:700;font-size:11px;color:var(--text)}.error-time[data-v-ded1c35d]{margin-left:auto;font-size:10px;color:var(--text-secondary)}.error-message[data-v-ded1c35d]{font-size:11px;color:var(--text);word-break:break-word}.error-details[data-v-ded1c35d]{margin-top:8px;padding-top:8px;border-top:1px solid var(--border)}.error-context[data-v-ded1c35d]{font-size:10px;color:var(--text-secondary);margin-bottom:4px}.error-stack[data-v-ded1c35d]{font-size:10px;color:var(--text-secondary)}.error-stack pre[data-v-ded1c35d]{margin:4px 0 0;padding:4px;background-color:var(--surface);border-radius:2px;overflow-x:auto;font-size:9px;line-height:1.4}.no-errors[data-v-ded1c35d]{padding:20px;text-align:center;color:var(--text-secondary);font-size:12px}.test-page[data-v-047dc2dd]{padding:20px;max-width:400px;margin:0 auto}h1[data-v-047dc2dd]{font-size:18px;margin-bottom:8px}h2[data-v-047dc2dd]{font-size:14px;margin-top:16px}h3[data-v-047dc2dd]{font-size:12px;color:var(--text-secondary)}.test-info[data-v-047dc2dd]{color:var(--text-secondary);font-size:13px;margin-bottom:12px}.test-controls[data-v-047dc2dd]{display:flex;gap:12px;align-items:center;margin-bottom:12px}.type-select[data-v-047dc2dd]{flex:1;padding:4px 8px}.test-results[data-v-047dc2dd]{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.test-item[data-v-047dc2dd]{display:flex;gap:6px;align-items:center;padding:4px 8px;border:1px solid var(--border);border-radius:4px;font-size:12px;cursor:pointer;transition:all .15s}.test-item[data-v-047dc2dd]:hover{border-color:var(--primary)}.test-item.active[data-v-047dc2dd]{background:var(--primary-light, #e8e8ff);border-color:var(--primary)}.test-item.error[data-v-047dc2dd]{border-color:#e74c3c;background:#fdecea}.test-item.success[data-v-047dc2dd]{border-color:#27ae60;background:#eafaf1}.test-status.success[data-v-047dc2dd]{color:#27ae60}.test-status.error[data-v-047dc2dd]{color:#e74c3c}.test-status[data-v-047dc2dd]{color:var(--text-tertiary)}.test-panel[data-v-047dc2dd]{border:1px solid var(--border);border-radius:4px;padding:12px}.brand-logo[data-v-2b4d4ff0]{display:flex;align-items:center;gap:10px;padding:0 20px;border-right:1px solid rgba(255,255,255,.1)}.logo-icon[data-v-2b4d4ff0]{width:32px;height:32px;border-radius:6px;flex-shrink:0}.system-name[data-v-2b4d4ff0]{color:var(--header-text);font-size:15px;font-weight:700;letter-spacing:1px}.menu-dropdown[data-v-56b6adf3]{position:absolute;top:100%;left:0;background-color:var(--surface);border:1px solid var(--border);border-radius:6px;box-shadow:var(--shadow-medium);min-width:200px;z-index:1000;margin-top:8px;overflow:hidden}.dropdown-content[data-v-56b6adf3]{padding:8px 0}.dropdown-item[data-v-56b6adf3]{display:flex;align-items:center;gap:12px;width:100%;padding:8px 16px;border:none;background:none;cursor:pointer;font-size:14px;color:var(--text);transition:all .2s ease;text-align:left;border-bottom:1px solid var(--border)}.dropdown-item[data-v-56b6adf3]:last-child{border-bottom:none}.dropdown-item[data-v-56b6adf3]:hover{background-color:var(--control-button-hover);color:var(--primary)}.dropdown-icon[data-v-56b6adf3]{font-size:16px;width:20px;text-align:center;display:inline-flex;align-items:center;justify-content:center}.dropdown-icon[data-v-56b6adf3] svg{width:16px;height:16px}.dropdown-text[data-v-56b6adf3]{flex:1}.dropdown-shortcut[data-v-56b6adf3]{font-size:12px;color:var(--text-secondary);font-family:monospace}.menu-submenu[data-v-07ba228b]{position:absolute;top:100%;left:0;background-color:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 8px 24px #0000001f,0 2px 8px #00000014;min-width:580px;max-width:720px;z-index:1000;margin-top:8px;overflow:hidden;animation:menuFadeIn-07ba228b .25s ease-out}@keyframes menuFadeIn-07ba228b{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.submenu-header[data-v-07ba228b]{padding:16px 20px;background:linear-gradient(135deg,var(--background) 0%,rgba(var(--primary-rgb, 59, 130, 246),.03) 100%);border-bottom:1px solid var(--border);font-weight:600;font-size:14px;color:var(--text);letter-spacing:.3px}.submenu-content[data-v-07ba228b]{padding:20px}.primary-tabs[data-v-07ba228b]{display:flex;gap:4px;margin-bottom:16px;border-bottom:2px solid var(--border);padding-bottom:0}.primary-tab[data-v-07ba228b]{padding:10px 16px;border:none;border-bottom:2px solid transparent;background:none;cursor:pointer;font-size:13px;color:var(--text-secondary);transition:all .25s cubic-bezier(.4,0,.2,1);margin-bottom:-2px;white-space:nowrap;position:relative;font-weight:500}.primary-tab[data-v-07ba228b]:after{content:"";position:absolute;bottom:-2px;left:50%;width:0;height:2px;background:var(--primary);transition:all .25s cubic-bezier(.4,0,.2,1);transform:translate(-50%)}.primary-tab[data-v-07ba228b]:hover{color:var(--primary);background-color:rgba(var(--primary-rgb, 59, 130, 246),.04)}.primary-tab[data-v-07ba228b]:hover:after{width:60%}.primary-tab.active[data-v-07ba228b]{color:var(--primary);font-weight:600}.primary-tab.active[data-v-07ba228b]:after{width:100%}.submenu-categories[data-v-07ba228b]{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.category-button[data-v-07ba228b]{padding:7px 14px;border:1.5px solid var(--border);border-radius:20px;background-color:var(--background);cursor:pointer;font-size:12px;transition:all .25s cubic-bezier(.4,0,.2,1);color:var(--text-secondary);font-weight:500;position:relative;overflow:hidden}.category-button[data-v-07ba228b]:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--primary);opacity:0;transition:opacity .25s ease}.category-button[data-v-07ba228b]:hover{border-color:var(--primary);color:var(--primary);transform:translateY(-1px);box-shadow:0 2px 8px rgba(var(--primary-rgb, 59, 130, 246),.15)}.category-button.active[data-v-07ba228b]{background:linear-gradient(135deg,var(--primary) 0%,rgba(var(--primary-rgb, 59, 130, 246),.85) 100%);color:#fff;border-color:var(--primary);box-shadow:0 2px 12px rgba(var(--primary-rgb, 59, 130, 246),.3);transform:translateY(-1px)}.submenu-items[data-v-07ba228b]{display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:14px;max-height:400px;overflow-y:auto;padding:4px}.submenu-item[data-v-07ba228b]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:18px 14px;background:linear-gradient(145deg,var(--background) 0%,rgba(var(--surface-rgb, 255, 255, 255),.5) 100%);border:1.5px solid var(--border);border-radius:12px;cursor:grab;transition:all .3s cubic-bezier(.4,0,.2,1);color:var(--text);min-height:122px;position:relative;overflow:hidden;animation:itemFadeIn-07ba228b .4s ease-out backwards}@keyframes itemFadeIn-07ba228b{0%{opacity:0;transform:scale(.9) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}.submenu-item[data-v-07ba228b]:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 50% 30%,rgba(var(--primary-rgb, 59, 130, 246),.08) 0%,transparent 70%);opacity:0;transition:opacity .3s ease}.submenu-item[data-v-07ba228b]:hover{background:linear-gradient(145deg,var(--control-button-hover) 0%,var(--background) 100%);border-color:var(--primary);transform:translateY(-4px) scale(1.02);box-shadow:0 8px 20px rgba(var(--primary-rgb, 59, 130, 246),.15),0 2px 6px #00000014}.submenu-item[data-v-07ba228b]:hover:before{opacity:1}.submenu-item:hover .item-icon-wrapper[data-v-07ba228b]{transform:scale(1.1)}.submenu-item:hover .item-thumbnail[data-v-07ba228b]{filter:drop-shadow(0 2px 8px rgba(var(--primary-rgb, 59, 130, 246),.3))}.submenu-item[data-v-07ba228b]:active{cursor:grabbing;transform:translateY(-2px) scale(.98);transition-duration:.1s}.item-icon-wrapper[data-v-07ba228b]{width:74px;height:74px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,rgba(var(--primary-rgb, 59, 130, 246),.08),rgba(var(--primary-rgb, 59, 130, 246),.02));border-radius:14px;margin-bottom:12px;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-shadow:inset 0 0 16px rgba(var(--primary-rgb, 59, 130, 246),.1)}.item-icon-wrapper[data-v-07ba228b]:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:12px;border:1px solid rgba(var(--primary-rgb, 59, 130, 246),.1);pointer-events:none}.item-icon[data-v-07ba228b]{color:var(--primary);transition:all .3s ease}.item-thumbnail[data-v-07ba228b]{width:60px;height:60px;object-fit:contain;transition:all .3s ease;image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}.item-placeholder[data-v-07ba228b]{width:60px;height:60px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:linear-gradient(135deg,rgba(var(--primary-rgb, 59, 130, 246),.14),rgba(var(--primary-rgb, 59, 130, 246),.04));border:1px dashed rgba(var(--primary-rgb, 59, 130, 246),.4);color:var(--primary);font-size:20px;font-weight:700;letter-spacing:.5px;-webkit-user-select:none;user-select:none}.submenu-item:hover .item-thumbnail[data-v-07ba228b]{transform:scale(1.08);filter:drop-shadow(0 2px 10px rgba(var(--primary-rgb, 59, 130, 246),.35))}.submenu-item-name[data-v-07ba228b]{font-size:12px;text-align:center;color:var(--text-secondary);line-height:1.4;max-width:100%;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-weight:500;transition:color .3s ease}.submenu-item:hover .submenu-item-name[data-v-07ba228b]{color:var(--text)}.submenu-items[data-v-07ba228b]::-webkit-scrollbar{width:8px}.submenu-items[data-v-07ba228b]::-webkit-scrollbar-track{background:var(--background);border-radius:4px;margin:4px}.submenu-items[data-v-07ba228b]::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--border) 0%,var(--border-light, #d1d5db) 100%);border-radius:4px;border:2px solid var(--background)}.submenu-items[data-v-07ba228b]::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,var(--primary) 0%,rgba(var(--primary-rgb, 59, 130, 246),.7) 100%)}.menu-item[data-v-5ea8636c]{display:flex;flex-direction:column;align-items:center;gap:2px;padding:4px 12px;border:none;background:none;color:var(--header-text);cursor:pointer;font-size:12px;border-radius:3px;transition:all .2s ease;white-space:nowrap;min-width:60px;position:relative;height:100%;box-sizing:border-box;justify-content:center}.menu-button[data-v-5ea8636c]{display:flex;flex-direction:column;align-items:center;gap:2px;padding:0;border:none;background:none;color:var(--header-text);cursor:pointer;font-size:12px;width:100%;height:100%;transition:all .2s ease;justify-content:center}.menu-item[data-v-5ea8636c]:hover{background-color:#fff3}.menu-item.active[data-v-5ea8636c]{background-color:#ffffff4d;color:var(--header-text);font-weight:600}.menu-icon[data-v-5ea8636c]{font-size:16px;line-height:1;display:flex;align-items:center;justify-content:center}.menu-icon[data-v-5ea8636c] svg{width:16px;height:16px}.menu-text[data-v-5ea8636c]{font-size:12px;line-height:1;text-align:center}.menu-dropdown-container[data-v-5ea8636c],.menu-submenu-container[data-v-5ea8636c]{position:relative;width:100%;height:100%}.menu-container[data-v-769f07f4]{display:flex;align-items:center;background-color:transparent;border:none;padding:0;margin:0 20px;position:relative;height:44px;box-sizing:border-box}.global-tools[data-v-d700bd2e]{display:flex;align-items:center;gap:10px;padding:0 20px;border-left:1px solid rgba(255,255,255,.2)}.search-box[data-v-d700bd2e]{position:relative}.search-input[data-v-d700bd2e]{padding:6px 12px;border:none;border-radius:16px;font-size:14px;width:200px;background-color:#ffffff1a;color:var(--header-text)}.search-input[data-v-d700bd2e]::placeholder{color:#ffffffb3}.tool-button[data-v-d700bd2e]{position:relative;width:36px;height:36px;border:none;border-radius:4px;background-color:#ffffff1a;color:var(--header-text);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.tool-button[data-v-d700bd2e]:hover{background-color:#fff3}.nav-button[data-v-d700bd2e]{display:flex;align-items:center;gap:6px;height:36px;padding:0 14px;border:none;border-radius:4px;background-color:#ffffff1a;color:var(--header-text);cursor:pointer;transition:all .3s ease;white-space:nowrap}.nav-button[data-v-d700bd2e]:hover{background-color:#fff3}.nav-label[data-v-d700bd2e]{font-size:13px;font-weight:500}.icon[data-v-d700bd2e]{font-size:16px}.badge[data-v-d700bd2e]{position:absolute;top:-4px;right:-4px;background-color:var(--status-error);color:#fff;font-size:12px;font-weight:700;width:16px;height:16px;border-radius:50%;display:flex;align-items:center;justify-content:center}.theme-switcher[data-v-d700bd2e]{position:relative;display:flex;align-items:center}.theme-dropdown[data-v-d700bd2e]{position:relative}.theme-dropdown-button[data-v-d700bd2e]{width:36px;height:36px;border:none;border-radius:4px;background-color:#ffffff1a;color:var(--header-text);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.theme-dropdown-button[data-v-d700bd2e]:hover{background-color:#fff3}.theme-dropdown-menu[data-v-d700bd2e]{position:absolute;top:100%;right:0;margin-top:8px;background-color:var(--surface);border:1px solid var(--border);border-radius:6px;box-shadow:var(--shadow-medium);padding:8px;display:flex;flex-direction:column;gap:4px;z-index:1000;min-width:120px}.theme-dropdown-item[data-v-d700bd2e]{display:flex;align-items:center;gap:8px;padding:8px 12px;border:none;border-radius:4px;background:none;color:var(--text);cursor:pointer;transition:all .2s ease;font-size:13px}.theme-dropdown-item[data-v-d700bd2e]:hover{background-color:var(--control-button-hover)}.theme-dropdown-item.active[data-v-d700bd2e]{background-color:var(--primary);color:#fff}.theme-icon[data-v-d700bd2e]{font-size:16px;width:20px;text-align:center}.language-switcher[data-v-d700bd2e]{position:relative;display:flex;align-items:center}.language-dropdown[data-v-d700bd2e]{position:relative}.language-dropdown-button[data-v-d700bd2e]{width:36px;height:36px;border:none;border-radius:4px;background-color:#ffffff1a;color:var(--header-text);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.language-dropdown-button[data-v-d700bd2e]:hover{background-color:#fff3}.language-dropdown-menu[data-v-d700bd2e]{position:absolute;top:100%;right:0;margin-top:8px;background-color:var(--surface);border:1px solid var(--border);border-radius:6px;box-shadow:var(--shadow-medium);padding:8px;display:flex;flex-direction:column;gap:4px;z-index:1000;min-width:120px}.language-dropdown-item[data-v-d700bd2e]{display:flex;align-items:center;gap:8px;padding:8px 12px;border:none;border-radius:4px;background:none;color:var(--text);cursor:pointer;transition:all .2s ease;font-size:13px}.language-dropdown-item[data-v-d700bd2e]:hover{background-color:var(--control-button-hover)}.language-dropdown-item.active[data-v-d700bd2e]{background-color:var(--primary);color:#fff}.language-icon[data-v-d700bd2e]{display:inline-flex;align-items:center;justify-content:center;width:24px;height:16px;border-radius:3px;background:var(--control-button-hover);color:var(--text);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.user-info[data-v-83df51ca]{position:relative;display:flex;align-items:center;padding:0 20px;border-left:1px solid rgba(255,255,255,.2)}.user-profile[data-v-83df51ca]{display:flex;align-items:center;gap:10px;cursor:pointer;padding:4px 8px;border-radius:4px;transition:all .3s ease}.user-profile[data-v-83df51ca]:hover{background-color:#fff3}.user-avatar[data-v-83df51ca]{width:32px;height:32px;border-radius:50%;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark, #1557b0) 100%);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:14px}.avatar-text[data-v-83df51ca]{line-height:32px}.user-details[data-v-83df51ca]{display:flex;flex-direction:column;align-items:flex-start}.user-name[data-v-83df51ca]{color:var(--header-text);font-size:14px;font-weight:500}.dropdown-arrow[data-v-83df51ca]{color:var(--header-text);opacity:.5;flex-shrink:0}.user-menu[data-v-83df51ca]{position:absolute;top:100%;right:20px;background-color:var(--surface);border-radius:8px;box-shadow:var(--shadow-medium);min-width:180px;z-index:1000;margin-top:8px;border:1px solid var(--border-light)}.menu-item[data-v-83df51ca]{display:flex;align-items:center;gap:8px;width:100%;padding:10px 16px;border:none;background:none;cursor:pointer;font-size:14px;color:var(--text);transition:all .2s ease;text-align:left}.menu-item[data-v-83df51ca]:hover{background-color:var(--control-button-hover)}.menu-item.logout[data-v-83df51ca]{color:var(--status-error)}.menu-item.logout[data-v-83df51ca]:hover{background-color:#ef44441a}.menu-divider[data-v-83df51ca]{height:1px;background-color:var(--border-light);margin:4px 0}.app-header[data-v-6a30a07f]{display:flex;align-items:center;background-color:var(--header-background);color:var(--header-text);box-shadow:var(--shadow-small);height:42px;width:100%}.header-right[data-v-6a30a07f]{display:flex;align-items:center;margin-left:auto}.main-navigation[data-v-fbe31ae0]{display:flex;align-items:center;background-color:transparent;border:none;padding:0;margin:0 20px;position:relative;z-index:1}.nav-item[data-v-fbe31ae0]{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 16px;border:none;background:none;color:var(--header-text);cursor:pointer;font-size:12px;border-radius:3px;transition:all .3s ease;white-space:nowrap;min-width:70px;position:relative;height:56px;box-sizing:border-box;justify-content:center}.nav-button[data-v-fbe31ae0]{display:flex;flex-direction:column;align-items:center;gap:2px;padding:0;border:none;background:none;color:var(--header-text);cursor:pointer;font-size:12px;width:100%;height:100%;transition:all .3s ease;justify-content:center}.nav-item.with-submenu[data-v-fbe31ae0]:hover{background-color:var(--control-button-hover)}.nav-item.with-submenu.active[data-v-fbe31ae0]{background-color:var(--accent);font-weight:700}.nav-icon[data-v-fbe31ae0]{font-size:16px;line-height:1}.nav-text[data-v-fbe31ae0]{font-size:12px;line-height:1;text-align:center}.nav-item[data-v-fbe31ae0]:hover{background-color:var(--control-button-hover)}.nav-item.active[data-v-fbe31ae0]{background-color:var(--accent);font-weight:700}.dropdown[data-v-fbe31ae0]{position:relative}.dropdown-toggle[data-v-fbe31ae0]{display:flex;flex-direction:column;align-items:center;gap:4px;padding:12px 16px;border:none;background:none;color:var(--header-text);cursor:pointer;font-size:14px;border-radius:3px;transition:all .3s ease;white-space:nowrap;min-width:80px}.dropdown-toggle[data-v-fbe31ae0]:hover{background-color:var(--control-button-hover)}.dropdown-menu[data-v-fbe31ae0]{position:absolute;top:100%;right:0;background-color:var(--surface);border-radius:4px;box-shadow:var(--shadow-medium);min-width:120px;z-index:1000;margin-top:8px;border:1px solid var(--border)}.dropdown-item[data-v-fbe31ae0]{display:flex;align-items:center;gap:8px;width:100%;padding:10px 16px;border:none;background:none;cursor:pointer;font-size:14px;color:var(--text);transition:all .3s ease;text-align:left}.dropdown-item[data-v-fbe31ae0]:hover{background-color:var(--control-button-hover)}.dropdown-item.active[data-v-fbe31ae0]{background-color:var(--primary);color:#fff;font-weight:700}.dropdown-icon[data-v-fbe31ae0]{font-size:16px;line-height:1}.dropdown-text[data-v-fbe31ae0]{line-height:1}.submenu[data-v-fbe31ae0]{position:absolute;top:100%;left:0;background-color:var(--surface);border-radius:4px;box-shadow:var(--shadow-medium);min-width:400px;z-index:1000;margin-top:8px;overflow:hidden;border:1px solid var(--border)}.submenu-header[data-v-fbe31ae0]{padding:12px 16px;background-color:var(--control-button-hover);border-bottom:1px solid var(--border);font-weight:700;color:var(--text)}.submenu-content[data-v-fbe31ae0]{padding:16px}.submenu-categories[data-v-fbe31ae0]{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.submenu-categories .category-button[data-v-fbe31ae0]{padding:6px 12px;border:1px solid var(--border);border-radius:16px;background-color:var(--control-button-hover);cursor:pointer;font-size:12px;transition:all .2s;color:var(--text)}.submenu-categories .category-button[data-v-fbe31ae0]:hover{background-color:var(--primary);border-color:var(--primary);color:#fff}.submenu-items[data-v-fbe31ae0]{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;max-height:300px;overflow-y:auto}.submenu-item[data-v-fbe31ae0]{display:flex;flex-direction:column;align-items:center;padding:12px;background-color:var(--control-button-hover);border:1px solid var(--border);border-radius:4px;cursor:grab;transition:all .2s;color:var(--text);min-height:80px;justify-content:center}.submenu-item[data-v-fbe31ae0]:hover{background-color:var(--primary);border-color:var(--primary);transform:translateY(-2px);box-shadow:var(--shadow-small);color:#fff}.submenu-item[data-v-fbe31ae0]:active{cursor:grabbing}.submenu-item-icon[data-v-fbe31ae0]{font-size:24px;margin-bottom:8px}.submenu-item-name[data-v-fbe31ae0]{font-size:12px;text-align:center;color:var(--text)}.submenu-item:hover .submenu-item-name[data-v-fbe31ae0]{color:#fff}.submenu-items[data-v-fbe31ae0]::-webkit-scrollbar{width:6px}.submenu-items[data-v-fbe31ae0]::-webkit-scrollbar-track{background:var(--control-button-hover);border-radius:3px}.submenu-items[data-v-fbe31ae0]::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.submenu-items[data-v-fbe31ae0]::-webkit-scrollbar-thumb:hover{background:var(--border-light)}.edit-submenu[data-v-fbe31ae0]{min-width:200px}.edit-menu-content[data-v-fbe31ae0]{padding:8px 0}.edit-menu-item[data-v-fbe31ae0]{display:flex;align-items:center;gap:12px;width:100%;padding:8px 16px;border:none;background:none;cursor:pointer;font-size:14px;color:var(--text);transition:all .2s ease;text-align:left}.edit-menu-item[data-v-fbe31ae0]:hover{background-color:var(--primary);color:#fff}.edit-menu-icon[data-v-fbe31ae0]{font-size:16px;width:20px;text-align:center}.edit-menu-text[data-v-fbe31ae0]{flex:1}.edit-menu-shortcut[data-v-fbe31ae0]{font-size:12px;color:var(--text-secondary);font-family:monospace}.edit-menu-item:hover .edit-menu-shortcut[data-v-fbe31ae0]{color:#fffc}.edit-menu-divider[data-v-fbe31ae0]{height:1px;background-color:var(--border);margin:8px 0}.editor-controls[data-v-0b06be7d]{position:relative;z-index:0;display:flex;align-items:center;gap:4px;height:var(--toolbar-height, 42px);padding:0 16px;background-color:var(--surface);border-bottom:1px solid var(--border);color:var(--text);flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.editor-controls[data-v-0b06be7d]::-webkit-scrollbar{display:none}.control-button[data-v-0b06be7d]{padding:6px;border:1px solid transparent;border-radius:6px;background-color:transparent;color:var(--text-secondary);cursor:pointer;transition:all .25s cubic-bezier(.4,0,.2,1);width:32px;height:32px;object-fit:contain;display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0}.control-button[data-v-0b06be7d]:hover{background-color:var(--control-button-hover);border-color:#3b82f64d;color:var(--text);transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.control-button[data-v-0b06be7d]:active{transform:translateY(0);box-shadow:none}.control-button.active[data-v-0b06be7d]{background-color:#3b82f626;color:var(--primary);border-color:var(--primary);box-shadow:0 2px 8px #3b82f640}.control-separator[data-v-0b06be7d]{width:1px;height:28px;background:linear-gradient(180deg,transparent 0%,var(--border) 50%,transparent 100%);margin:0 8px;opacity:.8;flex-shrink:0}.wte-mask[data-v-4a4e242c]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:1000}.wte-modal[data-v-4a4e242c]{width:460px;max-height:86vh;overflow-y:auto;padding:20px;border-radius:8px;background:var(--background, #fff);box-shadow:var(--shadow-large, 0 8px 24px rgba(0, 0, 0, .18))}.wte-modal h3[data-v-4a4e242c]{margin:0 0 14px;font-size:16px;color:var(--text, #333)}.wte-modal label[data-v-4a4e242c]{display:block;margin:10px 0 4px;font-size:13px;color:var(--text-secondary, #666)}.wte-input[data-v-4a4e242c]{width:100%;padding:7px 10px;border:1px solid var(--border, #d9d9d9);border-radius:4px;background:var(--background, #fff);color:var(--text, #333);font-size:13px;box-sizing:border-box}.wte-section[data-v-4a4e242c]{display:flex;align-items:center;justify-content:space-between;margin-top:16px;padding-top:12px;border-top:1px solid var(--border, #eee);font-size:13px;font-weight:600;color:var(--text, #333)}.wte-count[data-v-4a4e242c]{font-size:12px;font-weight:400;color:var(--text-secondary, #999)}.wte-empty[data-v-4a4e242c]{padding:8px 0;font-size:12px;color:var(--text-secondary, #999)}.wte-btn[data-v-4a4e242c]{margin-top:8px;margin-right:8px;padding:6px 14px;border:1px solid var(--border, #d9d9d9);border-radius:4px;background:var(--background, #fff);color:var(--text, #333);font-size:13px;cursor:pointer}.wte-btn[data-v-4a4e242c]:disabled{opacity:.5;cursor:not-allowed}.wte-btn.primary[data-v-4a4e242c]{background:var(--primary, #409EFF);border-color:var(--primary, #409EFF);color:#fff}.wte-actions[data-v-4a4e242c]{display:flex;justify-content:flex-end;gap:8px;margin-top:20px;padding-top:14px;border-top:1px solid var(--border, #eee)}.wte-actions .wte-btn[data-v-4a4e242c]{margin:0}.interface-tab[data-v-d811e529]{display:flex;flex-direction:column;gap:24px}.setting-group[data-v-d811e529]{display:flex;flex-direction:column;gap:16px}.group-title[data-v-d811e529]{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:var(--text);padding-bottom:8px;border-bottom:1px solid var(--border)}.group-icon[data-v-d811e529]{font-size:16px}.group-text[data-v-d811e529]{font-size:15px}.setting-row[data-v-d811e529]{display:flex;align-items:center;justify-content:space-between;padding:4px 0}.setting-label[data-v-d811e529]{font-size:14px;color:var(--text);flex:1}.setting-select[data-v-d811e529]{width:200px;padding:8px 12px;border:1px solid var(--border);border-radius:4px;background-color:var(--surface);color:var(--text);font-size:14px;cursor:pointer;transition:all .2s ease}.setting-select[data-v-d811e529]:hover{border-color:var(--primary)}.setting-select[data-v-d811e529]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #4caf5033}.toggle-switch[data-v-d811e529]{position:relative;display:inline-block;width:44px;height:24px}.toggle-switch input[data-v-d811e529]{opacity:0;width:0;height:0}.toggle-slider[data-v-d811e529]{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--border);transition:.3s;border-radius:24px}.toggle-slider[data-v-d811e529]:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%}input:checked+.toggle-slider[data-v-d811e529]{background-color:var(--primary)}input:checked+.toggle-slider[data-v-d811e529]:before{transform:translate(20px)}.cache-desc[data-v-d811e529]{font-size:13px;color:var(--text-secondary);line-height:1.6;padding:8px 0}.clear-cache-btn[data-v-d811e529]{align-self:flex-start;padding:8px 20px;border:1px solid var(--danger, #e74c3c);border-radius:4px;background-color:transparent;color:var(--danger, #e74c3c);font-size:14px;cursor:pointer;transition:all .2s ease}.clear-cache-btn[data-v-d811e529]:hover{background-color:var(--danger, #e74c3c);color:#fff}.input-unit[data-v-d811e529]{font-size:12px;color:var(--text-secondary)}.interval-input[data-v-d811e529]{width:80px;padding:4px 8px;border:1px solid var(--border);border-radius:4px;background-color:var(--surface);color:var(--text);font-size:14px;text-align:right}.interval-input[data-v-d811e529]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #4caf5033}.interval-input[data-v-d811e529]:disabled{opacity:.4;cursor:not-allowed}.input-group[data-v-d811e529]{display:flex;align-items:center;gap:4px}.tips-content[data-v-d811e529]{padding:12px 16px;background-color:var(--surface);border-radius:4px;border-left:3px solid var(--primary)}.tips-content p[data-v-d811e529]{margin:4px 0;font-size:13px;color:var(--text-secondary);line-height:1.6}.canvas-tab[data-v-a1e51780]{display:flex;flex-direction:column;gap:24px}.setting-group[data-v-a1e51780]{display:flex;flex-direction:column;gap:16px}.group-title[data-v-a1e51780]{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:var(--text);padding-bottom:8px;border-bottom:1px solid var(--border)}.group-icon[data-v-a1e51780]{font-size:16px}.group-text[data-v-a1e51780]{font-size:15px}.setting-row[data-v-a1e51780]{display:flex;align-items:center;justify-content:space-between;padding:4px 0}.setting-label[data-v-a1e51780]{font-size:14px;color:var(--text);flex:1}.input-with-unit[data-v-a1e51780]{display:flex;align-items:center;gap:8px}.setting-input-number[data-v-a1e51780]{width:100px;padding:8px 12px;border:1px solid var(--border);border-radius:4px;background-color:var(--surface);color:var(--text);font-size:14px;transition:all .2s ease}.setting-input-number[data-v-a1e51780]:hover{border-color:var(--primary)}.setting-input-number[data-v-a1e51780]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #4caf5033}.unit-text[data-v-a1e51780]{font-size:14px;color:var(--text-secondary)}.tips-content[data-v-a1e51780]{padding:12px 16px;background-color:var(--surface);border-radius:4px;border-left:3px solid var(--primary)}.tips-content p[data-v-a1e51780]{margin:4px 0;font-size:13px;color:var(--text-secondary);line-height:1.6}.toggle-switch[data-v-a1e51780]{position:relative;display:inline-block;width:44px;height:24px}.toggle-switch input[data-v-a1e51780]{opacity:0;width:0;height:0}.toggle-slider[data-v-a1e51780]{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--border);transition:.3s;border-radius:24px}.toggle-slider[data-v-a1e51780]:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%}input:checked+.toggle-slider[data-v-a1e51780]{background-color:var(--primary)}input:checked+.toggle-slider[data-v-a1e51780]:before{transform:translate(20px)}.tools-tab[data-v-5396ded4]{display:flex;flex-direction:column;gap:24px}.setting-group[data-v-5396ded4]{display:flex;flex-direction:column;gap:16px}.group-title[data-v-5396ded4]{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:var(--text);padding-bottom:8px;border-bottom:1px solid var(--border)}.group-icon[data-v-5396ded4]{font-size:16px}.group-text[data-v-5396ded4]{font-size:15px}.setting-row[data-v-5396ded4]{display:flex;align-items:center;justify-content:space-between;padding:4px 0}.setting-label[data-v-5396ded4]{font-size:14px;color:var(--text);flex:1}.input-with-unit[data-v-5396ded4]{display:flex;align-items:center;gap:8px}.setting-input-number[data-v-5396ded4]{width:100px;padding:8px 12px;border:1px solid var(--border);border-radius:4px;background-color:var(--surface);color:var(--text);font-size:14px;transition:all .2s ease}.setting-input-number[data-v-5396ded4]:hover{border-color:var(--primary)}.setting-input-number[data-v-5396ded4]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #4caf5033}.setting-select[data-v-5396ded4]{width:200px;padding:8px 12px;border:1px solid var(--border);border-radius:4px;background-color:var(--surface);color:var(--text);font-size:14px;cursor:pointer;transition:all .2s ease}.setting-select[data-v-5396ded4]:hover{border-color:var(--primary)}.setting-select[data-v-5396ded4]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #4caf5033}.unit-text[data-v-5396ded4]{font-size:14px;color:var(--text-secondary)}.color-picker-wrapper[data-v-5396ded4]{display:flex;align-items:center;gap:8px}.color-input[data-v-5396ded4]{width:40px;height:36px;border:1px solid var(--border);border-radius:4px;cursor:pointer;padding:2px}.color-text[data-v-5396ded4]{font-size:13px;color:var(--text-secondary);min-width:80px;text-align:right}.shortcuts-tab[data-v-8697f80d]{display:flex;flex-direction:column;gap:24px}.setting-group[data-v-8697f80d]{display:flex;flex-direction:column;gap:12px}.group-title[data-v-8697f80d]{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:var(--text);padding-bottom:8px;border-bottom:1px solid var(--border)}.group-icon[data-v-8697f80d]{font-size:16px}.group-text[data-v-8697f80d]{font-size:15px}.shortcut-row[data-v-8697f80d]{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background-color:var(--surface);border-radius:4px;border:1px solid var(--border)}.shortcut-name[data-v-8697f80d]{font-size:14px;color:var(--text)}.shortcut-key[data-v-8697f80d]{font-size:13px;color:var(--text-secondary);background-color:var(--surface);padding:4px 8px;border-radius:4px;border:1px solid var(--border);font-family:monospace}.layout-tab[data-v-03cc4f15]{display:flex;flex-direction:column;gap:24px}.setting-group[data-v-03cc4f15]{display:flex;flex-direction:column;gap:16px}.group-title[data-v-03cc4f15]{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:15px;font-weight:600;color:var(--text);padding-bottom:8px;border-bottom:1px solid var(--border)}.group-icon[data-v-03cc4f15]{font-size:16px}.group-text[data-v-03cc4f15]{font-size:15px}.save-button[data-v-03cc4f15]{padding:4px 12px;border-radius:4px;border:1px solid var(--border);background-color:var(--primary);color:#fff;cursor:pointer;font-size:12px;transition:all .2s ease}.save-button[data-v-03cc4f15]:hover:not(:disabled){background-color:var(--primary-dark)}.save-button[data-v-03cc4f15]:disabled{background-color:var(--border);cursor:not-allowed}.tips-content[data-v-03cc4f15]{padding:12px 16px;background-color:var(--surface);border-radius:4px;border-left:3px solid var(--primary)}.tips-content p[data-v-03cc4f15]{margin:4px 0;font-size:13px;color:var(--text-secondary);line-height:1.6}.reset-layout-section[data-v-03cc4f15]{display:flex;justify-content:flex-start;padding:8px 0}.reset-button[data-v-03cc4f15]{display:flex;align-items:center;gap:8px;padding:12px 24px;border-radius:4px;border:1px solid var(--border);background-color:var(--control-button-background);color:var(--text);cursor:pointer;font-size:14px;transition:all .2s ease}.reset-button[data-v-03cc4f15]:hover{background-color:var(--control-button-hover);border-color:var(--primary)}.reset-icon[data-v-03cc4f15]{font-size:18px}.reset-text[data-v-03cc4f15]{font-size:14px}.layout-info-content[data-v-03cc4f15]{display:flex;flex-direction:column;gap:12px;padding:16px;background-color:var(--surface);border-radius:4px;border:1px solid var(--border)}.info-item[data-v-03cc4f15]{display:flex;justify-content:space-between;align-items:center;padding:4px 0}.info-label[data-v-03cc4f15]{font-size:13px;color:var(--text-secondary);flex:1}.input-group[data-v-03cc4f15]{display:flex;align-items:center;gap:4px}.info-input[data-v-03cc4f15]{width:80px;padding:4px 8px;border:1px solid var(--border);border-radius:4px;background-color:var(--background);color:var(--text);font-size:13px;text-align:right;transition:all .2s ease}.info-input[data-v-03cc4f15]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #3498db33}.info-input[data-v-03cc4f15]::-webkit-outer-spin-button,.info-input[data-v-03cc4f15]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.info-input[type=number][data-v-03cc4f15]{-moz-appearance:textfield}.input-unit[data-v-03cc4f15]{font-size:12px;color:var(--text-secondary)}.config-tab[data-v-60604e1a]{display:flex;flex-direction:column;gap:24px}.setting-group[data-v-60604e1a]{display:flex;flex-direction:column;gap:16px}.group-title[data-v-60604e1a]{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:var(--text);padding-bottom:8px;border-bottom:1px solid var(--border)}.group-icon[data-v-60604e1a]{font-size:16px}.group-text[data-v-60604e1a]{font-size:15px}.config-section[data-v-60604e1a]{padding:16px;background-color:var(--surface);border-radius:4px;border:1px solid var(--border)}.section-description[data-v-60604e1a]{margin:0 0 16px;font-size:13px;color:var(--text-secondary);line-height:1.6}.button-group[data-v-60604e1a]{display:flex;gap:12px;margin-top:12px}.action-button[data-v-60604e1a]{display:flex;align-items:center;gap:8px;padding:10px 20px;border-radius:4px;border:none;cursor:pointer;font-size:14px;transition:all .2s ease}.action-button[data-v-60604e1a]:hover{transform:translateY(-1px)}.export-btn[data-v-60604e1a]{background-color:var(--primary);color:#fff}.export-btn[data-v-60604e1a]:hover{background-color:var(--primary-dark)}.import-btn[data-v-60604e1a]{background-color:var(--status-success);color:#fff}.import-btn[data-v-60604e1a]:hover{background-color:var(--success-dark)}.reset-btn[data-v-60604e1a]{background-color:var(--status-warning);color:#fff}.reset-btn[data-v-60604e1a]:hover{background-color:var(--warning-dark)}.apply-btn[data-v-60604e1a]{background-color:var(--info);color:#fff}.apply-btn[data-v-60604e1a]:hover{background-color:var(--info-dark)}.btn-icon[data-v-60604e1a]{font-size:16px}.btn-text[data-v-60604e1a]{font-size:14px}.config-textarea[data-v-60604e1a]{width:100%;padding:12px;border:1px solid var(--border);border-radius:4px;background-color:var(--background);color:var(--text);font-family:monospace;font-size:12px;resize:vertical;box-sizing:border-box}.config-textarea[data-v-60604e1a]:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 2px #3498db33}.config-preview[data-v-60604e1a]{margin-top:12px;position:relative}.copy-button[data-v-60604e1a]{position:absolute;top:8px;right:8px;padding:4px 12px;border-radius:4px;border:1px solid var(--border);background-color:var(--control-button-background);color:var(--text);cursor:pointer;font-size:12px;transition:all .2s ease}.copy-button[data-v-60604e1a]:hover{background-color:var(--control-button-hover)}.message-box[data-v-60604e1a]{margin-top:12px;padding:12px;border-radius:4px;font-size:13px}.message-box.success[data-v-60604e1a]{background-color:#27ae601a;color:var(--status-success);border:1px solid rgba(39,174,96,.3)}.message-box.error[data-v-60604e1a]{background-color:#e74c3c1a;color:var(--danger);border:1px solid rgba(231,76,60,.3)}.diff-container[data-v-60604e1a]{display:flex;flex-direction:column;gap:8px}.diff-item[data-v-60604e1a]{display:flex;align-items:center;gap:12px;padding:8px;background-color:var(--background);border-radius:4px}.diff-key[data-v-60604e1a]{flex:1;font-size:13px;color:var(--text);font-weight:500}.diff-value[data-v-60604e1a]{flex:1;font-size:12px;font-family:monospace;padding:4px 8px;border-radius:2px}.diff-value.default[data-v-60604e1a]{background-color:#95a5a633;color:var(--text-secondary)}.diff-value.current[data-v-60604e1a]{background-color:#3498db33;color:var(--primary)}.diff-arrow[data-v-60604e1a]{color:var(--text-secondary);font-size:16px}.empty-state[data-v-60604e1a]{padding:24px;text-align:center;color:var(--text-secondary);font-size:13px}.settings-modal-overlay[data-v-51ee0369]{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn-51ee0369 .2s ease}@keyframes fadeIn-51ee0369{0%{opacity:0}to{opacity:1}}.settings-modal[data-v-51ee0369]{background-color:var(--surface);border-radius:8px;box-shadow:var(--shadow-large);width:800px;max-width:90vw;height:600px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--border);animation:slideIn-51ee0369 .2s ease}@keyframes slideIn-51ee0369{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.settings-modal-header[data-v-51ee0369]{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-bottom:1px solid var(--border);background-color:var(--surface)}.settings-title[data-v-51ee0369]{display:flex;align-items:center;gap:12px}.title-icon[data-v-51ee0369]{font-size:20px}.title-text[data-v-51ee0369]{font-size:18px;font-weight:600;color:var(--text)}.close-button[data-v-51ee0369]{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:none;background:none;color:var(--text-secondary);cursor:pointer;font-size:24px;border-radius:4px;transition:all .2s ease}.close-button[data-v-51ee0369]:hover{background-color:var(--control-button-hover);color:var(--text)}.settings-tabs[data-v-51ee0369]{display:flex;gap:4px;padding:8px 24px;border-bottom:1px solid var(--border);background-color:var(--surface)}.tab-button[data-v-51ee0369]{display:flex;align-items:center;gap:8px;padding:10px 16px;border:none;background:none;color:var(--text-secondary);cursor:pointer;font-size:14px;border-radius:4px;transition:all .2s ease}.tab-button[data-v-51ee0369]:hover{background-color:var(--control-button-hover);color:var(--text)}.tab-button.active[data-v-51ee0369]{background-color:var(--primary);color:#fff;font-weight:600}.tab-icon[data-v-51ee0369]{font-size:16px}.settings-content[data-v-51ee0369]{flex:1;overflow-y:auto;padding:24px}.settings-footer[data-v-51ee0369]{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;border-top:1px solid var(--border);background-color:var(--surface)}.footer-buttons-right[data-v-51ee0369]{display:flex;gap:12px}.footer-button[data-v-51ee0369]{display:flex;align-items:center;justify-content:center;padding:10px 24px;border-radius:4px;border:1px solid var(--border);background-color:var(--control-button-background);color:var(--text);cursor:pointer;font-size:14px;transition:all .2s ease}.footer-button[data-v-51ee0369]:hover{background-color:var(--control-button-hover)}.footer-button.primary[data-v-51ee0369]{background-color:var(--primary);color:#fff;border-color:var(--primary)}.footer-button.primary[data-v-51ee0369]:hover{filter:brightness(1.1)}.footer-button.secondary[data-v-51ee0369]{background-color:var(--surface)}.settings-content[data-v-51ee0369]::-webkit-scrollbar{width:6px}.settings-content[data-v-51ee0369]::-webkit-scrollbar-track{background:var(--surface);border-radius:3px}.settings-content[data-v-51ee0369]::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}.settings-content[data-v-51ee0369]::-webkit-scrollbar-thumb:hover{background:var(--border-light)}.script-drawer[data-v-b572d0ee]{display:flex;flex-direction:column;background-color:var(--surface);border-top:1px solid var(--border);min-height:100px;overflow:hidden}.drawer-resize-handle[data-v-b572d0ee]{height:4px;cursor:row-resize;background-color:var(--border);transition:background-color .2s;flex-shrink:0}.drawer-resize-handle[data-v-b572d0ee]:hover{background-color:var(--accent)}.resize-bar[data-v-b572d0ee]{height:1px;margin:0 40%;background-color:var(--text-tertiary)}.drawer-tabs[data-v-b572d0ee]{display:flex;align-items:center;justify-content:space-between;background-color:var(--background);border-bottom:1px solid var(--border);height:32px;flex-shrink:0}.tabs-list[data-v-b572d0ee]{display:flex;align-items:center;gap:0;flex:1;overflow-x:auto;overflow-y:hidden}.tabs-list[data-v-b572d0ee]::-webkit-scrollbar{height:2px}.tab-item[data-v-b572d0ee]{display:flex;align-items:center;gap:4px;padding:4px 10px;font-size:12px;color:var(--text-secondary);cursor:pointer;border-right:1px solid var(--border);white-space:nowrap;-webkit-user-select:none;user-select:none;transition:all .15s;position:relative;min-width:0}.tab-item[data-v-b572d0ee]:hover{color:var(--text);background-color:var(--elevated)}.tab-item.active[data-v-b572d0ee]{color:var(--text);background-color:var(--surface);border-bottom:2px solid var(--accent)}.tab-icon[data-v-b572d0ee]{font-size:13px;flex-shrink:0}.tab-title[data-v-b572d0ee]{overflow:hidden;text-overflow:ellipsis;max-width:150px}.tab-dirty[data-v-b572d0ee]{color:var(--status-warning);font-weight:700}.tab-close[data-v-b572d0ee]{display:flex;align-items:center;justify-content:center;width:16px;height:16px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-tertiary);font-size:14px;cursor:pointer;flex-shrink:0;margin-left:2px}.tab-close[data-v-b572d0ee]:hover{background-color:var(--elevated);color:var(--text)}.tabs-actions[data-v-b572d0ee]{display:flex;align-items:center;padding:0 4px;flex-shrink:0}.drawer-btn[data-v-b572d0ee]{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-tertiary);font-size:10px;cursor:pointer;transition:all .15s}.drawer-btn[data-v-b572d0ee]:hover{background-color:var(--elevated);color:var(--text)}.drawer-editor[data-v-b572d0ee]{flex:1;overflow:hidden;min-height:0}.editor-pane[data-v-b572d0ee]{height:100%}
