*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background-color:#f5f7fa}#app{width:100%;height:100vh}.app-header{background-color:#fff;box-shadow:0 2px 4px rgba(0,0,0,.1);justify-content:space-between;padding:0 20px;height:60px}.app-header,.header-left{display:flex;align-items:center}.header-left{gap:20px}.back-button{color:#606266;font-size:14px}.back-button:hover,.logo{color:#409eff}.logo{font-size:18px;font-weight:500}.user-info{display:flex;align-items:center;cursor:pointer;color:#606266}.user-info span{margin-left:8px}.app-aside{background-color:#545c64;height:calc(100vh - 60px)}.app-main{background-color:#f5f7fa;overflow-y:auto;min-height:calc(100vh - 60px)}.el-menu{border-right:none}.login-container[data-v-d28f83fa]{display:flex;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(135deg,#667eea,#764ba2)}.login-card[data-v-d28f83fa]{width:400px}.card-header[data-v-d28f83fa]{text-align:center}.card-header h2[data-v-d28f83fa]{margin:0;color:#409eff}.projects-container[data-v-752f5c26]{padding:20px;max-width:1400px;margin:0 auto}.page-header[data-v-752f5c26]{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.page-header h1[data-v-752f5c26]{font-size:24px;font-weight:500;color:#303133;margin:0}.projects-grid[data-v-752f5c26]{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.project-card[data-v-752f5c26]{cursor:pointer;transition:all .3s;border-radius:8px}.project-card[data-v-752f5c26]:hover{transform:translateY(-4px);box-shadow:0 4px 12px rgba(0,0,0,.15)}.project-card-header[data-v-752f5c26]{display:flex;align-items:center;margin-bottom:15px}.project-icon[data-v-752f5c26]{width:48px;height:48px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;display:flex;align-items:center;justify-content:center;margin-right:12px}.project-icon i[data-v-752f5c26]{font-size:24px;color:#fff}.project-info h3[data-v-752f5c26]{font-size:16px;font-weight:500;color:#303133;margin:0 0 4px 0}.project-id[data-v-752f5c26]{font-size:12px;color:#909399;margin:0}.api-key-section[data-v-752f5c26]{background:#f5f7fa;padding:12px;border-radius:6px;margin-bottom:15px}.api-key-label[data-v-752f5c26]{font-size:12px;color:#909399;margin-bottom:6px;font-weight:500}.api-key-value[data-v-752f5c26]{display:flex;align-items:center;justify-content:space-between;gap:8px}.api-key-value code[data-v-752f5c26]{flex:1;background:#fff;padding:6px 10px;border-radius:4px;font-size:12px;color:#303133;border:1px solid #dcdfe6;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:Monaco,Menlo,Consolas,monospace}.copy-btn[data-v-752f5c26]{padding:4px 8px;color:#409eff}.copy-btn[data-v-752f5c26]:hover{color:#66b1ff}.project-description[data-v-752f5c26]{color:#606266;font-size:14px;line-height:1.6;margin-bottom:15px;min-height:44px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.project-meta[data-v-752f5c26]{display:flex;justify-content:space-between;align-items:center;padding-top:15px;border-top:1px solid #ebeef5;margin-bottom:10px}.meta-item[data-v-752f5c26]{font-size:12px;color:#909399;display:flex;align-items:center}.meta-item i[data-v-752f5c26]{margin-right:4px}.project-actions[data-v-752f5c26]{display:flex;justify-content:flex-end;gap:10px;padding-top:10px;border-top:1px solid #ebeef5}.empty-state[data-v-752f5c26]{grid-column:1/-1;text-align:center;padding:60px 20px;color:#909399}.empty-state i[data-v-752f5c26]{font-size:64px;color:#dcdfe6;margin-bottom:20px}.empty-state p[data-v-752f5c26]{font-size:16px;margin-bottom:20px}.space-overview[data-v-eb3cc6b8]{padding:20px;max-width:1400px;margin:0 auto}.space-header[data-v-eb3cc6b8]{margin-bottom:30px;padding:20px;background:#fff;border-radius:8px;box-shadow:0 2px 4px rgba(0,0,0,.1)}.space-info h2[data-v-eb3cc6b8]{font-size:24px;font-weight:500;color:#303133;margin:0 0 8px 0}.space-id[data-v-eb3cc6b8]{font-size:14px;color:#909399;margin:0}.service-grid[data-v-eb3cc6b8]{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.service-card[data-v-eb3cc6b8]{cursor:pointer;transition:all .3s;text-align:center;padding:20px}.service-card[data-v-eb3cc6b8]:hover{transform:translateY(-4px);box-shadow:0 4px 12px rgba(0,0,0,.15)}.service-icon[data-v-eb3cc6b8]{width:64px;height:64px;border-radius:12px;display:flex;align-items:center;justify-content:center;margin:0 auto 16px}.service-icon i[data-v-eb3cc6b8]{font-size:32px;color:#fff}.service-card h3[data-v-eb3cc6b8]{font-size:18px;font-weight:500;color:#303133;margin:0 0 8px 0}.service-card p[data-v-eb3cc6b8]{font-size:14px;color:#606266;margin:0 0 12px 0;line-height:1.6}.service-stats[data-v-eb3cc6b8]{padding-top:12px;border-top:1px solid #ebeef5;color:#909399;font-size:14px}.databases-container[data-v-daa95c66]{display:flex;height:calc(100vh - 60px);background:#f5f7fa}.database-sidebar[data-v-daa95c66]{width:260px;background:#fff;border-right:1px solid #e4e7ed;display:flex;flex-direction:column}.sidebar-header[data-v-daa95c66]{padding:16px;border-bottom:1px solid #e4e7ed;display:flex;justify-content:space-between;align-items:center}.sidebar-header h3[data-v-daa95c66]{margin:0;font-size:16px;font-weight:500;color:#303133}.header-actions[data-v-daa95c66]{display:flex;gap:8px}.search-input[data-v-daa95c66]{margin:12px 16px;width:auto}.table-list[data-v-daa95c66]{flex:1;overflow-y:auto;padding:8px}.table-item[data-v-daa95c66]{padding:12px;margin-bottom:4px;border-radius:4px;cursor:pointer;display:flex;align-items:flex-start;gap:10px;transition:all .3s;border:1px solid transparent}.table-item[data-v-daa95c66]:hover{background:#f5f7fa;border-color:#e4e7ed}.table-item.active[data-v-daa95c66]{background:#ecf5ff;border-color:#409eff}.table-item i[data-v-daa95c66]{font-size:18px;color:#409eff;margin-top:2px}.table-info[data-v-daa95c66]{flex:1;display:flex;flex-direction:column;gap:4px;min-width:0}.table-name[data-v-daa95c66]{font-size:14px;font-weight:500;color:#303133;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.table-desc[data-v-daa95c66]{font-size:12px;color:#909399;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.empty-list[data-v-daa95c66]{text-align:center;padding:40px 20px;color:#909399;font-size:14px}.sidebar-footer[data-v-daa95c66]{padding:12px;border-top:1px solid #e4e7ed;display:flex;flex-direction:column;gap:4px}.table-content[data-v-daa95c66]{flex:1;overflow-y:auto;background:#fff}.empty-state[data-v-daa95c66]{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;color:#909399}.empty-state i[data-v-daa95c66]{font-size:64px;color:#dcdfe6;margin-bottom:16px}.empty-state p[data-v-daa95c66]{margin-bottom:20px;font-size:14px}.table-detail[data-v-daa95c66]{height:100%;display:flex;flex-direction:column}.detail-header[data-v-daa95c66]{padding:20px;border-bottom:1px solid #e4e7ed;display:flex;justify-content:space-between;align-items:center}.header-left[data-v-daa95c66]{display:flex;align-items:center;gap:12px}.header-left h2[data-v-daa95c66]{margin:0;font-size:20px;font-weight:500;color:#303133}.table-desc-text[data-v-daa95c66]{font-size:14px;color:#909399}.table-tabs[data-v-daa95c66]{flex:1;padding:20px;overflow-y:auto}.data-section[data-v-daa95c66],.index-section[data-v-daa95c66],.structure-section[data-v-daa95c66]{padding:20px 0}.section-header[data-v-daa95c66]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;font-size:14px;font-weight:500;color:#303133}.empty-data[data-v-daa95c66]{text-align:center;padding:60px 20px;color:#909399;background:#fafafa;border:1px dashed #e4e7ed;border-radius:4px;margin-top:16px}.tip[data-v-daa95c66]{color:#909399;font-size:14px;margin-bottom:16px}.form-tip[data-v-daa95c66]{display:block;margin-top:8px;font-size:12px;color:#909399;line-height:1.5}.drawer-content[data-v-daa95c66]{padding:20px;height:calc(100% - 70px);overflow-y:auto}.drawer-footer[data-v-daa95c66]{position:absolute;bottom:0;left:0;right:0;padding:16px 20px;border-top:1px solid #e4e7ed;background:#fff;text-align:right}.import-section[data-v-daa95c66]{padding:20px 0}.preview-section[data-v-daa95c66]{margin-top:24px}.preview-header[data-v-daa95c66]{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:14px;font-weight:500;color:#303133}.new-fields-tip[data-v-daa95c66]{margin-top:16px}.new-fields-tip .el-alert[data-v-daa95c66]{padding:12px}.search-bar[data-v-daa95c66]{display:flex;align-items:center;gap:16px;margin-bottom:16px;padding:12px 0}.search-tip[data-v-daa95c66]{font-size:13px;color:#606266}.database-tables-container[data-v-275a0850]{width:100%}.database-tables-header[data-v-275a0850]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.database-tables-header h2[data-v-275a0850]{margin:0;color:#303133}.database-tables-card[data-v-275a0850]{margin-bottom:20px}.database-query-container[data-v-a938de8c]{width:100%}.database-query-header[data-v-a938de8c]{margin-bottom:20px}.database-query-header h2[data-v-a938de8c]{margin:0;color:#303133}.database-query-card[data-v-a938de8c],.query-editor[data-v-a938de8c]{margin-bottom:20px}.query-result[data-v-a938de8c]{margin-top:20px}.no-data[data-v-a938de8c]{text-align:center;padding:20px;color:#909399}.cloud-functions-container[data-v-bb336998]{width:100%}.cloud-functions-header[data-v-bb336998]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.cloud-functions-header h2[data-v-bb336998]{margin:0;color:#303133}.cloud-functions-card[data-v-bb336998]{margin-bottom:20px}.drawer-content[data-v-bb336998]{padding:20px;height:100%;display:flex;flex-direction:column}.drawer-content .el-form[data-v-bb336998]{flex:1;overflow-y:auto}.drawer-footer[data-v-bb336998]{padding:20px 0;text-align:right;border-top:1px solid #e4e7ed}.code-editor[data-v-bb336998] textarea,.json-display[data-v-bb336998]{font-family:Monaco,Menlo,Ubuntu Mono,Consolas,source-code-pro,monospace;font-size:13px;line-height:1.6}.json-display[data-v-bb336998]{background-color:#f5f7fa;padding:15px;border-radius:4px;overflow-x:auto;max-height:400px;overflow-y:auto}.storage-buckets-container[data-v-ea871dae]{width:100%}.storage-buckets-header[data-v-ea871dae]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.storage-buckets-header h2[data-v-ea871dae]{margin:0;color:#303133}.project-selector-card[data-v-ea871dae]{margin-bottom:20px}.project-selector[data-v-ea871dae]{display:flex;align-items:center;gap:10px}.project-selector label[data-v-ea871dae]{font-weight:500;color:#606266}.storage-buckets-card[data-v-ea871dae]{margin-bottom:20px}.storage-files-container[data-v-842a6c1c]{width:100%}.storage-files-header[data-v-842a6c1c]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.header-left[data-v-842a6c1c]{display:flex;align-items:center;gap:15px}.header-left h2[data-v-842a6c1c]{margin:0;color:#303133}.storage-files-card[data-v-842a6c1c]{margin-bottom:20px}.file-name[data-v-842a6c1c]{display:flex;align-items:center;gap:8px;overflow:hidden}.file-name i[data-v-842a6c1c]{font-size:18px;color:#409eff;flex-shrink:0}.file-name-text[data-v-842a6c1c]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.action-buttons[data-v-842a6c1c]{display:flex;flex-wrap:wrap;gap:4px}.action-buttons .el-button[data-v-842a6c1c]{margin:0;padding:5px 8px}.preview-container[data-v-842a6c1c]{display:flex;justify-content:center;align-items:center;min-height:300px}.no-preview[data-v-842a6c1c]{text-align:center}.no-preview p[data-v-842a6c1c]{margin:20px 0;color:#909399;font-size:16px}.file-url[data-v-842a6c1c]{width:100%}.file-url .el-input[data-v-842a6c1c]{font-size:12px}.file-url .el-input__inner[data-v-842a6c1c]{font-family:monospace}