:root{--color-primary:#ff6b35;--color-primary-light:#ff8f66;--color-primary-lighter:#ffb199;--color-primary-lightest:#fff3f0;--color-primary-dark:#e65100;--color-primary-darker:#bf360c;--color-success:#52c41a;--color-warning:#faad14;--color-danger:#ff4d4f;--color-info:#909399;--color-text-primary:#1d2129;--color-text-regular:#4e5969;--color-text-secondary:#86909c;--color-text-placeholder:#c9cdd4;--color-text-white:#fff;--color-bg-page:#f2f3f5;--color-bg-card:#fff;--color-bg-hover:#f7f8fa;--color-bg-sidebar:#1d2b3a;--color-bg-header:#fff;--color-border:#e5e6eb;--color-border-light:#f2f3f5;--shadow-sm:0 1px 2px 0 #00000008, 0 1px 6px -1px #00000005;--shadow-md:0 4px 10px -2px #0000000f, 0 2px 4px -1px #00000008;--shadow-lg:0 12px 24px -4px #00000014, 0 4px 8px -2px #00000008;--shadow-primary:0 4px 14px -2px #ff6b3540;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--radius-round:9999px;--spacing-xs:4px;--spacing-sm:8px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--spacing-2xl:48px;--font-size-xs:12px;--font-size-sm:13px;--font-size-base:14px;--font-size-md:15px;--font-size-lg:16px;--font-size-xl:18px;--font-size-2xl:22px;--font-size-3xl:28px;--font-size-4xl:36px;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.3;--line-height-normal:1.5;--line-height-relaxed:1.8;--transition-fast:.15s ease;--transition-normal:.25s ease;--transition-slow:.35s ease;--header-height:64px;--sidebar-width:220px;--content-max-width:1200px;--el-color-primary:#ff6b35;--el-color-primary-light-3:#ff8f66;--el-color-primary-light-5:#ffb199;--el-color-primary-light-7:#ffd4cc;--el-color-primary-light-8:#ffe6e0;--el-color-primary-light-9:#fff3f0;--el-color-primary-dark-2:#e65100;--el-border-radius-base:var(--radius-sm);--el-border-radius-small:var(--radius-sm);--el-border-radius-round:var(--radius-round)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Arial,sans-serif;font-size:var(--font-size-base);color:var(--color-text-primary);background-color:var(--color-bg-page);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:var(--line-height-normal)}#app{width:100%;min-height:100vh}a{color:inherit;transition:color var(--transition-fast);text-decoration:none}img{max-width:100%;height:auto}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-thumb{border-radius:var(--radius-round);transition:background-color var(--transition-normal);background-color:#00000026}::-webkit-scrollbar-thumb:hover{background-color:#00000040}::-webkit-scrollbar-track{background-color:#0000}.text-ellipsis{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.text-ellipsis-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.card-base{background:var(--color-bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:all var(--transition-normal)}.card-base:hover{box-shadow:var(--shadow-md)}.gradient-text{background:linear-gradient(135deg, var(--color-primary), var(--color-primary-dark));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.el-button{border-radius:var(--radius-sm);transition:all var(--transition-fast)}.el-button--primary{--el-button-bg-color:var(--color-primary);--el-button-border-color:var(--color-primary);--el-button-hover-bg-color:var(--color-primary-light);--el-button-hover-border-color:var(--color-primary-light);--el-button-active-bg-color:var(--color-primary-dark);--el-button-active-border-color:var(--color-primary-dark)}.el-card{border-radius:var(--radius-lg);border:none}.el-input__wrapper,.el-tag{border-radius:var(--radius-sm)}.el-dialog{border-radius:var(--radius-lg)}.el-pagination.is-background .el-pager li.is-active{background-color:var(--color-primary)}.el-table th.el-table__cell{background-color:var(--color-bg-hover);color:var(--color-text-primary);font-weight:var(--font-weight-semibold)}.el-breadcrumb{font-size:var(--font-size-base)}.el-empty__description p{color:var(--color-text-secondary)}.fade-enter-active,.fade-leave-active{transition:opacity var(--transition-normal)}.fade-enter-from,.fade-leave-to{opacity:0}
