:root{--app-bg: #eef3f9;--app-surface: #ffffff;--app-surface-muted: #f7fafd;--app-text: #1f2a44;--app-text-subtle: #60708d;--app-border: #d8e2ef;--app-shadow: 0 8px 22px rgba(22, 47, 84, .08);--app-radius: 12px;--app-gap: 10px;--el-color-primary: #2f6fed;--el-color-success: #1f9d66;--el-color-warning: #d78a22;--el-color-danger: #d84747;--el-font-size-base: 14px;--el-border-radius-base: 10px}*,*:before,*:after{box-sizing:border-box}html,body,#app{margin:0;padding:0;min-height:100%}body{font-family:PingFang SC,Microsoft YaHei,Noto Sans SC,sans-serif;background:radial-gradient(circle at 15% -20%,#fff,#eef3f9 45%,#e9f0fb);color:var(--app-text)}a{color:var(--el-color-primary)}.page-container{background:var(--app-surface);border:1px solid var(--app-border);border-radius:var(--app-radius);box-shadow:var(--app-shadow);padding:14px}.header,.title{color:#23467a;font-weight:700;letter-spacing:.2px}.header{margin:0 0 10px;font-size:20px}.header-bar,.toolbar,.action-bar{display:flex;align-items:center;gap:var(--app-gap);flex-wrap:wrap}.header-bar{justify-content:space-between;margin-bottom:10px}.toolbar,.action-bar{margin-bottom:10px}.table-card,.panel-card{background:var(--app-surface);border:1px solid var(--app-border);border-radius:var(--app-radius);box-shadow:var(--app-shadow)}.el-card{border-radius:var(--app-radius);border-color:var(--app-border)}.el-card.is-always-shadow,.el-card.is-hover-shadow:focus,.el-card.is-hover-shadow:hover{box-shadow:var(--app-shadow)}.el-menu{border-radius:10px}.el-button{border-radius:9px;font-weight:500}.el-input__wrapper,.el-textarea__inner,.el-select__wrapper{border-radius:9px}.el-table{--el-table-header-bg-color: #f3f7fd;--el-table-row-hover-bg-color: #f5f9ff}.el-table th.el-table__cell{color:#34567f;font-weight:600}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#c8d4e6;border-radius:999px}::-webkit-scrollbar-track{background:#edf2f9}.page-fade-enter-active{transition:opacity .15s ease}.page-fade-leave-active{transition:opacity .1s ease}.page-fade-enter-from,.page-fade-leave-to{opacity:0}
