Spaces:
Running
Running
File size: 2,602 Bytes
87316f2 428d112 87316f2 428d112 87316f2 428d112 87316f2 428d112 87316f2 428d112 87316f2 | 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 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 | /* 自定义样式 */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');
* {
font-family: 'Inter', sans-serif;
}
/* 滚动条样式 */
::-webkit-scrollbar {
width: 6px;
}
::-webkit-scrollbar-track {
background: #f1f1f1;
}
::-webkit-scrollbar-thumb {
background: #c1c1c1;
border-radius: 3px;
}
::-webkit-scrollbar-thumb:hover {
background: #a8a8a8;
}
/* 动画效果 */
@keyframes slideIn {
from {
opacity: 0;
transform: translateY(-20px);
}
to {
opacity: 1;
transform: translateY(0);
}
}
.slide-in {
animation: slideIn 0.3s ease-out;
}
/* 表格行悬停效果 */
.table-row:hover {
background-color: #f8fafc;
transition: background-color 0.2s ease;
}
/* 状态标签样式 */
.status-badge {
padding: 4px 12px;
border-radius: 20px;
font-size: 12px;
font-weight: 500;
}
.status-active {
background-color: #dcfce7;
color: #166534;
}
.status-inactive {
background-color: #fef2f2;
color: #dc2626;
}
.status-suspended {
background-color: #fffbeb;
color: #d97706;
}
/* 等级标签样式 */
.level-badge {
padding: 4px 12px;
border-radius: 20px;
font-size: 12px;
font-weight: 500;
}
.level-vip {
background-color: #fef3c7;
color: #92400e;
}
.level-normal {
background-color: #e0e7ff;
color: #3730a3;
}
.level-potential {
background-color: #f3e8ff;
color: #7e22ce;
}
/* 模态框动画 */
.modal-enter {
animation: modalEnter 0.3s ease-out;
}
@keyframes modalEnter {
from {
opacity: 0;
transform: scale(0.95);
}
to {
opacity: 1;
transform: scale(1);
}
}
/* 按钮悬停效果 */
.btn-hover {
transition: all 0.3s ease;
}
.btn-hover:hover {
transform: translateY(-2px);
}
/* 加载动画 */
.loading-spinner {
border: 2px solid #f3f3f3;
border-top: 2px solid #3498db;
border-radius: 50%;
width: 20px;
height: 20px;
animation: spin 1s linear infinite;
}
@keyframes spin {
0% { transform: rotate(0deg); }
100% { transform: rotate(360deg); }
}
/* 响应式设计增强 */
@media (max-width: 768px) {
.mobile-hidden {
display: none;
}
.mobile-full {
width: 100%;
}
}
/* 卡片阴影效果 */
.card-shadow {
box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
transition: box-shadow 0.3s ease;
}
.card-shadow:hover {
box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
} |