wanshenmean
2026-03-17 94ad631d316da04c46266ddb1fc6e63e6f8f2fae
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
/* Global Styles */
:root {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;
}
 
body {
  margin: 0;
  min-height: 100vh;
  background: #f5f7fa;
}
 
/* Status Colors - Element Plus */
.status-stopped {
  border-left: 4px solid #909399;
}
 
.status-starting {
  border-left: 4px solid #409eff;
}
 
.status-running {
  border-left: 4px solid #67c23a;
}
 
.status-stopping {
  border-left: 4px solid #e6a23c;
}
 
.status-error {
  border-left: 4px solid #f56c6c;
}
 
/* Loading Spinner Overlay */
.spinner-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;
}
 
/* Spin icon animation */
.spin-icon {
  animation: spin 1s linear infinite;
}
 
@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
 
/* Card hover effect */
.el-card {
  transition: all 0.3s ease;
}
 
.el-card:hover {
  transform: translateY(-2px);
}
 
/* Custom scrollbar */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}
 
::-webkit-scrollbar-track {
  background: #f1f1f1;
}
 
::-webkit-scrollbar-thumb {
  background: #c0c4cc;
  border-radius: 4px;
}
 
::-webkit-scrollbar-thumb:hover {
  background: #909399;
}