.layout[data-v-c4c4ed03]{display:flex;height:100vh;height:100dvh;overflow:hidden}.sidebar[data-v-c4c4ed03]{width:222px;flex:0 0 222px;background:#fff;border-right:1px solid var(--line);display:flex;flex-direction:column;transition:width .18s ease,flex-basis .18s ease}.collapsed .sidebar[data-v-c4c4ed03]{width:64px;flex-basis:64px}.drawer-mask[data-v-c4c4ed03]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:205;background:#11182773;opacity:0;pointer-events:none;transition:opacity .2s ease}.drawer-mask.show[data-v-c4c4ed03]{opacity:1;pointer-events:auto}.mobile-title[data-v-c4c4ed03]{display:none}.is-mobile .mobile-title[data-v-c4c4ed03]{display:block;flex:1;min-width:0;font-size:15px;font-weight:600;color:var(--text-1);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.is-mobile .sidebar[data-v-c4c4ed03]{position:fixed;top:0;left:0;bottom:0;z-index:210;width:248px;flex-basis:248px;transform:translate(-100%);transition:transform .22s ease;box-shadow:4px 0 24px #1118271f}.is-mobile.drawer-open .sidebar[data-v-c4c4ed03]{transform:translate(0)}.is-mobile .topbar[data-v-c4c4ed03]{height:52px;flex:0 0 52px;padding:0 8px 0 4px;gap:6px}.is-mobile .top-crumb[data-v-c4c4ed03],.is-mobile .user-meta[data-v-c4c4ed03]{display:none}.is-mobile .user-chip[data-v-c4c4ed03]{padding:4px 6px;gap:2px}.is-mobile .page-footer[data-v-c4c4ed03]{display:none}.brand[data-v-c4c4ed03]{display:flex;align-items:center;gap:10px;height:58px;padding:0 14px;border-bottom:1px solid var(--line);overflow:hidden}.brand-logo[data-v-c4c4ed03]{width:36px;height:36px;flex:0 0 36px;border-radius:9px;object-fit:contain;background:#fff;border:1px solid var(--line);padding:3px;box-shadow:0 2px 8px #1c244214}.brand-text[data-v-c4c4ed03]{display:flex;flex-direction:column;line-height:1.25;white-space:nowrap}.brand-text strong[data-v-c4c4ed03]{font-size:14px}.brand-text span[data-v-c4c4ed03]{font-size:11.5px;color:var(--text-3)}.menu-scroll[data-v-c4c4ed03]{flex:1;padding:8px 0}.sidebar[data-v-c4c4ed03] .el-menu{border-right:none;padding:0 8px}.sidebar[data-v-c4c4ed03] .el-menu-item{height:40px;line-height:40px;border-radius:9px;margin-bottom:2px;color:var(--text-2);font-size:13px}.sidebar[data-v-c4c4ed03] .el-sub-menu__title{height:40px;line-height:40px;border-radius:9px;color:var(--text-2);font-size:13px;font-weight:600}.sidebar[data-v-c4c4ed03] .el-sub-menu__title:hover{background:#f2f4fb;color:var(--text-1)}.sidebar[data-v-c4c4ed03] .el-sub-menu .el-menu-item{min-width:0;padding-left:40px!important;font-size:12.5px}.sidebar[data-v-c4c4ed03] .el-menu-item:hover{background:#f2f4fb;color:var(--text-1)}.sidebar[data-v-c4c4ed03] .el-menu-item.is-active{background:var(--brand-soft);color:var(--brand);font-weight:600}.side-foot[data-v-c4c4ed03]{padding:12px 14px 16px;border-top:1px solid var(--line)}.side-note[data-v-c4c4ed03]{font-size:11.5px;color:var(--text-3);margin-top:5px}.main[data-v-c4c4ed03]{flex:1;min-width:0;display:flex;flex-direction:column;background:var(--bg-page)}.topbar[data-v-c4c4ed03]{height:58px;flex:0 0 58px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:8px;padding:0 16px 0 8px}.collapse-btn[data-v-c4c4ed03]{color:var(--text-2)}.top-crumb[data-v-c4c4ed03]{font-size:13px}.top-crumb[data-v-c4c4ed03] .el-breadcrumb__inner{color:var(--text-2)}.top-crumb[data-v-c4c4ed03] .el-breadcrumb__inner.is-link{color:var(--text-2);font-weight:500;cursor:pointer}.top-crumb[data-v-c4c4ed03] .el-breadcrumb__inner.is-link:hover{color:var(--brand)}.top-crumb[data-v-c4c4ed03] .el-breadcrumb__item:last-child .el-breadcrumb__inner{color:var(--text-1);font-weight:600}.page-footer[data-v-c4c4ed03]{flex:0 0 34px;height:34px;display:flex;align-items:center;justify-content:center;gap:10px;background:#fff;border-top:1px solid var(--line);font-size:12px;color:var(--text-3)}.page-footer span[data-v-c4c4ed03]:first-child{color:var(--brand);font-weight:600;letter-spacing:.5px}.foot-divider[data-v-c4c4ed03]{color:var(--line)}.user-chip[data-v-c4c4ed03]{display:flex;align-items:center;gap:9px;padding:5px 10px;border-radius:10px;cursor:pointer;transition:background .15s;outline:none}.user-chip[data-v-c4c4ed03]:hover{background:#f4f6fd}.user-avatar[data-v-c4c4ed03]{background:linear-gradient(135deg,#1e6fff,#5c9bff);color:#fff;font-weight:600}.user-meta[data-v-c4c4ed03]{display:flex;flex-direction:column;line-height:1.2}.user-name[data-v-c4c4ed03]{font-size:13px;font-weight:600}.user-role[data-v-c4c4ed03]{font-size:12px;color:var(--text-3)}.content-scroll[data-v-c4c4ed03]{flex:1}@media (max-width: 1100px){.slogan[data-v-c4c4ed03]{display:none}}@media (max-width: 860px){.position-chip .pos-name[data-v-c4c4ed03]{display:none}}:root{--brand: #1e6fff;--brand-soft: #e8f1ff;--brand-deep: #0d5be0;--text-1: #1f2430;--text-2: #5b6376;--text-3: #8b93a7;--line: #e8eaf2;--bg-page: #f3f7fd;--bg-card: #ffffff;--radius: 12px;--shadow-sm: 0 1px 2px rgba(28, 36, 66, .04), 0 2px 8px rgba(28, 36, 66, .04);--shadow-md: 0 4px 16px rgba(28, 36, 66, .08);--el-color-primary: #1e6fff}*{box-sizing:border-box}html,body,#app{height:100%;margin:0;padding:0}body{font-family:PingFang SC,Microsoft YaHei,Helvetica Neue,Helvetica,Arial,sans-serif;background:var(--bg-page);color:var(--text-1);-webkit-font-smoothing:antialiased;font-size:14px}a{color:var(--brand);text-decoration:none}.boot-loading{height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;color:var(--text-3)}.boot-spinner{width:34px;height:34px;border:3px solid var(--brand-soft);border-top-color:var(--brand);border-radius:50%;animation:boot-spin .8s linear infinite}@keyframes boot-spin{to{transform:rotate(360deg)}}.page{padding:20px 28px 32px 24px}@media (min-width: 1600px){.page{padding:22px 40px 36px 32px}}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px;flex-wrap:wrap}.page-title{margin:0;font-size:20px;font-weight:600;letter-spacing:.2px}.page-desc{margin:5px 0 0;color:var(--text-3);font-size:12.5px;font-weight:400;line-height:1.55;max-width:780px}.page-note{margin:0 0 14px;padding:7px 12px;background:#f6f8fc;border-left:2px solid #dbe3f2;border-radius:4px;color:var(--text-3);font-size:12.5px;font-weight:400;line-height:1.65}.page-note.is-inline{margin:0 0 10px}.page-note strong{color:var(--text-2);font-weight:600}.page-note code{padding:1px 5px;background:#eef2fa;border-radius:3px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:12px;color:var(--text-2)}@media (max-width: 768px){.page-desc,.page-note{font-size:12px}.page-note{padding:6px 10px;margin-bottom:10px}}.card{background:var(--bg-card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.card+.card{margin-top:16px}.card-pad{padding:18px 20px}.card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 20px;border-bottom:1px solid var(--line)}.card-head h3{margin:0;font-size:15px;font-weight:600}.muted{color:var(--text-3)}.mono{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:12.5px}.row-gap{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.spacer{flex:1}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#d3d8e6;border-radius:8px}::-webkit-scrollbar-thumb:hover{background:#b9c0d4}::-webkit-scrollbar-track{background:transparent}.el-table th.el-table__cell{background:#fafbfe!important;color:var(--text-2);font-weight:600}.el-table .el-table__cell{padding:10px 0}.el-table .cell{padding:0 14px}.el-table.is-hscroll .el-scrollbar__bar.is-horizontal{display:block!important;opacity:1!important;height:10px;background:#e9eef9;border-radius:8px}.el-table.is-hscroll .el-scrollbar__bar.is-horizontal>div{background:#a5b6d6;border-radius:8px}.el-table.is-hscroll .el-scrollbar__bar.is-horizontal>div:hover{background:#8298c2}.el-drawer__header{margin-bottom:0;padding:16px 20px;border-bottom:1px solid var(--line)}.el-drawer__body{padding:20px 22px}.el-card{border-radius:var(--radius)}.el-tag{border-radius:6px}.text-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.el-dialog{max-width:calc(100vw - 32px);--el-dialog-padding-primary: 20px}.el-dialog__body{overflow-x:hidden}@media (min-width: 769px){.el-dialog:not(.is-fullscreen){display:flex;flex-direction:column;max-height:calc(100vh - 72px)}.el-dialog:not(.is-fullscreen) .el-dialog__header,.el-dialog:not(.is-fullscreen) .el-dialog__footer{flex:0 0 auto}.el-dialog:not(.is-fullscreen) .el-dialog__body{flex:1 1 auto;min-height:0;overflow-y:auto}}.m-list{display:flex;flex-direction:column;gap:10px}.m-card{border:1px solid var(--line);border-radius:12px;padding:12px;background:var(--bg-card)}.m-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding-bottom:8px;border-bottom:1px dashed var(--line)}.m-title-wrap{display:flex;flex-direction:column;gap:2px;min-width:0}.m-title{font-size:14px;font-weight:600;color:var(--text-1);word-break:break-all}.m-sub{font-size:12px;color:var(--text-3);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.m-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;padding:10px 0 2px}.m-field{display:flex;flex-direction:column;gap:2px;min-width:0}.m-label{font-size:11.5px;color:var(--text-3)}.m-value{font-size:13px;color:var(--text-1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.m-actions{display:flex;flex-wrap:wrap;gap:8px;padding-top:10px;margin-top:4px;border-top:1px dashed var(--line)}.m-actions .el-button{margin-left:0;min-height:30px}.rcv-list{display:flex;flex-direction:column;gap:10px;max-height:52vh;overflow-y:auto;padding-right:2px}.rcv-card{border:1px solid var(--line);border-radius:10px;padding:10px 12px}.rcv-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding-bottom:8px;border-bottom:1px dashed var(--line)}.rcv-mat{display:flex;flex-direction:column;gap:1px;min-width:0}.rcv-name{font-size:13.5px;font-weight:600;color:var(--text-1)}.rcv-spec{font-size:11.5px;color:var(--text-3);word-break:break-all}.rcv-remain{flex:none;font-size:12px;color:var(--text-3);white-space:nowrap}.rcv-remain b{color:var(--text-1);font-size:13px}.rcv-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding-top:9px}.rcv-field{display:flex;flex-direction:column;gap:3px;min-width:0}.rcv-field>span{font-size:11.5px;color:var(--text-3)}.rcv-none{font-size:12px;color:var(--text-3);line-height:24px}.rcv-foot{display:flex;align-items:center;gap:10px;margin-top:6px}.rcv-warn{font-size:11.5px;color:#ef4444}@media (max-width: 768px){.page{padding:12px 12px calc(24px + env(safe-area-inset-bottom,0px))}.page-head{gap:8px;margin-bottom:12px}.page-title{font-size:18px}.card-pad,.card-head{padding:12px}.card-head h3{font-size:14px}.el-drawer.ltr,.el-drawer.rtl{width:100%!important}.el-drawer__header{padding:14px;font-size:15px}.el-drawer__body{padding:14px}.el-drawer.btt .el-drawer__footer{padding-bottom:calc(10px + env(safe-area-inset-bottom,0px))}.el-dialog{--el-dialog-width: calc(100vw - 24px) !important;width:calc(100vw - 24px)!important;max-width:none!important;margin:3vh auto!important;max-height:94vh;display:flex;flex-direction:column}.el-dialog__body{overflow-y:auto;flex:1 1 auto;min-height:0;max-height:calc(94vh - 130px)}.el-dialog__footer{flex:0 0 auto}.el-dialog__body{overflow-x:hidden}.el-dialog__body .el-row{margin-left:0!important;margin-right:0!important}.el-message-box{width:calc(100vw - 40px)!important}.el-table{font-size:13px}.el-input__inner,.el-textarea__inner,.el-select__selected-item{font-size:16px}.toolbar{flex-wrap:wrap!important;gap:8px!important}.toolbar>.el-input,.toolbar>.el-select,.toolbar>.el-date-editor,.toolbar>.el-radio-group,.toolbar>.bom-bar{width:100%!important}.toolbar>.spacer{display:none!important}.toolbar>.el-button{flex:1 1 auto;margin-left:0!important}.el-radio-group{display:flex;flex-wrap:wrap;gap:6px}.el-tabs__nav-wrap{overflow-x:auto}.el-descriptions__body .el-descriptions__table{table-layout:auto}.el-dialog .el-form-item,.el-drawer .el-form-item{flex-direction:column;align-items:stretch}.el-dialog .el-form-item__label,.el-drawer .el-form-item__label{width:auto!important;justify-content:flex-start;text-align:left;padding:0 0 4px!important;line-height:1.4;font-size:12.5px}.el-dialog .el-form-item__content,.el-drawer .el-form-item__content{margin-left:0!important}.el-dialog .el-form-item__content>.el-input,.el-dialog .el-form-item__content>.el-select,.el-dialog .el-form-item__content>.el-date-editor,.el-dialog .el-form-item__content>.el-input-number,.el-drawer .el-form-item__content>.el-input,.el-drawer .el-form-item__content>.el-select,.el-drawer .el-form-item__content>.el-date-editor,.el-drawer .el-form-item__content>.el-input-number{width:100%!important}}
