.date-picker-container[data-v-0689a113]{position:relative;width:100%}.date-display[data-v-0689a113]{display:flex;align-items:center;justify-content:space-between;min-height:32px;padding:0 8px;cursor:pointer;border-radius:4px;transition:background-color .2s}.date-display[data-v-0689a113]:hover{background-color:#f3f4f6}.date-value[data-v-0689a113]{flex:1;color:#1f2933;font-size:14px}.date-value.empty[data-v-0689a113]{color:#9ca3af}.date-actions[data-v-0689a113]{display:flex;gap:4px;margin-left:8px}.format-button[data-v-0689a113]{all:unset;font-size:14px;cursor:pointer;opacity:.6;transition:opacity .2s}.format-button[data-v-0689a113]:hover{opacity:1}.date-picker-popup[data-v-0689a113]{position:absolute;top:100%;left:0;right:0;z-index:100;margin-top:4px;background-color:#fff;border:1px solid #E0E0E0;border-radius:6px;box-shadow:0 4px 12px #00000026;overflow:hidden}.date-input-wrapper[data-v-0689a113]{padding:12px;border-bottom:1px solid #E0E0E0}.date-input[data-v-0689a113]{width:100%;height:36px;padding:0 12px;border:1px solid #E0E0E0;border-radius:4px;font-size:14px;cursor:pointer}.date-input[data-v-0689a113]:focus{outline:none;border-color:#3b82f6}.calendar-wrapper[data-v-0689a113]{padding:12px;border-bottom:1px solid #E0E0E0}.calendar-header[data-v-0689a113]{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.calendar-nav[data-v-0689a113]{all:unset;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:1px solid #E0E0E0;border-radius:4px;cursor:pointer;font-size:16px;color:#6b7280;transition:all .2s}.calendar-nav[data-v-0689a113]:hover{background-color:#f3f4f6;color:#1f2933}.calendar-title[data-v-0689a113]{font-size:14px;font-weight:500;color:#1f2933}.calendar-weekdays[data-v-0689a113]{display:grid;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:4px}.calendar-weekday[data-v-0689a113]{text-align:center;font-size:11px;font-weight:500;color:#6b7280;padding:4px}.calendar-days[data-v-0689a113]{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.calendar-day[data-v-0689a113]{aspect-ratio:1;display:flex;align-items:center;justify-content:center;font-size:13px;cursor:pointer;border-radius:4px;transition:all .2s;color:#1f2933}.calendar-day[data-v-0689a113]:hover{background-color:#f3f4f6}.calendar-day.other-month[data-v-0689a113]{color:#d1d5db}.calendar-day.selected[data-v-0689a113]{background-color:#3b82f6;color:#fff;font-weight:500}.calendar-day.today[data-v-0689a113]{border:1px solid #3B82F6}.format-menu-wrapper[data-v-0689a113]{padding:12px;border-top:1px solid #E0E0E0}.format-label[data-v-0689a113]{display:block;margin-bottom:6px;font-size:12px;font-weight:500;color:#6b7280}.format-select[data-v-0689a113]{width:100%;height:36px;padding:0 12px;border:1px solid #E0E0E0;border-radius:4px;background-color:#fff;color:#1f2933;font-size:13px;cursor:pointer;transition:all .2s}.format-select[data-v-0689a113]:focus{outline:none;border-color:#3b82f6}.format-select[data-v-0689a113]:hover{border-color:#3b82f6}.relation-table-dropdown[data-v-01e5915e]{position:absolute;top:100%;z-index:100;margin-top:4px;background-color:#fff;border:1px solid #E0E0E0;border-radius:6px;box-shadow:0 4px 12px #00000026;display:flex;flex-direction:column;max-height:500px}.relation-table-dropdown.align-left[data-v-01e5915e]{left:0}.relation-table-dropdown.align-right[data-v-01e5915e]{right:0;left:auto!important}.search-container[data-v-01e5915e]{padding:12px 16px;background-color:#f9fafb;border-bottom:1px solid #E0E0E0;flex-shrink:0}.search-and-control[data-v-01e5915e]{display:flex;align-items:center;gap:8px}.search-input-wrapper[data-v-01e5915e]{position:relative;display:flex;align-items:center;flex:1}.column-control-button[data-v-01e5915e]{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:1px solid #D1D5DB;background-color:#fff;color:#6b7280;cursor:pointer;border-radius:6px;transition:all .2s;flex-shrink:0}.column-control-button[data-v-01e5915e]:hover{background-color:#f3f4f6;border-color:#9ca3af;color:#374151}.column-control-panel[data-v-01e5915e]{margin-top:12px;padding:12px;background-color:#fff;border:1px solid #E0E0E0;border-radius:6px;max-height:250px;overflow-y:auto}.column-control-header[data-v-01e5915e]{font-size:13px;font-weight:600;color:#1f2937;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid #E0E0E0}.column-control-list[data-v-01e5915e]{display:flex;flex-direction:column;gap:6px}.column-control-item[data-v-01e5915e]{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:4px;cursor:pointer;transition:background-color .2s;-webkit-user-select:none;-moz-user-select:none;user-select:none}.column-control-item[data-v-01e5915e]:hover{background-color:#f9fafb}.column-control-item input[type=checkbox][data-v-01e5915e]{width:16px;height:16px;cursor:pointer;accent-color:#3B82F6;flex-shrink:0}.column-control-item input[type=checkbox][data-v-01e5915e]:disabled{cursor:not-allowed;opacity:.6}.column-control-label[data-v-01e5915e]{font-size:13px;color:#1f2937;display:flex;align-items:center;gap:6px;flex:1}.column-control-badge[data-v-01e5915e]{font-size:11px;padding:2px 6px;background-color:#dbeafe;color:#1e40af;border-radius:3px;font-weight:500}.search-icon[data-v-01e5915e]{position:absolute;left:10px;color:#9ca3af;pointer-events:none;flex-shrink:0}.search-input[data-v-01e5915e]{width:100%;padding:8px 36px;border:1px solid #D1D5DB;border-radius:6px;font-size:13px;background-color:#fff;color:#1f2937;outline:none;transition:all .2s}.search-input[data-v-01e5915e]:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.search-input[data-v-01e5915e]::-moz-placeholder{color:#9ca3af}.search-input[data-v-01e5915e]::placeholder{color:#9ca3af}.clear-button[data-v-01e5915e]{position:absolute;right:8px;display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:none;background-color:transparent;color:#9ca3af;cursor:pointer;border-radius:4px;transition:all .2s}.clear-button[data-v-01e5915e]:hover{background-color:#f3f4f6;color:#6b7280}.search-result-count[data-v-01e5915e]{margin-top:8px;font-size:12px;color:#6b7280}.table-scroll-container[data-v-01e5915e]{flex:1;overflow:auto;min-height:0;overflow-x:auto;overflow-y:auto}.relation-table[data-v-01e5915e]{border-collapse:collapse;font-size:14px;min-width:100%;width:-moz-max-content;width:max-content}.table-header[data-v-01e5915e]{position:sticky;top:0;z-index:10;background-color:#f9fafb;border-bottom:2px solid #E0E0E0;text-align:left;padding:12px;font-weight:600;font-size:13px;color:#374151;min-width:120px;white-space:nowrap}.table-row[data-v-01e5915e]{transition:background-color .2s;cursor:pointer;border-bottom:1px solid #F3F4F6}.table-row[data-v-01e5915e]:hover{background-color:#f3f4f6}.table-row.selected[data-v-01e5915e]{background-color:#eff6ff}.table-row.selected[data-v-01e5915e]:hover{background-color:#dbeafe}.table-cell[data-v-01e5915e]{padding:8px 12px;color:#1f2933;font-size:13px;min-width:120px;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.empty-state[data-v-01e5915e]{padding:48px 24px;text-align:center;color:#6b7280}.empty-state p[data-v-01e5915e]{margin:0}.pagination-container[data-v-01e5915e]{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background-color:#f9fafb;border-top:1px solid #E0E0E0;flex-shrink:0}.pagination-info[data-v-01e5915e]{display:flex;align-items:center}.pagination-text[data-v-01e5915e]{font-size:13px;color:#6b7280}.pagination-controls[data-v-01e5915e]{display:flex;align-items:center;gap:8px}.pagination-button[data-v-01e5915e]{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:1px solid #D1D5DB;background-color:#fff;color:#374151;border-radius:4px;cursor:pointer;transition:all .2s}.pagination-button[data-v-01e5915e]:hover:not(:disabled){background-color:#f3f4f6;border-color:#9ca3af}.pagination-button[data-v-01e5915e]:disabled{opacity:.5;cursor:not-allowed;background-color:#f9fafb}.pagination-pages[data-v-01e5915e]{display:flex;gap:4px}.pagination-page-button[data-v-01e5915e]{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;padding:0 8px;border:1px solid #D1D5DB;background-color:#fff;color:#374151;border-radius:4px;font-size:13px;cursor:pointer;transition:all .2s}.pagination-page-button[data-v-01e5915e]:hover{background-color:#f3f4f6;border-color:#9ca3af}.pagination-page-button.active[data-v-01e5915e]{background-color:#3b82f6;border-color:#3b82f6;color:#fff}.image-uploader[data-v-ae9cfae0]{width:100%;min-height:120px}.encrypt-row[data-v-ae9cfae0]{display:flex;gap:8px;margin-bottom:8px}.encrypt-option[data-v-ae9cfae0]{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border:1px solid #d1d5db;border-radius:6px;font-size:12px;color:#374151;cursor:pointer;background-color:#fff}.encrypt-option input[data-v-ae9cfae0]{margin:0;accent-color:#3b82f6}.encrypt-option.active[data-v-ae9cfae0]{border-color:#3b82f6;background-color:#eff6ff;color:#1d4ed8}.encrypt-option.plaintext.active[data-v-ae9cfae0]{border-color:#f59e0b;background-color:#fffbeb;color:#b45309}.image-preview[data-v-ae9cfae0]{position:relative;width:100%;height:200px;border-radius:6px;overflow:hidden;background-color:#f9fafb}.preview-image[data-v-ae9cfae0]{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.enc-cell-locked[data-v-ae9cfae0]{width:100%;min-height:120px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border:1px dashed #d1d5db;border-radius:6px;background-color:#f9fafb;color:#6b7280;cursor:pointer}.enc-cell-icon[data-v-ae9cfae0]{font-size:22px}.enc-cell-text[data-v-ae9cfae0]{font-size:12px}.image-overlay[data-v-ae9cfae0]{position:absolute;top:0;left:0;right:0;bottom:0;background-color:#0009;display:flex;align-items:center;justify-content:center;gap:12px;opacity:0;transition:opacity .2s}.image-preview:hover .image-overlay[data-v-ae9cfae0]{opacity:1}.overlay-button[data-v-ae9cfae0]{display:flex;align-items:center;gap:6px;padding:8px 16px;border:none;border-radius:4px;background-color:#fff;color:#1f2933;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.overlay-button[data-v-ae9cfae0]:hover:not(:disabled){background-color:#f3f4f6}.overlay-button[data-v-ae9cfae0]:disabled{opacity:.6;cursor:not-allowed}.overlay-button.danger[data-v-ae9cfae0]{background-color:#ef4444;color:#fff}.overlay-button.danger[data-v-ae9cfae0]:hover{background-color:#dc2626}.upload-area[data-v-ae9cfae0]{width:100%;min-height:120px;border:2px dashed #D1D5DB;border-radius:6px;background-color:#f9fafb;cursor:pointer;transition:all .2s}.upload-area[data-v-ae9cfae0]:hover:not(.readonly){border-color:#3b82f6;background-color:#eff6ff}.upload-area.dragging[data-v-ae9cfae0]{border-color:#3b82f6;background-color:#eff6ff}.upload-area.readonly[data-v-ae9cfae0]{cursor:default}.upload-content[data-v-ae9cfae0]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;color:#6b7280}.upload-text[data-v-ae9cfae0]{margin:12px 0 4px;font-size:14px;font-weight:500;color:#374151}.upload-hint[data-v-ae9cfae0]{margin:0;font-size:12px;color:#9ca3af}.spinner[data-v-ae9cfae0]{width:32px;height:32px;border:3px solid #E5E7EB;border-top-color:#3b82f6;border-radius:50%;animation:spin-ae9cfae0 .8s linear infinite}@keyframes spin-ae9cfae0{to{transform:rotate(360deg)}}.property-editor[data-v-840f8bc8]{width:100%;min-height:32px}.title-cell[data-v-840f8bc8]{font-weight:500}.title-text[data-v-840f8bc8]{display:block;padding:6px 8px;color:#1f2933}.text-cell[data-v-840f8bc8],.number-cell[data-v-840f8bc8]{min-width:150px}.text-value[data-v-840f8bc8],.number-value[data-v-840f8bc8],.select-value[data-v-840f8bc8]{display:block;padding:6px 8px;color:#1f2933}.single-select-dropdown[data-v-840f8bc8]{position:relative;width:100%;min-width:120px}.single-select-display[data-v-840f8bc8]{min-height:32px;padding:4px 8px;border:none;border-radius:0;background-color:transparent;cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition:background-color .2s}.single-select-display[data-v-840f8bc8]:hover{background-color:#f9fafb}.single-select-value[data-v-840f8bc8]{flex:1;color:#1f2933;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.single-select-value.placeholder[data-v-840f8bc8]{color:#9ca3af}.single-select-arrow[data-v-840f8bc8]{font-size:10px;color:#6b7280;margin-left:8px;flex-shrink:0}.single-select-dropdown-menu[data-v-840f8bc8]{position:absolute;top:100%;left:0;right:0;z-index:100;margin-top:4px;min-width:150px;max-height:280px;display:flex;flex-direction:column;background-color:#fff;border:1px solid #E0E0E0;border-radius:6px;box-shadow:0 4px 12px #00000026;overflow:hidden}.checkbox-cell[data-v-840f8bc8]{display:flex;align-items:center;justify-content:flex-start;height:100%;min-height:36px;padding:0 12px}.checkbox-input[data-v-840f8bc8]{width:16px;height:16px;cursor:pointer;accent-color:#3B82F6}.date-cell[data-v-840f8bc8]{min-width:180px}.date-input[data-v-840f8bc8]{width:100%;height:32px;padding:0 8px;border:0;border-radius:4px;background-color:#fff;color:#1f2933;font-size:14px;cursor:pointer;transition:background-color .2s}.date-input[data-v-840f8bc8]:focus{outline:none;background-color:#f3f4f6}.date-value[data-v-840f8bc8]{display:block;padding:6px 8px;color:#1f2933;font-size:14px}.multi-select-cell[data-v-840f8bc8]{min-width:150px}.multi-select-dropdown[data-v-840f8bc8]{position:relative;min-width:120px}.multi-select-tags-display[data-v-840f8bc8]{min-height:32px;padding:4px 8px;border:none;border-radius:0;background-color:transparent;cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition:background-color .2s}.multi-select-tags-display[data-v-840f8bc8]:hover{background-color:#f9fafb}.multi-select-placeholder[data-v-840f8bc8]{color:#9ca3af;font-size:14px}.multi-select-tags-list[data-v-840f8bc8]{display:flex;flex-wrap:wrap;gap:4px;flex:1}.multi-select-tag-selected[data-v-840f8bc8]{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:4px;background-color:#eff6ff;color:#3b82f6;font-size:12px}.multi-select-tag-remove[data-v-840f8bc8]{all:unset;width:16px;height:16px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:14px;opacity:.7;transition:opacity .2s}.multi-select-tag-remove[data-v-840f8bc8]:hover{opacity:1}.multi-select-arrow[data-v-840f8bc8]{font-size:10px;color:#6b7280;margin-left:8px}.multi-select-dropdown-menu[data-v-840f8bc8]{position:absolute;top:100%;left:0;right:0;z-index:100;margin-top:4px;min-width:150px;max-height:280px;display:flex;flex-direction:column;background-color:#fff;border:1px solid #E0E0E0;border-radius:6px;box-shadow:0 4px 12px #00000026;overflow:hidden}.dropdown-options-list[data-v-840f8bc8]{flex:1;overflow-y:auto;min-height:0}.dropdown-option[data-v-840f8bc8]{display:flex;align-items:center;gap:8px;padding:8px 12px;cursor:pointer;transition:background-color .2s;border-bottom:1px solid #F3F4F6}.dropdown-option[data-v-840f8bc8]:last-of-type{border-bottom:none}.dropdown-option[data-v-840f8bc8]:hover{background-color:#f3f4f6}.dropdown-option.selected[data-v-840f8bc8]{background-color:#eff6ff;color:#3b82f6}.option-checkbox[data-v-840f8bc8]{font-size:12px;color:#3b82f6;width:16px;flex-shrink:0}.option-label[data-v-840f8bc8]{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.dropdown-add-option[data-v-840f8bc8]{display:flex;gap:4px;padding:8px;border-top:1px solid #E0E0E0}.new-option-input[data-v-840f8bc8]{flex:1;min-width:0;height:32px;padding:0 8px;border:1px solid #E0E0E0;border-radius:4px;font-size:13px}.new-option-input[data-v-840f8bc8]:focus{outline:none;border-color:#3b82f6}.add-option-button[data-v-840f8bc8]{all:unset;flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:1px solid #E0E0E0;border-radius:4px;background-color:#f9fafb;color:#6b7280;cursor:pointer;font-size:18px;transition:all .2s}.add-option-button[data-v-840f8bc8]:hover{background-color:#eff6ff;color:#3b82f6;border-color:#3b82f6}.multi-select-value[data-v-840f8bc8]{padding:4px 8px}.multi-select-tags[data-v-840f8bc8]{display:flex;flex-wrap:wrap;gap:4px}.multi-select-tag-readonly[data-v-840f8bc8]{display:inline-block;padding:2px 8px;border-radius:4px;background-color:#eff6ff;color:#3b82f6;font-size:12px}.relation-cell[data-v-840f8bc8]{min-width:150px}.relation-value[data-v-840f8bc8]{display:block;padding:6px 8px;color:#1f2933}.multi-relation-cell[data-v-840f8bc8]{min-width:150px}.image-cell[data-v-840f8bc8]{min-width:150px;padding:4px 0}.unsupported-cell[data-v-840f8bc8]{display:flex;align-items:center;justify-content:center;padding:6px 8px}.text-muted[data-v-840f8bc8]{color:#9ca3af;font-size:12px}.dialog-overlay[data-v-a576bc2c]{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:50}.dialog-content[data-v-a576bc2c]{background-color:#fff;border-radius:6px;box-shadow:0 10px 40px #0003;width:90%;max-width:480px;max-height:90vh;overflow:auto}.dialog-header[data-v-a576bc2c]{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-bottom:1px solid #E0E0E0}.dialog-title[data-v-a576bc2c]{margin:0;font-size:18px;font-weight:600;color:#1f2933}.dialog-close[data-v-a576bc2c]{background:none;border:none;font-size:24px;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s;color:#6b7280}.dialog-close[data-v-a576bc2c]:hover{background-color:#f3f4f6;color:#1f2933}.dialog-body[data-v-a576bc2c]{padding:24px}.dialog-footer[data-v-a576bc2c]{display:flex;justify-content:flex-end;gap:8px;padding:16px 24px;border-top:1px solid #E0E0E0}.form-group[data-v-a576bc2c]{margin-bottom:20px}.form-group[data-v-a576bc2c]:last-child{margin-bottom:0}.form-label[data-v-a576bc2c]{display:block;margin-bottom:8px;font-size:14px;font-weight:500;color:#1f2933}.form-hint[data-v-a576bc2c]{margin:8px 0 0;font-size:12px;color:#6b7280;line-height:1.5}.type-selector[data-v-a576bc2c]{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.type-button[data-v-a576bc2c]{display:flex;align-items:center;gap:8px;padding:12px;border:2px solid #E0E0E0;border-radius:6px;background-color:#fff;cursor:pointer;transition:all .2s;font-size:14px;color:#1f2933}.type-button[data-v-a576bc2c]:hover{border-color:#3b82f6;background-color:#f3f4f6}.type-button.active[data-v-a576bc2c]{border-color:#3b82f6;background-color:#eff6ff;color:#3b82f6}.type-icon[data-v-a576bc2c]{font-size:18px}.type-label[data-v-a576bc2c]{font-weight:500}.format-select[data-v-a576bc2c]{width:100%;height:36px;padding:0 12px;border:1px solid #E0E0E0;border-radius:4px;background-color:#fff;color:#1f2933;font-size:13px;cursor:pointer;transition:all .2s}.format-select[data-v-a576bc2c]:focus{outline:none;border-color:#3b82f6}.format-select[data-v-a576bc2c]:hover{border-color:#3b82f6}.column-selector[data-v-a576bc2c]{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;max-height:200px;overflow-y:auto;padding:8px;border:1px solid #E0E0E0;border-radius:4px;background-color:#f9fafb}.column-checkbox[data-v-a576bc2c]{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:4px;cursor:pointer;transition:background-color .2s;-webkit-user-select:none;-moz-user-select:none;user-select:none}.column-checkbox[data-v-a576bc2c]:hover{background-color:#f3f4f6}.column-checkbox input[type=checkbox][data-v-a576bc2c]{width:16px;height:16px;cursor:pointer;accent-color:#3B82F6}.checkbox-label[data-v-a576bc2c]{font-size:13px;color:#1f2937}.table-view[data-v-01ad5267]{width:100%;height:100%;display:flex;flex-direction:column}.table-toolbar[data-v-01ad5267]{display:flex;align-items:center;justify-content:space-between;padding:16px;background-color:#fff}.toolbar-title[data-v-01ad5267]{font-size:18px;font-weight:600;color:#1f2933;cursor:pointer;padding:8px 12px 8px 84px;border-radius:6px;transition:background-color .2s;display:flex;align-items:center}.toolbar-title[data-v-01ad5267]:hover{background-color:#f3f4f6}.database-title[data-v-01ad5267]{display:flex;align-items:center;gap:8px}.toolbar-actions[data-v-01ad5267]{display:flex;gap:8px;align-items:center}.view-mode-switch[data-v-01ad5267]{display:flex;gap:2px;padding:2px;background-color:#f3f4f6;border-radius:6px}.view-mode-btn[data-v-01ad5267]{display:flex;align-items:center;gap:6px;padding:6px 12px;border:none;background-color:transparent;color:#6b7280;font-size:13px;font-weight:500;border-radius:4px;cursor:pointer;transition:all .2s;white-space:nowrap}.view-mode-btn[data-v-01ad5267]:hover{color:#374151;background-color:#e5e7eb}.view-mode-btn.active[data-v-01ad5267]{background-color:#fff;color:#3b82f6;box-shadow:0 1px 3px #0000001a}.view-mode-btn svg[data-v-01ad5267]{flex-shrink:0}.table-container[data-v-01ad5267]{flex:1;overflow:auto;padding:20px;border-radius:6px;background-color:#fff}.data-table[data-v-01ad5267]{border-collapse:collapse;font-size:14px;table-layout:fixed}.table-header[data-v-01ad5267]{position:sticky;top:0;z-index:10;background-color:#fff;border-bottom:1px solid #E0E0E0;text-align:left;padding:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.delete-column-button[data-v-01ad5267]{position:absolute;top:6px;right:6px;display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:none;background-color:transparent;color:#9ca3af;cursor:pointer;border-radius:4px;opacity:0;transition:all .2s}.table-header:hover .delete-column-button[data-v-01ad5267]{opacity:1}.delete-column-button[data-v-01ad5267]:hover{background-color:#fee2e2;color:#dc2626}.column-resize-handle[data-v-01ad5267]{position:absolute;top:0;right:0;width:5px;height:100%;cursor:col-resize;background-color:transparent;transition:background-color .2s}.column-resize-handle[data-v-01ad5267]:hover{background-color:#3b82f6}.column-resize-handle[data-v-01ad5267]:active{background-color:#2563eb}.header-content[data-v-01ad5267]{display:flex;flex-direction:column;padding:12px 32px 12px 6px;gap:0}.view-mode-entry .header-content[data-v-01ad5267]{padding-right:12px}.header-title[data-v-01ad5267]{font-weight:600;font-size:13px;color:#1f2933;cursor:default}.header-title[data-v-01ad5267]:hover{background-color:#f3f4f6;border-radius:3px;padding:1px 4px;margin:-1px -4px}.header-edit-input[data-v-01ad5267]{font-weight:600;font-size:13px;color:#1f2933;border:1px solid #3B82F6;border-radius:3px;padding:1px 4px;outline:none;width:100%;background:#fff;box-shadow:0 0 0 2px #3b82f633}.confirm-overlay[data-v-01ad5267]{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:100}.confirm-dialog[data-v-01ad5267]{background-color:#fff;border-radius:8px;box-shadow:0 10px 40px #0003;padding:24px;max-width:420px;width:90%}.confirm-dialog h3[data-v-01ad5267]{margin:0 0 12px;font-size:18px;font-weight:600;color:#1f2933}.confirm-dialog p[data-v-01ad5267]{margin:0 0 20px;font-size:14px;color:#6b7280;line-height:1.5}.confirm-actions[data-v-01ad5267]{display:flex;justify-content:flex-end;gap:8px}.header-type[data-v-01ad5267]{font-size:11px;color:#6b7280;text-transform:uppercase}.action-header[data-v-01ad5267]{width:48px;min-width:48px}.table-row[data-v-01ad5267]{transition:background-color .2s}.table-row[data-v-01ad5267]:hover{background-color:#f7f7f7}.table-cell[data-v-01ad5267]{padding:0;border-right:1px solid #E0E0E0;border-bottom:1px solid #E0E0E0}.table-cell[data-v-01ad5267]:last-child{border-right:none}.action-cell[data-v-01ad5267]{width:48px;min-width:48px;text-align:center}.delete-button[data-v-01ad5267]{all:unset;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;cursor:pointer;color:#6b7280;border-radius:4px;transition:all .2s}.delete-button[data-v-01ad5267]:hover{background-color:#fee2e2;color:#dc2626}.empty-state[data-v-01ad5267]{padding:48px 24px;text-align:center}.empty-content[data-v-01ad5267]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}.empty-content p[data-v-01ad5267]{margin:0;color:#6b7280;font-size:14px}.pagination-container[data-v-01ad5267]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background-color:#fff;border-top:1px solid #E0E0E0}.pagination-info[data-v-01ad5267]{display:flex;align-items:center;gap:16px}.pagination-text[data-v-01ad5267]{font-size:14px;color:#6b7280}.page-size-select[data-v-01ad5267]{padding:6px 12px;font-size:14px;border:1px solid #D1D5DB;border-radius:4px;background-color:#fff;color:#374151;cursor:pointer;transition:border-color .2s}.page-size-select[data-v-01ad5267]:hover{border-color:#9ca3af}.page-size-select[data-v-01ad5267]:focus{outline:none;border-color:#3b82f6}.pagination-controls[data-v-01ad5267]{display:flex;align-items:center;gap:8px}.pagination-button[data-v-01ad5267]{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:1px solid #D1D5DB;background-color:#fff;color:#374151;border-radius:4px;cursor:pointer;transition:all .2s}.pagination-button[data-v-01ad5267]:hover:not(:disabled){background-color:#f3f4f6;border-color:#9ca3af}.pagination-button[data-v-01ad5267]:disabled{opacity:.5;cursor:not-allowed;background-color:#f9fafb}.pagination-pages[data-v-01ad5267]{display:flex;gap:4px}.pagination-page-button[data-v-01ad5267]{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 8px;border:1px solid #D1D5DB;background-color:#fff;color:#374151;border-radius:4px;font-size:14px;cursor:pointer;transition:all .2s}.pagination-page-button[data-v-01ad5267]:hover{background-color:#f3f4f6;border-color:#9ca3af}.pagination-page-button.active[data-v-01ad5267]{background-color:#3b82f6;border-color:#3b82f6;color:#fff}.dialog-overlay[data-v-01ad5267]{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:50}.dialog-content[data-v-01ad5267]{background-color:#fff;border-radius:6px;box-shadow:0 10px 40px #0003;width:90%;max-width:480px;max-height:90vh;overflow:auto}.dialog-header[data-v-01ad5267]{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-bottom:1px solid #E0E0E0}.dialog-title[data-v-01ad5267]{margin:0;font-size:18px;font-weight:600;color:#1f2933}.dialog-close[data-v-01ad5267]{background:none;border:none;font-size:24px;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s;color:#6b7280}.dialog-close[data-v-01ad5267]:hover{background-color:#f3f4f6;color:#1f2933}.dialog-body[data-v-01ad5267]{padding:24px}.dialog-footer[data-v-01ad5267]{display:flex;justify-content:flex-end;gap:8px;padding:16px 24px;border-top:1px solid #E0E0E0}.form-group[data-v-01ad5267]{margin-bottom:16px}.form-group[data-v-01ad5267]:last-child{margin-bottom:0}.form-label[data-v-01ad5267]{display:block;margin-bottom:8px;font-size:14px;font-weight:500;color:#1f2933}.icon-selector[data-v-01ad5267]{display:flex;gap:8px;flex-wrap:wrap}.icon-button[data-v-01ad5267]{width:48px;height:48px;font-size:24px;border:2px solid #E0E0E0;border-radius:6px;background-color:#fff;cursor:pointer;transition:all .2s}.icon-button[data-v-01ad5267]:hover{border-color:#3b82f6;background-color:#f3f4f6}.icon-button.active[data-v-01ad5267]{border-color:#3b82f6;background-color:#eff6ff;transform:scale(1.1)}.join-section[data-v-01ad5267]{padding:20px;background-color:#fff;border-top:1px solid #E0E0E0}.join-config-header[data-v-01ad5267]{display:flex;align-items:center;gap:12px;margin-bottom:16px}.join-configs-list[data-v-01ad5267]{display:flex;flex-wrap:wrap;gap:8px}.join-config-item[data-v-01ad5267]{display:flex;align-items:center;gap:8px;padding:8px 12px;background-color:#f3f4f6;border-radius:6px;font-size:13px}.join-config-text[data-v-01ad5267]{display:flex;align-items:center;gap:6px}.join-type-badge[data-v-01ad5267]{padding:2px 8px;border-radius:4px;font-size:11px;font-weight:500}.join-type-inner[data-v-01ad5267]{background-color:#dbeafe;color:#1e40af}.join-type-left[data-v-01ad5267]{background-color:#fef3c7;color:#92400e}.join-remove-btn[data-v-01ad5267]{display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:none;background-color:transparent;color:#9ca3af;cursor:pointer;border-radius:4px;transition:all .2s}.join-remove-btn[data-v-01ad5267]:hover{background-color:#fee2e2;color:#dc2626}.join-config-form[data-v-01ad5267]{padding:16px;background-color:#f9fafb;border-radius:6px;margin-bottom:16px}.join-conditions-section[data-v-01ad5267]{margin-top:16px;padding-top:16px;border-top:1px solid #E5E7EB}.join-conditions-header[data-v-01ad5267]{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.no-conditions-hint[data-v-01ad5267]{text-align:center;padding:24px;background-color:#fefefe;border:2px dashed #E5E7EB;border-radius:6px;color:#6b7280}.no-conditions-hint p[data-v-01ad5267]{margin:0 0 12px;font-size:14px}.join-condition-row[data-v-01ad5267]{display:grid;grid-template-columns:1.5fr 1.5fr 1.5fr auto;gap:12px;align-items:start;padding:12px;background-color:#fff;border:1px solid #E5E7EB;border-radius:6px;margin-bottom:8px}.condition-source[data-v-01ad5267],.condition-source-field[data-v-01ad5267],.condition-target[data-v-01ad5267]{display:flex;flex-direction:column;gap:4px}.condition-label[data-v-01ad5267]{font-size:12px;font-weight:600;color:#374151}.condition-actions[data-v-01ad5267]{display:flex;align-items:center;padding-top:20px}.condition-remove-btn[data-v-01ad5267]{background:none;border:none;cursor:pointer;color:#ef4444;padding:4px;border-radius:4px;transition:background-color .2s}.condition-remove-btn[data-v-01ad5267]:hover{background-color:#fef2f2}.join-conditions-legend[data-v-01ad5267]{margin-top:12px;padding:12px;background-color:#eff6ff;border:1px solid #DBEAFE;border-radius:6px}.legend-title[data-v-01ad5267]{margin:0 0 8px;font-size:13px;font-weight:600;color:#1e40af}.legend-list[data-v-01ad5267]{margin:0;padding-left:20px;font-size:12px;color:#1e3a8a;line-height:1.6}.legend-list li[data-v-01ad5267]{margin-bottom:4px}.form-row[data-v-01ad5267]{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}.form-row[data-v-01ad5267]:last-child{margin-bottom:0}.form-select[data-v-01ad5267]{width:100%;padding:8px 12px;border:1px solid #D1D5DB;border-radius:4px;background-color:#fff;color:#374151;font-size:14px;cursor:pointer;transition:border-color .2s}.form-select[data-v-01ad5267]:hover{border-color:#9ca3af}.form-select[data-v-01ad5267]:focus{outline:none;border-color:#3b82f6}.form-actions[data-v-01ad5267]{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.joined-data-section[data-v-01ad5267]{margin-top:20px}.joined-data-header[data-v-01ad5267]{margin-bottom:12px;display:flex;flex-direction:column;gap:8px}.joined-data-title[data-v-01ad5267]{margin:0;font-size:16px;font-weight:600;color:#1f2933}.join-connections-summary[data-v-01ad5267]{display:flex;flex-wrap:wrap;gap:8px;font-size:13px}.connection-summary-item[data-v-01ad5267]{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background-color:#f3f4f6;border-radius:4px;position:relative;color:#374151}.property-selector-button[data-v-01ad5267]{background:none;border:none;cursor:pointer;font-size:14px;padding:2px 6px;border-radius:3px;transition:background-color .2s}.property-selector-button[data-v-01ad5267]:hover{background-color:#e5e7eb}.property-selector-dropdown[data-v-01ad5267]{position:absolute;top:100%;left:0;margin-top:4px;background-color:#fff;border:1px solid #D1D5DB;border-radius:6px;box-shadow:0 4px 6px #0000001a;z-index:1000;min-width:250px;max-width:350px}.property-selector-header[data-v-01ad5267]{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid #E5E7EB}.property-selector-title[data-v-01ad5267]{font-size:14px;font-weight:600;color:#1f2937}.property-selector-close[data-v-01ad5267]{background:none;border:none;font-size:20px;cursor:pointer;color:#6b7280;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:3px}.property-selector-close[data-v-01ad5267]:hover{background-color:#f3f4f6}.property-selector-body[data-v-01ad5267]{padding:12px 16px;max-height:300px;overflow-y:auto}.property-checkbox[data-v-01ad5267]{display:flex;align-items:center;gap:8px;padding:8px 0;cursor:pointer;font-size:14px;color:#374151}.property-checkbox[data-v-01ad5267]:hover{background-color:#f9fafb;margin:0 -8px;padding-left:8px;padding-right:8px;border-radius:3px}.property-checkbox input[type=checkbox][data-v-01ad5267]{cursor:pointer;width:16px;height:16px}.property-selector-footer[data-v-01ad5267]{display:flex;gap:8px;padding:12px 16px;border-top:1px solid #E5E7EB;justify-content:flex-end}.property-selector-footer button[data-v-01ad5267]{padding:6px 16px;border-radius:4px;font-size:14px;cursor:pointer;border:1px solid #D1D5DB;background-color:#fff;transition:all .2s}.property-selector-footer .btn-secondary[data-v-01ad5267]:hover{background-color:#f3f4f6}.property-selector-footer .btn-primary[data-v-01ad5267]{background-color:#3b82f6;color:#fff;border-color:#3b82f6}.property-selector-footer .btn-primary[data-v-01ad5267]:hover{background-color:#2563eb}.connection-separator[data-v-01ad5267]{color:#9ca3af;font-weight:600}.joined-table-wrapper[data-v-01ad5267]{border:1px solid #E0E0E0;border-radius:6px;overflow:hidden}.joined-table-container[data-v-01ad5267]{overflow-x:auto;border-bottom:1px solid #E0E0E0}.joined-table[data-v-01ad5267]{width:100%;border-collapse:collapse;font-size:14px}.table-section-header[data-v-01ad5267]{position:relative;padding:12px;text-align:center;font-weight:600;font-size:13px;border-bottom:2px solid #E0E0E0}.table-name-with-actions[data-v-01ad5267]{display:flex;align-items:center;justify-content:center;gap:8px}.table-section-header .property-selector-button[data-v-01ad5267]{opacity:.6;transition:opacity .2s}.table-section-header .property-selector-button[data-v-01ad5267]:hover{opacity:1}.current-table-header[data-v-01ad5267]{background-color:#f3f4f6;color:#1f2933}.remote-table-header[data-v-01ad5267]{background-color:#dbeafe;color:#1e40af}.joined-table-header[data-v-01ad5267]{padding:10px 12px;text-align:left;background-color:#fff;border-bottom:1px solid #E0E0E0;font-weight:600;font-size:13px;color:#1f2933}.joined-table-row[data-v-01ad5267]{transition:background-color .2s}.joined-table-row[data-v-01ad5267]:hover{background-color:#f7f7f7}.joined-table-cell[data-v-01ad5267]{padding:10px 12px;border-bottom:1px solid #E0E0E0;border-right:1px solid #E0E0E0;background-color:#fff}.joined-table-cell[data-v-01ad5267]:last-child{border-right:none}.joined-table-cell.empty-cell[data-v-01ad5267]{background-color:#f9fafb}.joined-table-cell[data-v-01ad5267]:has(.property-editor){background-color:#fefefe;position:relative}.joined-table-cell[data-v-01ad5267]:has(.property-editor):before{content:"";position:absolute;top:0;left:0;width:2px;height:100%;background-color:#3b82f6;opacity:.5}.data-filter-toolbar[data-v-01ad5267]{padding:16px;background-color:#f9fafb;border:1px solid #E5E7EB;border-radius:6px;margin-bottom:16px}.filter-section[data-v-01ad5267]{position:relative}.filter-header[data-v-01ad5267]{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.filter-title[data-v-01ad5267]{font-weight:600;font-size:14px;color:#1f2933}.active-filters[data-v-01ad5267]{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px}.active-filter-item[data-v-01ad5267]{display:flex;align-items:center;gap:8px;padding:8px 12px;background-color:#fff;border:1px solid #D1D5DB;border-radius:6px;font-size:13px}.filter-label[data-v-01ad5267]{font-weight:500;color:#374151}.filter-values-select[data-v-01ad5267]{min-width:150px;max-width:250px;height:60px;padding:4px;border:1px solid #D1D5DB;border-radius:4px;font-size:12px}.filter-remove-btn[data-v-01ad5267]{background:none;border:none;color:#9ca3af;cursor:pointer;font-size:18px;line-height:1;padding:0 4px;transition:color .2s}.filter-remove-btn[data-v-01ad5267]:hover{color:#ef4444}.filter-add-dropdown[data-v-01ad5267]{position:absolute;top:100%;left:0;z-index:100;background-color:#fff;border:1px solid #D1D5DB;border-radius:6px;box-shadow:0 4px 6px #0000001a;min-width:300px;max-height:400px;overflow:auto;margin-top:4px}.filter-add-header[data-v-01ad5267]{display:flex;align-items:center;justify-content:space-between;padding:12px;border-bottom:1px solid #E5E7EB}.filter-add-title[data-v-01ad5267]{font-weight:600;font-size:14px}.filter-add-close[data-v-01ad5267]{background:none;border:none;font-size:20px;cursor:pointer;color:#6b7280;padding:0;line-height:1}.filter-add-body[data-v-01ad5267]{padding:8px 0}.filter-field-option[data-v-01ad5267]{padding:10px 12px;cursor:pointer;font-size:13px;transition:background-color .2s}.filter-field-option[data-v-01ad5267]:hover{background-color:#f3f4f6}.table-pagination[data-v-01ad5267]{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background-color:#f9fafb}.table-pagination .pagination-info[data-v-01ad5267]{font-size:13px;color:#6b7280}.table-pagination .pagination-controls[data-v-01ad5267]{display:flex;align-items:center;gap:8px}.table-pagination .page-size-select[data-v-01ad5267]{padding:4px 8px;border:1px solid #D1D5DB;border-radius:4px;font-size:13px;background-color:#fff}.table-pagination .pagination-btn[data-v-01ad5267]{padding:6px 12px;border:1px solid #D1D5DB;border-radius:4px;background-color:#fff;cursor:pointer;font-size:13px;transition:all .2s}.table-pagination .pagination-btn[data-v-01ad5267]:hover:not(:disabled){background-color:#f3f4f6;border-color:#9ca3af}.table-pagination .pagination-btn[data-v-01ad5267]:disabled{opacity:.5;cursor:not-allowed}.joined-table-header.sortable[data-v-01ad5267]{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;position:relative}.joined-table-header.sortable[data-v-01ad5267]:hover{background-color:#f9fafb}.joined-table-header .header-text[data-v-01ad5267]{display:inline-block}.sort-indicator[data-v-01ad5267]{margin-left:6px;font-size:12px;color:#3b82f6}.joined-table-cell[data-v-01ad5267]:has(.property-editor):hover{background-color:#f0f9ff}.empty-text[data-v-01ad5267]{color:#9ca3af;font-style:italic;font-size:13px}.auto-filled-value[data-v-01ad5267]{color:#6b7280;font-size:13px;padding:8px 12px;display:block;background-color:#f3f4f6;border-radius:4px;border:1px dashed #D1D5DB}.empty-state-cell[data-v-01ad5267]{padding:32px 16px;text-align:center;background-color:#f9fafb}.empty-state-content[data-v-01ad5267]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px}.empty-state-content p[data-v-01ad5267]{margin:0;color:#6b7280;font-size:14px}.dialog-overlay[data-v-369fbc4f]{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:50}.dialog-content[data-v-369fbc4f]{background-color:#fff;border-radius:6px;box-shadow:0 10px 40px #0003;width:90%;max-width:480px;max-height:90vh;overflow:auto}.dialog-header[data-v-369fbc4f]{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-bottom:1px solid #E0E0E0}.dialog-title[data-v-369fbc4f]{margin:0;font-size:18px;font-weight:600;color:#1f2933}.dialog-close[data-v-369fbc4f]{background:none;border:none;font-size:24px;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s;color:#6b7280}.dialog-close[data-v-369fbc4f]:hover{background-color:#f3f4f6;color:#1f2933}.dialog-body[data-v-369fbc4f]{padding:24px}.dialog-footer[data-v-369fbc4f]{display:flex;justify-content:flex-end;gap:8px;padding:16px 24px;border-top:1px solid #E0E0E0}.form-group[data-v-369fbc4f]{margin-bottom:16px}.form-group[data-v-369fbc4f]:last-child{margin-bottom:0}.form-label[data-v-369fbc4f]{display:block;margin-bottom:8px;font-size:14px;font-weight:500;color:#1f2933}.icon-selector[data-v-369fbc4f]{display:flex;gap:8px;flex-wrap:wrap}.icon-button[data-v-369fbc4f]{width:48px;height:48px;font-size:24px;border:2px solid #E0E0E0;border-radius:6px;background-color:#fff;cursor:pointer;transition:all .2s}.icon-button[data-v-369fbc4f]:hover{border-color:#3b82f6;background-color:#f3f4f6}.icon-button.active[data-v-369fbc4f]{border-color:#3b82f6;background-color:#eff6ff;transform:scale(1.1)}.checkbox-group[data-v-369fbc4f]{display:flex;flex-direction:column;gap:8px}.checkbox-label[data-v-369fbc4f]{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;color:#1f2933}.checkbox-label input[type=checkbox][data-v-369fbc4f]{width:16px;height:16px;cursor:pointer;accent-color:#3B82F6}.checkbox-hint[data-v-369fbc4f]{font-size:12px;color:#6b7280;padding-left:24px}.dialog-overlay[data-v-900f936d]{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:50}.dialog-content[data-v-900f936d]{background-color:#fff;border-radius:6px;box-shadow:0 10px 40px #0003;width:90%;max-width:420px;max-height:90vh;overflow:auto}.dialog-header[data-v-900f936d]{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-bottom:1px solid #E0E0E0}.dialog-title[data-v-900f936d]{margin:0;font-size:18px;font-weight:600;color:#1f2933}.dialog-close[data-v-900f936d]{background:none;border:none;font-size:24px;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s;color:#6b7280}.dialog-close[data-v-900f936d]:hover{background-color:#f3f4f6;color:#1f2933}.dialog-body[data-v-900f936d]{padding:16px 24px}.select-list[data-v-900f936d]{max-height:320px;overflow-y:auto}.select-item[data-v-900f936d]{display:flex;align-items:center;gap:12px;padding:10px 12px;border-radius:6px;cursor:pointer;transition:background-color .2s}.select-item[data-v-900f936d]:hover{background-color:#f3f4f6}.select-item.active[data-v-900f936d]{background-color:#eff6ff}.select-icon[data-v-900f936d]{font-size:22px;flex-shrink:0}.select-info[data-v-900f936d]{flex:1;min-width:0}.select-name[data-v-900f936d]{font-size:14px;color:#1f2933;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.select-item.active .select-name[data-v-900f936d]{color:#3b82f6;font-weight:500}.select-description[data-v-900f936d]{font-size:12px;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.select-check[data-v-900f936d]{color:#3b82f6;flex-shrink:0}.list-empty[data-v-900f936d]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 16px;color:#6b7280;font-size:14px}.spinner[data-v-900f936d]{width:24px;height:24px;border:2px solid #E5E7EB;border-top-color:#3b82f6;border-radius:50%;animation:spin-900f936d .8s linear infinite;margin-bottom:12px}@keyframes spin-900f936d{to{transform:rotate(360deg)}}.dialog-footer[data-v-900f936d]{display:flex;justify-content:flex-end;gap:8px;padding:16px 24px;border-top:1px solid #E0E0E0}.login-container[data-v-4daab56f]{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px}.login-card[data-v-4daab56f]{background-color:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;width:100%;max-width:400px;padding:40px}.login-header[data-v-4daab56f]{text-align:center;margin-bottom:32px}.login-title[data-v-4daab56f]{margin:0 0 8px;font-size:28px;font-weight:700;color:#1f2937}.login-subtitle[data-v-4daab56f]{margin:0;font-size:14px;color:#6b7280}.login-form[data-v-4daab56f]{display:flex;flex-direction:column;gap:20px}.error-message[data-v-4daab56f]{position:relative;padding:12px 16px;background-color:#fee2e2;border:1px solid #FECACA;border-radius:6px;color:#dc2626;font-size:14px;display:flex;align-items:center;justify-content:space-between}.error-close[data-v-4daab56f]{background:none;border:none;font-size:20px;color:#dc2626;cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s}.error-close[data-v-4daab56f]:hover{background-color:#fecaca}.form-group[data-v-4daab56f]{display:flex;flex-direction:column;gap:8px}.form-label[data-v-4daab56f]{font-size:14px;font-weight:500;color:#374151}.login-button[data-v-4daab56f]{width:100%;padding:12px;font-size:15px;font-weight:600;margin-top:8px}.user-management[data-v-73b01ac5]{padding:20px;max-width:1200px;margin:0 auto}.page-header[data-v-73b01ac5]{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.page-title[data-v-73b01ac5]{margin:0 0 4px;font-size:28px;font-weight:700;color:#1f2937}.page-subtitle[data-v-73b01ac5]{margin:0;font-size:14px;color:#6b7280}.error-banner[data-v-73b01ac5]{position:relative;padding:12px 16px;background-color:#fee2e2;border:1px solid #FECACA;border-radius:6px;color:#dc2626;font-size:14px;margin-bottom:20px;display:flex;align-items:center;justify-content:space-between}.error-close[data-v-73b01ac5]{background:none;border:none;font-size:20px;cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s}.error-close[data-v-73b01ac5]:hover{background-color:#fecaca}.users-table-container[data-v-73b01ac5]{background-color:#fff;border-radius:8px;border:1px solid #E5E7EB;overflow:hidden}.users-table[data-v-73b01ac5]{width:100%;border-collapse:collapse}.users-table thead[data-v-73b01ac5]{background-color:#f9fafb;border-bottom:1px solid #E5E7EB}.users-table th[data-v-73b01ac5]{padding:12px 16px;text-align:left;font-size:13px;font-weight:600;color:#374151;text-transform:uppercase}.users-table td[data-v-73b01ac5]{padding:12px 16px;border-bottom:1px solid #F3F4F6;font-size:14px;color:#1f2937}.user-row[data-v-73b01ac5]:hover{background-color:#f9fafb}.user-username[data-v-73b01ac5]{font-weight:500}.role-badge[data-v-73b01ac5]{display:inline-block;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500}.role-badge-admin[data-v-73b01ac5]{background-color:#dbeafe;color:#1e40af}.role-badge-user[data-v-73b01ac5]{background-color:#d1fae5;color:#065f46}.role-badge-viewer[data-v-73b01ac5]{background-color:#f3f4f6;color:#4b5563}.user-actions[data-v-73b01ac5]{display:flex;gap:8px}.action-button[data-v-73b01ac5]{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:1px solid #D1D5DB;background-color:#fff;color:#6b7280;border-radius:4px;cursor:pointer;transition:all .2s}.action-button[data-v-73b01ac5]:hover{background-color:#f3f4f6;border-color:#9ca3af;color:#374151}.action-button.delete[data-v-73b01ac5]:hover{background-color:#fee2e2;border-color:#f87171;color:#dc2626}.loading-state[data-v-73b01ac5],.empty-state[data-v-73b01ac5]{text-align:center;padding:40px;color:#6b7280}.dialog-overlay[data-v-73b01ac5]{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:50}.dialog-content[data-v-73b01ac5]{background-color:#fff;border-radius:8px;box-shadow:0 20px 25px -5px #0000001a;width:90%;max-width:500px;max-height:90vh;overflow:auto}.dialog-header[data-v-73b01ac5]{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #E5E7EB}.dialog-title[data-v-73b01ac5]{margin:0;font-size:18px;font-weight:600;color:#1f2937}.dialog-close[data-v-73b01ac5]{background:none;border:none;font-size:24px;cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px;transition:background-color .2s;color:#6b7280}.dialog-close[data-v-73b01ac5]:hover{background-color:#f3f4f6;color:#1f2937}.dialog-body[data-v-73b01ac5]{padding:24px}.dialog-footer[data-v-73b01ac5]{display:flex;justify-content:flex-end;gap:8px;padding:16px 24px;border-top:1px solid #E5E7EB}.form-group[data-v-73b01ac5]{margin-bottom:16px}.form-label[data-v-73b01ac5]{display:block;margin-bottom:6px;font-size:14px;font-weight:500;color:#374151}.form-select[data-v-73b01ac5]{width:100%;height:38px;padding:0 12px;border:1px solid #D1D5DB;border-radius:4px;background-color:#fff;color:#1f2937;font-size:14px;cursor:pointer;transition:all .2s}.form-select[data-v-73b01ac5]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.database-view-layer[data-v-76bd3ac2]{position:absolute;background:#fff;border:1px solid #E5E7EB;border-radius:8px;box-shadow:0 4px 12px #0000001a;overflow:visible;display:flex;flex-direction:column;cursor:move;transition:box-shadow .2s}.database-view-layer[data-v-76bd3ac2]:hover{box-shadow:0 6px 16px #00000026}.layer-header[data-v-76bd3ac2]{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:#f9fafb;border-bottom:1px solid #E5E7EB;gap:12px;position:relative}.layer-title[data-v-76bd3ac2]{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:#374151;flex-shrink:0}.header-controls[data-v-76bd3ac2]{display:flex;align-items:center;gap:8px;flex:1;justify-content:flex-end}.header-search input[data-v-76bd3ac2]{width:120px;padding:4px 8px;font-size:12px;border:1px solid #D1D5DB;border-radius:4px;outline:none;transition:width .2s}.header-search input[data-v-76bd3ac2]:focus{width:160px;border-color:#3b82f6}.header-control-btn[data-v-76bd3ac2]{padding:4px;background:#fff;border:1px solid #D1D5DB;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.header-control-btn[data-v-76bd3ac2]:hover{background:#f3f4f6;border-color:#9ca3af}.column-control-panel[data-v-76bd3ac2]{position:absolute;top:100%;right:0;margin-top:4px;background:#fff;border:1px solid #E5E7EB;border-radius:6px;box-shadow:0 4px 6px -1px #0000001a;z-index:100;min-width:200px}.column-control-header[data-v-76bd3ac2]{padding:8px 12px;font-size:12px;font-weight:600;color:#374151;border-bottom:1px solid #E5E7EB}.column-control-list[data-v-76bd3ac2]{max-height:200px;overflow-y:auto;padding:4px}.column-control-item[data-v-76bd3ac2]{display:flex;align-items:center;gap:8px;padding:6px 8px;cursor:pointer;border-radius:4px;font-size:12px;color:#4b5563}.column-control-item[data-v-76bd3ac2]:hover{background:#f3f4f6}.column-control-label[data-v-76bd3ac2]{flex:1;-webkit-user-select:none;-moz-user-select:none;user-select:none}.layer-content[data-v-76bd3ac2]{flex:1;display:flex;flex-direction:column;overflow:hidden;background:#fff}.data-list[data-v-76bd3ac2]{flex:1;overflow-y:auto;padding:4px}.data-item[data-v-76bd3ac2]{padding:8px 10px;border-radius:4px;cursor:pointer;transition:background-color .2s;margin-bottom:2px}.data-item[data-v-76bd3ac2]:hover{background-color:#f3f4f6}.data-item.selected[data-v-76bd3ac2]{background-color:#ebf5ff;border:1px solid #BFDBFE}.row-title[data-v-76bd3ac2]{font-size:13px;font-weight:500;color:#1f2937;margin-bottom:4px}.row-properties[data-v-76bd3ac2]{display:flex;flex-direction:column;gap:2px}.row-property[data-v-76bd3ac2]{font-size:11px;color:#6b7280;display:flex;gap:4px;align-items:flex-start}.property-name[data-v-76bd3ac2]{font-weight:500;color:#9ca3af;flex-shrink:0}.property-value-editor[data-v-76bd3ac2]{flex:1;min-width:0}.property-value[data-v-76bd3ac2]{color:#6b7280;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.edit-dialog-overlay[data-v-76bd3ac2]{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.edit-dialog[data-v-76bd3ac2]{background:#fff;border-radius:8px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:600px;width:100%;max-height:80vh;display:flex;flex-direction:column}.edit-dialog-header[data-v-76bd3ac2]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #E5E7EB}.edit-dialog-header h3[data-v-76bd3ac2]{margin:0;font-size:18px;font-weight:600;color:#1f2937}.edit-dialog-header .close-btn[data-v-76bd3ac2]{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:none;border:none;color:#6b7280;cursor:pointer;border-radius:4px;font-size:20px;line-height:1;transition:all .2s}.edit-dialog-header .close-btn[data-v-76bd3ac2]:hover{background-color:#f3f4f6;color:#1f2937}.edit-dialog-content[data-v-76bd3ac2]{flex:1;overflow-y:auto;padding:20px}.edit-field[data-v-76bd3ac2]{margin-bottom:20px}.edit-field[data-v-76bd3ac2]:last-child{margin-bottom:0}.edit-field-label[data-v-76bd3ac2]{display:block;font-size:14px;font-weight:500;color:#374151;margin-bottom:8px}.edit-field-editor[data-v-76bd3ac2]{width:100%}.edit-dialog-footer[data-v-76bd3ac2]{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:16px 20px;border-top:1px solid #E5E7EB}.edit-btn[data-v-76bd3ac2]{padding:8px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border:1px solid #D1D5DB;background-color:#fff;color:#374151}.edit-btn[data-v-76bd3ac2]:hover{background-color:#f9fafb;border-color:#9ca3af}.edit-btn.primary[data-v-76bd3ac2]{background-color:#3b82f6;border-color:#3b82f6;color:#fff}.edit-btn.primary[data-v-76bd3ac2]:hover{background-color:#2563eb;border-color:#2563eb}.empty-list[data-v-76bd3ac2]{display:flex;align-items:center;justify-content:center;padding:32px 16px;text-align:center;color:#9ca3af}.empty-list p[data-v-76bd3ac2]{margin:0;font-size:13px}.pagination[data-v-76bd3ac2]{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px;border-top:1px solid #E5E7EB;background:#f9fafb}.page-btn[data-v-76bd3ac2]{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #D1D5DB;border-radius:4px;cursor:pointer;color:#6b7280;transition:all .2s}.page-btn[data-v-76bd3ac2]:hover:not(:disabled){background-color:#f3f4f6;color:#374151;border-color:#9ca3af}.page-btn[data-v-76bd3ac2]:disabled{opacity:.4;cursor:not-allowed}.page-info[data-v-76bd3ac2]{font-size:12px;color:#6b7280;min-width:40px;text-align:center}.layer-controls[data-v-76bd3ac2]{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.control-handle[data-v-76bd3ac2]{position:absolute;width:12px;height:12px;background-color:#fff;border:2px solid #3B82F6;border-radius:2px;pointer-events:auto;transition:background-color .2s}.control-handle[data-v-76bd3ac2]:hover{background-color:#cfeb25}.edge-resize-handle[data-v-76bd3ac2]{background-color:#fff;border:2px solid #3B82F6;border-radius:2px;pointer-events:auto;transition:background-color .2s;position:absolute}.edge-resize-handle[data-v-76bd3ac2]:hover{background-color:#cfeb25}.edge-top[data-v-76bd3ac2]{top:-7px;left:50%;transform:translate(-50%);width:12px;height:12px}.edge-bottom[data-v-76bd3ac2]{bottom:-7px;left:50%;transform:translate(-50%);width:12px;height:12px}.edge-right[data-v-76bd3ac2]{right:-7px;top:50%;transform:translateY(-50%);width:12px;height:12px}.edge-left[data-v-76bd3ac2]{left:-7px;top:50%;transform:translateY(-50%);width:12px;height:12px}.database-view-layer[data-v-3997d23c]{position:absolute;background:#fff;border:1px solid #E5E7EB;border-radius:8px;box-shadow:0 4px 12px #0000001a;overflow:visible;display:flex;flex-direction:column;cursor:move;transition:box-shadow .2s}.database-view-layer[data-v-3997d23c]:hover{box-shadow:0 6px 16px #00000026}.layer-header[data-v-3997d23c]{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:#f9fafb;border-bottom:1px solid #E5E7EB;gap:12px;position:relative}.layer-title[data-v-3997d23c]{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:#374151;flex-shrink:0}.header-controls[data-v-3997d23c]{display:flex;align-items:center;gap:8px;flex:1;justify-content:flex-end}.header-search[data-v-3997d23c]{display:flex;align-items:center;gap:4px;padding:4px 8px;border:1px solid #D1D5DB;border-radius:4px;background:#fff;min-width:120px}.header-search .search-icon[data-v-3997d23c]{flex-shrink:0;color:#9ca3af}.header-search input[data-v-3997d23c]{flex:1;border:none;outline:none;font-size:12px;background:transparent;min-width:0}.header-search .clear-button[data-v-3997d23c]{padding:2px;background:none;border:none;color:#9ca3af;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0}.header-search .clear-button[data-v-3997d23c]:hover{color:#6b7280}.header-control-btn[data-v-3997d23c]{padding:4px;background:#fff;border:1px solid #D1D5DB;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.header-control-btn[data-v-3997d23c]:hover{background:#f3f4f6;border-color:#9ca3af}.column-control-panel[data-v-3997d23c]{position:absolute;top:100%;right:0;margin-top:4px;background:#fff;border:1px solid #E5E7EB;border-radius:6px;box-shadow:0 4px 6px -1px #0000001a;z-index:100;min-width:200px;max-width:300px}.column-control-header[data-v-3997d23c]{padding:8px 12px;font-size:12px;font-weight:600;color:#374151;border-bottom:1px solid #E5E7EB}.column-control-list[data-v-3997d23c]{max-height:200px;overflow-y:auto;padding:4px}.column-control-item[data-v-3997d23c]{display:flex;align-items:center;gap:8px;padding:6px 8px;cursor:pointer;border-radius:4px;font-size:12px;color:#4b5563}.column-control-item[data-v-3997d23c]:hover{background:#f3f4f6}.column-control-item input[type=checkbox][data-v-3997d23c]{width:14px;height:14px;cursor:pointer;accent-color:#3B82F6;flex-shrink:0}.column-control-label[data-v-3997d23c]{flex:1;-webkit-user-select:none;-moz-user-select:none;user-select:none}.group-control-section[data-v-3997d23c]{padding:12px;border-bottom:1px solid #F3F4F6}.group-control-section[data-v-3997d23c]:last-child{border-bottom:none}.group-control-label[data-v-3997d23c]{display:block;font-size:12px;font-weight:600;color:#374151;margin-bottom:6px}.group-select-full[data-v-3997d23c]{width:100%;padding:6px 8px;border:1px solid #D1D5DB;border-radius:4px;font-size:12px;color:#374151;outline:none}.granularity-option[data-v-3997d23c]{display:flex;align-items:center;gap:4px;font-size:12px;color:#4b5563;cursor:pointer}.granularity-option input[type=radio][data-v-3997d23c]{width:14px;height:14px;accent-color:#3B82F6}.layer-content[data-v-3997d23c]{flex:1;display:flex;flex-direction:column;overflow:hidden;background:#fff}.table-scroll-container[data-v-3997d23c]{padding:8px 0;border:1px solid #D1D5DB;border-radius:6px;font-size:13px;outline:none}.search-input-wrapper input[data-v-3997d23c]:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.clear-button[data-v-3997d23c]{position:absolute;right:8px;display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:none;background-color:transparent;color:#9ca3af;cursor:pointer;border-radius:4px;transition:all .2s}.clear-button[data-v-3997d23c]:hover{background-color:#f3f4f6;color:#6b7280}.column-control-button[data-v-3997d23c]{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border:1px solid #D1D5DB;background-color:#fff;color:#6b7280;cursor:pointer;border-radius:6px;transition:all .2s;flex-shrink:0}.column-control-button[data-v-3997d23c]:hover{background-color:#f3f4f6;border-color:#9ca3af;color:#374151}.column-control-panel[data-v-3997d23c]{margin-top:12px;padding:12px;background-color:#fff;border:1px solid #E5E7EB;border-radius:6px;max-height:250px;overflow-y:auto}.column-control-header[data-v-3997d23c]{font-size:13px;font-weight:600;color:#374151;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid #E5E7EB}.column-control-list[data-v-3997d23c]{display:flex;flex-direction:column;gap:6px}.column-control-item[data-v-3997d23c]{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:4px;cursor:pointer;transition:background-color .2s;-webkit-user-select:none;-moz-user-select:none;user-select:none}.column-control-item[data-v-3997d23c]:hover{background-color:#f9fafb}.column-control-item input[type=checkbox][data-v-3997d23c]{width:16px;height:16px;cursor:pointer;accent-color:#3B82F6;flex-shrink:0}.column-control-label[data-v-3997d23c]{font-size:13px;color:#374151;flex:1}.group-control-section[data-v-3997d23c]{margin-bottom:16px}.group-control-section[data-v-3997d23c]:last-child{margin-bottom:0}.group-control-label[data-v-3997d23c]{display:block;font-size:12px;font-weight:500;color:#374151;margin-bottom:6px}.group-select-full[data-v-3997d23c]{width:100%;padding:6px 10px;border:1px solid #D1D5DB;border-radius:6px;font-size:13px;background-color:#fff;color:#374151;outline:none;cursor:pointer}.group-select-full[data-v-3997d23c]:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.date-granularity-options[data-v-3997d23c]{display:flex;gap:8px}.granularity-option[data-v-3997d23c]{display:flex;align-items:center;gap:4px;padding:6px 10px;border:1px solid #D1D5DB;border-radius:6px;cursor:pointer;transition:all .2s;-webkit-user-select:none;-moz-user-select:none;user-select:none}.granularity-option[data-v-3997d23c]:hover{background-color:#f9fafb;border-color:#9ca3af}.granularity-option input[type=radio][data-v-3997d23c]{width:14px;height:14px;cursor:pointer;accent-color:#3B82F6}.granularity-option span[data-v-3997d23c]{font-size:13px;color:#374151}.group-status[data-v-3997d23c]{display:flex;align-items:center;gap:8px;padding:10px;background-color:#eff6ff;border:1px solid #BFDBFE;border-radius:6px;margin-top:12px}.group-status-label[data-v-3997d23c]{font-size:12px;font-weight:500;color:#1e40af;white-space:nowrap}.group-status-value[data-v-3997d23c]{flex:1;font-size:13px;font-weight:500;color:#1e40af}.group-granularity-badge[data-v-3997d23c]{font-size:11px;color:#3b82f6;margin-left:4px}.clear-group-button[data-v-3997d23c]{display:flex;align-items:center;justify-content:center;width:20px;height:20px;padding:0;border:none;background-color:transparent;color:#3b82f6;cursor:pointer;border-radius:4px;transition:all .2s}.clear-group-button[data-v-3997d23c]:hover{background-color:#dbeafe;color:#1e40af}.table-scroll-container[data-v-3997d23c]{flex:1;overflow:auto;min-height:0;overflow-x:auto;overflow-y:auto}.database-table[data-v-3997d23c]{border-collapse:collapse;font-size:14px;min-width:100%;width:-moz-max-content;width:max-content}.table-header[data-v-3997d23c]{position:sticky;top:0;z-index:10;background-color:#f9fafb;border-bottom:2px solid #E5E7EB;text-align:left;padding:12px;font-weight:600;font-size:13px;color:#374151;min-width:120px;white-space:nowrap}.table-row[data-v-3997d23c]{transition:background-color .2s;cursor:pointer;border-bottom:1px solid #F3F4F6}.table-row[data-v-3997d23c]:hover{background-color:#f3f4f6}.table-row.selected[data-v-3997d23c]{background-color:#eff6ff}.table-row.selected[data-v-3997d23c]:hover{background-color:#dbeafe}.table-cell[data-v-3997d23c]{padding:8px 12px;color:#1f2937;font-size:13px;min-width:120px;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.empty-state[data-v-3997d23c]{padding:48px 24px;text-align:center;color:#6b7280}.empty-state p[data-v-3997d23c]{margin:0}.grouped-container[data-v-3997d23c]{flex:1;overflow-y:auto;padding:8px}.group-item[data-v-3997d23c]{margin-bottom:8px;border:1px solid #E5E7EB;border-radius:6px;overflow:hidden}.group-header[data-v-3997d23c]{display:flex;align-items:center;gap:8px;padding:10px 12px;background-color:#f9fafb;border-bottom:1px solid #E5E7EB;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background-color .2s}.group-header[data-v-3997d23c]:hover{background-color:#f3f4f6}.group-header.expanded[data-v-3997d23c]{background-color:#eff6ff;border-bottom-color:#bfdbfe}.group-chevron[data-v-3997d23c]{flex-shrink:0;transition:transform .2s}.group-chevron.rotated[data-v-3997d23c]{transform:rotate(180deg)}.group-title[data-v-3997d23c]{flex:1;font-size:13px;font-weight:500;color:#374151}.group-count[data-v-3997d23c]{font-size:12px;color:#6b7280;margin-left:4px}.group-content[data-v-3997d23c]{background-color:#fff}.pagination-container[data-v-3997d23c]{display:flex;align-items:center;justify-content:space-between;padding:12px;background-color:#f9fafb;border-top:1px solid #E5E7EB;flex-shrink:0}.pagination-info[data-v-3997d23c]{display:flex;align-items:center}.pagination-text[data-v-3997d23c]{font-size:13px;color:#6b7280}.pagination-controls[data-v-3997d23c]{display:flex;align-items:center;gap:8px}.pagination-button[data-v-3997d23c]{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:1px solid #D1D5DB;background-color:#fff;color:#374151;border-radius:4px;cursor:pointer;transition:all .2s}.pagination-button[data-v-3997d23c]:hover:not(:disabled){background-color:#f3f4f6;border-color:#9ca3af}.pagination-button[data-v-3997d23c]:disabled{opacity:.5;cursor:not-allowed;background-color:#f9fafb}.pagination-pages[data-v-3997d23c]{display:flex;gap:4px}.pagination-page-button[data-v-3997d23c]{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;padding:0 8px;border:1px solid #D1D5DB;background-color:#fff;color:#374151;border-radius:4px;font-size:13px;cursor:pointer;transition:all .2s}.pagination-page-button[data-v-3997d23c]:hover{background-color:#f3f4f6;border-color:#9ca3af}.pagination-page-button.active[data-v-3997d23c]{background-color:#3b82f6;border-color:#3b82f6;color:#fff}.layer-controls[data-v-3997d23c]{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.control-handle[data-v-3997d23c]{position:absolute;width:12px;height:12px;background-color:#fff;border:2px solid #3B82F6;border-radius:2px;pointer-events:auto;transition:background-color .2s}.control-handle[data-v-3997d23c]:hover{background-color:#cfeb25}.edge-resize-handle[data-v-3997d23c]{background-color:#fff;border:2px solid #3B82F6;border-radius:2px;pointer-events:auto;transition:background-color .2s;position:absolute}.edge-resize-handle[data-v-3997d23c]:hover{background-color:#cfeb25}.edge-top[data-v-3997d23c]{top:-7px;left:50%;transform:translate(-50%);width:12px;height:12px}.edge-bottom[data-v-3997d23c]{bottom:-7px;left:50%;transform:translate(-50%);width:12px;height:12px}.edge-right[data-v-3997d23c]{right:-7px;top:50%;transform:translateY(-50%);width:12px;height:12px}.edge-left[data-v-3997d23c]{left:-7px;top:50%;transform:translateY(-50%);width:12px;height:12px}.database-view-layer[data-v-95923af4]{position:absolute;background:#fff;border:1px solid #E5E7EB;border-radius:8px;box-shadow:0 4px 12px #0000001a;overflow:visible;display:flex;flex-direction:column;cursor:move;transition:box-shadow .2s}.database-view-layer[data-v-95923af4]:hover{box-shadow:0 6px 16px #00000026}.layer-header[data-v-95923af4]{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:#f9fafb;border-bottom:1px solid #E5E7EB;gap:12px;position:relative}.layer-title[data-v-95923af4]{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:#374151;flex-shrink:0}.header-controls[data-v-95923af4]{display:flex;align-items:center;gap:8px;flex:1;justify-content:flex-end}.header-group-selector .group-select[data-v-95923af4]{padding:4px 8px;font-size:12px;border:1px solid #D1D5DB;border-radius:4px;outline:none;background:#fff;cursor:pointer;transition:all .2s;max-width:150px}.header-group-selector .group-select[data-v-95923af4]:hover{border-color:#9ca3af}.header-group-selector .group-select[data-v-95923af4]:focus{border-color:#3b82f6}.header-search input[data-v-95923af4]{width:120px;padding:4px 8px;font-size:12px;border:1px solid #D1D5DB;border-radius:4px;outline:none;transition:width .2s}.header-search input[data-v-95923af4]:focus{width:160px;border-color:#3b82f6}.header-control-btn[data-v-95923af4]{padding:4px;background:#fff;border:1px solid #D1D5DB;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.header-control-btn[data-v-95923af4]:hover{background:#f3f4f6;border-color:#9ca3af}.column-control-panel[data-v-95923af4]{position:absolute;top:100%;right:0;margin-top:4px;background:#fff;border:1px solid #E5E7EB;border-radius:6px;box-shadow:0 4px 6px -1px #0000001a;z-index:100;min-width:200px}.column-control-header[data-v-95923af4]{padding:8px 12px;font-size:12px;font-weight:600;color:#374151;border-bottom:1px solid #E5E7EB}.column-control-list[data-v-95923af4]{max-height:200px;overflow-y:auto;padding:4px}.column-control-item[data-v-95923af4]{display:flex;align-items:center;gap:8px;padding:6px 8px;cursor:pointer;border-radius:4px;font-size:12px;color:#4b5563}.column-control-item[data-v-95923af4]:hover{background:#f3f4f6}.column-control-label[data-v-95923af4]{flex:1;-webkit-user-select:none;-moz-user-select:none;user-select:none}.group-control-section[data-v-95923af4]{padding:12px;border-bottom:1px solid #F3F4F6}.group-control-section[data-v-95923af4]:last-child{border-bottom:none}.group-control-label[data-v-95923af4]{display:block;font-size:12px;font-weight:600;color:#374151;margin-bottom:6px}.group-select-full[data-v-95923af4]{width:100%;padding:6px 8px;border:1px solid #D1D5DB;border-radius:4px;font-size:12px;color:#374151;outline:none}.group-select-full[data-v-95923af4]:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.date-granularity-options[data-v-95923af4]{display:flex;gap:8px}.granularity-option[data-v-95923af4]{display:flex;align-items:center;gap:4px;font-size:12px;color:#4b5563;cursor:pointer}.granularity-option input[type=radio][data-v-95923af4]{width:14px;height:14px;accent-color:#3B82F6}.layer-content[data-v-95923af4]{flex:1;display:flex;flex-direction:column;overflow:hidden;background:#fff}.kanban-board[data-v-95923af4]{flex:1;overflow-x:auto;overflow-y:hidden;padding:12px;display:flex;gap:12px}.kanban-column[data-v-95923af4]{flex:0 0 280px;display:flex;flex-direction:column;background:#f9fafb;border:1px solid #E5E7EB;border-radius:6px;max-height:100%;transition:all .2s}.kanban-column.drag-over[data-v-95923af4]{background:#eff6ff;border-color:#3b82f6;border-width:2px;box-shadow:0 0 0 2px #3b82f633}.kanban-column-header[data-v-95923af4]{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid #E5E7EB;background:#fff;border-radius:6px 6px 0 0}.column-title[data-v-95923af4]{font-size:13px;font-weight:600;color:#1f2937}.column-count[data-v-95923af4]{font-size:11px;color:#6b7280;background:#e5e7eb;padding:2px 6px;border-radius:10px;font-weight:500}.kanban-column-content[data-v-95923af4]{flex:1;overflow-y:auto;padding:8px;display:flex;flex-direction:column;gap:8px;min-height:100px}.empty-group[data-v-95923af4]{display:flex;align-items:center;justify-content:center;padding:24px 16px;text-align:center;color:#d1d5db;border:2px dashed #E5E7EB;border-radius:4px;background:#f9fafb;flex:1}.empty-group p[data-v-95923af4]{margin:0;font-size:12px;font-weight:500}.kanban-card[data-v-95923af4]{padding:10px 12px;background:#fff;border:1px solid #E5E7EB;border-radius:4px;cursor:grab;transition:all .2s;box-shadow:0 1px 2px #0000000d;-webkit-user-select:none;-moz-user-select:none;user-select:none}.kanban-card[data-v-95923af4]:active{cursor:grabbing}.kanban-card[data-v-95923af4]:hover{background-color:#f9fafb;border-color:#d1d5db;box-shadow:0 2px 4px #0000001a}.kanban-card.selected[data-v-95923af4]{background-color:#ebf5ff;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633}.kanban-card.dragging[data-v-95923af4]{opacity:.5;transform:rotate(3deg);box-shadow:0 8px 16px #0003}.card-title[data-v-95923af4]{font-size:13px;font-weight:500;color:#1f2937;margin-bottom:6px}.card-properties[data-v-95923af4]{display:flex;flex-direction:column;gap:3px}.card-property[data-v-95923af4]{font-size:11px;color:#6b7280}.column-footer[data-v-95923af4]{padding:8px;text-align:center;border-top:1px solid #E5E7EB;background:#f3f4f6;border-radius:0 0 6px 6px}.footer-text[data-v-95923af4]{font-size:11px;color:#9ca3af}.data-list[data-v-95923af4]{flex:1;overflow-y:auto;padding:4px}.data-item[data-v-95923af4]{padding:8px 10px;border-radius:4px;cursor:pointer;transition:background-color .2s;margin-bottom:2px}.data-item[data-v-95923af4]:hover{background-color:#f3f4f6}.data-item.selected[data-v-95923af4]{background-color:#ebf5ff;border:1px solid #BFDBFE}.row-title[data-v-95923af4]{font-size:13px;font-weight:500;color:#1f2937;margin-bottom:4px}.row-properties[data-v-95923af4]{display:flex;flex-direction:column;gap:2px}.row-property[data-v-95923af4]{font-size:11px;color:#6b7280;display:flex;gap:4px;align-items:flex-start}.property-name[data-v-95923af4]{font-weight:500;color:#9ca3af;flex-shrink:0}.property-value[data-v-95923af4]{color:#6b7280;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.edit-dialog-overlay[data-v-95923af4]{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.edit-dialog[data-v-95923af4]{background:#fff;border-radius:8px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:600px;width:100%;max-height:80vh;display:flex;flex-direction:column}.edit-dialog-header[data-v-95923af4]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #E5E7EB}.edit-dialog-header h3[data-v-95923af4]{margin:0;font-size:18px;font-weight:600;color:#1f2937}.edit-dialog-header .close-btn[data-v-95923af4]{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:none;border:none;color:#6b7280;cursor:pointer;border-radius:4px;font-size:20px;line-height:1;transition:all .2s}.edit-dialog-header .close-btn[data-v-95923af4]:hover{background-color:#f3f4f6;color:#1f2937}.edit-dialog-content[data-v-95923af4]{flex:1;overflow-y:auto;padding:20px}.edit-field[data-v-95923af4]{margin-bottom:20px}.edit-field[data-v-95923af4]:last-child{margin-bottom:0}.edit-field-label[data-v-95923af4]{display:block;font-size:14px;font-weight:500;color:#374151;margin-bottom:8px}.edit-field-editor[data-v-95923af4]{width:100%}.edit-dialog-footer[data-v-95923af4]{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:16px 20px;border-top:1px solid #E5E7EB}.edit-btn[data-v-95923af4]{padding:8px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border:1px solid #D1D5DB;background-color:#fff;color:#374151}.edit-btn[data-v-95923af4]:hover{background-color:#f9fafb;border-color:#9ca3af}.edit-btn.primary[data-v-95923af4]{background-color:#3b82f6;border-color:#3b82f6;color:#fff}.edit-btn.primary[data-v-95923af4]:hover{background-color:#2563eb;border-color:#2563eb}.empty-list[data-v-95923af4]{display:flex;align-items:center;justify-content:center;padding:32px 16px;text-align:center;color:#9ca3af;width:100%}.empty-list p[data-v-95923af4]{margin:0;font-size:13px}.pagination[data-v-95923af4]{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px;border-top:1px solid #E5E7EB;background:#f9fafb}.page-btn[data-v-95923af4]{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #D1D5DB;border-radius:4px;cursor:pointer;color:#6b7280;transition:all .2s}.page-btn[data-v-95923af4]:hover:not(:disabled){background-color:#f3f4f6;color:#374151;border-color:#9ca3af}.page-btn[data-v-95923af4]:disabled{opacity:.4;cursor:not-allowed}.page-info[data-v-95923af4]{font-size:12px;color:#6b7280;min-width:40px;text-align:center}.layer-controls[data-v-95923af4]{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.control-handle[data-v-95923af4]{position:absolute;width:12px;height:12px;background-color:#fff;border:2px solid #3B82F6;border-radius:2px;pointer-events:auto;transition:background-color .2s}.control-handle[data-v-95923af4]:hover{background-color:#cfeb25}.edge-resize-handle[data-v-95923af4]{background-color:#fff;border:2px solid #3B82F6;border-radius:2px;pointer-events:auto;transition:background-color .2s;position:absolute}.edge-resize-handle[data-v-95923af4]:hover{background-color:#cfeb25}.edge-top[data-v-95923af4]{top:-7px;left:50%;transform:translate(-50%);width:12px;height:12px}.edge-bottom[data-v-95923af4]{bottom:-7px;left:50%;transform:translate(-50%);width:12px;height:12px}.edge-right[data-v-95923af4]{right:-7px;top:50%;transform:translateY(-50%);width:12px;height:12px}.edge-left[data-v-95923af4]{left:-7px;top:50%;transform:translateY(-50%);width:12px;height:12px}.database-view-layer[data-v-50bda1b6]{position:absolute;background:#fff;border:1px solid #E5E7EB;border-radius:8px;box-shadow:0 4px 12px #0000001a;overflow:visible;display:flex;flex-direction:column;cursor:move;transition:box-shadow .2s}.database-view-layer[data-v-50bda1b6]:hover{box-shadow:0 6px 16px #00000026}.layer-header[data-v-50bda1b6]{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:#f9fafb;border-bottom:1px solid #E5E7EB;gap:12px;position:relative}.layer-title[data-v-50bda1b6]{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:#374151;flex-shrink:0}.header-controls[data-v-50bda1b6]{display:flex;align-items:center;gap:8px;flex:1;justify-content:flex-end}.date-field-select[data-v-50bda1b6]{padding:4px 8px;font-size:12px;border:1px solid #D1D5DB;border-radius:4px;outline:none;background:#fff;cursor:pointer;transition:all .2s;max-width:150px}.date-field-select[data-v-50bda1b6]:hover{border-color:#9ca3af}.date-field-select[data-v-50bda1b6]:focus{border-color:#3b82f6}.header-search input[data-v-50bda1b6]{width:120px;padding:4px 8px;font-size:12px;border:1px solid #D1D5DB;border-radius:4px;outline:none;transition:width .2s}.header-search input[data-v-50bda1b6]:focus{width:160px;border-color:#3b82f6}.header-control-btn[data-v-50bda1b6]{padding:4px;background:#fff;border:1px solid #D1D5DB;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.header-control-btn[data-v-50bda1b6]:hover{background:#f3f4f6;border-color:#9ca3af}.column-control-panel[data-v-50bda1b6]{position:absolute;top:100%;right:0;margin-top:4px;background:#fff;border:1px solid #E5E7EB;border-radius:6px;box-shadow:0 4px 6px -1px #0000001a;z-index:100;min-width:200px}.column-control-header[data-v-50bda1b6]{padding:8px 12px;font-size:12px;font-weight:600;color:#374151;border-bottom:1px solid #E5E7EB}.column-control-list[data-v-50bda1b6]{max-height:200px;overflow-y:auto;padding:4px}.column-control-item[data-v-50bda1b6]{display:flex;align-items:center;gap:8px;padding:6px 8px;cursor:pointer;border-radius:4px;font-size:12px;color:#4b5563}.column-control-item[data-v-50bda1b6]:hover{background:#f3f4f6}.column-control-label[data-v-50bda1b6]{flex:1;-webkit-user-select:none;-moz-user-select:none;user-select:none}.layer-content[data-v-50bda1b6]{flex:1;display:flex;flex-direction:column;overflow:hidden;background:#fff;padding:12px}.calendar-nav[data-v-50bda1b6]{display:flex;align-items:center;gap:12px;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid #E5E7EB}.nav-btn[data-v-50bda1b6]{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #D1D5DB;border-radius:4px;cursor:pointer;color:#6b7280;transition:all .2s}.nav-btn[data-v-50bda1b6]:hover:not(:disabled){background:#f3f4f6;color:#374151;border-color:#9ca3af}.nav-btn[data-v-50bda1b6]:disabled{opacity:.4;cursor:not-allowed}.month-title[data-v-50bda1b6]{flex:1;text-align:center;font-size:15px;font-weight:600;color:#1f2937}.today-btn[data-v-50bda1b6]{padding:4px 12px;font-size:12px;background:#fff;border:1px solid #D1D5DB;border-radius:4px;cursor:pointer;color:#374151;transition:all .2s}.today-btn[data-v-50bda1b6]:hover:not(:disabled){background:#3b82f6;color:#fff;border-color:#3b82f6}.today-btn[data-v-50bda1b6]:disabled{opacity:.4;cursor:not-allowed}.calendar-weekdays[data-v-50bda1b6]{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:8px}.weekday-label[data-v-50bda1b6]{text-align:center;font-size:12px;font-weight:600;color:#6b7280;padding:4px}.calendar-grid[data-v-50bda1b6]{flex:1;display:grid;grid-template-columns:repeat(7,1fr);grid-template-rows:repeat(6,1fr);gap:4px;overflow-y:visible}.calendar-day[data-v-50bda1b6]{background:#f9fafb;border:1px solid #E5E7EB;border-radius:4px;padding:4px;min-height:60px;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;gap:2px;position:relative}.calendar-day[data-v-50bda1b6]:hover{background:#f3f4f6;border-color:#d1d5db}.calendar-day.other-month[data-v-50bda1b6]{background:#fafafa;opacity:.5}.calendar-day.today[data-v-50bda1b6]{background:#eff6ff;border-color:#3b82f6;border-width:2px}.calendar-day.selected[data-v-50bda1b6]{box-shadow:0 0 0 2px #3b82f64d}.calendar-day.drag-over[data-v-50bda1b6]{background:#eff6ff;border-color:#3b82f6;border-width:2px}.day-number[data-v-50bda1b6]{position:absolute;bottom:4px;right:4px;font-size:12px;font-weight:600;color:#374151;pointer-events:none}.calendar-day.today .day-number[data-v-50bda1b6]{color:#3b82f6}.day-events[data-v-50bda1b6]{flex:1;display:flex;flex-direction:column;gap:2px;overflow-y:auto}.event-item[data-v-50bda1b6]{padding:2px 4px;background:#fff;border:1px solid #E5E7EB;border-radius:2px;font-size:10px;cursor:grab;transition:all .2s;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none}.event-item[data-v-50bda1b6]:active{cursor:grabbing}.event-item.dragging[data-v-50bda1b6]{opacity:.5}.event-item[data-v-50bda1b6]:hover{background:#f9fafb;border-color:#d1d5db}.event-item.selected[data-v-50bda1b6]{background:#ebf5ff;border-color:#3b82f6}.event-title[data-v-50bda1b6]{color:#374151;font-weight:500}.more-events[data-v-50bda1b6]{font-size:10px;color:#6b7280;text-align:center;padding:2px}.empty-calendar[data-v-50bda1b6]{grid-column:1 / -1;display:flex;align-items:center;justify-content:center;padding:32px 16px;text-align:center;color:#9ca3af}.empty-calendar p[data-v-50bda1b6]{margin:0;font-size:13px}.edit-dialog-overlay[data-v-50bda1b6]{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.edit-dialog[data-v-50bda1b6]{background:#fff;border-radius:8px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:600px;width:100%;max-height:80vh;display:flex;flex-direction:column}.edit-dialog-header[data-v-50bda1b6]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #E5E7EB}.edit-dialog-header h3[data-v-50bda1b6]{margin:0;font-size:18px;font-weight:600;color:#1f2937}.edit-dialog-header .close-btn[data-v-50bda1b6]{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:none;border:none;color:#6b7280;cursor:pointer;border-radius:4px;font-size:20px;line-height:1;transition:all .2s}.edit-dialog-header .close-btn[data-v-50bda1b6]:hover{background-color:#f3f4f6;color:#1f2937}.edit-dialog-content[data-v-50bda1b6]{flex:1;overflow-y:auto;padding:20px}.edit-field[data-v-50bda1b6]{margin-bottom:20px}.edit-field[data-v-50bda1b6]:last-child{margin-bottom:0}.edit-field-label[data-v-50bda1b6]{display:block;font-size:14px;font-weight:500;color:#374151;margin-bottom:8px}.edit-field-editor[data-v-50bda1b6]{width:100%}.edit-dialog-footer[data-v-50bda1b6]{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:16px 20px;border-top:1px solid #E5E7EB}.edit-btn[data-v-50bda1b6]{padding:8px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border:1px solid #D1D5DB;background-color:#fff;color:#374151}.edit-btn[data-v-50bda1b6]:hover{background-color:#f9fafb;border-color:#9ca3af}.edit-btn.primary[data-v-50bda1b6]{background-color:#3b82f6;border-color:#3b82f6;color:#fff}.edit-btn.primary[data-v-50bda1b6]:hover{background-color:#2563eb;border-color:#2563eb}.layer-controls[data-v-50bda1b6]{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.control-handle[data-v-50bda1b6]{position:absolute;width:12px;height:12px;background-color:#fff;border:2px solid #3B82F6;border-radius:2px;pointer-events:auto;transition:background-color .2s}.control-handle[data-v-50bda1b6]:hover{background-color:#cfeb25}.edge-resize-handle[data-v-50bda1b6]{background-color:#fff;border:2px solid #3B82F6;border-radius:2px;pointer-events:auto;transition:background-color .2s;position:absolute}.edge-resize-handle[data-v-50bda1b6]:hover{background-color:#cfeb25}.edge-top[data-v-50bda1b6]{top:-7px;left:50%;transform:translate(-50%);width:12px;height:12px}.edge-bottom[data-v-50bda1b6]{bottom:-7px;left:50%;transform:translate(-50%);width:12px;height:12px}.edge-right[data-v-50bda1b6]{right:-7px;top:50%;transform:translateY(-50%);width:12px;height:12px}.edge-left[data-v-50bda1b6]{left:-7px;top:50%;transform:translateY(-50%);width:12px;height:12px}.database-view-layer[data-v-6234c5fe]{position:absolute;background:#fff;border:1px solid #E5E7EB;border-radius:8px;box-shadow:0 4px 12px #0000001a;overflow:visible;display:flex;flex-direction:column;transition:box-shadow .2s}.database-view-layer[data-v-6234c5fe]:hover{box-shadow:0 6px 16px #00000026}.layer-header[data-v-6234c5fe]{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:#f9fafb;border-bottom:1px solid #E5E7EB;gap:8px;flex-shrink:0;flex-wrap:wrap}.layer-title[data-v-6234c5fe]{display:flex;align-items:center;gap:6px;font-size:14px;font-weight:600;color:#1f2933;white-space:nowrap}.layer-title svg[data-v-6234c5fe]{color:#10b981}.header-controls[data-v-6234c5fe]{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.field-select[data-v-6234c5fe]{padding:4px 8px;border:1px solid #D1D5DB;border-radius:4px;font-size:12px;color:#374151;background:#fff;max-width:120px}.field-select[data-v-6234c5fe]:focus{outline:none;border-color:#3b82f6}.nav-controls[data-v-6234c5fe]{display:flex;align-items:center;gap:4px}.nav-btn[data-v-6234c5fe]{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border:1px solid #D1D5DB;border-radius:4px;background:#fff;cursor:pointer;font-size:12px;color:#6b7280}.nav-btn[data-v-6234c5fe]:hover{background:#f3f4f6}.month-title[data-v-6234c5fe]{font-size:13px;font-weight:500;color:#1f2933;min-width:80px;text-align:center}.today-btn[data-v-6234c5fe]{padding:4px 8px;border:1px solid #D1D5DB;border-radius:4px;background:#fff;cursor:pointer;font-size:11px;color:#3b82f6}.today-btn[data-v-6234c5fe]:hover{background:#eff6ff}.granularity-select[data-v-6234c5fe]{padding:4px 6px;border:1px solid #D1D5DB;border-radius:4px;font-size:12px;color:#374151;background:#fff}.granularity-select[data-v-6234c5fe]:focus{outline:none;border-color:#3b82f6}.checkin-body[data-v-6234c5fe]{flex:1;overflow:hidden;display:flex;flex-direction:column}.empty-prompt[data-v-6234c5fe]{display:flex;align-items:center;justify-content:center;height:100%;color:#9ca3af;font-size:14px}.prompt-content[data-v-6234c5fe]{display:flex;flex-direction:column;align-items:center;gap:12px}.grid-wrapper[data-v-6234c5fe]{flex:1;overflow:auto}.checkin-grid[data-v-6234c5fe]{border-collapse:collapse;width:-moz-max-content;width:max-content;min-width:100%}.corner-cell[data-v-6234c5fe]{position:sticky;left:0;top:0;z-index:3;background:#f9fafb;min-width:90px;max-width:140px;border-bottom:1px solid #E5E7EB;text-align:center;vertical-align:middle;font-size:12px;font-weight:500;color:#374151}.weekday-row .weekday-cell[data-v-6234c5fe]{padding:3px 0;font-size:10px;font-weight:500;color:#9ca3af;text-align:center;background:#f9fafb;min-width:30px;position:sticky;top:0;z-index:1}.weekday-cell.is-weekend[data-v-6234c5fe]{color:#f87171}.date-row .date-header[data-v-6234c5fe]{padding:4px 0;font-size:12px;font-weight:500;color:#6b7280;text-align:center;background:#f9fafb;border-bottom:1px solid #E5E7EB;min-width:30px;position:sticky;top:0;z-index:2}.date-header.is-today[data-v-6234c5fe]{color:#3b82f6;font-weight:700;background:#eff6ff}.date-header.is-weekend[data-v-6234c5fe]{color:#f87171}.pie-header[data-v-6234c5fe]{position:sticky;top:0;z-index:3;background:#f9fafb;width:30px;min-width:30px;border-bottom:1px solid #E5E7EB;text-align:center;vertical-align:middle;padding:0;line-height:1}.pie-header-icon[data-v-6234c5fe]{vertical-align:middle}.option-cell[data-v-6234c5fe]{position:sticky;left:0;z-index:1;background:#fff;padding:6px 10px;font-size:12px;font-weight:500;color:#1f2933;white-space:nowrap;border-bottom:1px solid #E5E7EB}.pie-cell[data-v-6234c5fe]{padding:0;text-align:center;vertical-align:middle;border-bottom:1px solid #E5E7EB;border-right:1px solid #E5E7EB;background:#fff;width:30px;min-width:30px;height:30px}.pie-chart[data-v-6234c5fe]{width:28px;height:28px;vertical-align:middle}.pie-text[data-v-6234c5fe]{font-size:7px;font-weight:600;fill:#374151}.check-cell[data-v-6234c5fe]{padding:0;text-align:center;border-bottom:1px solid #E5E7EB;border-right:1px solid #E5E7EB;min-width:30px;height:28px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:background-color .15s}.check-cell.is-today[data-v-6234c5fe]{background:#eff6ff}.check-cell.is-weekend[data-v-6234c5fe]{background:#fafafa}.check-cell[data-v-6234c5fe]:hover{background:#f0fdf4}.check-cell.is-today[data-v-6234c5fe]:hover{background:#dbeafe}.check-mark[data-v-6234c5fe]{color:#10b981;font-size:14px;font-weight:700;line-height:28px;pointer-events:none}.empty-option[data-v-6234c5fe]{text-align:center;padding:20px;color:#9ca3af;font-size:13px}.stats-row td[data-v-6234c5fe]{padding:4px 0;text-align:center;font-size:11px;color:#9ca3af;border-top:1px solid #E5E7EB}.layer-controls[data-v-6234c5fe]{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.control-handle[data-v-6234c5fe]{position:absolute;width:12px;height:12px;background-color:#fff;border:2px solid #3B82F6;border-radius:2px;pointer-events:auto;transition:background-color .2s}.control-handle[data-v-6234c5fe]:hover{background-color:#cfeb25}.edge-resize-handle[data-v-6234c5fe]{background-color:#fff;border:2px solid #3B82F6;border-radius:2px;pointer-events:auto;transition:background-color .2s;position:absolute}.edge-resize-handle[data-v-6234c5fe]:hover{background-color:#cfeb25}.edge-top[data-v-6234c5fe]{top:-7px;left:50%;transform:translate(-50%);width:12px;height:12px}.edge-bottom[data-v-6234c5fe]{bottom:-7px;left:50%;transform:translate(-50%);width:12px;height:12px}.edge-right[data-v-6234c5fe]{right:-7px;top:50%;transform:translateY(-50%);width:12px;height:12px}.edge-left[data-v-6234c5fe]{left:-7px;top:50%;transform:translateY(-50%);width:12px;height:12px}.database-view-layer[data-v-59adeadd]{position:absolute;background:#fff;border:1px solid #E5E7EB;border-radius:8px;box-shadow:0 4px 12px #0000001a;overflow:visible;display:flex;flex-direction:column;cursor:move;transition:box-shadow .2s}.database-view-layer[data-v-59adeadd]:hover{box-shadow:0 6px 16px #00000026}.layer-header[data-v-59adeadd]{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:#f9fafb;border-bottom:1px solid #E5E7EB;gap:12px;position:relative}.layer-title[data-v-59adeadd]{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:#374151;flex-shrink:0}.header-controls[data-v-59adeadd]{display:flex;align-items:center;gap:8px;flex:1;justify-content:flex-end}.date-field-select[data-v-59adeadd],.zoom-select[data-v-59adeadd]{padding:4px 8px;font-size:12px;border:1px solid #D1D5DB;border-radius:4px;outline:none;background:#fff;cursor:pointer;transition:all .2s;max-width:120px}.date-field-select[data-v-59adeadd]:hover,.zoom-select[data-v-59adeadd]:hover{border-color:#9ca3af}.date-field-select[data-v-59adeadd]:focus,.zoom-select[data-v-59adeadd]:focus{border-color:#3b82f6}.header-search input[data-v-59adeadd]{width:120px;padding:4px 8px;font-size:12px;border:1px solid #D1D5DB;border-radius:4px;outline:none;transition:width .2s}.header-search input[data-v-59adeadd]:focus{width:160px;border-color:#3b82f6}.header-control-btn[data-v-59adeadd]{padding:4px;background:#fff;border:1px solid #D1D5DB;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.header-control-btn[data-v-59adeadd]:hover{background:#f3f4f6;border-color:#9ca3af}.column-control-panel[data-v-59adeadd]{position:absolute;top:100%;right:0;margin-top:4px;background:#fff;border:1px solid #E5E7EB;border-radius:6px;box-shadow:0 4px 6px -1px #0000001a;z-index:100;min-width:200px}.column-control-header[data-v-59adeadd]{padding:8px 12px;font-size:12px;font-weight:600;color:#374151;border-bottom:1px solid #E5E7EB}.column-control-list[data-v-59adeadd]{max-height:200px;overflow-y:auto;padding:4px}.column-control-item[data-v-59adeadd]{display:flex;align-items:center;gap:8px;padding:6px 8px;cursor:pointer;border-radius:4px;font-size:12px;color:#4b5563}.column-control-item[data-v-59adeadd]:hover{background:#f3f4f6}.column-control-label[data-v-59adeadd]{flex:1;-webkit-user-select:none;-moz-user-select:none;user-select:none}.layer-content[data-v-59adeadd]{flex:1;display:flex;flex-direction:column;overflow:hidden;background:#fff;padding:12px}.timeline-container[data-v-59adeadd]{flex:1;display:flex;flex-direction:column;overflow:hidden;position:relative}.timeline-scroll-area[data-v-59adeadd]{flex:1;overflow:auto;position:relative;background:#fff}.timeline-header[data-v-59adeadd]{position:relative;height:40px;background:#f9fafb;border-bottom:1px solid #E5E7EB;min-width:-moz-max-content;min-width:max-content}.timeline-header-cell[data-v-59adeadd]{position:absolute;top:0;height:100%;display:flex;align-items:center;justify-content:center;background:#f9fafb;box-sizing:border-box;border-right:1px solid #E5E7EB}.timeline-header-cell[data-v-59adeadd]:last-child{border-right:none}.tick-label[data-v-59adeadd]{font-size:11px;font-weight:600;color:#6b7280;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 4px}.timeline-gantt-content[data-v-59adeadd]{position:relative;min-width:-moz-max-content;min-width:max-content;min-height:100%}.grid-lines[data-v-59adeadd]{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:0}.grid-line[data-v-59adeadd]{position:absolute;top:0;bottom:0;width:1px;background:#f3f4f6}.timeline-hints-container[data-v-59adeadd]{position:absolute;top:40px;left:0;right:0;bottom:0;pointer-events:none;z-index:100;overflow:hidden}.floating-hint[data-v-59adeadd]{position:absolute;background:transparent;border:none;border-radius:0;padding:4px 6px;z-index:1000;cursor:pointer;animation:slideIn-59adeadd .2s ease-in-out;display:flex;align-items:center;gap:6px;min-width:auto;transition:all .2s;pointer-events:auto}.floating-hint[data-v-59adeadd]:hover{background:#3b82f61a;border-radius:4px;padding:4px 8px}.hint-icon[data-v-59adeadd]{font-size:16px;color:#3b82f6;font-weight:700;flex-shrink:0}.hint-left .hint-icon[data-v-59adeadd]{transform:rotate(180deg)}.hint-text[data-v-59adeadd]{font-size:13px;font-weight:600;color:#1f2937;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;max-width:0;opacity:0;transition:all .2s ease-in-out}.floating-hint:hover .hint-text[data-v-59adeadd]{max-width:200px;opacity:1}@keyframes slideIn-59adeadd{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.timeline-bar-container[data-v-59adeadd]{position:absolute;left:0;right:0;height:40px;border-bottom:1px solid #F3F4F6}.timeline-bar[data-v-59adeadd]{position:absolute;top:8px;height:24px;background:#3b82f6;border-radius:4px;cursor:grab;transition:all .2s;overflow:hidden;z-index:10;-webkit-user-select:none;-moz-user-select:none;user-select:none}.timeline-bar[data-v-59adeadd]:active{cursor:grabbing}.timeline-bar[data-v-59adeadd]:hover{background:#2563eb;box-shadow:0 2px 4px #0000001a}.timeline-bar.selected[data-v-59adeadd]{background:#2563eb;box-shadow:0 0 0 2px #3b82f64d}.timeline-bar.resizing[data-v-59adeadd]{opacity:.8}.bar-resize-handle[data-v-59adeadd]{position:absolute;top:0;bottom:0;width:8px;cursor:ew-resize;background:#ffffff4d;transition:background .2s;opacity:0}.timeline-bar:hover .bar-resize-handle[data-v-59adeadd]{opacity:1}.bar-resize-handle[data-v-59adeadd]:hover{background:#ffffff80}.bar-resize-left[data-v-59adeadd]{left:0;border-radius:4px 0 0 4px}.bar-resize-right[data-v-59adeadd]{right:0;border-radius:0 4px 4px 0}.bar-label[data-v-59adeadd]{padding:4px 8px;font-size:11px;color:#fff;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.current-time-line[data-v-59adeadd]{position:absolute;top:0;bottom:0;width:2px;background:#ef4444;z-index:20;pointer-events:none}.empty-timeline[data-v-59adeadd]{flex:1;display:flex;align-items:center;justify-content:center;padding:32px 16px;text-align:center;color:#9ca3af}.empty-timeline p[data-v-59adeadd]{margin:0;font-size:13px}.pagination[data-v-59adeadd]{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px;border-top:1px solid #E5E7EB;background:#f9fafb}.page-btn[data-v-59adeadd]{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #D1D5DB;border-radius:4px;cursor:pointer;color:#6b7280;transition:all .2s}.page-btn[data-v-59adeadd]:hover:not(:disabled){background-color:#f3f4f6;color:#374151;border-color:#9ca3af}.page-btn[data-v-59adeadd]:disabled{opacity:.4;cursor:not-allowed}.page-info[data-v-59adeadd]{font-size:12px;color:#6b7280;min-width:40px;text-align:center}.edit-dialog-overlay[data-v-59adeadd]{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.edit-dialog[data-v-59adeadd]{background:#fff;border-radius:8px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;max-width:600px;width:100%;max-height:80vh;display:flex;flex-direction:column}.edit-dialog-header[data-v-59adeadd]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #E5E7EB}.edit-dialog-header h3[data-v-59adeadd]{margin:0;font-size:18px;font-weight:600;color:#1f2937}.edit-dialog-header .close-btn[data-v-59adeadd]{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:none;border:none;color:#6b7280;cursor:pointer;border-radius:4px;font-size:20px;line-height:1;transition:all .2s}.edit-dialog-header .close-btn[data-v-59adeadd]:hover{background-color:#f3f4f6;color:#1f2937}.edit-dialog-content[data-v-59adeadd]{flex:1;overflow-y:auto;padding:20px}.edit-field[data-v-59adeadd]{margin-bottom:20px}.edit-field[data-v-59adeadd]:last-child{margin-bottom:0}.edit-field-label[data-v-59adeadd]{display:block;font-size:14px;font-weight:500;color:#374151;margin-bottom:8px}.edit-field-editor[data-v-59adeadd]{width:100%}.edit-dialog-footer[data-v-59adeadd]{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:16px 20px;border-top:1px solid #E5E7EB}.edit-btn[data-v-59adeadd]{padding:8px 16px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border:1px solid #D1D5DB;background-color:#fff;color:#374151}.edit-btn[data-v-59adeadd]:hover{background-color:#f9fafb;border-color:#9ca3af}.edit-btn.primary[data-v-59adeadd]{background-color:#3b82f6;border-color:#3b82f6;color:#fff}.edit-btn.primary[data-v-59adeadd]:hover{background-color:#2563eb;border-color:#2563eb}.layer-controls[data-v-59adeadd]{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.control-handle[data-v-59adeadd]{position:absolute;width:12px;height:12px;background-color:#fff;border:2px solid #3B82F6;border-radius:2px;pointer-events:auto;transition:background-color .2s}.control-handle[data-v-59adeadd]:hover{background-color:#cfeb25}.edge-resize-handle[data-v-59adeadd]{background-color:#fff;border:2px solid #3B82F6;border-radius:2px;pointer-events:auto;transition:background-color .2s;position:absolute}.edge-resize-handle[data-v-59adeadd]:hover{background-color:#cfeb25}.edge-top[data-v-59adeadd]{top:-7px;left:50%;transform:translate(-50%);width:12px;height:12px}.edge-bottom[data-v-59adeadd]{bottom:-7px;left:50%;transform:translate(-50%);width:12px;height:12px}.edge-right[data-v-59adeadd]{right:-7px;top:50%;transform:translateY(-50%);width:12px;height:12px}.edge-left[data-v-59adeadd]{left:-7px;top:50%;transform:translateY(-50%);width:12px;height:12px}.database-view-layer[data-v-f13dfc31]{position:absolute;background:#fff;border:1px solid #E5E7EB;border-radius:8px;box-shadow:0 4px 12px #0000001a;overflow:visible;display:flex;flex-direction:column;cursor:move;transition:box-shadow .2s}.database-view-layer[data-v-f13dfc31]:hover{box-shadow:0 6px 16px #00000026}.layer-header[data-v-f13dfc31]{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:#f9fafb;border-bottom:1px solid #E5E7EB;gap:12px}.layer-title[data-v-f13dfc31]{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:#374151;flex-shrink:0}.header-controls[data-v-f13dfc31]{display:flex;align-items:center;gap:8px;flex:1}.chart-type-select[data-v-f13dfc31],.axis-select[data-v-f13dfc31]{padding:4px 8px;font-size:12px;border:1px solid #D1D5DB;border-radius:4px;outline:none;background:#fff;cursor:pointer;transition:all .2s;max-width:120px}.chart-type-select[data-v-f13dfc31]:hover,.axis-select[data-v-f13dfc31]:hover{border-color:#9ca3af}.chart-type-select[data-v-f13dfc31]:focus,.axis-select[data-v-f13dfc31]:focus{border-color:#3b82f6}.layer-content[data-v-f13dfc31]{flex:1;display:flex;flex-direction:column;overflow:hidden;background:#fff;padding:12px}.chart-container[data-v-f13dfc31]{flex:1;position:relative;display:flex;align-items:center;justify-content:center}.chart-container canvas[data-v-f13dfc31]{max-width:100%;max-height:100%}.empty-chart[data-v-f13dfc31]{flex:1;display:flex;align-items:center;justify-content:center;padding:32px 16px;text-align:center;color:#9ca3af}.empty-chart p[data-v-f13dfc31]{margin:0;font-size:13px}.layer-controls[data-v-f13dfc31]{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.control-handle[data-v-f13dfc31]{position:absolute;width:12px;height:12px;background-color:#fff;border:2px solid #3B82F6;border-radius:2px;pointer-events:auto;transition:background-color .2s}.control-handle[data-v-f13dfc31]:hover{background-color:#cfeb25}.edge-resize-handle[data-v-f13dfc31]{background-color:#fff;border:2px solid #3B82F6;border-radius:2px;pointer-events:auto;transition:background-color .2s;position:absolute}.edge-resize-handle[data-v-f13dfc31]:hover{background-color:#cfeb25}.edge-top[data-v-f13dfc31]{top:-7px;left:50%;transform:translate(-50%);width:12px;height:12px}.edge-bottom[data-v-f13dfc31]{bottom:-7px;left:50%;transform:translate(-50%);width:12px;height:12px}.edge-right[data-v-f13dfc31]{right:-7px;top:50%;transform:translateY(-50%);width:12px;height:12px}.edge-left[data-v-f13dfc31]{left:-7px;top:50%;transform:translateY(-50%);width:12px;height:12px}.shapes-canvas[data-v-f0628efd]{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:auto;z-index:5}.shapes-canvas.has-tool[data-v-f0628efd]{cursor:crosshair}.shapes-canvas.has-tool[data-tool=select][data-v-f0628efd]{cursor:default}.shapes-drawing-layer-container[data-v-ed0e9c6c]{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:auto;background:transparent;overflow:visible}.shapes-canvas-wrapper[data-v-ed0e9c6c]{position:relative;width:100%;height:100%}.layer-controls[data-v-ed0e9c6c]{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none}.control-handle[data-v-ed0e9c6c]{position:absolute;width:12px;height:12px;background-color:#fff;border:2px solid #3B82F6;border-radius:2px;pointer-events:auto;transition:background-color .2s}.control-handle[data-v-ed0e9c6c]:hover{background-color:#cfeb25}.edge-resize-handle[data-v-ed0e9c6c]{background-color:#fff;border:2px solid #3B82F6;border-radius:2px;pointer-events:auto;transition:background-color .2s;position:absolute}.edge-resize-handle[data-v-ed0e9c6c]:hover{background-color:#cfeb25}.edge-top[data-v-ed0e9c6c]{top:-7px;left:50%;transform:translate(-50%);width:12px;height:12px}.edge-bottom[data-v-ed0e9c6c]{bottom:-7px;left:50%;transform:translate(-50%);width:12px;height:12px}.edge-right[data-v-ed0e9c6c]{right:-7px;top:50%;transform:translateY(-50%);width:12px;height:12px}.edge-left[data-v-ed0e9c6c]{left:-7px;top:50%;transform:translateY(-50%);width:12px;height:12px}.drawing-toolbar-bottom[data-v-ed0e9c6c]{position:absolute;bottom:-50px;left:0;display:flex;align-items:center;gap:4px;padding:6px 8px;z-index:10}.toolbar-divider[data-v-ed0e9c6c]{width:1px;height:24px;background-color:#d1d5db;margin:0 4px}.undo-btn[data-v-ed0e9c6c],.redo-btn[data-v-ed0e9c6c],.delete-shape-btn[data-v-ed0e9c6c]{width:32px;height:32px;background-color:#fff;border:1px solid #d1d5db;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#6b7280;transition:all .2s}.undo-btn[data-v-ed0e9c6c]:hover:not(:disabled),.redo-btn[data-v-ed0e9c6c]:hover:not(:disabled),.delete-shape-btn[data-v-ed0e9c6c]:hover{background-color:#f3f4f6;border-color:#9ca3af;color:#374151}.delete-shape-btn[data-v-ed0e9c6c]:hover{background-color:#fef2f2;color:#dc2626;border-color:#fca5a5}.tool-btn[data-v-ed0e9c6c]{width:32px;height:32px;background-color:#fff;border:1px solid #d1d5db;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#6b7280;transition:all .2s}.tool-btn[data-v-ed0e9c6c]:hover{background-color:#f3f4f6;border-color:#9ca3af;color:#374151}.tool-btn.active[data-v-ed0e9c6c]{background-color:#eff6ff;border-color:#3b82f6;color:#3b82f6}.style-controls[data-v-ed0e9c6c]{display:flex;align-items:center;gap:8px}.color-picker-wrapper[data-v-ed0e9c6c]{display:flex;align-items:center;gap:4px;font-size:11px;color:#6b7280}.color-picker-wrapper label[data-v-ed0e9c6c]{white-space:nowrap}.color-picker-wrapper input[type=color][data-v-ed0e9c6c]{width:24px;height:24px;border:1px solid #d1d5db;border-radius:4px;cursor:pointer;padding:0}.stroke-width-wrapper[data-v-ed0e9c6c]{display:flex;align-items:center;gap:4px;padding:4px 8px;background-color:#fff;border:1px solid #d1d5db;border-radius:4px}.stroke-width-label[data-v-ed0e9c6c]{font-size:11px;color:#6b7280;white-space:nowrap}.stroke-width-wrapper input[type=range][data-v-ed0e9c6c]{width:60px;cursor:pointer}.stroke-width-value[data-v-ed0e9c6c]{font-size:11px;color:#6b7280;min-width:28px;text-align:right}.checkbox-label[data-v-ed0e9c6c]{display:flex;align-items:center;gap:4px;cursor:pointer;font-size:11px;color:#6b7280}.checkbox-label input[type=checkbox][data-v-ed0e9c6c]{cursor:pointer}.undo-btn[data-v-ed0e9c6c]:disabled,.redo-btn[data-v-ed0e9c6c]:disabled{opacity:.4;cursor:not-allowed}.history-dropdown[data-v-ed0e9c6c]{position:relative;display:flex;align-items:center}.history-current-display[data-v-ed0e9c6c]{background-color:#fff;border:1px solid #d1d5db;border-radius:6px;padding:6px 10px;cursor:pointer;display:flex;align-items:center;gap:8px;font-size:12px;transition:all .2s;box-shadow:0 1px 3px #0000001a;min-width:200px;max-width:300px}.history-current-display[data-v-ed0e9c6c]:hover{border-color:#9ca3af;box-shadow:0 2px 6px #00000026}.history-label[data-v-ed0e9c6c]{color:#6b7280;font-weight:500;white-space:nowrap}.history-index-badge[data-v-ed0e9c6c]{background-color:#3b82f6;color:#fff;font-size:10px;font-weight:600;padding:2px 6px;border-radius:10px;min-width:18px;text-align:center}.history-description-text[data-v-ed0e9c6c]{flex:1;color:#374151;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dropdown-arrow[data-v-ed0e9c6c]{color:#9ca3af;flex-shrink:0;transition:transform .2s}.history-list-popup[data-v-ed0e9c6c]{position:absolute;top:calc(100% + 4px);left:0;background-color:#fff;border:1px solid #d1d5db;border-radius:6px;padding:8px;max-width:280px;max-height:300px;overflow-y:auto;font-size:12px;box-shadow:0 4px 12px #00000026;animation:historyListFadeIn-ed0e9c6c .2s ease-out;z-index:20}@keyframes historyListFadeIn-ed0e9c6c{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.history-items[data-v-ed0e9c6c]{display:flex;flex-direction:column;gap:4px}.history-item[data-v-ed0e9c6c]{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:4px;cursor:pointer;transition:background-color .2s;color:#6b7280}.history-item[data-v-ed0e9c6c]:hover{background-color:#f3f4f6;color:#374151}.history-current[data-v-ed0e9c6c]{background-color:#eff6ff;color:#1d4ed8;font-weight:500}.history-future[data-v-ed0e9c6c]{opacity:.5}.history-index[data-v-ed0e9c6c]{min-width:20px;font-size:10px;color:#9ca3af;font-weight:600}.history-current .history-index[data-v-ed0e9c6c]{color:#3b82f6}.history-description[data-v-ed0e9c6c]{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ink-drawing-view-layer[data-v-aaf06a95]{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:auto;background:transparent;border:none;border-radius:4px;overflow:visible;display:flex;flex-direction:column}.undo-btn[data-v-aaf06a95],.redo-btn[data-v-aaf06a95]{width:32px;height:32px;background-color:#fff;border:1px solid #d1d5db;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#6b7280;transition:all .2s}.undo-btn[data-v-aaf06a95]:hover:not(:disabled),.redo-btn[data-v-aaf06a95]:hover:not(:disabled){background-color:#f3f4f6;border-color:#9ca3af;color:#374151}.undo-btn[data-v-aaf06a95]:disabled,.redo-btn[data-v-aaf06a95]:disabled{opacity:.4;cursor:not-allowed}.toolbar-divider[data-v-aaf06a95]{width:1px;height:24px;background-color:#d1d5db;margin:0 4px}.tool-btn[data-v-aaf06a95]{width:32px;height:32px;background-color:#fff;border:1px solid #d1d5db;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#6b7280;transition:all .2s}.tool-btn[data-v-aaf06a95]:hover{background-color:#f3f4f6;border-color:#9ca3af;color:#374151}.tool-btn.active[data-v-aaf06a95]{background-color:#eff6ff;border-color:#3b82f6;color:#3b82f6}.tool-btn.danger[data-v-aaf06a95]:hover{background-color:#fef2f2;color:#dc2626;border-color:#fca5a5}.color-picker-wrapper[data-v-aaf06a95]{display:flex;align-items:center;gap:4px}.color-picker-wrapper input[type=color][data-v-aaf06a95]{width:28px;height:28px;border:1px solid #d1d5db;border-radius:4px;cursor:pointer;padding:0}.stroke-width-wrapper[data-v-aaf06a95]{display:flex;align-items:center;gap:6px;padding:4px 8px;background-color:#fff;border:1px solid #d1d5db;border-radius:4px}.stroke-width-label[data-v-aaf06a95]{font-size:11px;color:#6b7280;white-space:nowrap}.stroke-width-wrapper input[type=range][data-v-aaf06a95]{width:80px;cursor:pointer}.stroke-width-value[data-v-aaf06a95]{font-size:11px;color:#6b7280;min-width:32px;text-align:right}.ink-toolbar-bottom[data-v-aaf06a95]{position:absolute;bottom:-50px;left:0;display:flex;align-items:center;gap:4px;padding:6px 8px;z-index:1000}.ink-canvas-container[data-v-aaf06a95]{flex:1;position:relative;overflow:hidden;margin-top:0}canvas[data-v-aaf06a95]{display:block;touch-action:none}.layer-controls[data-v-aaf06a95]{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.control-handle[data-v-aaf06a95]{position:absolute;width:12px;height:12px;background-color:#fff;border:2px solid #3B82F6;border-radius:2px;pointer-events:auto;transition:background-color .2s}.control-handle[data-v-aaf06a95]:hover{background-color:#cfeb25}.edge-resize-handle[data-v-aaf06a95]{background-color:#fff;border:2px solid #3B82F6;border-radius:2px;pointer-events:auto;transition:background-color .2s;position:absolute}.edge-resize-handle[data-v-aaf06a95]:hover{background-color:#cfeb25}.edge-top[data-v-aaf06a95]{top:-7px;left:50%;transform:translate(-50%);width:12px;height:12px}.edge-bottom[data-v-aaf06a95]{bottom:-7px;left:50%;transform:translate(-50%);width:12px;height:12px}.edge-right[data-v-aaf06a95]{right:-7px;top:50%;transform:translateY(-50%);width:12px;height:12px}.edge-left[data-v-aaf06a95]{left:-7px;top:50%;transform:translateY(-50%);width:12px;height:12px}.text-view-layer[data-v-4ed6ff04]{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:auto;background:transparent;border:none;border-radius:4px;overflow:visible;display:flex;flex-direction:column}.text-container[data-v-4ed6ff04]{flex:1;position:relative;overflow:hidden;margin-top:0}.text-input[data-v-4ed6ff04]{width:100%;height:100%;background:transparent;border:none;outline:none;resize:none;font-family:inherit}.layer-controls[data-v-4ed6ff04]{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.control-handle[data-v-4ed6ff04]{position:absolute;width:12px;height:12px;background-color:#fff;border:2px solid #3B82F6;border-radius:2px;pointer-events:auto;transition:background-color .2s}.control-handle[data-v-4ed6ff04]:hover{background-color:#cfeb25}.edge-resize-handle[data-v-4ed6ff04]{background-color:#fff;border:2px solid #3B82F6;border-radius:2px;pointer-events:auto;transition:background-color .2s;position:absolute}.edge-resize-handle[data-v-4ed6ff04]:hover{background-color:#cfeb25}.edge-top[data-v-4ed6ff04]{top:-7px;left:50%;transform:translate(-50%);width:12px;height:12px}.edge-bottom[data-v-4ed6ff04]{bottom:-7px;left:50%;transform:translate(-50%);width:12px;height:12px}.edge-right[data-v-4ed6ff04]{right:-7px;top:50%;transform:translateY(-50%);width:12px;height:12px}.edge-left[data-v-4ed6ff04]{left:-7px;top:50%;transform:translateY(-50%);width:12px;height:12px}.text-toolbar-bottom[data-v-4ed6ff04]{position:absolute;bottom:-50px;left:0;display:flex;align-items:center;gap:4px;padding:6px 8px;z-index:1000}.toolbar-divider[data-v-4ed6ff04]{width:1px;height:24px;background-color:#d1d5db;margin:0 4px}.font-select[data-v-4ed6ff04]{padding:4px 8px;background-color:#fff;border:1px solid #d1d5db;border-radius:4px;font-size:12px;color:#374151;cursor:pointer}.list-style-select[data-v-4ed6ff04]{padding:4px 8px;background-color:#fff;border:1px solid #d1d5db;border-radius:4px;font-size:12px;color:#374151;cursor:pointer;min-width:150px}.font-size-wrapper[data-v-4ed6ff04]{display:flex;align-items:center;gap:4px;padding:4px 8px;background-color:#fff;border:1px solid #d1d5db;border-radius:4px}.font-size-label[data-v-4ed6ff04]{font-size:11px;color:#6b7280;white-space:nowrap}.font-size-wrapper input[type=number][data-v-4ed6ff04]{width:50px;padding:2px 4px;border:1px solid #d1d5db;border-radius:2px;font-size:12px;text-align:center}.font-size-value[data-v-4ed6ff04]{font-size:11px;color:#6b7280}.tool-btn[data-v-4ed6ff04]{width:32px;height:32px;background-color:#fff;border:1px solid #d1d5db;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#6b7280;transition:all .2s}.tool-btn[data-v-4ed6ff04]:hover{background-color:#f3f4f6;border-color:#9ca3af;color:#374151}.tool-btn.active[data-v-4ed6ff04]{background-color:#eff6ff;border-color:#3b82f6;color:#3b82f6}.color-picker-wrapper[data-v-4ed6ff04]{display:flex;align-items:center;gap:4px}.color-picker-wrapper input[type=color][data-v-4ed6ff04]{width:32px;height:32px;border:1px solid #d1d5db;border-radius:4px;cursor:pointer;padding:0}.text-list[data-v-4ed6ff04]{width:100%;height:100%;overflow-y:auto;overflow-x:hidden;padding:"8px"}.text-list li[data-v-4ed6ff04]{padding:4px 0;line-height:1.5}.markdown-text-container[data-v-3b3d9b8f]{position:absolute;left:0;top:0;width:100%;height:100%;pointer-events:auto;background:transparent;overflow:visible}.markdown-content-wrapper[data-v-3b3d9b8f]{position:relative;width:100%;height:100%;overflow:hidden}.markdown-editor[data-v-3b3d9b8f]{width:100%;height:100%;border:none;outline:none;background:transparent;padding:8px;resize:none;box-sizing:border-box}.layer-controls[data-v-3b3d9b8f]{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none}.control-handle[data-v-3b3d9b8f]{position:absolute;width:12px;height:12px;background-color:#fff;border:2px solid #3B82F6;border-radius:2px;pointer-events:auto;transition:background-color .2s;z-index:10}.control-handle[data-v-3b3d9b8f]:hover{background-color:#cfeb25}.edge-resize-handle[data-v-3b3d9b8f]{background-color:#fff;border:2px solid #3B82F6;border-radius:2px;pointer-events:auto;transition:background-color .2s;position:absolute}.edge-resize-handle[data-v-3b3d9b8f]:hover{background-color:#cfeb25}.edge-top[data-v-3b3d9b8f]{top:-7px;left:50%;transform:translate(-50%)}.edge-bottom[data-v-3b3d9b8f]{bottom:-7px;left:50%;transform:translate(-50%)}.edge-right[data-v-3b3d9b8f]{right:-7px;top:50%;transform:translateY(-50%)}.edge-left[data-v-3b3d9b8f]{left:-7px;top:50%;transform:translateY(-50%)}.mode-toggle-btn[data-v-3b3d9b8f]{position:absolute;bottom:-45px;left:0;padding:6px 12px;background-color:#fff;border:1px solid #d1d5db;border-radius:4px;cursor:pointer;font-size:13px;color:#374151;transition:all .2s;pointer-events:auto;z-index:10;box-shadow:0 1px 3px #0000001a;font-weight:500}.mode-toggle-btn[data-v-3b3d9b8f]:hover{background-color:#f3f4f6;border-color:#9ca3af}.mode-toggle-btn[data-v-3b3d9b8f]:active{background-color:#e5e7eb}.markdown-content{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,"Apple Color Emoji",Arial,sans-serif,"Segoe UI Emoji",Segoe UI Symbol;line-height:1.6;color:#37352f;padding:8px;width:100%;height:100%;overflow-y:auto;background:transparent;box-sizing:border-box}.markdown-content h1{font-size:2em;font-weight:700;margin:.8em 0 .4em;color:#111;line-height:1.3}.markdown-content h2{font-size:1.5em;font-weight:600;margin:.8em 0 .4em;color:#111;line-height:1.3}.markdown-content h3{font-size:1.25em;font-weight:600;margin:.8em 0 .4em;color:#111;line-height:1.3}.markdown-content h4,.markdown-content h5,.markdown-content h6{font-size:1em;font-weight:600;margin:.8em 0 .4em;color:#111;line-height:1.3}.markdown-content p{margin:.5em 0}.markdown-content ul,.markdown-content ol{margin:.5em 0;padding-left:1.5em}.markdown-content li{margin:.25em 0}.markdown-content li>p{margin:.25em 0}.markdown-content ul ul,.markdown-content ol ol,.markdown-content ul ol,.markdown-content ol ul{margin:.25em 0}.markdown-content code{background:#87837826;color:#eb5757;padding:.2em .4em;border-radius:3px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:.85em;word-wrap:break-word}.markdown-content pre{background:#f7f6f3;border-radius:4px;padding:16px;overflow:auto;margin:.5em 0;border:1px solid #E1E1E1}.markdown-content pre code{background:transparent;color:inherit;padding:0;border-radius:0;font-size:.9em;line-height:1.5}.markdown-content blockquote{border-left:3px solid #111;padding-left:1em;margin:.5em 0;color:#6b6b6b;font-style:italic}.markdown-content blockquote p{margin:.5em 0}.markdown-content table{border-collapse:collapse;width:100%;margin:.5em 0;border:1px solid #E1E1E1}.markdown-content th,.markdown-content td{border:1px solid #E1E1E1;padding:6px 13px;text-align:left}.markdown-content th{background:#f7f6f3;font-weight:600}.markdown-content tr:nth-child(2n){background:#fafafa}.markdown-content hr{border:none;border-top:1px solid #E1E1E1;margin:1em 0}.markdown-content a{color:#0b6cbf;text-decoration:none}.markdown-content a:hover{text-decoration:underline}.markdown-content img{max-width:100%;height:auto;border-radius:4px;margin:.5em 0}.markdown-content .task-list-item{list-style-type:none;padding-left:1.5em;position:relative;margin:.25em 0}.markdown-content .task-list-item input{position:absolute;left:0;top:.2em;margin:0;cursor:pointer}.markdown-content .task-list-item.checked{text-decoration:line-through;color:#9b9a97}.markdown-content sup{font-size:.75em;vertical-align:super;color:#6b6b6b}.markdown-content sub{font-size:.75em;vertical-align:sub;color:#6b6b6b}.markdown-content strong{font-weight:600}.markdown-content em{font-style:italic}.markdown-content del{text-decoration:line-through;color:#9b9a97}.markdown-content kbd{background:#f7f6f3;border:1px solid #E1E1E1;border-radius:3px;padding:.2em .4em;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:.85em}@media (max-width: 768px){.markdown-content{font-size:14px}.markdown-content h1{font-size:1.75em}.markdown-content h2{font-size:1.5em}.markdown-content h3{font-size:1.25em}}.internal-page-link{color:#0b6cbf;text-decoration:underline;cursor:pointer;transition:color .2s;font-weight:500}.internal-page-link:hover{color:#0a5a9e;text-decoration:underline}.internal-page-link:active{color:#084d8a}.modal-overlay[data-v-36a1f151]{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-container[data-v-36a1f151]{background-color:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;width:100%;max-width:500px;max-height:80vh;display:flex;flex-direction:column}.modal-header[data-v-36a1f151]{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb}.modal-header h2[data-v-36a1f151]{margin:0;font-size:18px;font-weight:600;color:#1f2937}.close-btn[data-v-36a1f151]{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:none;border:none;border-radius:6px;cursor:pointer;color:#6b7280;transition:all .2s}.close-btn[data-v-36a1f151]:hover{background-color:#f3f4f6;color:#1f2937}.modal-body[data-v-36a1f151]{flex:1;overflow-y:auto;padding:24px}.empty-state[data-v-36a1f151]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center;color:#9ca3af}.empty-state p[data-v-36a1f151]{margin:8px 0 4px;font-size:14px;font-weight:500}.empty-state .hint[data-v-36a1f151]{font-size:12px;color:#d1d5db}.database-list[data-v-36a1f151]{display:flex;flex-direction:column;gap:8px}.database-item[data-v-36a1f151]{display:flex;align-items:center;gap:12px;padding:12px;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s}.database-item[data-v-36a1f151]:hover,.database-item.selected[data-v-36a1f151]{border-color:#3b82f6;background-color:#eff6ff}.database-icon[data-v-36a1f151]{width:48px;height:48px;display:flex;align-items:center;justify-content:center;font-size:24px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;flex-shrink:0}.database-info[data-v-36a1f151]{flex:1;min-width:0}.database-name[data-v-36a1f151]{font-size:14px;font-weight:600;color:#1f2937;margin-bottom:4px}.database-description[data-v-36a1f151]{font-size:12px;color:#6b7280;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.check-icon[data-v-36a1f151]{color:#3b82f6;flex-shrink:0}.modal-footer[data-v-36a1f151]{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e5e7eb}.btn[data-v-36a1f151]{padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border:none}.btn-secondary[data-v-36a1f151]{background-color:#f3f4f6;color:#374151}.btn-secondary[data-v-36a1f151]:hover{background-color:#e5e7eb}.btn-primary[data-v-36a1f151]{background-color:#3b82f6;color:#fff}.btn-primary[data-v-36a1f151]:hover:not(:disabled){background-color:#2563eb}.btn-primary[data-v-36a1f151]:disabled{opacity:.5;cursor:not-allowed}.modal-enter-active[data-v-36a1f151],.modal-leave-active[data-v-36a1f151]{transition:opacity .3s}.modal-enter-active .modal-container[data-v-36a1f151],.modal-leave-active .modal-container[data-v-36a1f151]{transition:transform .3s,opacity .3s}.modal-enter-from[data-v-36a1f151],.modal-leave-to[data-v-36a1f151]{opacity:0}.modal-enter-from .modal-container[data-v-36a1f151],.modal-leave-to .modal-container[data-v-36a1f151]{transform:scale(.95);opacity:0}.crop-dialog-overlay[data-v-6aa65b4a]{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000000bf;display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn-6aa65b4a .2s ease-out}@keyframes fadeIn-6aa65b4a{0%{opacity:0}to{opacity:1}}.crop-dialog[data-v-6aa65b4a]{background-color:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;width:90vw;max-width:800px;max-height:90vh;display:flex;flex-direction:column;animation:slideUp-6aa65b4a .3s ease-out}@keyframes slideUp-6aa65b4a{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.crop-dialog-header[data-v-6aa65b4a]{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb}.crop-dialog-header h3[data-v-6aa65b4a]{margin:0;font-size:18px;font-weight:600;color:#1f2937}.close-btn[data-v-6aa65b4a]{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background-color:transparent;border:none;border-radius:6px;cursor:pointer;color:#6b7280;transition:all .2s}.close-btn[data-v-6aa65b4a]:hover{background-color:#f3f4f6;color:#1f2937}.crop-dialog-body[data-v-6aa65b4a]{flex:1;padding:24px;overflow-y:auto;display:flex;flex-direction:column;gap:16px;align-items:center}.transform-toolbar[data-v-6aa65b4a]{display:flex;align-items:center;gap:8px;padding:12px;background-color:#f9fafb;border-radius:8px;flex-wrap:wrap}.transform-toolbar .toolbar-label[data-v-6aa65b4a]{font-size:13px;font-weight:500;color:#374151;margin-right:4px}.transform-toolbar .tool-btn[data-v-6aa65b4a]{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background-color:#fff;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;color:#374151;transition:all .2s}.transform-toolbar .tool-btn[data-v-6aa65b4a]:hover{background-color:#f3f4f6;border-color:#9ca3af;color:#1f2937}.transform-toolbar .tool-btn.reset-btn[data-v-6aa65b4a]{width:auto;padding:0 12px;gap:4px;font-size:13px;font-weight:500}.crop-container[data-v-6aa65b4a]{position:relative;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;background-color:#f9fafb;max-width:100%;max-height:60vh;display:flex;align-items:center;justify-content:center}.crop-image[data-v-6aa65b4a]{display:block;max-width:100%;max-height:60vh;width:auto;height:auto;-o-object-fit:contain;object-fit:contain;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none}.crop-box[data-v-6aa65b4a]{position:absolute;top:0;left:0;border:2px solid #3b82f6;background-color:#3b82f61a;cursor:move;box-shadow:0 0 0 9999px #00000080}.crop-handle[data-v-6aa65b4a]{position:absolute;width:12px;height:12px;background-color:#3b82f6;border:2px solid #ffffff;border-radius:2px}.crop-handle.nw[data-v-6aa65b4a]{top:-6px;left:-6px;cursor:nw-resize}.crop-handle.ne[data-v-6aa65b4a]{top:-6px;right:-6px;cursor:ne-resize}.crop-handle.sw[data-v-6aa65b4a]{bottom:-6px;left:-6px;cursor:sw-resize}.crop-handle.se[data-v-6aa65b4a]{bottom:-6px;right:-6px;cursor:se-resize}.crop-grid[data-v-6aa65b4a]{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none}.grid-line[data-v-6aa65b4a]{position:absolute;background-color:#fff6}.grid-line.vertical[data-v-6aa65b4a]{width:1px;height:100%;top:0}.grid-line.horizontal[data-v-6aa65b4a]{width:100%;height:1px;left:0}.crop-info[data-v-6aa65b4a]{display:flex;align-items:center;justify-content:center;gap:24px;padding:12px;background-color:#f9fafb;border-radius:6px;font-size:13px;color:#6b7280}.encrypt-choice[data-v-6aa65b4a]{width:100%;display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:12px;background-color:#f9fafb;border-radius:8px}.encrypt-choice .encrypt-label[data-v-6aa65b4a]{font-size:13px;font-weight:500;color:#374151;margin-right:4px}.encrypt-choice .encrypt-option[data-v-6aa65b4a]{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;background-color:#fff;border:1px solid #d1d5db;border-radius:6px;font-size:13px;color:#374151;cursor:pointer;transition:all .2s}.encrypt-choice .encrypt-option input[data-v-6aa65b4a]{accent-color:#3b82f6;margin:0}.encrypt-choice .encrypt-option.active[data-v-6aa65b4a]{border-color:#3b82f6;background-color:#eff6ff;color:#1d4ed8}.encrypt-choice .encrypt-option.plaintext.active[data-v-6aa65b4a]{border-color:#f59e0b;background-color:#fffbeb;color:#b45309}.encrypt-choice .encrypt-warning[data-v-6aa65b4a]{flex-basis:100%;margin:4px 0 0;font-size:12px;line-height:1.5;color:#b45309}.info-item strong[data-v-6aa65b4a]{color:#374151;margin-right:4px}.crop-dialog-footer[data-v-6aa65b4a]{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e5e7eb;background-color:#f9fafb;border-bottom-left-radius:12px;border-bottom-right-radius:12px}.dialog-btn[data-v-6aa65b4a]{padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border:1px solid transparent}.dialog-btn.cancel[data-v-6aa65b4a]{background-color:#fff;border-color:#d1d5db;color:#374151}.dialog-btn.cancel[data-v-6aa65b4a]:hover{background-color:#f9fafb;border-color:#9ca3af}.dialog-btn.primary[data-v-6aa65b4a]{background-color:#3b82f6;color:#fff}.dialog-btn.primary[data-v-6aa65b4a]:hover{background-color:#2563eb}.ppd-overlay[data-v-d5af6201]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f0f0f8c;display:flex;align-items:center;justify-content:center;z-index:3000}.ppd-dialog[data-v-d5af6201]{width:420px;max-width:calc(100vw - 32px);background:#fff;border:1px solid #e5e7eb;border-radius:10px;box-shadow:0 20px 50px #0003;overflow:hidden}.ppd-header[data-v-d5af6201]{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid #f0f0f0}.ppd-title[data-v-d5af6201]{font-size:15px;font-weight:600;color:#1f2937;display:flex;align-items:center;gap:8px}.ppd-lock-icon[data-v-d5af6201]{font-size:16px}.ppd-close[data-v-d5af6201]{border:none;background:none;color:#9ca3af;font-size:14px;cursor:pointer;padding:4px 8px;border-radius:4px}.ppd-close[data-v-d5af6201]:hover{background:#f3f4f6;color:#4b5563}.ppd-body[data-v-d5af6201]{padding:14px 18px 6px}.ppd-desc[data-v-d5af6201]{font-size:12.5px;color:#6b7280;line-height:1.7;margin:0 0 12px;background:#f9fafb;border:1px solid #f0f0f0;border-radius:6px;padding:8px 10px}.ppd-label[data-v-d5af6201]{display:block;font-size:12px;color:#4b5563;margin:10px 0 4px;font-weight:500}.ppd-input[data-v-d5af6201]{width:100%;box-sizing:border-box;border:1px solid #d1d5db;border-radius:6px;padding:8px 10px;font-size:13px;color:#1f2937;outline:none}.ppd-input[data-v-d5af6201]:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626}.ppd-hint-input[data-v-d5af6201]{color:#6b7280}.ppd-hint-box[data-v-d5af6201]{margin-top:10px;font-size:12px;color:#92400e;background:#fef3c7;border:1px solid #fde68a;border-radius:6px;padding:6px 10px}.ppd-error[data-v-d5af6201]{margin-top:10px;font-size:12.5px;color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;padding:6px 10px}.ppd-footer[data-v-d5af6201]{display:flex;justify-content:flex-end;gap:8px;padding:12px 18px 16px}.ppd-btn[data-v-d5af6201]{padding:7px 16px;border-radius:6px;font-size:13px;cursor:pointer;border:1px solid transparent}.ppd-btn[data-v-d5af6201]:disabled{opacity:.6;cursor:not-allowed}.ppd-btn-cancel[data-v-d5af6201]{background:#fff;border-color:#d1d5db;color:#4b5563}.ppd-btn-cancel[data-v-d5af6201]:hover:not(:disabled){background:#f9fafb}.ppd-btn-confirm[data-v-d5af6201]{background:#3b82f6;color:#fff}.ppd-btn-confirm[data-v-d5af6201]:hover:not(:disabled){background:#2563eb}.media-choice-overlay[data-v-53daf6ea]{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:9999}.media-choice-dialog[data-v-53daf6ea]{background-color:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a;width:90vw;max-width:460px;display:flex;flex-direction:column}.media-choice-header[data-v-53daf6ea]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e5e7eb}.media-choice-header h3[data-v-53daf6ea]{margin:0;font-size:16px;font-weight:600;color:#1f2937}.close-btn[data-v-53daf6ea]{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:6px;cursor:pointer;color:#6b7280}.close-btn[data-v-53daf6ea]:hover{background-color:#f3f4f6}.media-choice-body[data-v-53daf6ea]{padding:16px 20px;display:flex;flex-direction:column;gap:10px}.media-choice-desc[data-v-53daf6ea]{margin:0;font-size:13px;color:#6b7280}.media-choice-formats[data-v-53daf6ea]{margin:0 0 4px;font-size:12px;color:#9ca3af}.choice-option[data-v-53daf6ea]{display:flex;align-items:flex-start;gap:10px;padding:12px;background-color:#fff;border:1px solid #d1d5db;border-radius:8px;cursor:pointer;transition:all .2s}.choice-option input[data-v-53daf6ea]{margin-top:3px;accent-color:#3b82f6}.choice-option.active[data-v-53daf6ea]{border-color:#3b82f6;background-color:#eff6ff}.choice-option.plaintext.active[data-v-53daf6ea]{border-color:#f59e0b;background-color:#fffbeb}.choice-option .option-icon[data-v-53daf6ea]{margin-top:2px;color:#6b7280}.choice-option.active .option-icon[data-v-53daf6ea]{color:#3b82f6}.choice-option.plaintext.active .option-icon[data-v-53daf6ea]{color:#f59e0b}.choice-option .option-text[data-v-53daf6ea]{display:flex;flex-direction:column;gap:2px}.choice-option .option-text strong[data-v-53daf6ea]{font-size:14px;color:#1f2937}.choice-option .option-text span[data-v-53daf6ea]{font-size:12px;color:#6b7280;line-height:1.5}.choice-warning[data-v-53daf6ea]{margin:4px 0 0;padding:10px 12px;background-color:#fffbeb;border:1px solid #fde68a;border-radius:6px;font-size:12px;line-height:1.6;color:#b45309}.media-choice-footer[data-v-53daf6ea]{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:14px 20px;border-top:1px solid #e5e7eb;background-color:#f9fafb;border-bottom-left-radius:12px;border-bottom-right-radius:12px}.dialog-btn[data-v-53daf6ea]{padding:8px 18px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;border:1px solid transparent}.dialog-btn.cancel[data-v-53daf6ea]{background-color:#fff;border-color:#d1d5db;color:#374151}.dialog-btn.cancel[data-v-53daf6ea]:hover{background-color:#f9fafb}.dialog-btn.primary[data-v-53daf6ea]{background-color:#3b82f6;color:#fff}.dialog-btn.primary[data-v-53daf6ea]:hover{background-color:#2563eb}.media-settings-overlay[data-v-5410e915]{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:9999}.media-settings-dialog[data-v-5410e915]{background-color:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a;width:90vw;max-width:480px;display:flex;flex-direction:column}.media-settings-header[data-v-5410e915]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #e5e7eb}.media-settings-header h3[data-v-5410e915]{margin:0;font-size:16px;font-weight:600;color:#1f2937}.close-btn[data-v-5410e915]{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:6px;cursor:pointer;color:#6b7280}.close-btn[data-v-5410e915]:hover{background-color:#f3f4f6}.media-settings-body[data-v-5410e915]{padding:16px 20px;display:flex;flex-direction:column;gap:10px}.settings-desc[data-v-5410e915]{margin:0 0 4px;font-size:13px;color:#6b7280;line-height:1.6}.settings-option[data-v-5410e915]{display:flex;align-items:flex-start;gap:10px;padding:12px;background-color:#fff;border:1px solid #d1d5db;border-radius:8px;cursor:pointer;transition:all .2s}.settings-option input[data-v-5410e915]{margin-top:3px;accent-color:#3b82f6}.settings-option.active[data-v-5410e915]{border-color:#3b82f6;background-color:#eff6ff}.settings-option.plaintext.active[data-v-5410e915]{border-color:#f59e0b;background-color:#fffbeb}.settings-option .option-text[data-v-5410e915]{display:flex;flex-direction:column;gap:2px}.settings-option .option-text strong[data-v-5410e915]{font-size:14px;color:#1f2937}.settings-option .option-text span[data-v-5410e915]{font-size:12px;color:#6b7280;line-height:1.5}.settings-hint[data-v-5410e915]{margin:4px 0 0;font-size:12px;color:#6b7280;line-height:1.6}.settings-error[data-v-5410e915]{margin:4px 0 0;font-size:12px;color:#dc2626}.media-settings-footer[data-v-5410e915]{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:14px 20px;border-top:1px solid #e5e7eb;background-color:#f9fafb;border-bottom-left-radius:12px;border-bottom-right-radius:12px}.dialog-btn[data-v-5410e915]{padding:8px 18px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;border:1px solid transparent}.dialog-btn.cancel[data-v-5410e915]{background-color:#fff;border-color:#d1d5db;color:#374151}.dialog-btn.cancel[data-v-5410e915]:hover{background-color:#f9fafb}.dialog-btn.primary[data-v-5410e915]{background-color:#3b82f6;color:#fff}.dialog-btn.primary[data-v-5410e915]:hover:not(:disabled){background-color:#2563eb}.dialog-btn[data-v-5410e915]:disabled{opacity:.6;cursor:not-allowed}.evp-wrapper[data-v-fa67ed06]{width:100%;height:100%;position:relative;display:flex;align-items:center;justify-content:center;background-color:#000;border-radius:8px;overflow:hidden}.evp-video[data-v-fa67ed06]{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;display:block}.evp-status[data-v-fa67ed06]{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:14px;color:#f9fafb;background-color:#0000008c;pointer-events:none;padding:12px;text-align:center;line-height:1.6}.evp-error[data-v-fa67ed06]{color:#fca5a5}.dialog-overlay[data-v-e7e947c5]{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn-e7e947c5 .2s ease-out}@keyframes fadeIn-e7e947c5{0%{opacity:0}to{opacity:1}}.dialog-container[data-v-e7e947c5]{background-color:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;width:90%;max-width:480px;max-height:80vh;display:flex;flex-direction:column;animation:slideUp-e7e947c5 .3s ease-out}@keyframes slideUp-e7e947c5{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.dialog-header[data-v-e7e947c5]{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb}.dialog-header h3[data-v-e7e947c5]{margin:0;font-size:18px;font-weight:600;color:#1f2937}.close-btn[data-v-e7e947c5]{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background-color:transparent;border:none;border-radius:6px;cursor:pointer;color:#6b7280;transition:all .2s}.close-btn[data-v-e7e947c5]:hover{background-color:#f3f4f6;color:#1f2937}.dialog-body[data-v-e7e947c5]{padding:24px;overflow-y:auto}.layer-info[data-v-e7e947c5]{margin:0 0 16px;font-size:14px;color:#6b7280}.layer-info strong[data-v-e7e947c5]{color:#1f2937;font-weight:600}.pages-list[data-v-e7e947c5]{display:flex;flex-direction:column;gap:8px}.page-item[data-v-e7e947c5]{position:relative;display:flex;align-items:center;gap:12px;padding:8px 12px 8px 36px;border:2px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s;background-color:#fff;min-height:48px}.page-item[data-v-e7e947c5]:hover:not(.selected){border-color:#d1d5db;background-color:#f9fafb}.page-item.selected[data-v-e7e947c5]{border-color:#3b82f6;background-color:#eff6ff}.page-number-badge[data-v-e7e947c5]{position:absolute;left:8px;top:6px;width:20px;height:20px;display:flex;align-items:center;justify-content:center;background-color:#f3f4f6;color:#6b7280;font-size:11px;font-weight:600;border-radius:4px;flex-shrink:0}.page-item.selected .page-number-badge[data-v-e7e947c5]{background-color:#3b82f6;color:#fff}.page-indicator[data-v-e7e947c5]{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background-color:#f3f4f6;border-radius:6px;color:#6b7280;flex-shrink:0}.page-item.selected .page-indicator[data-v-e7e947c5]{background-color:#dbeafe;color:#3b82f6}.page-name[data-v-e7e947c5]{flex:1;font-size:14px;font-weight:500;color:#1f2937;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.check-indicator[data-v-e7e947c5]{color:#3b82f6;flex-shrink:0}.no-pages[data-v-e7e947c5]{padding:32px;text-align:center;color:#9ca3af;font-size:14px}.dialog-footer[data-v-e7e947c5]{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e5e7eb;background-color:#f9fafb;border-radius:0 0 12px 12px}.btn[data-v-e7e947c5]{padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border:none}.btn-cancel[data-v-e7e947c5]{background-color:#fff;color:#6b7280;border:1px solid #d1d5db}.btn-cancel[data-v-e7e947c5]:hover{background-color:#f3f4f6;border-color:#9ca3af}.btn-confirm[data-v-e7e947c5]{background-color:#3b82f6;color:#fff}.btn-confirm[data-v-e7e947c5]:hover:not(:disabled){background-color:#2563eb}.btn-confirm[data-v-e7e947c5]:disabled{opacity:.5;cursor:not-allowed}.dialog-overlay[data-v-0fb75dcf]{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn-0fb75dcf .2s ease-out}@keyframes fadeIn-0fb75dcf{0%{opacity:0}to{opacity:1}}.dialog-container[data-v-0fb75dcf]{background-color:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;width:90%;max-width:460px;display:flex;flex-direction:column;animation:slideUp-0fb75dcf .3s ease-out}@keyframes slideUp-0fb75dcf{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.dialog-header[data-v-0fb75dcf]{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #e5e7eb}.dialog-header h3[data-v-0fb75dcf]{margin:0;font-size:18px;font-weight:600;color:#1f2937}.close-btn[data-v-0fb75dcf]{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background-color:transparent;border:none;border-radius:6px;cursor:pointer;color:#6b7280;transition:all .2s}.close-btn[data-v-0fb75dcf]:hover{background-color:#f3f4f6;color:#1f2937}.dialog-body[data-v-0fb75dcf]{padding:24px}.setting-item[data-v-0fb75dcf]{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.setting-info[data-v-0fb75dcf]{flex:1}.setting-label[data-v-0fb75dcf]{font-size:14px;font-weight:600;color:#1f2937;margin-bottom:4px}.setting-desc[data-v-0fb75dcf]{font-size:13px;color:#6b7280;line-height:1.5}.setting-divider[data-v-0fb75dcf]{height:1px;background-color:#e5e7eb;margin:20px 0}.toggle-switch[data-v-0fb75dcf]{position:relative;display:inline-block;width:44px;height:24px;flex-shrink:0;margin-top:2px}.toggle-switch input[data-v-0fb75dcf]{opacity:0;width:0;height:0}.toggle-slider[data-v-0fb75dcf]{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#d1d5db;transition:.3s;border-radius:24px}.toggle-slider[data-v-0fb75dcf]:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%}.toggle-switch input:checked+.toggle-slider[data-v-0fb75dcf]{background-color:#3b82f6}.toggle-switch input:checked+.toggle-slider[data-v-0fb75dcf]:before{transform:translate(20px)}.dialog-footer[data-v-0fb75dcf]{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e5e7eb;background-color:#f9fafb;border-radius:0 0 12px 12px}.btn[data-v-0fb75dcf]{padding:10px 20px;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s;border:none}.btn-cancel[data-v-0fb75dcf]{background-color:#fff;color:#6b7280;border:1px solid #d1d5db}.btn-cancel[data-v-0fb75dcf]:hover{background-color:#f3f4f6;border-color:#9ca3af}.btn-confirm[data-v-0fb75dcf]{background-color:#3b82f6;color:#fff}.btn-confirm[data-v-0fb75dcf]:hover{background-color:#2563eb}.radio-group[data-v-0fb75dcf]{display:flex;gap:16px;flex-shrink:0;margin-top:2px}.radio-option[data-v-0fb75dcf]{display:flex;align-items:center;gap:6px;cursor:pointer}.radio-option input[type=radio][data-v-0fb75dcf]{width:16px;height:16px;accent-color:#3b82f6;cursor:pointer;margin:0}.radio-label[data-v-0fb75dcf]{font-size:13px;color:#374151;-webkit-user-select:none;-moz-user-select:none;user-select:none}.timezone-select[data-v-0fb75dcf]{padding:6px 10px;border:1px solid #d1d5db;border-radius:6px;font-size:13px;color:#374151;background-color:#fff;cursor:pointer;flex-shrink:0;margin-top:2px;min-width:180px}.timezone-select[data-v-0fb75dcf]:hover{border-color:#9ca3af}.timezone-select[data-v-0fb75dcf]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633}.cloud-panel-overlay[data-v-a0f6f4ae]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f0f0f99;display:flex;align-items:center;justify-content:center;z-index:10000}.cloud-panel[data-v-a0f6f4ae]{width:520px;max-width:calc(100vw - 32px);max-height:calc(100vh - 64px);overflow-y:auto;background:#fff;border:1px solid #E5E7EB;border-radius:8px;box-shadow:0 10px 40px #0000002e;font-size:14px;color:#374151}.cloud-panel-header[data-v-a0f6f4ae]{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid #E5E7EB}.cloud-panel-title[data-v-a0f6f4ae]{display:flex;align-items:center;gap:8px;color:#111827}.cloud-panel-title h3[data-v-a0f6f4ae]{margin:0;font-size:15px;font-weight:600}.close-btn[data-v-a0f6f4ae]{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:transparent;border-radius:6px;color:#6b7280;cursor:pointer}.close-btn[data-v-a0f6f4ae]:hover{background:#f3f4f6;color:#111827}.cloud-panel-body[data-v-a0f6f4ae]{padding:16px 18px}.connected-badge[data-v-a0f6f4ae]{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;background:#ecfdf5;color:#047857;border:1px solid #A7F3D0;border-radius:999px;font-weight:500;margin-bottom:14px}.status-dot[data-v-a0f6f4ae]{width:8px;height:8px;border-radius:50%}.status-dot.connected[data-v-a0f6f4ae]{background:#10b981}.info-list[data-v-a0f6f4ae]{border:1px solid #E5E7EB;border-radius:6px;margin-bottom:12px}.info-row[data-v-a0f6f4ae]{display:flex;gap:12px;padding:8px 12px}.info-row+.info-row[data-v-a0f6f4ae]{border-top:1px solid #F3F4F6}.info-label[data-v-a0f6f4ae]{flex:0 0 84px;color:#6b7280}.info-value[data-v-a0f6f4ae]{flex:1;color:#111827;word-break:break-all}.info-value.mono[data-v-a0f6f4ae]{font-family:Consolas,Monaco,monospace;font-size:12px}.hint[data-v-a0f6f4ae]{margin:0 0 14px;font-size:12px;color:#9ca3af}.form-field[data-v-a0f6f4ae]{margin-bottom:12px}.form-field label[data-v-a0f6f4ae]{display:block;margin-bottom:4px;font-size:13px;font-weight:500;color:#374151}.required[data-v-a0f6f4ae]{color:#ef4444}.form-field input[data-v-a0f6f4ae],.profile-select[data-v-a0f6f4ae]{width:100%;box-sizing:border-box;padding:7px 10px;border:1px solid #E5E7EB;border-radius:6px;font-size:13px;color:#111827;background:#fff;outline:none}.form-field input[data-v-a0f6f4ae]:focus,.profile-select[data-v-a0f6f4ae]:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb1f}.form-field input[data-v-a0f6f4ae]::-moz-placeholder{color:#9ca3af}.form-field input[data-v-a0f6f4ae]::placeholder{color:#9ca3af}.field-hint[data-v-a0f6f4ae]{display:block;margin-top:4px;font-size:12px;color:#9ca3af}.form-grid-2[data-v-a0f6f4ae]{display:grid;grid-template-columns:1fr 1fr;gap:12px}.profile-row[data-v-a0f6f4ae]{display:flex;gap:8px;align-items:center}.profile-select[data-v-a0f6f4ae]{flex:1;cursor:pointer}.btn-text-danger[data-v-a0f6f4ae]{flex:0 0 auto;border:none;background:transparent;color:#dc2626;font-size:13px;cursor:pointer;padding:6px 8px;border-radius:6px}.btn-text-danger[data-v-a0f6f4ae]:hover{background:#fef2f2}.error-box[data-v-a0f6f4ae]{margin-bottom:12px;padding:8px 12px;background:#fef2f2;border:1px solid #FECACA;color:#b91c1c;border-radius:6px;font-size:13px;word-break:break-all}.cloud-panel-footer[data-v-a0f6f4ae]{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}.cloud-panel-footer button[data-v-a0f6f4ae]{display:inline-flex;align-items:center;gap:6px;padding:7px 16px;border-radius:6px;font-size:13px;font-weight:500;cursor:pointer;border:1px solid transparent}.btn-primary[data-v-a0f6f4ae]{background:#2563eb;color:#fff}.btn-primary[data-v-a0f6f4ae]:hover{background:#1d4ed8}.btn-primary[data-v-a0f6f4ae]:disabled{opacity:.6;cursor:not-allowed}.btn-cancel[data-v-a0f6f4ae]{background:#fff;color:#374151;border-color:#e5e7eb}.btn-cancel[data-v-a0f6f4ae]:hover{background:#f9fafb}.btn-danger[data-v-a0f6f4ae]{background:#fff;color:#dc2626;border-color:#fecaca}.btn-danger[data-v-a0f6f4ae]:hover{background:#fef2f2}.btn-danger[data-v-a0f6f4ae]:disabled{opacity:.6;cursor:not-allowed}.spinner[data-v-a0f6f4ae]{width:12px;height:12px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:cloud-spin-a0f6f4ae .8s linear infinite}@keyframes cloud-spin-a0f6f4ae{to{transform:rotate(360deg)}}.whiteboard-container[data-v-a9ee43e2]{display:flex;flex-direction:column;height:100vh;background-color:#f5f5f5}.whiteboard-main[data-v-a9ee43e2]{flex:1;display:flex;overflow:hidden}.page-nav[data-v-a9ee43e2]{position:absolute;bottom:20px;left:20px;z-index:100;max-width:calc(100% - 60px);transition:all .3s ease}.page-nav-collapsed[data-v-a9ee43e2]{background-color:#ffffffb8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid #E5E7EB;border-radius:8px;padding:8px 12px;box-shadow:0 4px 12px #0000001a;cursor:pointer;transition:all .2s ease;-webkit-user-select:none;-moz-user-select:none;user-select:none;display:flex;align-items:center;gap:8px}.sidebar-toggle-btn[data-v-a9ee43e2]{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid #d1d5db;background-color:#fff;border-radius:4px;cursor:pointer;transition:all .2s;color:#6b7280;flex-shrink:0}.sidebar-toggle-btn[data-v-a9ee43e2]:hover{background-color:#f3f4f6;border-color:#9ca3af;color:#374151}.sidebar-toggle-btn.active[data-v-a9ee43e2]{background-color:#ebf5ff;border-color:#3b82f6;color:#3b82f6}.page-action-btn[data-v-a9ee43e2]{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid #d1d5db;background-color:#fff;border-radius:4px;cursor:pointer;transition:all .2s;color:#6b7280;flex-shrink:0}.page-action-btn[data-v-a9ee43e2]:hover{background-color:#f3f4f6;border-color:#9ca3af;color:#374151}.page-action-btn.active[data-v-a9ee43e2]{background-color:#ebf5ff;border-color:#3b82f6;color:#3b82f6}.dropdown-menu-up[data-v-a9ee43e2]{bottom:calc(100% + 8px);top:auto;animation:dropdownSlideUp-a9ee43e2 .2s ease}@keyframes dropdownSlideUp-a9ee43e2{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.page-nav-collapsed[data-v-a9ee43e2]:hover{background-color:#fff;box-shadow:0 6px 16px #00000026;transform:translateY(-2px)}.page-indicator-large[data-v-a9ee43e2]{font-size:15px;color:#1f2937;font-weight:600;letter-spacing:.5px}.page-nav-expanded[data-v-a9ee43e2]{background-color:#ffffffb8;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid #E5E7EB;border-radius:12px;padding:12px 16px;box-shadow:0 8px 24px #0000001f;display:flex;align-items:center;gap:6px;animation:slideUp-a9ee43e2 .3s ease}@keyframes slideUp-a9ee43e2{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.page-nav-left[data-v-a9ee43e2]{display:flex;align-items:center;gap:8px;flex-shrink:0}.page-jump[data-v-a9ee43e2]{display:flex;align-items:center;gap:6px;margin-left:12px;padding-left:12px;border-left:1px solid #E5E7EB;flex-shrink:0}.page-jump-input[data-v-a9ee43e2]{width:60px;height:28px;padding:0 8px;border:1px solid #D1D5DB;border-radius:4px;font-size:13px;text-align:center;color:#374151;transition:all .15s;background-color:#fff}.page-jump-input[data-v-a9ee43e2]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.page-jump-input[data-v-a9ee43e2]:hover{border-color:#9ca3af}.page-jump-input[data-v-a9ee43e2]::-webkit-outer-spin-button,.page-jump-input[data-v-a9ee43e2]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.page-jump-input[type=number][data-v-a9ee43e2]{-moz-appearance:textfield}.page-nav-right[data-v-a9ee43e2]{display:flex;align-items:center;gap:6px;flex-shrink:0}.page-nav-scroll[data-v-a9ee43e2]{display:flex;align-items:center;gap:12px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none}.page-nav-scroll[data-v-a9ee43e2]::-webkit-scrollbar{display:none}.page-nav-scroll-btn[data-v-a9ee43e2]{display:flex;align-items:center;justify-content:center;width:22px;height:28px;padding:0;flex-shrink:0;border:1px solid #E5E7EB;background-color:#ffffffe6;border-radius:4px;cursor:pointer;transition:all .15s;color:#6b7280}.page-nav-scroll-btn[data-v-a9ee43e2]:hover{background-color:#eff6ff;border-color:#93c5fd;color:#2563eb}.page-nav-dropdown[data-v-a9ee43e2]{position:relative;display:inline-block}.page-nav-dropdown-menu[data-v-a9ee43e2]{position:absolute;bottom:calc(100% + 8px)!important;top:auto!important;left:0;min-width:180px;background-color:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 10px 25px #0000001a;z-index:1000;overflow:hidden;animation:dropdownSlideUp-a9ee43e2 .2s ease}.page-indicator[data-v-a9ee43e2]{font-size:13px;color:#6b7280;font-weight:500;min-width:50px;text-align:center;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-shrink:0}.page-cloud-badge[data-v-a9ee43e2]{margin-left:3px;font-size:11px;color:#2563eb;cursor:help}.page-cloud-add-btn.cloud-ready[data-v-a9ee43e2]{color:#2563eb;border-color:#93c5fd}.page-cloud-add-btn.cloud-ready[data-v-a9ee43e2]:hover:not(:disabled){background-color:#eff6ff;border-color:#2563eb}.page-nav-btn[data-v-a9ee43e2]{display:flex;align-items:center;justify-content:center;gap:4px;height:28px;padding:0 8px;border:1px solid #E5E7EB;background-color:#fff;border-radius:4px;cursor:pointer;transition:all .15s;color:#374151;font-size:12px;flex-shrink:0;white-space:nowrap}.page-nav-btn[data-v-a9ee43e2]:hover:not(:disabled){background-color:#f3f4f6;border-color:#d1d5db}.page-nav-btn[data-v-a9ee43e2]:disabled{opacity:.35;cursor:not-allowed}.page-add-btn[data-v-a9ee43e2]{color:#3b82f6;border-color:#93c5fd}.page-add-btn[data-v-a9ee43e2]:hover:not(:disabled){background-color:#eff6ff;border-color:#3b82f6}.page-delete-btn[data-v-a9ee43e2]{color:#ef4444;border-color:#fca5a5}.page-delete-btn[data-v-a9ee43e2]:hover{background-color:#fef2f2;border-color:#ef4444}.page-close-btn[data-v-a9ee43e2]{color:#6b7280;border-color:#d1d5db}.page-close-btn[data-v-a9ee43e2]:hover{background-color:#f3f4f6;color:#374151}.toolbar[data-v-a9ee43e2]{display:flex;align-items:flex-start;gap:12px;padding:12px;background-color:#f9fafb;border-bottom:1px solid #e5e7eb;flex-wrap:wrap;width:100%;box-sizing:border-box}.toolbar-group[data-v-a9ee43e2]{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.toolbar-group[data-v-a9ee43e2]:not(:last-child):after{content:"";width:1px;height:24px;background-color:#e5e7eb;margin-left:8px}.toolbar-label[data-v-a9ee43e2]{font-size:13px;color:#6b7280;font-weight:500}.dropdown[data-v-a9ee43e2]{position:relative;display:inline-block}.dropdown-menu[data-v-a9ee43e2]{position:absolute;top:calc(100% + 8px);left:0;min-width:180px;background-color:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 10px 25px #0000001a;z-index:1000;overflow:hidden;animation:dropdownFadeIn-a9ee43e2 .2s ease-out}@keyframes dropdownFadeIn-a9ee43e2{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.dropdown-item[data-v-a9ee43e2]{display:flex;align-items:center;gap:10px;padding:10px 14px;cursor:pointer;transition:background-color .15s;font-size:13px;color:#374151;white-space:nowrap}.dropdown-item[data-v-a9ee43e2]:hover{background-color:#f3f4f6}.dropdown-item svg[data-v-a9ee43e2]{flex-shrink:0;color:#6b7280}.dropdown-divider[data-v-a9ee43e2]{height:1px;background-color:#e5e7eb;margin:4px 0}.tool-btn[data-v-a9ee43e2]{display:flex;align-items:center;gap:4px;padding:6px 10px;background-color:#fff;border:1px solid #d1d5db;border-radius:4px;cursor:pointer;font-size:12px;color:#374151;transition:all .2s;font-weight:500;white-space:nowrap}.tool-btn[data-v-a9ee43e2]:hover:not(:disabled){background-color:#f9fafb;border-color:#9ca3af}.tool-btn[data-v-a9ee43e2]:disabled{opacity:.5;cursor:not-allowed}.tool-btn.danger[data-v-a9ee43e2]{color:#dc2626;border-color:#fecaca}.tool-btn.danger[data-v-a9ee43e2]:hover{background-color:#fef2f2;border-color:#fca5a5}.cloud-status-dot[data-v-a9ee43e2]{width:7px;height:7px;border-radius:50%;background-color:#d1d5db}.cloud-status-dot.on[data-v-a9ee43e2]{background-color:#10b981;box-shadow:0 0 0 2px #10b98133}.tool-btn.active[data-v-a9ee43e2]{background-color:#eff6ff;border-color:#3b82f6;color:#3b82f6}.tool-btn.active[data-v-a9ee43e2]:hover{background-color:#dbeafe}.whiteboard-content[data-v-a9ee43e2]{flex:1;display:flex;position:relative;overflow:hidden}.canvas-area[data-v-a9ee43e2]{flex:1;overflow:auto;position:relative;background-color:#fff;background-image:radial-gradient(circle,#e5e7eb 1px,transparent 1px);background-size:20px 20px;cursor:default}.canvas-area[data-v-a9ee43e2]:active{cursor:move}.user-bar[data-v-a9ee43e2]{display:flex;align-items:center;gap:12px;padding:12px;background-color:#f9fafb;border-bottom:1px solid #e5e7eb;width:100%;box-sizing:border-box}.user-name[data-v-a9ee43e2]{font-size:13px;font-weight:600;color:#1f2937}.user-role[data-v-a9ee43e2]{font-size:11px;color:#6b7280;padding:2px 6px;background-color:#e5e7eb;border-radius:3px}.user-actions[data-v-a9ee43e2]{display:flex;gap:4px;margin-left:auto}.user-action-btn[data-v-a9ee43e2]{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid transparent;background-color:transparent;border-radius:4px;cursor:pointer;transition:all .2s;color:#6b7280}.user-action-btn[data-v-a9ee43e2]:hover{background-color:#f3f4f6;color:#374151}.user-action-btn.active[data-v-a9ee43e2]{background-color:#ebf5ff;border-color:#3b82f6;color:#3b82f6}.layers-panel[data-v-a9ee43e2]{width:280px;background-color:#fff;border-left:1px solid #e5e7eb;display:flex;flex-direction:column;flex-shrink:0}.canvas-area.panning[data-v-a9ee43e2]{cursor:move}.canvas-wrapper[data-v-a9ee43e2]{position:absolute;top:0;left:0;transform-origin:0 0;pointer-events:none;transition:width .3s,height .3s}.canvas-wrapper[data-v-a9ee43e2]>*{pointer-events:auto}.canvas-layer[data-v-a9ee43e2]{position:absolute;cursor:move;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:box-shadow .2s}.canvas-layer.hovered[data-v-a9ee43e2]{outline:2px dashed #D1D5DB}.canvas-layer.selected[data-v-a9ee43e2]{outline:2px solid #3b82f6}.layer-image[data-v-a9ee43e2]{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;display:block}.layer-image-locked[data-v-a9ee43e2]{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:repeating-linear-gradient(45deg,#f8fafc,#f8fafc 10px,#f1f5f9 10px,#f1f5f9 20px);border:1px dashed #cbd5e1;border-radius:6px;color:#64748b;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.layer-image-locked .locked-icon[data-v-a9ee43e2]{font-size:28px;line-height:1}.layer-image-locked .locked-text[data-v-a9ee43e2]{font-size:12px}.layer-image-locked[data-v-a9ee43e2]:hover{border-color:#94a3b8;color:#475569}.layer-thumb-locked[data-v-a9ee43e2]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:18px;background:#f1f5f9}.media-unlocked-btn[data-v-a9ee43e2]{color:#059669}.layer-video-wrapper[data-v-a9ee43e2]{position:relative;width:100%;height:100%;background-color:#000;border-radius:4px;overflow:hidden}.layer-video[data-v-a9ee43e2]{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;display:block}.video-ctrl-shield[data-v-a9ee43e2]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;cursor:move}.layer-controls[data-v-a9ee43e2]{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:10}.control-handle[data-v-a9ee43e2]{position:absolute;width:12px;height:12px;background-color:#fff;border:2px solid #3b82f6;border-radius:2px;pointer-events:auto;transition:background-color .2s}.control-handle[data-v-a9ee43e2]:hover{background-color:#cfeb25}.control-handle.edge-resize-handle[data-v-a9ee43e2]{background-color:#fff;border:2px solid #3b82f6;border-radius:2px;pointer-events:auto;transition:background-color .2s}.control-handle.edge-resize-handle[data-v-a9ee43e2]:hover{background-color:#cfeb25}.control-handle.edge-top[data-v-a9ee43e2]{top:-7px;left:50%;transform:translate(-50%);width:12px;height:12px}.control-handle.edge-bottom[data-v-a9ee43e2]{bottom:-7px;left:50%;transform:translate(-50%);width:12px;height:12px}.control-handle.edge-right[data-v-a9ee43e2]{right:-7px;top:50%;transform:translateY(-50%);width:12px;height:12px}.control-handle.edge-left[data-v-a9ee43e2]{left:-7px;top:50%;transform:translateY(-50%);width:12px;height:12px}.panel-header[data-v-a9ee43e2]{display:flex;align-items:center;justify-content:space-between;padding:16px;border-bottom:1px solid #e5e7eb}.panel-header h3[data-v-a9ee43e2]{margin:0;font-size:14px;font-weight:600;color:#1f2937}.header-actions[data-v-a9ee43e2]{display:flex;align-items:center;gap:8px}.filter-btn[data-v-a9ee43e2]{display:flex;align-items:center;justify-content:center;gap:4px;padding:3px;width:24px;height:24px;background-color:#fff;border:1px solid #d1d5db;border-radius:4px;cursor:pointer;font-size:12px;color:#374151;transition:all .2s;font-weight:500;white-space:nowrap}.filter-btn[data-v-a9ee43e2]:hover{background-color:#f9fafb;border-color:#9ca3af}.filter-btn.active[data-v-a9ee43e2]{background:#dbeafe;border-color:#3b82f6;color:#3b82f6}.layer-count[data-v-a9ee43e2]{font-size:12px;color:#6b7280;background-color:#f3f4f6;padding:2px 8px;border-radius:10px}.layer-filter-dropdown[data-v-a9ee43e2]{position:relative}.layer-filter-menu[data-v-a9ee43e2]{position:absolute!important;top:calc(100% + 8px)!important;bottom:auto!important;right:220px!important;left:auto!important;width:240px!important;min-width:240px!important;max-width:240px!important;background-color:#fff!important;border:1px solid #d1d5db!important;border-radius:8px!important;box-shadow:0 10px 25px #0000001a!important;z-index:1001!important;animation:dropdownFadeIn-a9ee43e2 .2s ease-out!important;overflow:hidden!important}@keyframes dropdownFadeInUp-a9ee43e2{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.filter-content[data-v-a9ee43e2]{display:flex!important;flex-direction:column!important;max-height:450px;visibility:visible!important;position:relative!important;padding:0}.filter-header[data-v-a9ee43e2]{font-size:13px;font-weight:600;color:#374151;padding:12px 12px 10px;border-bottom:1px solid #e5e7eb;line-height:1.4;display:flex!important;align-items:center;justify-content:space-between;visibility:visible!important;flex-shrink:0;position:sticky;top:0;z-index:1;background-color:#fff}.filter-close-btn[data-v-a9ee43e2]{background:none;border:none;cursor:pointer;padding:4px;border-radius:4px;color:#6b7280;display:flex;align-items:center;justify-content:center;transition:all .2s;margin-left:8px}.filter-close-btn[data-v-a9ee43e2]:hover{background-color:#f3f4f6;color:#374151}.filter-close-btn[data-v-a9ee43e2]:active{background-color:#e5e7eb;transform:scale(.95);box-shadow:inset 0 2px 4px #00000040}.filter-options[data-v-a9ee43e2]{display:flex!important;flex-direction:column!important;gap:8px;padding:12px;overflow-y:auto;flex:1;visibility:visible!important;min-height:100px;margin-bottom:0}.filter-options[data-v-a9ee43e2]::-webkit-scrollbar{width:6px}.filter-options[data-v-a9ee43e2]::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}.filter-options[data-v-a9ee43e2]::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.filter-options[data-v-a9ee43e2]::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.filter-option[data-v-a9ee43e2]{display:flex!important;align-items:center!important;gap:8px;padding:8px;border-radius:4px;cursor:pointer;transition:background-color .2s;min-height:36px;visibility:visible!important}.filter-option[data-v-a9ee43e2]:hover{background-color:#f3f4f6}.filter-option input[type=checkbox][data-v-a9ee43e2]{width:16px;height:16px;cursor:pointer;flex-shrink:0;margin:0}.filter-label[data-v-a9ee43e2]{flex:1;font-size:13px;color:#374151;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filter-count[data-v-a9ee43e2]{font-size:12px;color:#6b7280;flex-shrink:0}.filter-actions[data-v-a9ee43e2]{display:flex!important;gap:8px;padding:10px 12px 12px;border-top:1px solid #e5e7eb;visibility:visible!important;flex-shrink:0;background-color:#fff;position:sticky;bottom:0;z-index:1}.filter-action-btn[data-v-a9ee43e2]{flex:1;padding:6px 12px;font-size:12px;background:#fff;border:1px solid #d1d5db;border-radius:4px;cursor:pointer;color:#374151;transition:all .2s;white-space:nowrap}.filter-action-btn[data-v-a9ee43e2]:hover{background:#f3f4f6;border-color:#9ca3af}.layers-list[data-v-a9ee43e2]{flex:1;overflow-y:auto;padding:8px}.layer-item[data-v-a9ee43e2]{display:flex;align-items:center;gap:8px;padding:8px;border-radius:6px;cursor:pointer;transition:background-color .2s;margin-bottom:4px;height:64px}.layer-item .layer-thumbnail[data-v-a9ee43e2]{flex-shrink:0}.layer-item .layer-details[data-v-a9ee43e2]{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:4px;height:48px}.layer-item .layer-info[data-v-a9ee43e2]{display:flex;align-items:center;gap:8px;height:22px}.layer-item[data-v-a9ee43e2]:hover{background-color:#f9fafb}.layer-item.selected[data-v-a9ee43e2]{background-color:#eff6ff;border:1px solid #bfdbfe}.layer-thumbnail[data-v-a9ee43e2]{width:48px;height:48px;border-radius:4px;overflow:hidden;background-color:#f3f4f6;flex-shrink:0;border:1px solid #e5e7eb}.layer-thumbnail img[data-v-a9ee43e2]{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.layer-database-icon[data-v-a9ee43e2]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:24px;background:linear-gradient(135deg,#c4b5fd,#a78bfa)}.layer-info[data-v-a9ee43e2]{flex:1;min-width:0}.layer-name[data-v-a9ee43e2]{display:inline;font-size:13px;font-weight:500;color:#1f2937;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.layer-meta[data-v-a9ee43e2]{display:inline;font-size:11px;color:#9ca3af;white-space:nowrap;flex-shrink:0}.layer-lock-badge[data-v-a9ee43e2]{display:inline-block;max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-shrink:0;padding:0 6px;border-radius:4px;font-size:11px;line-height:16px;color:#b45309;background:#fef3c7;border:1px solid #fcd34d}.canvas-layer-lock-badge[data-v-a9ee43e2]{position:absolute;top:6px;left:50%;transform:translate(-50%);z-index:10;padding:2px 10px;border-radius:9999px;font-size:12px;color:#b45309;background:#fef3c7;border:1px solid #fcd34d;box-shadow:0 1px 3px #0000001f;pointer-events:none;white-space:nowrap}.layer-actions[data-v-a9ee43e2],.layer-actions-row[data-v-a9ee43e2]{display:flex;gap:4px;opacity:0;transition:opacity .2s}.layer-item:hover .layer-actions[data-v-a9ee43e2],.layer-item:hover .layer-actions-row[data-v-a9ee43e2]{opacity:1}.layer-actions-row[data-v-a9ee43e2]{display:flex;gap:4px;height:22px;opacity:0;transition:opacity .2s}.layer-action-btn[data-v-a9ee43e2]{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background-color:#fff;border:1px solid #d1d5db;border-radius:4px;cursor:pointer;color:#6b7280;transition:all .2s}.layer-action-btn[data-v-a9ee43e2]:hover:not(:disabled){background-color:#f9fafb;color:#374151;border-color:#9ca3af}.layer-action-btn[data-v-a9ee43e2]:disabled{opacity:.4;cursor:not-allowed}.layer-action-btn.danger[data-v-a9ee43e2]:hover{background-color:#fef2f2;color:#dc2626;border-color:#fca5a5}.empty-layers[data-v-a9ee43e2]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center;color:#9ca3af}.empty-layers p[data-v-a9ee43e2]{margin:8px 0 4px;font-size:14px;font-weight:500}.empty-layers .hint[data-v-a9ee43e2]{font-size:12px;color:#d1d5db}.ruler-corner[data-v-a9ee43e2]{position:absolute;left:0;top:0;width:40px;height:20px;background:transparent;border:none;display:flex;align-items:center;justify-content:center;font-size:10px;color:#6b7280;z-index:21;pointer-events:none}.layer-drawing-icon[data-v-a9ee43e2]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background-color:#f3f4f6;border-radius:4px;color:#6b7280}.layer-drawing-icon svg[data-v-a9ee43e2]{width:20px;height:20px}.temp-iframe-layer[data-v-a9ee43e2]{position:absolute;background:#fff;border:2px solid #3b82f6;border-radius:8px;box-shadow:0 10px 25px #0003;z-index:9999;overflow:hidden}.temp-iframe-header[data-v-a9ee43e2]{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#f3f4f6;border-bottom:1px solid #e5e7eb}.temp-iframe-url[data-v-a9ee43e2]{flex:1;font-size:12px;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.temp-iframe-close[data-v-a9ee43e2]{margin-left:10px;width:24px;height:24px;border:none;background:#ef4444;color:#fff;border-radius:4px;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;transition:background .2s}.temp-iframe-close[data-v-a9ee43e2]:hover{background:#dc2626}.temp-iframe-content[data-v-a9ee43e2]{width:100%;height:calc(100% - 40px);border:none}.confirm-dialog-overlay[data-v-a9ee43e2]{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn-a9ee43e2 .2s ease}@keyframes fadeIn-a9ee43e2{0%{opacity:0}to{opacity:1}}.confirm-dialog[data-v-a9ee43e2]{background:#fff;border-radius:12px;width:90%;max-width:480px;box-shadow:0 20px 60px #0000004d;animation:slideUp-a9ee43e2 .3s ease}@keyframes slideUp-a9ee43e2{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.confirm-dialog-header[data-v-a9ee43e2]{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e5e7eb}.confirm-dialog-header h3[data-v-a9ee43e2]{margin:0;font-size:18px;font-weight:600;color:#111827}.confirm-dialog-header .close-btn[data-v-a9ee43e2]{width:32px;height:32px;border:none;background:transparent;color:#6b7280;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.confirm-dialog-header .close-btn[data-v-a9ee43e2]:hover{background:#f3f4f6;color:#111827}.confirm-dialog-body[data-v-a9ee43e2]{padding:24px;text-align:center}.confirm-icon[data-v-a9ee43e2]{margin-bottom:16px;display:flex;justify-content:center}.confirm-message[data-v-a9ee43e2]{margin:0 0 12px;font-size:16px;color:#374151;line-height:1.5}.confirm-message strong[data-v-a9ee43e2]{color:#111827;font-weight:600}.confirm-warning[data-v-a9ee43e2]{margin:0;font-size:14px;color:#ef4444;background:#fef2f2;padding:8px 12px;border-radius:6px;display:inline-block}.confirm-dialog-footer[data-v-a9ee43e2]{display:flex;gap:12px;padding:16px 24px;border-top:1px solid #e5e7eb;justify-content:flex-end}.confirm-dialog-footer .btn-cancel[data-v-a9ee43e2]{padding:10px 20px;border:1px solid #d1d5db;background:#fff;color:#374151;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.confirm-dialog-footer .btn-cancel[data-v-a9ee43e2]:hover{background:#f9fafb;border-color:#9ca3af}.confirm-dialog-footer .btn-confirm[data-v-a9ee43e2]{padding:10px 20px;border:none;background:#ef4444;color:#fff;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.confirm-dialog-footer .btn-confirm[data-v-a9ee43e2]:hover{background:#dc2626;transform:translateY(-1px);box-shadow:0 4px 12px #ef44444d}.confirm-dialog-footer .btn-confirm[data-v-a9ee43e2]:active{transform:translateY(0)}.confirm-info-text[data-v-a9ee43e2]{margin:0;font-size:13px;color:#6b7280;text-align:left;line-height:1.9;background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;padding:10px 14px;display:inline-block}.share-plaintext-toggle[data-v-a9ee43e2]{display:flex;align-items:flex-start;gap:8px;margin:4px 0 0;font-size:13px;color:#374151;cursor:pointer;text-align:left;line-height:1.6}.share-plaintext-toggle input[data-v-a9ee43e2]{margin-top:3px;accent-color:#3b82f6}.enc-upload-progress-overlay[data-v-a9ee43e2]{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0000008c;display:flex;align-items:center;justify-content:center;z-index:10000}.enc-upload-progress-panel[data-v-a9ee43e2]{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a;width:90vw;max-width:420px;padding:24px;text-align:center}.enc-upload-progress-panel h4[data-v-a9ee43e2]{margin:0 0 8px;font-size:15px;font-weight:600;color:#1f2937}.enc-upload-progress-panel p[data-v-a9ee43e2]{margin:0 0 16px;font-size:13px;color:#6b7280}.enc-upload-progress-bar[data-v-a9ee43e2]{height:8px;background-color:#e5e7eb;border-radius:4px;overflow:hidden}.enc-upload-progress-bar-fill[data-v-a9ee43e2]{height:100%;background-color:#3b82f6;border-radius:4px;transition:width .2s ease}.enc-upload-progress-percent[data-v-a9ee43e2]{margin-top:8px;font-size:12px;color:#6b7280}.confirm-dialog-footer .btn-confirm-blue[data-v-a9ee43e2]{background:#3b82f6}.confirm-dialog-footer .btn-confirm-blue[data-v-a9ee43e2]:hover:not(:disabled){background:#2563eb;box-shadow:0 4px 12px #3b82f64d}.confirm-dialog-footer .btn-confirm[data-v-a9ee43e2]:disabled,.confirm-dialog-footer .btn-cancel[data-v-a9ee43e2]:disabled{opacity:.6;cursor:not-allowed;transform:none}.shared-page-container[data-v-61425cfc]{display:flex;flex-direction:column;height:100vh;background-color:#f5f5f5}.shared-header[data-v-61425cfc]{display:flex;align-items:center;justify-content:space-between;padding:0 16px;height:48px;background-color:#fff;border-bottom:1px solid #e5e7eb;flex-shrink:0}.shared-title[data-v-61425cfc]{display:flex;align-items:center;gap:8px;min-width:0;color:#1f2937}.shared-title svg[data-v-61425cfc]{color:#2563eb;flex-shrink:0}.shared-page-name[data-v-61425cfc]{font-size:14px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:320px}.shared-badge[data-v-61425cfc]{font-size:11px;color:#2563eb;background:#eff6ff;border:1px solid #BFDBFE;border-radius:4px;padding:1px 6px;flex-shrink:0}.shared-error[data-v-61425cfc]{font-size:12px;color:#ef4444;white-space:nowrap}.shared-hint[data-v-61425cfc]{font-size:12px;color:#9ca3af}.visitor-bar[data-v-61425cfc]{display:flex;align-items:center;gap:8px;flex-shrink:0}.visitor-label[data-v-61425cfc]{font-size:12px;color:#6b7280}.visitor-name-input[data-v-61425cfc]{width:140px;height:28px;padding:0 10px;border:1px solid #D1D5DB;border-radius:4px;font-size:13px;color:#374151;background-color:#fff;transition:all .15s}.visitor-name-input[data-v-61425cfc]:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.visitor-id-hint[data-v-61425cfc]{font-size:11px;color:#9ca3af;cursor:help}.media-lock-btn[data-v-61425cfc]{height:28px;padding:0 12px;border:1px solid #D1D5DB;border-radius:4px;background-color:#fff;font-size:12px;color:#6b7280;cursor:pointer;transition:all .15s;white-space:nowrap}.media-lock-btn[data-v-61425cfc]:hover{border-color:#3b82f6;color:#3b82f6}.media-lock-btn.unlocked[data-v-61425cfc]{border-color:#10b981;color:#059669}.layer-image-locked[data-v-61425cfc]{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:repeating-linear-gradient(45deg,#f9fafb,#f9fafb 12px,#f3f4f6 12px,#f3f4f6 24px);border:1px dashed #D1D5DB;border-radius:4px;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.locked-icon[data-v-61425cfc]{font-size:28px;line-height:1}.locked-text[data-v-61425cfc]{font-size:12px;color:#9ca3af}.layer-thumb-locked[data-v-61425cfc]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:repeating-linear-gradient(45deg,#f9fafb,#f9fafb 6px,#f3f4f6 6px,#f3f4f6 12px);font-size:18px}.shared-main[data-v-61425cfc]{flex:1;display:flex;overflow:hidden}.canvas-area[data-v-61425cfc]{flex:1;overflow:auto;position:relative;background-color:#fff;background-image:radial-gradient(circle,#e5e7eb 1px,transparent 1px);background-size:20px 20px;cursor:default}.canvas-area.panning[data-v-61425cfc]{cursor:move}.canvas-wrapper[data-v-61425cfc]{position:absolute;top:0;left:0;transform-origin:0 0;pointer-events:none;transition:width .3s,height .3s}.canvas-wrapper[data-v-61425cfc]>*{pointer-events:auto}.canvas-layer[data-v-61425cfc]{position:absolute;cursor:move;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:box-shadow .2s}.canvas-layer.hovered[data-v-61425cfc]{outline:2px dashed #D1D5DB}.canvas-layer.selected[data-v-61425cfc]{outline:2px solid #3b82f6}.layer-image[data-v-61425cfc]{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;display:block}.layer-video-wrapper[data-v-61425cfc]{position:relative;width:100%;height:100%;background-color:#000;border-radius:4px;overflow:hidden}.layer-video[data-v-61425cfc]{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;display:block}.video-ctrl-shield[data-v-61425cfc]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;cursor:move}.layer-controls[data-v-61425cfc]{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:10}.control-handle[data-v-61425cfc]{position:absolute;width:12px;height:12px;background-color:#fff;border:2px solid #3b82f6;border-radius:2px;pointer-events:auto;transition:background-color .2s}.control-handle[data-v-61425cfc]:hover{background-color:#cfeb25}.control-handle.edge-top[data-v-61425cfc]{top:-7px;left:50%;transform:translate(-50%)}.control-handle.edge-bottom[data-v-61425cfc]{bottom:-7px;left:50%;transform:translate(-50%)}.control-handle.edge-right[data-v-61425cfc]{right:-7px;top:50%;transform:translateY(-50%)}.control-handle.edge-left[data-v-61425cfc]{left:-7px;top:50%;transform:translateY(-50%)}.load-error-state[data-v-61425cfc]{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;color:#9ca3af}.load-error-state p[data-v-61425cfc]{margin:0;font-size:14px}.layers-panel[data-v-61425cfc]{width:280px;background-color:#fff;border-left:1px solid #e5e7eb;display:flex;flex-direction:column;flex-shrink:0}.toolbar[data-v-61425cfc]{display:flex;align-items:flex-start;gap:12px;padding:12px;background-color:#f9fafb;border-bottom:1px solid #e5e7eb;flex-wrap:wrap}.toolbar-group[data-v-61425cfc]{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.tool-btn[data-v-61425cfc]{display:flex;align-items:center;gap:4px;padding:6px 10px;background-color:#fff;border:1px solid #d1d5db;border-radius:4px;cursor:pointer;font-size:12px;color:#374151;transition:all .2s;font-weight:500;white-space:nowrap}.tool-btn[data-v-61425cfc]:hover:not(:disabled){background-color:#f9fafb;border-color:#9ca3af}.tool-btn.danger[data-v-61425cfc]{color:#dc2626;border-color:#fecaca}.tool-btn.danger[data-v-61425cfc]:hover{background-color:#fef2f2;border-color:#fca5a5}.dropdown[data-v-61425cfc]{position:relative;display:inline-block}.dropdown-menu[data-v-61425cfc]{position:absolute;top:calc(100% + 8px);left:0;min-width:180px;background-color:#fff;border:1px solid #d1d5db;border-radius:8px;box-shadow:0 10px 25px #0000001a;z-index:1000;overflow:hidden;animation:dropdownFadeIn-61425cfc .2s ease-out}@keyframes dropdownFadeIn-61425cfc{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.dropdown-item[data-v-61425cfc]{display:flex;align-items:center;gap:10px;padding:10px 14px;cursor:pointer;transition:background-color .15s;font-size:13px;color:#374151;white-space:nowrap}.dropdown-item[data-v-61425cfc]:hover{background-color:#f3f4f6}.dropdown-item svg[data-v-61425cfc]{flex-shrink:0;color:#6b7280}.dropdown-divider[data-v-61425cfc]{height:1px;background-color:#e5e7eb;margin:4px 0}.panel-header[data-v-61425cfc]{display:flex;align-items:center;justify-content:space-between;padding:16px;border-bottom:1px solid #e5e7eb}.panel-header h3[data-v-61425cfc]{margin:0;font-size:14px;font-weight:600;color:#1f2937}.layer-count[data-v-61425cfc]{font-size:12px;color:#6b7280;background-color:#f3f4f6;padding:2px 8px;border-radius:10px}.layers-list[data-v-61425cfc]{flex:1;overflow-y:auto;padding:8px}.layer-item[data-v-61425cfc]{display:flex;align-items:center;gap:8px;padding:8px;border-radius:6px;cursor:pointer;transition:background-color .2s;margin-bottom:4px;height:64px}.layer-item[data-v-61425cfc]:hover{background-color:#f9fafb}.layer-item.selected[data-v-61425cfc]{background-color:#eff6ff;border:1px solid #bfdbfe}.layer-thumbnail[data-v-61425cfc]{width:48px;height:48px;border-radius:4px;overflow:hidden;background-color:#f3f4f6;flex-shrink:0;border:1px solid #e5e7eb}.layer-thumbnail img[data-v-61425cfc]{width:100%;height:100%;-o-object-fit:contain;object-fit:contain}.layer-database-icon[data-v-61425cfc]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:24px;background:linear-gradient(135deg,#c4b5fd,#a78bfa)}.layer-drawing-icon[data-v-61425cfc]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background-color:#f3f4f6;border-radius:4px;color:#6b7280}.layer-drawing-icon svg[data-v-61425cfc]{width:20px;height:20px}.layer-details[data-v-61425cfc]{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:4px;height:48px}.layer-info[data-v-61425cfc]{display:flex;align-items:center;gap:8px;height:22px}.layer-name[data-v-61425cfc]{display:inline;font-size:13px;font-weight:500;color:#1f2937;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1;min-width:0}.layer-meta[data-v-61425cfc]{display:inline;font-size:11px;color:#9ca3af;white-space:nowrap;flex-shrink:0}.layer-lock-badge[data-v-61425cfc]{display:inline-block;max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-shrink:0;padding:0 6px;border-radius:4px;font-size:11px;line-height:16px;color:#b45309;background:#fef3c7;border:1px solid #fcd34d}.canvas-layer-lock-badge[data-v-61425cfc]{position:absolute;top:6px;left:50%;transform:translate(-50%);z-index:10;padding:2px 10px;border-radius:9999px;font-size:12px;color:#b45309;background:#fef3c7;border:1px solid #fcd34d;box-shadow:0 1px 3px #0000001f;pointer-events:none;white-space:nowrap}.layer-actions-row[data-v-61425cfc]{display:flex;gap:4px;height:22px;opacity:0;transition:opacity .2s}.layer-item:hover .layer-actions-row[data-v-61425cfc]{opacity:1}.layer-action-btn[data-v-61425cfc]{width:24px;height:24px;display:flex;align-items:center;justify-content:center;background-color:#fff;border:1px solid #d1d5db;border-radius:4px;cursor:pointer;color:#6b7280;transition:all .2s}.layer-action-btn[data-v-61425cfc]:hover:not(:disabled){background-color:#f9fafb;color:#374151;border-color:#9ca3af}.layer-action-btn.danger[data-v-61425cfc]:hover{background-color:#fef2f2;color:#dc2626;border-color:#fca5a5}.empty-layers[data-v-61425cfc]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center;color:#9ca3af}.empty-layers p[data-v-61425cfc]{margin:8px 0 4px;font-size:14px;font-weight:500}.empty-layers .hint[data-v-61425cfc]{font-size:12px;color:#d1d5db}.temp-iframe-layer[data-v-61425cfc]{position:absolute;background:#fff;border:2px solid #3b82f6;border-radius:8px;box-shadow:0 10px 25px #0003;z-index:9999;overflow:hidden}.temp-iframe-header[data-v-61425cfc]{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#f3f4f6;border-bottom:1px solid #e5e7eb}.temp-iframe-url[data-v-61425cfc]{flex:1;font-size:12px;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.temp-iframe-close[data-v-61425cfc]{margin-left:10px;width:24px;height:24px;border:none;background:#ef4444;color:#fff;border-radius:4px;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;transition:background .2s}.temp-iframe-close[data-v-61425cfc]:hover{background:#dc2626}.temp-iframe-content[data-v-61425cfc]{width:100%;height:calc(100% - 40px);border:none}.crypto-warning-bar[data-v-61425cfc]{padding:8px 16px;font-size:12px;line-height:1.6;color:#b45309;background:#fffbeb;border-bottom:1px solid #fde68a}.enc-upload-progress-overlay[data-v-61425cfc]{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0000008c;display:flex;align-items:center;justify-content:center;z-index:10000}.enc-upload-progress-panel[data-v-61425cfc]{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a;width:90vw;max-width:420px;padding:24px;text-align:center}.enc-upload-progress-panel h4[data-v-61425cfc]{margin:0 0 8px;font-size:15px;font-weight:600;color:#1f2937}.enc-upload-progress-panel p[data-v-61425cfc]{margin:0 0 16px;font-size:13px;color:#6b7280}.enc-upload-progress-bar[data-v-61425cfc]{height:8px;background-color:#e5e7eb;border-radius:4px;overflow:hidden}.enc-upload-progress-bar-fill[data-v-61425cfc]{height:100%;background-color:#3b82f6;border-radius:4px;transition:width .2s ease}.enc-upload-progress-percent[data-v-61425cfc]{margin-top:8px;font-size:12px;color:#6b7280}.app-container[data-v-151f7b93]{position:relative;height:100vh;background-color:#fff}.sub-view[data-v-151f7b93]{position:relative;height:100vh;display:flex;flex-direction:column}.top-left-actions[data-v-151f7b93]{position:absolute;top:12px;left:16px;z-index:60;display:flex;gap:4px}.back-btn[data-v-151f7b93]{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:1px solid #E5E7EB;background-color:#fff;border-radius:6px;cursor:pointer;transition:all .2s;color:#6b7280;box-shadow:0 1px 4px #0000000f}.back-btn[data-v-151f7b93]:hover{background-color:#f3f4f6;color:#1f2933;border-color:#d1d5db}.database-view[data-v-151f7b93]{flex:1;display:flex;flex-direction:column;overflow:hidden}.empty-state[data-v-151f7b93]{flex:1;display:flex;align-items:center;justify-content:center;padding:48px}.empty-content[data-v-151f7b93]{text-align:center;max-width:480px}.empty-content h2[data-v-151f7b93]{margin:0 0 8px;font-size:20px;font-weight:600;color:#1f2933}.empty-content p[data-v-151f7b93]{margin:0 0 24px;color:#6b7280;font-size:14px}.spinner[data-v-151f7b93]{border:3px solid #E5E7EB;border-top:3px solid #3B82F6;border-radius:50%;width:40px;height:40px;animation:spin-151f7b93 1s linear infinite;margin:0 auto 16px}@keyframes spin-151f7b93{0%{transform:rotate(0)}to{transform:rotate(360deg)}}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,system-ui,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--background: 0 0% 100%;--foreground: 215 25% 15%;--card: 0 0% 100%;--card-foreground: 215 25% 15%;--popover: 0 0% 100%;--popover-foreground: 215 25% 15%;--primary: 217 91% 60%;--primary-foreground: 0 0% 100%;--secondary: 210 40% 96.1%;--secondary-foreground: 222.2 47.4% 11.2%;--muted: 210 40% 96.1%;--muted-foreground: 215 16% 47%;--accent: 210 40% 96.1%;--accent-foreground: 222.2 47.4% 11.2%;--destructive: 0 84% 60%;--destructive-foreground: 0 0% 98%;--border: 214 20% 88%;--input: 214 20% 88%;--ring: 217 91% 60%;--radius: .5rem}*{--tw-border-opacity: 1;border-color:rgb(224 224 224 / var(--tw-border-opacity, 1))}body{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1));color:hsl(var(--foreground));font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,system-ui,sans-serif;margin:0;padding:0;font-size:14px;line-height:1.5;color:#1f2933}#app{width:100%;height:100vh}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.block{display:block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.table-cell{display:table-cell}.table-row{display:table-row}.grid{display:grid}.hidden{display:none}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.w-10{width:2.5rem}.w-8{width:2rem}.w-full{width:100%}.flex-shrink{flex-shrink:1}.border-collapse{border-collapse:collapse}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.resize{resize:both}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.justify-center{justify-content:center}.whitespace-nowrap{white-space:nowrap}.rounded-md{border-radius:calc(var(--radius) - 2px)}.border{border-width:1px}.border-0{border-width:0px}.border-none{border-style:none}.border-border{--tw-border-opacity: 1;border-color:rgb(224 224 224 / var(--tw-border-opacity, 1))}.border-input{border-color:hsl(var(--input))}.border-transparent{border-color:transparent}.bg-background{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-destructive{background-color:hsl(var(--destructive))}.bg-primary{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.bg-secondary{background-color:hsl(var(--secondary))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-8{padding-left:2rem;padding-right:2rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-medium{font-weight:500}.uppercase{text-transform:uppercase}.italic{font-style:italic}.text-destructive-foreground{color:hsl(var(--destructive-foreground))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.text-input{color:hsl(var(--input))}.text-muted{color:hsl(var(--muted))}.text-primary{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.text-primary-foreground{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-secondary-foreground{color:hsl(var(--secondary-foreground))}.text-text{--tw-text-opacity: 1;color:rgb(31 41 51 / var(--tw-text-opacity, 1))}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.shadow-none{--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.ring-offset-background{--tw-ring-offset-color: #FFFFFF}.blur{--tw-blur: blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}@keyframes enter{0%{opacity:var(--tw-enter-opacity, 1);transform:translate3d(var(--tw-enter-translate-x, 0),var(--tw-enter-translate-y, 0),0) scale3d(var(--tw-enter-scale, 1),var(--tw-enter-scale, 1),var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity, 1);transform:translate3d(var(--tw-exit-translate-x, 0),var(--tw-exit-translate-y, 0),0) scale3d(var(--tw-exit-scale, 1),var(--tw-exit-scale, 1),var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0))}}.ease-out{animation-timing-function:cubic-bezier(0,0,.2,1)}.file\:border-0::file-selector-button{border-width:0px}.file\:bg-transparent::file-selector-button{background-color:transparent}.file\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file\:font-medium::file-selector-button{font-weight:500}.placeholder\:text-muted-foreground::-moz-placeholder{color:hsl(var(--muted-foreground))}.placeholder\:text-muted-foreground::placeholder{color:hsl(var(--muted-foreground))}.placeholder\:text-textDisabled::-moz-placeholder{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.placeholder\:text-textDisabled::placeholder{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.hover\:border-gray-300:hover{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.hover\:bg-accent:hover{background-color:hsl(var(--accent))}.hover\:bg-destructive\/90:hover{background-color:hsl(var(--destructive) / .9)}.hover\:bg-gray-100:hover{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-50:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.hover\:bg-primary-hover:hover{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.hover\:bg-primary\/90:hover{background-color:#3b82f6e6}.hover\:bg-secondary\/80:hover{background-color:hsl(var(--secondary) / .8)}.hover\:text-accent-foreground:hover{color:hsl(var(--accent-foreground))}.hover\:text-gray-700:hover{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-1:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-primary:focus-visible{--tw-ring-opacity: 1;--tw-ring-color: rgb(59 130 246 / var(--tw-ring-opacity, 1))}.focus-visible\:ring-ring:focus-visible{--tw-ring-color: hsl(var(--ring))}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:border-gray-200:disabled{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity, 1))}.disabled\:bg-gray-100:disabled{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.disabled\:opacity-50:disabled{opacity:.5}
