fdb2 1.0.34 → 1.0.35

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./layout.js","./rolldown-runtime.js","./vue.js","./layout.css","./explorer.js","./explorer.css","./vconsole.min.js"])))=>i.map(i=>d[i]);
2
2
  import { a as __toESM, n as __esmMin, r as __exportAll, t as __commonJSMin } from "./rolldown-runtime.js";
3
- import { $ as reactive, A as getCurrentInstance, B as renderSlot, C as createCommentVNode, D as createTextVNode, F as onBeforeUnmount, H as resolveDynamicComponent, I as onMounted, K as effectScope, L as onUnmounted, N as inject, O as createVNode, P as nextTick, Q as onScopeDispose, R as openBlock, S as createBlock, U as watch, V as resolveComponent, X as isRef, Y as isReactive, Z as markRaw, a as init_vue_router, at as normalizeClass, b as computed, c as createI18n, d as init_vue_runtime_esm_bundler, et as ref, f as createApp, i as createWebHistory, j as hasInjectionContext, k as defineComponent, l as init_vue_i18n, n as useTitle, nt as toRefs, ot as normalizeStyle, q as getCurrentScope, r as createRouter, rt as unref, st as toDisplayString, t as init_core, tt as toRaw, u as useI18n, v as withModifiers, w as createElementBlock, x as createBaseVNode, y as Fragment, z as renderList } from "./vue.js";
3
+ import { $ as onScopeDispose, A as defineComponent, B as renderList, C as createBlock, F as nextTick, H as resolveComponent, I as onBeforeUnmount, J as getCurrentScope, L as onMounted, M as hasInjectionContext, O as createTextVNode, P as inject, Q as markRaw, R as onUnmounted, S as createBaseVNode, T as createElementBlock, U as resolveDynamicComponent, V as renderSlot, W as watch, X as isReactive, Z as isRef, a as init_vue_router, b as Fragment, c as createI18n, ct as toDisplayString, d as init_vue_runtime_esm_bundler, et as reactive, i as createWebHistory, it as unref, j as getCurrentInstance, k as createVNode, l as init_vue_i18n, n as useTitle, nt as toRaw, ot as normalizeClass, p as createApp, q as effectScope, r as createRouter, rt as toRefs, st as normalizeStyle, t as init_core, tt as ref, u as useI18n, w as createCommentVNode, x as computed, y as withModifiers, z as openBlock } from "./vue.js";
4
4
  import { i as init_bootstrap, n as init_bootstrap_esm, r as init_bootstrap_icons, t as Modal } from "./bootstrap.js";
5
5
  //#region \0vite/modulepreload-polyfill.js
