body{margin:0;background:#f2f4f8;--el-font-size-base: 13px}.layout{display:flex;min-height:100vh}.side{width:212px;position:sticky;top:0;height:100vh;overflow-y:auto;flex:none}.side::-webkit-scrollbar{width:4px}.side::-webkit-scrollbar-thumb{background:#ffffff24;border-radius:2px}.brand{font-weight:600;padding:14px;font-size:15px;border-bottom:1px solid rgba(255,255,255,.08);display:flex;align-items:center;gap:8px}.menu{padding:8px 0 16px}.mi{padding:9px 12px;margin:1px 8px;border-radius:6px;cursor:pointer;font-size:13.5px;display:flex;align-items:center}.mi.grp{font-weight:600;cursor:pointer}.mi-lbl{font-size:11px;color:#8a96a6;padding:12px 22px 4px;font-weight:600;letter-spacing:1px;cursor:default}.mi.sub{padding-left:32px;font-size:13px;display:flex;align-items:center}.mi.sub>span:first-child{color:#2e7fd6}.mi.sub:nth-of-type(3n)>span:first-child{color:#1f9663}.mi.sub:nth-of-type(3n+1)>span:first-child{color:#e0781f}.mi.grp>span:first-child{color:#4a90d9}.mi.grp span[style*=float]{margin-left:auto}.main{flex:1;display:flex;flex-direction:column;min-width:0}.tk-footer{margin-top:auto;padding:14px 12px 10px;border-top:1px solid #EEF1F5;font-size:11.5px;color:#a8abb2;text-align:center;letter-spacing:.4px}.topbar{background:#fff;padding:10px 20px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 1px #e4e9f0,0 2px 10px #0b1a2f0a}.content{padding:18px 20px}.cards{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:16px}.card{position:relative;background:#fff;border-radius:12px;padding:14px 18px 14px 20px;min-width:120px;box-shadow:0 2px 10px #0b1a2f0f;transition:box-shadow .18s,transform .18s}.card:hover{box-shadow:0 6px 18px #4a90d924;transform:translateY(-2px)}.card:before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:3px;border-radius:2px;background:linear-gradient(180deg,#4c9be4,#2e7fd6)}.card.warn:before{background:linear-gradient(180deg,#e6a23c,#f56c6c)}.card .num{font-size:26px;font-weight:700;color:#1a2330;font-variant-numeric:tabular-nums;letter-spacing:.5px}.card .lbl{font-size:12px;color:#8a939e;margin-top:2px}.card.warn .num{color:#e6a23c}.tl{list-style:none;padding-left:0;margin:0}.tl li{border-left:2px solid #D8E3EF;padding:6px 0 6px 14px;position:relative;font-size:13px;color:#444}.tl li:before{content:"";width:8px;height:8px;border-radius:50%;background:linear-gradient(135deg,#4c9be4,#2e7fd6);box-shadow:0 0 0 3px #4a90d926;position:absolute;left:-5px;top:12px}.tl .t{color:#8a939e;font-size:12px;margin-right:8px}.mt{background:#fff;border-radius:14px;padding:14px;margin-top:14px;box-shadow:0 2px 10px #0b1a2f0f}.mt h3{margin:0 0 10px;font-size:15px;color:#1a2330}:root{--el-color-primary: #4A90D9;--el-color-primary-dark-2: #2E7FD6;--el-color-primary-light-3: #7DB3E8;--el-color-primary-light-5: #A5C9EF;--el-color-primary-light-7: #CDDFF6;--el-color-primary-light-8: #DDE9F9;--el-color-primary-light-9: #EEF5FC;--el-color-success: #1F9663;--el-color-success-light-3: #56BA92;--el-color-success-light-5: #8CCDB4;--el-color-success-light-7: #C3E5D6;--el-color-success-light-8: #D8EEe4;--el-color-success-light-9: #EEF7F2;--el-color-warning: #E0781F;--el-color-warning-light-3: #EAA05C;--el-color-warning-light-5: #F1BD93;--el-color-warning-light-7: #F7D9C9;--el-color-warning-light-8: #FAE5DA;--el-color-warning-light-9: #FDF3EB;--el-color-danger: #F5574B;--el-color-error: #F5574B;--el-color-danger-light-3: #F88A81;--el-color-danger-light-5: #FAB2AB;--el-color-danger-light-7: #FDD7D3;--el-color-danger-light-8: #FEE5E2;--el-color-danger-light-9: #FEF3F1}.el-button--primary{--el-button-bg-color: #4A90D9;--el-button-border-color: #4A90D9;--el-button-hover-bg-color: #5B9FE0;--el-button-hover-border-color: #5B9FE0;--el-button-active-bg-color: #2E7FD6;--el-button-active-border-color: #2E7FD6}.link-plain{color:#1a2330;cursor:pointer}.link-plain:hover{color:#1a2330}.help-q{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;border:1px solid #c0c6cf;border-radius:50%;font-size:10px;line-height:1;color:#8a939e;background:#fff;cursor:pointer;-webkit-user-select:none;user-select:none;vertical-align:middle;margin-left:5px}.help-q:hover{color:#4a90d9;border-color:#4a90d9}.tk-empty{text-align:center;padding:32px 16px;color:#98a1ab}.tk-empty .ico{font-size:36px;color:#d3dae3;margin-bottom:8px;display:block}.tk-empty .tip{font-size:13px;line-height:1.6;margin-bottom:12px}.tk-empty .act{display:inline-flex;gap:8px}.sys-hot-tabs .el-tabs__nav-wrap:after{display:none!important}.sys-hot-tabs .el-tabs__active-bar{display:none!important}.sys-hot-tabs .el-tabs__item{height:auto!important;line-height:1.5!important;padding:5px 11px!important;margin-right:8px!important;border:1px solid #dcdfe6!important;border-radius:4px!important;font-size:12px!important;color:#606266!important;background:#fff!important}.sys-hot-tabs .el-tabs__item:hover{color:#4a90d9!important;border-color:#4a90d9!important;background:#ecf5ff!important}.sys-hot-tabs .el-tabs__item.is-active{color:#fff!important;background:#4a90d9!important;border-color:#4a90d9!important}.cfg-dirty td{background:#fff7e6!important}html.bigfont body{font-size:15.5px!important}html.bigfont .el-table{font-size:14px!important}html.bigfont .el-table .cell{white-space:normal!important}html.bigfont .el-button,html.bigfont .el-form-item__label,html.bigfont .mi{font-size:14.5px!important}.tag{margin-right:4px}.wf-plus{width:22px;height:22px;border-radius:50%;background:#fff;border:1.6px dashed #4A90D9;color:#4a90d9;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:1;transition:all .15s}.wf-plus:hover{background:#4a90d9;color:#fff;border-style:solid;box-shadow:0 2px 8px #4a90d959}.wf-node{border:1.6px solid #b3d9ff;background:#f5faff;border-radius:10px;padding:10px 12px;margin:2px 0}.wf-node:hover{box-shadow:0 3px 10px #4a90d91f}.wf-node.wf-approval{border-color:#79bbff;background:#f5faff}.wf-node.wf-notify{border-color:#7ed6e8;background:#f2fcfe}.wf-node.wf-auto{border-color:#f3d19e;background:#fdf6ec}.pub-path{border:1.6px solid #E3EBF2;border-radius:13px;padding:20px 16px;cursor:pointer;text-align:center;display:grid;gap:8px;justify-items:center;transition:all .15s;background:#fff}.pub-path:hover{border-color:#4a90d9;box-shadow:0 6px 18px #4a90d926;transform:translateY(-2px)}.wf-tpl{border:1.6px solid #E3EBF2;border-radius:11px;padding:12px;cursor:pointer;transition:all .15s;background:#fff}.wf-tpl:hover{border-color:#9cc4f5;box-shadow:0 3px 10px #4a90d91a}.wf-tpl.on{border-color:#4a90d9;background:#f5faff;box-shadow:0 0 0 3px #4a90d91f}.pc-crumb{cursor:pointer}.pc-crumb:hover{color:#4a90d9}.qk-form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px 16px;padding:4px 0}.qk-form-grid .span3{grid-column:1/-1}.qk-form-item label{font-size:13px;color:#4e5969;margin-bottom:4px;display:block}.qk-form-item label .req{color:#f5222d;margin-right:2px}.qk-auto{background:#f6f9fb!important;color:#a8abb2!important;cursor:not-allowed!important}.qk-drawer-form{padding:20px 24px;max-height:calc(100vh - 120px);overflow-y:auto}.qk-drawer-footer{position:sticky;bottom:0;background:#fff;border-top:1px solid #eef1f4;padding:12px 24px;display:flex;gap:10px;z-index:10}.skel-bar{height:32px;border-radius:6px;background:linear-gradient(90deg,#e8eaed 25%,#f0f2f5,#e8eaed 75%);background-size:200% 100%;animation:skel-wave 1.5s infinite;margin-bottom:12px}@keyframes skel-wave{0%{background-position:200% 0}to{background-position:-200% 0}}.qk-detail-card{background:#f6f9fb;border-radius:10px;padding:12px 16px;margin-bottom:10px}.qk-detail-card .k{font-size:12px;color:#8a939e;margin-bottom:4px}.qk-detail-card .v{font-size:14px;color:#303133}.qk-detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}.qk-detail-grid .span3{grid-column:1/-1}.el-tabs__content .qk-detail-grid,.el-tabs__content .qk-detail-card{margin-bottom:0}@media(max-width:768px){.el-drawer{width:100%!important}.main{min-width:0}}.el-drawer__body{overflow-x:hidden}.el-drawer__body *{max-width:100%}.el-table .cell{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.el-table .cell .el-tag,.el-table .cell .el-button{vertical-align:middle}.pane-pc{--pane-bg:#ffffff;--row-bg:#F6F9FB}.pane-m{--pane-bg:#EEF5FB;--row-bg:#e3effb}.dev-tabs{display:inline-flex;gap:4px;padding:0 4px;background:#e8ecf2;border-radius:10px 10px 0 0;margin-bottom:-1px;position:relative;z-index:2}.dev-tab{display:inline-flex;align-items:center;gap:6px;padding:10px 22px 12px;font-size:13.5px;color:#606266;cursor:pointer;border-radius:10px 10px 0 0;background:transparent;transition:all .18s;position:relative;top:3px;-webkit-user-select:none;user-select:none}.dev-tab .dt-ico{display:inline-flex}.dev-tab.on{background:var(--pane-bg,#fff);color:#4a90d9;font-weight:600;top:0;box-shadow:0 -2px 6px #4a90d91a}.dev-tab:not(.on):hover{color:#4a90d9;background:#f0f4fa}.dev-tab.on:after{content:"";position:absolute;left:20%;right:20%;bottom:6px;height:3px;border-radius:2px;background:#4a90d9}.ov-card{border-radius:8px;padding:8px;text-align:center;transition:box-shadow .15s}.ov-card.ov-hot{cursor:pointer}.ov-card.ov-hot:hover{box-shadow:0 2px 10px #4a90d938;transform:translateY(-1px)}.ov-card .ov-go{display:inline-flex;vertical-align:-1px;margin-left:2px;color:#4a90d9;opacity:0;transition:opacity .15s}.ov-card.ov-hot:hover .ov-go{opacity:1}.ov-tasks{display:flex;align-items:center;justify-content:space-between;gap:8px;background:#f7f9fc;border:1px solid #e4eaf3;border-radius:8px;padding:8px 12px;cursor:pointer;transition:background .15s,border-color .15s}.ov-tasks:hover{background:#eef4fd;border-color:#c4d9f5}a.jump-chip{display:inline-flex;align-items:center;gap:3px;color:#303133;text-decoration:none;background:#e8eef4;border-radius:6px;padding:2px 8px;font-size:13px;line-height:1.5;cursor:pointer;transition:background .15s,color .15s;vertical-align:middle;max-width:100%;min-width:0;overflow:hidden}a.jump-chip>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}a.jump-chip .jt{flex:none;color:#8a96a6;transition:color .15s}a.jump-chip:hover{background:#dce8f7;color:#4a90d9}a.jump-chip:hover .jt{color:#4a90d9}.el-table .cell,.el-table th.el-table__cell .cell{padding-left:8px;padding-right:8px}.chg-bar{display:flex;align-items:center;justify-content:space-between;border:1px solid #dcdfe6;border-radius:8px;padding:12px 14px;background:#fff;cursor:pointer;margin-top:10px;transition:border-color .15s}.chg-bar.on{border-color:#4a90d9;background:#f5faff}.chg-bar .ti{font-size:14px;font-weight:600;color:#1a2330}.chg-bar.on .ti{color:#4a90d9}.chg-bar.on.term .ti{color:#f56c6c}.chg-bar .arw{color:#c0c9d4;font-size:15px;transition:transform .2s}.chg-bar.on .arw{transform:rotate(90deg);color:#4a90d9}.chg-body{overflow:hidden;max-height:0;transition:max-height .25s ease}.chg-body.open{max-height:420px}.chg-body-inner{padding:10px 2px 4px;display:flex;flex-direction:column;gap:8px}.exp-subs{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.exp-subs.c6{grid-template-columns:repeat(3,1fr)}.exp-sub{border:1.5px solid #E3EBF3;border-radius:8px;padding:10px 6px;text-align:center;cursor:pointer;background:#fff;transition:all .15s;font-size:13px;color:#3a4553}.exp-sub:hover{border-color:#9cc4ec}.exp-sub.on{border-color:#4a90d9;background:#eff5fa;color:#2e7fd6;font-weight:600}.exp-sub.off{cursor:not-allowed;opacity:.45;background:#f6f8fa}.exp-sub .sub-tag{display:block;font-size:11px;color:#8a939e;font-weight:400;margin-top:3px}.exp-sec{background:#f7fafd;border:1px solid #E8F0F8;border-radius:8px;padding:12px 14px;margin-bottom:12px}.exp-sec-t{font-size:12.5px;color:#5a6b7e;margin-bottom:10px;display:flex;align-items:center;gap:6px}.exp-foot{display:flex;align-items:center;gap:14px;background:#f7fafd;border-radius:8px;padding:9px 14px;font-size:12.5px;color:#5a6b7e;flex-wrap:wrap}.exp-fixbar{display:flex;flex-wrap:wrap;gap:6px 22px;background:#f7fafd;border:1px solid #E8F0F8;border-radius:8px;padding:10px 14px;font-size:12.5px;color:#5a6b7e;margin-bottom:12px}.exp-stat{background:#eff5fa;border:1px solid #D7E6F4;border-radius:8px;padding:12px 14px;margin-bottom:12px}.tk-drill{cursor:pointer;transition:transform .12s ease,box-shadow .12s ease}.tk-drill:hover{transform:translateY(-2px);box-shadow:0 3px 10px #0e6ae62e}.tk-drill:hover .num,.tk-drill:hover b{color:#0e6ae6}@keyframes pulse{0%,to{opacity:1}50%{opacity:.3}}.efield-err{outline:1px solid #f56c6c;border-radius:6px}.efield-err>div:first-child{color:#f56c6c}.ia-strip{display:flex;align-items:center;gap:6px;flex-wrap:wrap;background:#f4f8ff;border:1px solid #D6E7F5;border-radius:10px;padding:10px 14px;margin-bottom:12px}.erow-new{animation:erowFlash 1s ease-in-out 3}@keyframes erowFlash{0%,to{background:#fff}50%{background:#e6f7ff}}.eform-progress{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:#f5f9fe;border:1px solid #DCEAF8;border-radius:8px;padding:8px 12px;margin-bottom:10px;font-size:12px;color:#5e6b7e}.efield-state{display:inline-block;margin-right:6px;padding:1px 5px;border-radius:4px;background:#eef2f6;color:#6b7280;font-size:10px;font-weight:400}.efield-state.st-当前账号锁定,.efield-state.st-仅查看{background:#f2f3f5;color:#7a818b}.efield-state.st-系统生成,.efield-state.st-自动计算{background:#eaf5ee;color:#39734d}.efield-state.st-可编辑{background:#eaf3fd;color:#2e6bb3}.efield-message{margin-top:4px;color:#d64b4b;font-size:12px;line-height:1.5}[role=button]:focus-visible,button:focus-visible,a:focus-visible{outline:2px solid #2E7FD6;outline-offset:3px}
