:root{--color-primary:#3b82f6;--color-primary-light:#eff6ff;--color-primary-dark:#1d4ed8;--color-success:#22c55e;--color-success-light:#f0fdf4;--color-success-dark:#15803d;--color-warning:#f59e0b;--color-warning-light:#fffbeb;--color-warning-dark:#b45309;--color-danger:#ef4444;--color-danger-light:#fef2f2;--color-danger-dark:#b91c1c;--bg-page:#f3f7fc;--bg-surface:#fffffff0;--bg-sidebar:#ffffffeb;--bg-subtle:#0f5dd80f;--text-primary:#1e293b;--text-secondary:#64748b;--text-muted:#94a3b8;--border-default:#566c8a1f;--border-hover:#2563eb47;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-full:999px;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 12px #00000012;--shadow-lg:0 10px 30px #1e314e14;--font-sans:"PingFang SC", "SF Pro Display", "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", "SFMono-Regular", ui-monospace, monospace;--text-xs:12px;--text-sm:13px;--text-base:14px;--text-lg:16px;--text-xl:20px;--text-2xl:24px;--text-3xl:28px;--bp-lg:1200px;--bp-md:900px;--bp-sm:640px;color:var(--text-primary);background:radial-gradient(circle at top left, #2c85f738, transparent 32%), radial-gradient(circle at top right, #72b8ff2e, transparent 26%), linear-gradient(180deg, var(--bg-page) 0%, #f7fbff 100%);font-family:var(--font-sans);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;line-height:1.5}*,:before,:after{box-sizing:border-box}html,body,#app{min-height:100%}body{margin:0}body:before{content:"";pointer-events:none;background-image:linear-gradient(#142f5f05 1px,#0000 1px),linear-gradient(90deg,#142f5f05 1px,#0000 1px);background-size:24px 24px;position:fixed;inset:0;-webkit-mask-image:radial-gradient(circle,#000,#0000 75%);mask-image:radial-gradient(circle,#000,#0000 75%)}img{max-width:100%}button,input,select,textarea{font:inherit}a{color:inherit}.el-button{border-radius:var(--radius-md);font-weight:500}.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-dark);--el-button-hover-border-color:var(--color-primary-dark)}.el-dialog,.el-message-box{border-radius:var(--radius-xl)}.el-card{border-radius:var(--radius-lg);border:1px solid var(--border-default);background:var(--bg-surface);box-shadow:var(--shadow-md)}.el-table{border-radius:var(--radius-lg);overflow:hidden}.el-table th.el-table__cell{background:var(--bg-subtle);color:var(--text-secondary);font-size:var(--text-sm);font-weight:600}.el-tag{border-radius:var(--radius-full);font-weight:600}.el-menu{background:0 0;border-right:none}.el-input .el-input__wrapper,.el-select .el-select__wrapper,.el-date-editor.el-input__wrapper{border-radius:var(--radius-md);box-shadow:none;border:1px solid var(--border-default)}.el-date-editor.el-input__wrapper{box-shadow:0 0 0 1px var(--border-default) inset;border:0}.el-input .el-input__wrapper:hover,.el-select .el-select__wrapper:hover,.el-date-editor.el-input__wrapper:hover{border-color:var(--border-hover)}.el-date-editor.el-input__wrapper:hover{box-shadow:0 0 0 1px var(--border-hover) inset}.el-input.is-focus .el-input__wrapper,.el-select.is-focus .el-select__wrapper,.el-date-editor.el-input__wrapper.is-active{border-color:var(--color-primary);box-shadow:0 0 0 1px var(--color-primary) inset}.el-pagination{margin-top:var(--space-4);justify-content:center}.el-tabs__header{margin-bottom:var(--space-4)}.el-switch.is-checked .el-switch__core{background-color:var(--color-primary);border-color:var(--color-primary)}.el-skeleton{--el-skeleton-color:var(--bg-subtle)}.el-empty__description{color:var(--text-muted)}.mt-4{margin-top:var(--space-4)}.mb-4{margin-bottom:var(--space-4)}.w-full{width:100%}.text-muted-xs{font-size:var(--text-xs);color:var(--text-muted)}.text-muted-xs.mt-1{margin-top:var(--space-1)}.fw-600{font-weight:600}.text-danger{color:var(--color-danger)}.ml-2{margin-left:var(--space-2)}.pagination-center{margin-top:var(--space-4);justify-content:center;display:flex}.card-header{justify-content:space-between;gap:var(--space-3);align-items:flex-end;display:flex}.card-header--split{align-items:center}.card-title{color:var(--text-primary);font-size:var(--text-lg);font-weight:600;display:block}.card-desc{color:var(--text-secondary);font-size:var(--text-sm);margin-top:4px;line-height:1.6;display:block}.card-actions{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.filter-col-160{width:160px}