6
6
  (function polyfill() {
@@ -24,8 +24,128 @@
24
24
  letter-spacing: 0.05em;
25
25
  }
26
26
 
27
+ .about-page[data-v-ca1c586e] {
28
+ padding: 2rem;
29
+ max-width: 800px;
30
+ margin: 0 auto;
31
+ }
32
+ .about-header[data-v-ca1c586e] {
33
+ display: flex;
34
+ align-items: center;
35
+ gap: 1rem;
36
+ margin-bottom: 2rem;
37
+ padding-bottom: 1rem;
38
+ border-bottom: 1px solid #e2e8f0;
39
+ }
40
+ .about-logo[data-v-ca1c586e] {
41
+ width: 60px;
42
+ height: 60px;
43
+ border-radius: 12px;
44
+ background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
45
+ display: flex;
46
+ align-items: center;
47
+ justify-content: center;
48
+ color: white;
49
+ font-size: 2rem;
50
+ }
51
+ .about-title h2[data-v-ca1c586e] {
52
+ margin: 0;
53
+ font-size: 2rem;
54
+ font-weight: 700;
55
+ color: #1e293b;
56
+ }
57
+ .about-title p[data-v-ca1c586e] {
58
+ margin: 0.25rem 0 0 0;
59
+ color: #64748b;
60
+ font-size: 1.125rem;
61
+ }
62
+ .about-content[data-v-ca1c586e] {
63
+ display: flex;
64
+ flex-direction: column;
65
+ gap: 2rem;
66
+ }
67
+ .about-section[data-v-ca1c586e] {
68
+ background: white;
69
+ padding: 1.5rem;
70
+ border-radius: 12px;
71
+ box-shadow: 0 4px 6px rgba(0, 0, 0, 0.05);
72
+ }
73
+ .about-section h3[data-v-ca1c586e] {
74
+ margin: 0 0 1rem 0;
75
+ font-size: 1.25rem;
76
+ font-weight: 600;
77
+ color: #1e293b;
78
+ }
79
+ .about-section p[data-v-ca1c586e] {
80
+ margin: 0 0 1rem 0;
81
+ color: #64748b;
82
+ line-height: 1.6;
83
+ }
84
+ .feature-list[data-v-ca1c586e] {
85
+ list-style: none;
86
+ padding: 0;
87
+ margin: 0;
88
+ }
89
+ .feature-list li[data-v-ca1c586e] {
90
+ display: flex;
91
+ align-items: flex-start;
92
+ gap: 0.75rem;
93
+ margin-bottom: 0.75rem;
94
+ color: #64748b;
95
+ }
96
+ .feature-list li i[data-v-ca1c586e] {
97
+ color: #10b981;
98
+ margin-top: 0.25rem;
99
+ flex-shrink: 0;
100
+ }
101
+ .database-types[data-v-ca1c586e] {
102
+ display: grid;
103
+ grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
104
+ gap: 0.5rem;
105
+ }
106
+ .db-type[data-v-ca1c586e] {
107
+ display: flex;
108
+ justify-content: space-between;
109
+ align-items: center;
110
+ padding: 0.5rem;
111
+ background: #f8fafc;
112
+ border-radius: 6px;
113
+ }
114
+ .db-name[data-v-ca1c586e] {
115
+ font-weight: 500;
116
+ color: #374151;
117
+ }
118
+ .db-port[data-v-ca1c586e] {
119
+ color: #6b7280;
120
+ font-size: 0.875rem;
121
+ }
122
+ .about-links[data-v-ca1c586e] {
123
+ display: flex;
124
+ flex-direction: column;
125
+ gap: 0.75rem;
126
+ }
127
+ .about-link[data-v-ca1c586e] {
128
+ display: flex;
129
+ align-items: center;
130
+ gap: 0.75rem;
131
+ padding: 0.75rem;
132
+ background: #f8fafc;
133
+ border-radius: 8px;
134
+ color: #667eea;
135
+ text-decoration: none;
136
+ font-weight: 500;
137
+ transition: all 0.3s ease;
138
+ }
139
+ .about-link[data-v-ca1c586e]:hover {
140
+ background: #e0e7ff;
141
+ transform: translateX(4px);
142
+ }
143
+ .about-link i[data-v-ca1c586e] {
144
+ flex-shrink: 0;
145
+ }
146
+
27
147
  /* 顶部工具栏 */
28
- .top-toolbar[data-v-1b6d65cc] {
148
+ .top-toolbar[data-v-a4581861] {
29
149
  display: flex;
30
150
  align-items: center;
31
151
  justify-content: space-between;
@@ -37,11 +157,11 @@
37
157
  top: 0;
38
158
  z-index: 1030;
39
159
  }
40
- .toolbar-left[data-v-1b6d65cc] {
160
+ .toolbar-left[data-v-a4581861] {
41
161
  display: flex;
42
162
  align-items: center;
43
163
  }
44
- .brand-link[data-v-1b6d65cc] {
164
+ .brand-link[data-v-a4581861] {
45
165
  display: flex;
46
166
  align-items: center;
47
167
  gap: 0.75rem;
@@ -49,10 +169,10 @@
49
169
  color: #1e293b;
50
170
  transition: all 0.3s ease;
51
171
  }
52
- .brand-link[data-v-1b6d65cc]:hover {
172
+ .brand-link[data-v-a4581861]:hover {
53
173
  color: #667eea;
54
174
  }
55
- .brand-icon[data-v-1b6d65cc] {
175
+ .brand-icon[data-v-a4581861] {
56
176
  width: 36px;
57
177
  height: 36px;
58
178
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
@@ -63,19 +183,19 @@
63
183
  color: white;
64
184
  font-size: 1.2rem;
65
185
  }
66
- .brand-name[data-v-1b6d65cc] {
186
+ .brand-name[data-v-a4581861] {
67
187
  font-size: 1.15rem;
68
188
  font-weight: 700;
69
189
  letter-spacing: -0.025em;
70
190
  }
71
- .toolbar-right[data-v-1b6d65cc] {
191
+ .toolbar-right[data-v-a4581861] {
72
192
  display: flex;
73
193
  align-items: center;
74
194
  gap: 0.5rem;
75
195
  }
76
196
 
77
197
  /* 版本号徽标 */
78
- .app-version[data-v-1b6d65cc] {
198
+ .app-version[data-v-a4581861] {
79
199
  font-size: 0.78rem;
80
200
  font-weight: 600;
81
201
  line-height: 1;
@@ -90,7 +210,7 @@
90
210
  }
91
211
 
92
212
  /* 主布局样式 */
93
- .database-layout[data-v-1b6d65cc] {
213
+ .database-layout[data-v-a4581861] {
94
214
  height: 100vh;
95
215
  display: flex;
96
216
  flex-direction: column;
@@ -98,7 +218,7 @@
98
218
  }
99
219
 
100
220
  /* 现代导航栏样式 */
101
- .navbar-modern[data-v-1b6d65cc] {
221
+ .navbar-modern[data-v-a4581861] {
102
222
  background: linear-gradient(135deg, #ffffff 0%, #f8fafc 100%);
103
223
  border-bottom: 1px solid #cbd5e1;
104
224
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
@@ -110,10 +230,10 @@
110
230
  }
111
231
 
112
232
  /* 品牌区域 */
113
- .navbar-brand-wrapper[data-v-1b6d65cc] {
233
+ .navbar-brand-wrapper[data-v-a4581861] {
114
234
  margin-right: 2rem;
115
235
  }
116
- .navbar-brand-modern[data-v-1b6d65cc] {
236
+ .navbar-brand-modern[data-v-a4581861] {
117
237
  display: flex;
118
238
  align-items: center;
119
239
  gap: 1rem;
@@ -121,11 +241,11 @@
121
241
  color: #1e293b;
122
242
  transition: all 0.3s ease;
123
243
  }
124
- .navbar-brand-modern[data-v-1b6d65cc]:hover {
244
+ .navbar-brand-modern[data-v-a4581861]:hover {
125
245
  color: #667eea;
126
246
  transform: translateX(2px);
127
247
  }
128
- .brand-icon[data-v-1b6d65cc] {
248
+ .brand-icon[data-v-a4581861] {
129
249
  width: 45px;
130
250
  height: 45px;
131
251
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
@@ -138,22 +258,22 @@
138
258
  box-shadow: 0 4px 12px rgba(102, 126, 234, 0.3);
139
259
  transition: all 0.3s ease;
140
260
  }
141
- .brand-icon[data-v-1b6d65cc]:hover {
261
+ .brand-icon[data-v-a4581861]:hover {
142
262
  transform: rotate(5deg) scale(1.05);
143
263
  box-shadow: 0 6px 16px rgba(102, 126, 234, 0.4);
144
264
  }
145
- .brand-text[data-v-1b6d65cc] {
265
+ .brand-text[data-v-a4581861] {
146
266
  display: flex;
147
267
  flex-direction: column;
148
268
  gap: 2px;
149
269
  }
150
- .brand-name[data-v-1b6d65cc] {
270
+ .brand-name[data-v-a4581861] {
151
271
  font-size: 1.25rem;
152
272
  font-weight: 700;
153
273
  color: #1e293b;
154
274
  letter-spacing: -0.025em;
155
275
  }
156
- .brand-subtitle[data-v-1b6d65cc] {
276
+ .brand-subtitle[data-v-a4581861] {
157
277
  font-size: 0.75rem;
158
278
  color: #334155;
159
279
  font-weight: 500;
@@ -162,7 +282,7 @@
162
282
  }
163
283
 
164
284
  /* 移动端切换按钮 */
165
- .navbar-toggler-modern[data-v-1b6d65cc] {
285
+ .navbar-toggler-modern[data-v-a4581861] {
166
286
  background: none;
167
287
  border: none;
168
288
  padding: 0.5rem;
@@ -171,7 +291,7 @@
171
291
  flex-direction: column;
172
292
  gap: 4px;
173
293
  }
174
- .navbar-toggler-line[data-v-1b6d65cc] {
294
+ .navbar-toggler-line[data-v-a4581861] {
175
295
  width: 25px;
176
296
  height: 3px;
177
297
  background: linear-gradient(90deg, #667eea, #764ba2);
@@ -180,20 +300,20 @@
180
300
  }
181
301
 
182
302
  /* 导航折叠区域 */
183
- .navbar-collapse-modern[data-v-1b6d65cc] {
303
+ .navbar-collapse-modern[data-v-a4581861] {
184
304
  background: transparent;
185
305
  }
186
306
 
187
307
  /* 主导航样式 */
188
- .navbar-nav-modern[data-v-1b6d65cc] {
308
+ .navbar-nav-modern[data-v-a4581861] {
189
309
  display: flex;
190
310
  align-items: center;
191
311
  gap: 0.5rem;
192
312
  }
193
- .nav-item-modern[data-v-1b6d65cc] {
313
+ .nav-item-modern[data-v-a4581861] {
194
314
  position: relative;
195
315
  }
196
- .nav-link-modern[data-v-1b6d65cc] {
316
+ .nav-link-modern[data-v-a4581861] {
197
317
  display: flex;
198
318
  align-items: center;
199
319
  gap: 0.75rem;
@@ -206,29 +326,29 @@
206
326
  position: relative;
207
327
  overflow: hidden;
208
328
  }
209
- .nav-link-modern[data-v-1b6d65cc]:hover {
329
+ .nav-link-modern[data-v-a4581861]:hover {
210
330
  background: rgba(102, 126, 234, 0.1);
211
331
  color: #667eea;
212
332
  transform: translateY(-1px);
213
333
  }
214
- .nav-link-modern.active[data-v-1b6d65cc] {
334
+ .nav-link-modern.active[data-v-a4581861] {
215
335
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
216
336
  color: white;
217
337
  box-shadow: 0 4px 12px rgba(102, 126, 234, 0.3);
218
338
  }
219
- .nav-icon[data-v-1b6d65cc] {
339
+ .nav-icon[data-v-a4581861] {
220
340
  font-size: 1.25rem;
221
341
  display: flex;
222
342
  align-items: center;
223
343
  justify-content: center;
224
344
  min-width: 24px;
225
345
  }
226
- .nav-text[data-v-1b6d65cc] {
346
+ .nav-text[data-v-a4581861] {
227
347
  font-size: 0.95rem;
228
348
  font-weight: 600;
229
349
  letter-spacing: 0.025em;
230
350
  }
231
- .nav-indicator[data-v-1b6d65cc] {
351
+ .nav-indicator[data-v-a4581861] {
232
352
  position: absolute;
233
353
  bottom: 0;
234
354
  left: 50%;
@@ -240,16 +360,16 @@
240
360
  opacity: 0;
241
361
  transition: all 0.3s ease;
242
362
  }
243
- .nav-link-modern.active .nav-indicator[data-v-1b6d65cc] {
363
+ .nav-link-modern.active .nav-indicator[data-v-a4581861] {
244
364
  opacity: 1;
245
365
  }
246
366
 
247
367
  /* 用户菜单样式 */
248
- .nav-icon-only[data-v-1b6d65cc] {
368
+ .nav-icon-only[data-v-a4581861] {
249
369
  padding: 0.75rem;
250
370
  min-width: auto;
251
371
  }
252
- .notification-dot[data-v-1b6d65cc] {
372
+ .notification-dot[data-v-a4581861] {
253
373
  position: absolute;
254
374
  top: 8px;
255
375
  right: 8px;
@@ -258,9 +378,9 @@
258
378
  background: #ef4444;
259
379
  border-radius: 50%;
260
380
  border: 2px solid white;
261
- animation: pulse-1b6d65cc 2s ease-in-out infinite;
381
+ animation: pulse-a4581861 2s ease-in-out infinite;
262
382
  }
263
- .user-menu-toggle[data-v-1b6d65cc] {
383
+ .user-menu-toggle[data-v-a4581861] {
264
384
  display: flex;
265
385
  align-items: center;
266
386
  gap: 0.75rem;
@@ -268,10 +388,10 @@
268
388
  border-radius: 12px;
269
389
  transition: all 0.3s ease;
270
390
  }
271
- .user-menu-toggle[data-v-1b6d65cc]:hover {
391
+ .user-menu-toggle[data-v-a4581861]:hover {
272
392
  background: rgba(102, 126, 234, 0.1);
273
393
  }
274
- .user-avatar[data-v-1b6d65cc] {
394
+ .user-avatar[data-v-a4581861] {
275
395
  width: 40px;
276
396
  height: 40px;
277
397
  background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
@@ -283,33 +403,33 @@
283
403
  font-size: 1.25rem;
284
404
  box-shadow: 0 2px 8px rgba(102, 126, 234, 0.3);
285
405
  }
286
- .user-info[data-v-1b6d65cc] {
406
+ .user-info[data-v-a4581861] {
287
407
  display: flex;
288
408
  flex-direction: column;
289
409
  gap: 2px;
290
410
  }
291
- .user-name[data-v-1b6d65cc] {
411
+ .user-name[data-v-a4581861] {
292
412
  font-size: 0.9rem;
293
413
  font-weight: 600;
294
414
  color: #1e293b;
295
415
  }
296
- .user-role[data-v-1b6d65cc] {
416
+ .user-role[data-v-a4581861] {
297
417
  font-size: 0.75rem;
298
418
  color: #334155;
299
419
  font-weight: 500;
300
420
  }
301
- .dropdown-arrow[data-v-1b6d65cc] {
421
+ .dropdown-arrow[data-v-a4581861] {
302
422
  color: #475569;
303
423
  font-size: 0.75rem;
304
424
  transition: all 0.3s ease;
305
425
  }
306
- .user-menu-toggle:hover .dropdown-arrow[data-v-1b6d65cc] {
426
+ .user-menu-toggle:hover .dropdown-arrow[data-v-a4581861] {
307
427
  color: #667eea;
308
428
  transform: translateY(1px);
309
429
  }
310
430
 
311
431
  /* 现代下拉菜单样式 */
312
- .dropdown-menu-modern[data-v-1b6d65cc] {
432
+ .dropdown-menu-modern[data-v-a4581861] {
313
433
  background: white;
314
434
  border: 1px solid #cbd5e1;
315
435
  border-radius: 16px;
@@ -319,7 +439,7 @@
319
439
  backdrop-filter: blur(10px);
320
440
  margin-top: 0.75rem;
321
441
  }
322
- .dropdown-header[data-v-1b6d65cc] {
442
+ .dropdown-header[data-v-a4581861] {
323
443
  padding: 0.5rem 0.75rem;
324
444
  font-size: 0.75rem;
325
445
  font-weight: 700;
@@ -329,7 +449,7 @@
329
449
  border-bottom: 1px solid #f1f5f9;
330
450
  margin-bottom: 0.5rem;
331
451
  }
332
- .dropdown-item-modern[data-v-1b6d65cc] {
452
+ .dropdown-item-modern[data-v-a4581861] {
333
453
  display: flex;
334
454
  align-items: center;
335
455
  gap: 0.75rem;
@@ -340,44 +460,44 @@
340
460
  transition: all 0.2s ease;
341
461
  margin-bottom: 2px;
342
462
  }
343
- .dropdown-item-modern[data-v-1b6d65cc]:hover {
463
+ .dropdown-item-modern[data-v-a4581861]:hover {
344
464
  background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%);
345
465
  color: #667eea;
346
466
  transform: translateX(4px);
347
467
  }
348
- .dropdown-item-modern.text-danger[data-v-1b6d65cc]:hover {
468
+ .dropdown-item-modern.text-danger[data-v-a4581861]:hover {
349
469
  background: linear-gradient(135deg, #fef2f2 0%, #fee2e2 100%);
350
470
  color: #dc2626;
351
471
  }
352
- .dropdown-item-content[data-v-1b6d65cc] {
472
+ .dropdown-item-content[data-v-a4581861] {
353
473
  display: flex;
354
474
  flex-direction: column;
355
475
  gap: 2px;
356
476
  }
357
- .dropdown-item-title[data-v-1b6d65cc] {
477
+ .dropdown-item-title[data-v-a4581861] {
358
478
  font-size: 0.9rem;
359
479
  font-weight: 600;
360
480
  color: inherit;
361
481
  }
362
- .dropdown-item-desc[data-v-1b6d65cc] {
482
+ .dropdown-item-desc[data-v-a4581861] {
363
483
  font-size: 0.75rem;
364
484
  color: #475569;
365
485
  }
366
- .dropdown-divider-modern[data-v-1b6d65cc] {
486
+ .dropdown-divider-modern[data-v-a4581861] {
367
487
  margin: 0.75rem -0.75rem;
368
488
  border: none;
369
489
  border-top: 1px solid #e2e8f0;
370
490
  }
371
491
 
372
492
  /* 主要内容区域 */
373
- .main-content-modern[data-v-1b6d65cc] {
493
+ .main-content-modern[data-v-a4581861] {
374
494
  flex: 1;
375
495
  display: flex;
376
496
  flex-direction: column;
377
497
  background: transparent;
378
498
  overflow: hidden;
379
499
  }
380
- .content-wrapper[data-v-1b6d65cc] {
500
+ .content-wrapper[data-v-a4581861] {
381
501
  flex: 1;
382
502
  background: rgba(255, 255, 255, 0.3);
383
503
  backdrop-filter: blur(8px);
@@ -388,7 +508,7 @@
388
508
 
389
509
 
390
510
  /* 动画效果 */
391
- @keyframes pulse-1b6d65cc {
511
+ @keyframes pulse-a4581861 {
392
512
  0%, 100% { opacity: 1; transform: scale(1);
393
513
  }
394
514
  50% { opacity: 0.6; transform: scale(1.2);
@@ -397,12 +517,88 @@
397
517
 
398
518
  /* 响应式设计 */
399
519
  @media (max-width: 768px) {
400
- .content-wrapper[data-v-1b6d65cc] {
520
+ .content-wrapper[data-v-a4581861] {
401
521
  padding: 0.5rem;
402
522
  }
403
523
  }
404
524
  @media (max-width: 480px) {
405
- .content-wrapper[data-v-1b6d65cc] {
525
+ .content-wrapper[data-v-a4581861] {
406
526
  padding: 0.25rem;
407
527
  }
408
528
  }
529
+
530
+ /* 关于工具触发按钮 */
531
+ .about-trigger[data-v-a4581861] {
532
+ display: flex;
533
+ align-items: center;
534
+ gap: 0.35rem;
535
+ padding: 0.4rem 0.75rem;
536
+ border-radius: 8px;
537
+ cursor: pointer;
538
+ color: #64748b;
539
+ font-size: 0.85rem;
540
+ font-weight: 600;
541
+ transition: all 0.3s ease;
542
+ user-select: none;
543
+ border: 1px solid #cbd5e1;
544
+ background: rgba(255, 255, 255, 0.8);
545
+ }
546
+ .about-trigger[data-v-a4581861]:hover {
547
+ background: rgba(102, 126, 234, 0.1);
548
+ color: #667eea;
549
+ border-color: #667eea;
550
+ transform: translateY(-1px);
551
+ }
552
+
553
+ /* 关于工具弹窗 */
554
+ .about-modal-overlay[data-v-a4581861] {
555
+ position: fixed;
556
+ inset: 0;
557
+ background: rgba(15, 23, 42, 0.45);
558
+ display: flex;
559
+ align-items: center;
560
+ justify-content: center;
561
+ z-index: 2000;
562
+ padding: 1.5rem;
563
+ backdrop-filter: blur(4px);
564
+ }
565
+ .about-modal[data-v-a4581861] {
566
+ position: relative;
567
+ width: 100%;
568
+ max-width: 860px;
569
+ max-height: 90vh;
570
+ overflow-y: auto;
571
+ background: #ffffff;
572
+ border-radius: 16px;
573
+ box-shadow: 0 20px 50px rgba(0, 0, 0, 0.25);
574
+ }
575
+ .about-modal-close[data-v-a4581861] {
576
+ position: absolute;
577
+ top: 1rem;
578
+ right: 1rem;
579
+ z-index: 2;
580
+ width: 34px;
581
+ height: 34px;
582
+ display: flex;
583
+ align-items: center;
584
+ justify-content: center;
585
+ border: 1px solid #cbd5e1;
586
+ border-radius: 8px;
587
+ background: #ffffff;
588
+ color: #64748b;
589
+ cursor: pointer;
590
+ transition: all 0.2s ease;
591
+ }
592
+ .about-modal-close[data-v-a4581861]:hover {
593
+ background: #f1f5f9;
594
+ color: #667eea;
595
+ border-color: #667eea;
596
+ }
597
+ .about-fade-enter-active[data-v-a4581861],
598
+ .about-fade-leave-active[data-v-a4581861] {
599
+ transition: opacity 0.25s ease;
600
+ }
601
+ .about-fade-enter-from[data-v-a4581861],
602
+ .about-fade-leave-to[data-v-a4581861] {
603
+ opacity: 0;
604
+ }