:root{--el-color-white:#fff;--el-color-black:#000;--el-color-primary-rgb:64, 158, 255;--el-color-success-rgb:103, 194, 58;--el-color-warning-rgb:230, 162, 60;--el-color-danger-rgb:245, 108, 108;--el-color-error-rgb:245, 108, 108;--el-color-info-rgb:144, 147, 153;--el-font-size-extra-large:20px;--el-font-size-large:18px;--el-font-size-medium:16px;--el-font-size-base:14px;--el-font-size-small:13px;--el-font-size-extra-small:12px;--el-font-family:"Helvetica Neue", Helvetica, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "微软雅黑", Arial, sans-serif;--el-font-weight-primary:500;--el-font-line-height-primary:24px;--el-index-normal:1;--el-index-top:1000;--el-index-popper:2000;--el-border-radius-base:4px;--el-border-radius-small:2px;--el-border-radius-round:20px;--el-border-radius-circle:100%;--el-transition-duration:.3s;--el-transition-duration-fast:.2s;--el-transition-function-ease-in-out-bezier:cubic-bezier(.645, .045, .355, 1);--el-transition-function-fast-bezier:cubic-bezier(.23, 1, .32, 1);--el-transition-all:all var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier);--el-transition-fade:opacity var(--el-transition-duration) var(--el-transition-function-fast-bezier);--el-transition-md-fade:transform var(--el-transition-duration) var(--el-transition-function-fast-bezier), opacity var(--el-transition-duration) var(--el-transition-function-fast-bezier);--el-transition-fade-linear:opacity var(--el-transition-duration-fast) linear;--el-transition-border:border-color var(--el-transition-duration-fast) var(--el-transition-function-ease-in-out-bezier);--el-transition-box-shadow:box-shadow var(--el-transition-duration-fast) var(--el-transition-function-ease-in-out-bezier);--el-transition-color:color var(--el-transition-duration-fast) var(--el-transition-function-ease-in-out-bezier);--el-component-size-large:40px;--el-component-size:32px;--el-component-size-small:24px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--el-color-primary:#409eff;--el-color-primary-light-3:#79bbff;--el-color-primary-light-5:#a0cfff;--el-color-primary-light-7:#c6e2ff;--el-color-primary-light-8:#d9ecff;--el-color-primary-light-9:#ecf5ff;--el-color-primary-dark-2:#337ecc;--el-color-success:#67c23a;--el-color-success-light-3:#95d475;--el-color-success-light-5:#b3e19d;--el-color-success-light-7:#d1edc4;--el-color-success-light-8:#e1f3d8;--el-color-success-light-9:#f0f9eb;--el-color-success-dark-2:#529b2e;--el-color-warning:#e6a23c;--el-color-warning-light-3:#eebe77;--el-color-warning-light-5:#f3d19e;--el-color-warning-light-7:#f8e3c5;--el-color-warning-light-8:#faecd8;--el-color-warning-light-9:#fdf6ec;--el-color-warning-dark-2:#b88230;--el-color-danger:#f56c6c;--el-color-danger-light-3:#f89898;--el-color-danger-light-5:#fab6b6;--el-color-danger-light-7:#fcd3d3;--el-color-danger-light-8:#fde2e2;--el-color-danger-light-9:#fef0f0;--el-color-danger-dark-2:#c45656;--el-color-error:#f56c6c;--el-color-error-light-3:#f89898;--el-color-error-light-5:#fab6b6;--el-color-error-light-7:#fcd3d3;--el-color-error-light-8:#fde2e2;--el-color-error-light-9:#fef0f0;--el-color-error-dark-2:#c45656;--el-color-info:#909399;--el-color-info-light-3:#b1b3b8;--el-color-info-light-5:#c8c9cc;--el-color-info-light-7:#dedfe0;--el-color-info-light-8:#e9e9eb;--el-color-info-light-9:#f4f4f5;--el-color-info-dark-2:#73767a;--el-bg-color:#fff;--el-bg-color-page:#f2f3f5;--el-bg-color-overlay:#fff;--el-text-color-primary:#303133;--el-text-color-regular:#606266;--el-text-color-secondary:#909399;--el-text-color-placeholder:#a8abb2;--el-text-color-disabled:#c0c4cc;--el-border-color:#dcdfe6;--el-border-color-light:#e4e7ed;--el-border-color-lighter:#ebeef5;--el-border-color-extra-light:#f2f6fc;--el-border-color-dark:#d4d7de;--el-border-color-darker:#cdd0d6;--el-fill-color:#f0f2f5;--el-fill-color-light:#f5f7fa;--el-fill-color-lighter:#fafafa;--el-fill-color-extra-light:#fafcff;--el-fill-color-dark:#ebedf0;--el-fill-color-darker:#e6e8eb;--el-fill-color-blank:#fff;--el-box-shadow:0px 12px 32px 4px #0000000a, 0px 8px 20px #00000014;--el-box-shadow-light:0px 0px 12px #0000001f;--el-box-shadow-lighter:0px 0px 6px #0000001f;--el-box-shadow-dark:0px 16px 48px 16px #00000014, 0px 12px 32px #0000001f, 0px 8px 16px -8px #00000029;--el-disabled-bg-color:var(--el-fill-color-light);--el-disabled-text-color:var(--el-text-color-placeholder);--el-disabled-border-color:var(--el-border-color-light);--el-overlay-color:#000c;--el-overlay-color-light:#000000b3;--el-overlay-color-lighter:#00000080;--el-mask-color:#ffffffe6;--el-mask-color-extra-light:#ffffff4d;--el-border-width:1px;--el-border-style:solid;--el-border-color-hover:var(--el-text-color-disabled);--el-border:var(--el-border-width) var(--el-border-style) var(--el-border-color);--el-svg-monochrome-grey:var(--el-border-color)}.fade-in-linear-enter-active,.fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.fade-in-linear-enter-from,.fade-in-linear-leave-to{opacity:0}.el-fade-in-linear-enter-active,.el-fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.el-fade-in-linear-enter-from,.el-fade-in-linear-leave-to{opacity:0}.el-fade-in-enter-active,.el-fade-in-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-fade-in-enter-from,.el-fade-in-leave-active{opacity:0}.el-zoom-in-center-enter-active,.el-zoom-in-center-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-zoom-in-center-enter-from,.el-zoom-in-center-leave-active{opacity:0;transform:scaleX(0)}.el-zoom-in-top-enter-active,.el-zoom-in-top-leave-active{opacity:1;transition:var(--el-transition-md-fade);transform-origin:top;transform:scaleY(1)}.el-zoom-in-top-enter-active[data-popper-placement^=top],.el-zoom-in-top-leave-active[data-popper-placement^=top]{transform-origin:bottom}.el-zoom-in-top-enter-from,.el-zoom-in-top-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-bottom-enter-active,.el-zoom-in-bottom-leave-active{opacity:1;transition:var(--el-transition-md-fade);transform-origin:bottom;transform:scaleY(1)}.el-zoom-in-bottom-enter-from,.el-zoom-in-bottom-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-left-enter-active,.el-zoom-in-left-leave-active{opacity:1;transition:var(--el-transition-md-fade);transform-origin:0 0;transform:scale(1)}.el-zoom-in-left-enter-from,.el-zoom-in-left-leave-active{opacity:0;transform:scale(.45)}.collapse-transition{transition:var(--el-transition-duration) height ease-in-out,var(--el-transition-duration) padding-top ease-in-out,var(--el-transition-duration) padding-bottom ease-in-out}.el-collapse-transition-leave-active,.el-collapse-transition-enter-active{transition:var(--el-transition-duration) max-height ease-in-out,var(--el-transition-duration) padding-top ease-in-out,var(--el-transition-duration) padding-bottom ease-in-out}.horizontal-collapse-transition{transition:var(--el-transition-duration) width ease-in-out,var(--el-transition-duration) padding-left ease-in-out,var(--el-transition-duration) padding-right ease-in-out}.el-list-enter-active,.el-list-leave-active{transition:all 1s}.el-list-enter-from,.el-list-leave-to{opacity:0;transform:translateY(-30px)}.el-list-leave-active{position:absolute!important}.el-opacity-transition{transition:opacity var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-icon--right{margin-left:5px}.el-icon--left{margin-right:5px}@keyframes rotating{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.el-icon{--color:inherit;fill:currentColor;width:1em;height:1em;color:var(--color);line-height:1em;font-size:inherit;justify-content:center;align-items:center;display:inline-flex;position:relative}.el-icon.is-loading{animation:2s linear infinite rotating}.el-icon svg{width:1em;height:1em}.el-message{--el-message-bg-color:var(--el-color-info-light-9);--el-message-border-color:var(--el-border-color-lighter);--el-message-padding:11px 15px;--el-message-close-size:16px;--el-message-close-icon-color:var(--el-text-color-placeholder);--el-message-close-hover-color:var(--el-text-color-secondary);box-sizing:border-box;border-radius:var(--el-border-radius-base);border-width:var(--el-border-width);border-style:var(--el-border-style);border-color:var(--el-message-border-color);background-color:var(--el-message-bg-color);width:max-content;max-width:calc(100% - 32px);transition:opacity var(--el-transition-duration),transform .4s,top .4s,bottom .4s;padding:var(--el-message-padding);align-items:center;gap:8px;display:flex;position:fixed}.el-message.is-left{left:16px}.el-message.is-right{right:16px}.el-message.is-center{left:50%;transform:translate(-50%)}.el-message.is-plain{background-color:var(--el-bg-color-overlay);border-color:var(--el-bg-color-overlay);box-shadow:var(--el-box-shadow-light)}.el-message p{margin:0}.el-message--primary{--el-message-bg-color:var(--el-color-primary-light-9);--el-message-border-color:var(--el-color-primary-light-8);--el-message-text-color:var(--el-color-primary)}.el-message--primary .el-message__content{color:var(--el-message-text-color);overflow-wrap:break-word}.el-message .el-message-icon--primary{color:var(--el-message-text-color)}.el-message--success{--el-message-bg-color:var(--el-color-success-light-9);--el-message-border-color:var(--el-color-success-light-8);--el-message-text-color:var(--el-color-success)}.el-message--success .el-message__content{color:var(--el-message-text-color);overflow-wrap:break-word}.el-message .el-message-icon--success{color:var(--el-message-text-color)}.el-message--info{--el-message-bg-color:var(--el-color-info-light-9);--el-message-border-color:var(--el-color-info-light-8);--el-message-text-color:var(--el-color-info)}.el-message--info .el-message__content{color:var(--el-message-text-color);overflow-wrap:break-word}.el-message .el-message-icon--info{color:var(--el-message-text-color)}.el-message--warning{--el-message-bg-color:var(--el-color-warning-light-9);--el-message-border-color:var(--el-color-warning-light-8);--el-message-text-color:var(--el-color-warning)}.el-message--warning .el-message__content{color:var(--el-message-text-color);overflow-wrap:break-word}.el-message .el-message-icon--warning{color:var(--el-message-text-color)}.el-message--error{--el-message-bg-color:var(--el-color-error-light-9);--el-message-border-color:var(--el-color-error-light-8);--el-message-text-color:var(--el-color-error)}.el-message--error .el-message__content{color:var(--el-message-text-color);overflow-wrap:break-word}.el-message .el-message-icon--error{color:var(--el-message-text-color)}.el-message .el-message__badge{position:absolute;top:-8px;right:-8px}.el-message__content{padding:0;font-size:14px;line-height:1}.el-message__content:focus{outline-width:0}.el-message .el-message__closeBtn{cursor:pointer;color:var(--el-message-close-icon-color);font-size:var(--el-message-close-size)}.el-message .el-message__closeBtn:focus{outline-width:0}.el-message .el-message__closeBtn:hover{color:var(--el-message-close-hover-color)}.el-message-fade-enter-from,.el-message-fade-leave-to{opacity:0}.el-message-fade-enter-from.is-left,.el-message-fade-enter-from.is-right,.el-message-fade-leave-to.is-left,.el-message-fade-leave-to.is-right{transform:translateY(-100%)}.el-message-fade-enter-from.is-left.is-bottom,.el-message-fade-enter-from.is-right.is-bottom,.el-message-fade-leave-to.is-left.is-bottom,.el-message-fade-leave-to.is-right.is-bottom{transform:translateY(100%)}.el-message-fade-enter-from.is-center,.el-message-fade-leave-to.is-center{transform:translate(-50%,-100%)}.el-message-fade-enter-from.is-center.is-bottom,.el-message-fade-leave-to.is-center.is-bottom{transform:translate(-50%,100%)}:root{--el-popup-modal-bg-color:var(--el-color-black);--el-popup-modal-opacity:.5}.v-modal-enter{animation:v-modal-in var(--el-transition-duration-fast) ease}.v-modal-leave{animation:v-modal-out var(--el-transition-duration-fast) ease forwards}@keyframes v-modal-in{0%{opacity:0}}@keyframes v-modal-out{to{opacity:0}}.v-modal{width:100%;height:100%;opacity:var(--el-popup-modal-opacity);background:var(--el-popup-modal-bg-color);position:fixed;top:0;left:0}.el-popup-parent--hidden{overflow:hidden}.el-message-box{--el-messagebox-title-color:var(--el-text-color-primary);--el-messagebox-width:420px;--el-messagebox-border-radius:4px;--el-messagebox-box-shadow:var(--el-box-shadow);--el-messagebox-font-size:var(--el-font-size-large);--el-messagebox-content-font-size:var(--el-font-size-base);--el-messagebox-content-color:var(--el-text-color-regular);--el-messagebox-error-font-size:12px;--el-messagebox-padding-primary:12px;--el-messagebox-font-line-height:var(--el-font-line-height-primary);max-width:var(--el-messagebox-width);width:100%;padding:var(--el-messagebox-padding-primary);vertical-align:middle;background-color:var(--el-bg-color);border-radius:var(--el-messagebox-border-radius);font-size:var(--el-messagebox-font-size);box-shadow:var(--el-messagebox-box-shadow);text-align:left;-webkit-backface-visibility:hidden;backface-visibility:hidden;box-sizing:border-box;overflow-wrap:break-word;display:inline-block;position:relative;overflow:hidden}.el-message-box:focus{outline:none!important}.is-message-box .el-overlay-message-box{text-align:center;padding:16px;position:fixed;top:0;bottom:0;left:0;right:0;overflow:auto}.is-message-box .el-overlay-message-box:after{content:"";vertical-align:middle;width:0;height:100%;display:inline-block}.el-message-box.is-draggable .el-message-box__header{cursor:move;-webkit-user-select:none;user-select:none}.el-message-box__header{padding-bottom:var(--el-messagebox-padding-primary)}.el-message-box__header.show-close{padding-right:calc(var(--el-messagebox-padding-primary) + var(--el-message-close-size,16px))}.el-message-box__title{font-size:var(--el-messagebox-font-size);line-height:var(--el-messagebox-font-line-height);color:var(--el-messagebox-title-color)}.el-message-box__headerbtn{width:40px;height:40px;font-size:var(--el-message-close-size,16px);cursor:pointer;background:0 0;border:none;outline:none;padding:0;position:absolute;top:0;right:0}.el-message-box__headerbtn .el-message-box__close{color:var(--el-color-info);font-size:inherit}.el-message-box__headerbtn:focus .el-message-box__close,.el-message-box__headerbtn:hover .el-message-box__close{color:var(--el-color-primary)}.el-message-box__content{color:var(--el-messagebox-content-color);font-size:var(--el-messagebox-content-font-size)}.el-message-box__container{align-items:center;gap:12px;display:flex}.el-message-box__input{padding-top:12px}.el-message-box__input div.invalid>input,.el-message-box__input div.invalid>input:focus{border-color:var(--el-color-error)}.el-message-box__status{font-size:24px}.el-message-box__status.el-message-box-icon--primary{--el-messagebox-color:var(--el-color-primary);color:var(--el-messagebox-color)}.el-message-box__status.el-message-box-icon--success{--el-messagebox-color:var(--el-color-success);color:var(--el-messagebox-color)}.el-message-box__status.el-message-box-icon--info{--el-messagebox-color:var(--el-color-info);color:var(--el-messagebox-color)}.el-message-box__status.el-message-box-icon--warning{--el-messagebox-color:var(--el-color-warning);color:var(--el-messagebox-color)}.el-message-box__status.el-message-box-icon--error{--el-messagebox-color:var(--el-color-error);color:var(--el-messagebox-color)}.el-message-box__message{min-width:0;margin:0}.el-message-box__message p{line-height:var(--el-messagebox-font-line-height);margin:0}.el-message-box__errormsg{color:var(--el-color-error);font-size:var(--el-messagebox-error-font-size);line-height:var(--el-messagebox-font-line-height)}.el-message-box__btns{padding-top:var(--el-messagebox-padding-primary);flex-wrap:wrap;justify-content:flex-end;align-items:center;display:flex}.el-message-box--center .el-message-box__title{justify-content:center;align-items:center;gap:6px;display:flex}.el-message-box--center .el-message-box__status{font-size:inherit}.el-message-box--center .el-message-box__btns,.el-message-box--center .el-message-box__container{justify-content:center}.el-message-box-parent--hidden{overflow:hidden}.fade-in-linear-enter-active .el-overlay-message-box{animation:msgbox-fade-in var(--el-transition-duration)}.fade-in-linear-leave-active .el-overlay-message-box{animation:msgbox-fade-in var(--el-transition-duration) reverse}@keyframes msgbox-fade-in{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translate(0)}}*{box-sizing:border-box}body{margin:0;color:#17212b;background:#e8edf1;font-family:system-ui,-apple-system,Segoe UI,Microsoft YaHei,PingFang SC,sans-serif;font-size:14px}.app-shell{min-height:100vh;width:100%;overflow-x:hidden}.app-sidebar{flex:0 0 auto;border-right:1px solid #172d35;background:#0b1e25;box-shadow:8px 0 28px #0f172a1a;transition:width .2s ease,transform .2s ease;overflow-x:hidden}.app-sidebar .el-menu{background:transparent;width:100%}.app-sidebar .el-menu{border-right:0}.app-sidebar .el-menu-item,.app-sidebar .el-sub-menu__title{height:44px;margin:2px 10px;border-radius:7px;color:#a9bbc1;font-size:13px}.app-sidebar .el-menu-item.is-active{color:#fff;background:#116d62;box-shadow:inset 3px 0 #39d6a4}.app-sidebar .el-menu-item:hover,.app-sidebar .el-sub-menu__title:hover{color:#fff;background:#14323a}.app-sidebar .el-menu--collapse{width:64px}.app-sidebar.is-collapsed{width:64px!important}.app-sidebar.is-collapsed .el-menu-item,.app-sidebar.is-collapsed .el-sub-menu__title{width:48px;min-width:48px;height:44px;justify-content:center;margin:3px 8px;padding:0!important}.app-sidebar.is-collapsed .el-menu-item .el-icon,.app-sidebar.is-collapsed .el-sub-menu__title .el-icon{margin:0;width:48px;height:44px;font-size:18px}.app-sidebar.is-collapsed .el-menu-item span,.app-sidebar.is-collapsed .el-sub-menu__title span,.app-sidebar.is-collapsed .el-sub-menu__icon-arrow{display:none}.app-sidebar.is-collapsed .el-sub-menu.is-active>.el-sub-menu__title{color:#fff;background:#116d62;box-shadow:inset 3px 0 #39d6a4}.brand{height:62px;display:flex;align-items:center;justify-content:flex-start;gap:10px;padding:0 14px;font-size:17px;font-weight:700;border-bottom:1px solid #18343d;white-space:nowrap}.brand.is-collapsed{justify-content:center;padding:0}.brand-mark{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:7px;background:#18a77f;color:#fff;font-size:13px;box-shadow:0 10px 24px #18a77f40}.brand-text{color:#fff}.app-header{display:flex;align-items:center;justify-content:space-between;height:62px;border-bottom:1px solid #d8e0e6;background:#fffffff0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.header-left{display:flex;align-items:center;gap:10px;color:#17212b;font-weight:700}.header-actions{display:flex;align-items:center;gap:8px}.tenant-badge{max-width:220px;padding:4px 10px;border:1px solid #c8d5dd;border-radius:999px;background:#f6f9fb;color:#34505b;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.icon-button{width:32px;height:32px;padding:0}.app-main{padding:18px;min-width:0;overflow-x:auto;background:#e8edf1}.page{color:#17212b}.page .el-card,.page .el-table,.page .el-input__wrapper,.page .el-select__wrapper,.page .el-textarea__inner{box-shadow:none}.page .el-card{border:1px solid #d6e0e7;background:#fffffff2}.page .el-card__header{padding:13px 15px;border-bottom:1px solid #e1e8ee}.page .el-card__body{padding:14px}.page .el-button{border-radius:7px;font-weight:600}.page .el-button--primary{--el-button-bg-color: #126d63;--el-button-border-color: #126d63;--el-button-hover-bg-color: #168270;--el-button-hover-border-color: #168270}.page .el-table{--el-table-header-bg-color: #f3f7f9;--el-table-header-text-color: #314752;--el-table-row-hover-bg-color: #f4faf8;border-radius:7px;overflow:hidden}.page-title{margin-bottom:16px;color:#17212b;font-size:22px;font-weight:700}.page-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.toolbar-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.toolbar-actions .el-button+.el-button{margin-left:0}.page-toolbar .page-title{margin-bottom:0}.mes-dialog-form{--mes-field-border: #b8c7d3;--mes-field-border-hover: #8fa2b2;--mes-field-border-focus: #126d63}.mes-dialog-form .el-form-item{margin-bottom:16px}.mes-dialog-form.el-form--label-top .el-form-item__label{display:flex;align-items:center;height:22px;margin-bottom:6px;line-height:22px;color:#334155;font-weight:600}.mes-dialog-form.el-form--label-top .el-form-item.is-required .el-form-item__label:before{align-self:center;margin-right:4px;line-height:1}.mes-dialog-form .el-input,.mes-dialog-form .el-select,.mes-dialog-form .el-date-editor,.mes-dialog-form .el-input-number{width:100%}.mes-dialog-form .el-input__wrapper,.mes-dialog-form .el-select__wrapper,.mes-dialog-form .el-textarea__inner{min-height:34px;border:1px solid var(--mes-field-border);background:#fff;box-shadow:none;transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease}.mes-dialog-form .el-input__wrapper:hover,.mes-dialog-form .el-select__wrapper:hover,.mes-dialog-form .el-textarea__inner:hover{border-color:var(--mes-field-border-hover)}.mes-dialog-form .el-input__wrapper.is-focus,.mes-dialog-form .el-select__wrapper.is-focused,.mes-dialog-form .el-textarea__inner:focus{border-color:var(--mes-field-border-focus);box-shadow:0 0 0 2px #126d631a}.mes-dialog-form .el-input.is-disabled .el-input__wrapper,.mes-dialog-form .el-select.is-disabled .el-select__wrapper{border-color:#d7e0e7;background:#f5f7fa}.mes-dialog-form .el-input-number .el-input__wrapper{padding-left:0;padding-right:0}.mes-dialog-form .el-textarea__inner{padding:8px 11px}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#f5f7fb}.login-panel{width:min(430px,calc(100vw - 32px));padding:30px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;box-shadow:0 20px 60px #0f172a1a}.login-brand{display:flex;align-items:center;gap:14px;margin-bottom:24px}.login-logo{display:inline-flex;align-items:center;justify-content:center;width:54px;height:54px;border-radius:10px;background:#0f766e;color:#fff;font-weight:700}.login-panel h1{margin:0 0 6px;font-size:22px}.login-panel p{margin:0;color:#64748b;font-size:13px}.login-button{width:100%}.tenant-page{min-height:100vh;padding:32px;background:#f5f7fb}.tenant-panel{max-width:1080px;margin:0 auto}.tenant-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.tenant-header h1{margin:0 0 8px;font-size:24px}.tenant-header p{margin:0;color:#6b7280}.tenant-card{cursor:pointer;border-radius:8px}.tenant-name{margin-bottom:8px;font-size:18px;font-weight:700}.tenant-code{color:#6b7280}.permission-list{display:grid;grid-template-columns:1fr;gap:14px}.permission-list .el-checkbox{width:100%;margin-right:0}.permission-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:14px;align-items:start;margin-top:12px;min-height:430px}.permission-nav{display:grid;align-content:start;gap:6px;max-height:62vh;overflow:auto;padding:8px;border:1px solid #dbe7f0;border-radius:8px;background:#f8fafc}.permission-nav__item{display:grid;gap:3px;width:100%;padding:10px 12px;border:1px solid transparent;border-radius:6px;background:transparent;color:#1f2937;cursor:pointer;text-align:left}.permission-nav__item span{color:#64748b;font-size:12px}.permission-nav__item.is-active{border-color:#0f766e;background:#e9f8f4;color:#0f766e}.permission-tree{max-height:62vh;overflow:auto}.permission-menu{display:grid;gap:10px;align-content:start;padding:14px;border:1px solid #e5edf4;border-radius:8px;background:#f8fafc}.permission-menu__head{display:flex;align-items:center;justify-content:space-between;gap:10px}.permission-menu__head div{display:grid;gap:3px}.permission-menu__head span,.permission-flat-list small{color:#64748b}.permission-flat-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:8px}.permission-flat-list .el-checkbox{min-height:48px}.permission-flat-list .el-checkbox__label{display:inline-grid;grid-template-columns:auto 1fr;gap:2px;line-height:1.3;white-space:normal}.permission-flat-list small{grid-column:2;font-size:12px}.permission-kind{align-self:start;padding:2px 6px;border-radius:999px;background:#e0f2fe;color:#0369a1;font-size:12px}.permission-name{margin-right:8px;font-weight:600}@media(max-width:768px){.permission-layout{grid-template-columns:1fr}.permission-nav{max-height:220px}}.full-width{width:100%}@media(min-width:769px){.app-shell,.app-shell>.el-container,.app-sidebar{height:100vh;min-height:100vh}.app-shell>.el-container{min-width:0}.app-header{flex:0 0 62px}.app-main{height:calc(100vh - 62px);overflow:auto}}@media(max-width:768px){.app-shell{min-height:100dvh}.app-sidebar{position:fixed;inset:0 auto 0 0;z-index:1002;width:220px!important;transform:translate(-100%);box-shadow:12px 0 30px #0f172a2e}.app-sidebar.is-mobile-open{transform:translate(0)}.sidebar-mask{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1001;background:#0f172a59}.app-header{min-height:56px;height:auto;padding:8px 12px;gap:8px}.header-left{min-width:0;gap:8px}.header-left span{overflow:hidden;font-size:15px;text-overflow:ellipsis;white-space:nowrap}.header-actions{flex-wrap:wrap;justify-content:flex-end;gap:4px}.app-main{padding:12px}.page-title{margin-bottom:12px;font-size:20px}.page-toolbar{align-items:flex-start;flex-direction:column;gap:10px;margin-bottom:12px}.toolbar-actions{width:100%;flex-wrap:wrap}.el-table{font-size:13px}.el-dialog{width:calc(100vw - 24px)!important;margin-top:8vh!important}.el-dialog__body{max-height:68vh;overflow:auto}.tenant-page{min-height:100dvh;padding:16px}.tenant-header{align-items:flex-start;flex-direction:column;gap:12px}.tenant-header h1{font-size:22px}}@media(max-width:480px){.login-panel{padding:22px 18px}.header-actions .el-button{padding:4px 6px}.el-message-box{width:calc(100vw - 24px)!important}}:root{--platform-nav: #202c39;--platform-bg: #eef2f5;--platform-border: #d7e0e7;--platform-muted: #586979;--platform-text: #1d2b3a;--platform-accent: #087da3;--mes-canvas: #eef2f5;--mes-surface: #ffffff;--mes-surface-subtle: #f6f8fa;--mes-surface-raised: #ffffff;--mes-border: #d7e0e7;--mes-border-subtle: #e6ebf0;--mes-text: #1d2b3a;--mes-text-secondary: #405365;--mes-text-muted: #617181;--mes-accent: #087da3;--mes-accent-strong: #056584;--mes-accent-soft: #e5f3f8;--mes-success: #17805d;--mes-success-soft: #e7f5ef;--mes-warning: #a86513;--mes-warning-soft: #fbf0df;--mes-danger: #b53c42;--mes-danger-soft: #fbeaec;--mes-info: #516e8a;--mes-info-soft: #eaf0f5;--mes-radius-sm: 5px;--mes-radius-md: 8px;--mes-radius-lg: 12px;--mes-shadow-sm: 0 1px 2px rgb(24 39 56 / 7%);--mes-shadow-md: 0 10px 28px rgb(24 39 56 / 9%);--mes-shadow-lg: 0 24px 64px rgb(24 39 56 / 16%);--el-color-primary: #057ca9;--el-color-primary-light-3: #509fc0;--el-color-primary-light-5: #82bdd4;--el-color-primary-light-7: #b4d8e5;--el-color-primary-light-8: #cde5ee;--el-color-primary-light-9: #e6f2f7;--el-color-primary-dark-2: #046387;--el-border-color: #bac6d2;--el-border-color-light: #dce3ea;--el-text-color-primary: #233044;--el-text-color-regular: #334255;--el-text-color-secondary: #5e6d7e;--el-border-radius-base: 4px;--el-font-family: "Microsoft YaHei UI", "Microsoft YaHei", "PingFang SC", sans-serif}body{font-family:var(--el-font-family);background:var(--platform-bg);color:var(--platform-text)}button,input,select,textarea{font:inherit}::selection{background:#c6e7f4}:focus-visible{outline:2px solid var(--platform-accent);outline-offset:3px}.platform-shell{display:grid;grid-template-columns:216px minmax(0,1fr);grid-template-rows:60px minmax(0,1fr);height:100dvh;overflow:hidden}.platform-shell.sidebar-collapsed{grid-template-columns:64px minmax(0,1fr)}.platform-topbar{grid-column:1 / -1;display:flex;align-items:center;gap:22px;min-width:0;padding:0 20px;background:var(--platform-nav);color:#fff}.platform-brand{white-space:nowrap;font-size:19px;font-weight:650;flex-shrink:0}.service-navigation{display:flex;align-items:center;gap:6px;min-width:0;overflow-x:auto;scrollbar-width:thin}.service-navigation a{display:flex;align-items:center;gap:8px;padding:0 14px;height:40px;flex-shrink:0;white-space:nowrap;border-radius:4px;color:#b9c7d4;text-decoration:none;position:relative}.service-navigation a:hover{color:#fff;background:#304253}.service-navigation a.selected{color:#fff;background:#164c65}.service-navigation a.selected:after{content:"";position:absolute;bottom:0;left:14px;right:14px;height:2px;background:#48c4ed}.platform-utilities{margin-left:auto;display:flex;align-items:center;gap:12px;flex-shrink:0}.shell-icon-button,.shell-account{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:36px;height:36px;padding:0 8px;border:1px solid #465664;border-radius:4px;background:transparent;color:#c4d1dd;cursor:pointer}.shell-icon-button:hover,.shell-account:hover{background:#304253;color:#fff}.shell-account{border:0}.shell-account>.el-icon{font-size:20px}.shell-account>.account-arrow{font-size:16px}.shell-account span{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.service-sidebar{background:var(--platform-nav);color:#b9c7d4;display:flex;flex-direction:column;min-height:0;padding:0 10px 16px;overflow-y:auto;scrollbar-width:thin}.sidebar-section-title{display:flex;justify-content:space-between;align-items:center;min-height:56px;padding:10px;font-size:13px;font-weight:600}.sidebar-section-title .shell-icon-button{min-width:28px;height:28px;padding:0;border:0}.sidebar-section-title.service-title{margin-top:18px;border-top:1px solid #3d4b59}.sidebar-links a{display:flex;align-items:center;gap:12px;min-height:40px;padding:9px 14px;margin:3px 0;color:#b9c7d4;border-radius:4px;text-decoration:none;font-size:14px}.sidebar-links a:hover{background:#304253;color:#fff}.sidebar-links a.selected{background:#12647f;color:#fff}.sidebar-links .el-icon{font-size:17px;flex-shrink:0}.sidebar-group-title{font-size:12px;color:#a0b1c1;margin:14px 14px 8px}.service-page-links{flex:1}.sidebar-search{display:flex;gap:10px;justify-content:center;align-items:center;margin:28px 10px 0;min-height:36px;border:1px solid #465664;border-radius:4px;color:#c4d1dd;background:#293b4c;cursor:pointer}.service-sidebar.collapsed .sidebar-section-title span,.service-sidebar.collapsed .sidebar-links span,.service-sidebar.collapsed .sidebar-group-title,.service-sidebar.collapsed .sidebar-search span{display:none}.service-sidebar.collapsed .sidebar-links a{padding:12px;justify-content:center}.service-sidebar.collapsed .sidebar-search{margin-left:0;margin-right:0}.platform-main{min-width:0;overflow:auto;padding:24px clamp(20px,2vw,36px) 36px;scrollbar-width:thin;background:var(--mes-canvas)}.platform-breadcrumb{display:flex;gap:10px;align-items:center;font-size:12px;color:var(--platform-muted);margin-bottom:20px}.platform-breadcrumb span:last-child{color:#334354}.skip-link{position:fixed;top:-60px;left:20px;z-index:5000;padding:12px;background:#fff;color:#046387}.skip-link:focus{top:12px}.mobile-nav-toggle,.platform-sidebar-mask{display:none}.page-search-results{display:flex;flex-direction:column;max-height:52vh;overflow:auto;margin-top:20px}.page-search-results button{display:flex;flex-direction:column;gap:6px;border:0;border-bottom:1px solid var(--platform-border);background:#fff;padding:14px 8px;text-align:left;cursor:pointer;color:var(--platform-text)}.page-search-results button:hover{background:#edf6fb}.page-search-results span{color:var(--platform-muted);font-size:13px}.platform-shell .platform-main :is(.page,.flow-page,.maintenance-page,.device-map-page,.cockpit-page){min-width:0;width:100%;padding:0}.platform-shell .platform-main :is(.page-toolbar,.ops-header,.device-header,.flow-page__head,.page-header){background:transparent;background-image:none;box-shadow:none;border:0;border-radius:0;padding:0;margin-bottom:22px;gap:20px;flex-wrap:wrap;color:var(--platform-text)}.platform-shell .platform-main :is(.page-title,.page-header h1,.ops-header h1,.device-header h1,.flow-page__head h1){color:var(--platform-text);font-size:24px;font-weight:650;margin:0 0 8px;line-height:1.4}.platform-shell .platform-main :is(.page-subtitle,.page-header p,.device-header p,.ops-header p){color:var(--platform-muted);font-size:13px;margin:0}.platform-shell .platform-main .toolbar-actions{flex-wrap:wrap;gap:10px}.platform-main .el-card{border:0;box-shadow:var(--mes-shadow-sm),var(--mes-shadow-md);background:var(--mes-surface);border-radius:var(--mes-radius-lg);overflow:hidden}.platform-main .el-card__header{padding:17px 20px;border-bottom:1px solid var(--mes-border-subtle);background:var(--mes-surface-subtle)}.platform-main .el-card__body{padding:20px}.platform-main .flow-panel{border:0;border-radius:var(--mes-radius-lg);padding:20px;background:var(--mes-surface);box-shadow:var(--mes-shadow-sm),var(--mes-shadow-md)}.platform-shell .platform-main .el-button{border-radius:4px;font-weight:500}.platform-shell .platform-main .el-button--primary:not(.is-link):not(.is-text):not(.is-plain){--el-button-bg-color: #057ca9;--el-button-border-color: #057ca9;--el-button-hover-bg-color: #046387;--el-button-hover-border-color: #046387}:is(.flow-actions,.toolbar-actions,.header-actions,.dialog-footer,.device-card-actions,.board-actions) .el-button+.el-button{margin-left:0}.platform-main .el-table{--el-table-header-bg-color: #e9eff3;--el-table-header-text-color: #34495c;--el-table-row-hover-bg-color: #eaf5f8;--el-table-border-color: var(--mes-border-subtle);--el-table-text-color: var(--mes-text-secondary);border-radius:0;font-variant-numeric:tabular-nums}.platform-main .el-table th.el-table__cell{height:46px;padding-block:9px;font-size:13px;font-weight:650}.platform-main .el-table td.el-table__cell{height:46px;padding-block:8px}.platform-main .el-table .cell{padding:0 16px}.platform-main .el-table__body tr:nth-child(2n)>td.el-table__cell{background:#f9fbfc}.platform-main .pager{display:flex;justify-content:flex-end;padding:16px 0 0;border-top:1px solid var(--platform-border);margin-top:16px}.platform-main .el-pagination{flex-wrap:wrap;row-gap:10px}.platform-main .service-section-tabs>.el-tabs__header{display:none}.platform-shell .platform-main .page-toolbar>div:first-child,.platform-shell .platform-main .page-header>div:first-child,.platform-shell .platform-main .device-header>div:first-child,.platform-shell .platform-main .ops-header>div:first-child{min-width:min(100%,320px)}.platform-shell .platform-main .page-title,.platform-shell .platform-main :is(.page-header,.device-header,.ops-header) h1{letter-spacing:-.018em}.platform-shell .platform-main .page-subtitle,.platform-shell .platform-main :is(.page-header,.device-header,.ops-header) p{max-width:72ch;line-height:1.65}.platform-shell .platform-main .toolbar-actions{padding:8px;border:1px solid var(--mes-border);border-radius:var(--mes-radius-md);background:#ffffffd1;box-shadow:var(--mes-shadow-sm)}.platform-shell .platform-main .toolbar-actions:empty{display:none}.platform-shell .platform-main :is(.summary-grid,.device-summary-grid){gap:14px;margin-bottom:20px}.platform-shell .platform-main :is(.summary-tile,.summary-card){position:relative;min-height:88px;padding:15px 17px;overflow:hidden;border:0;border-radius:var(--mes-radius-md);background:var(--mes-surface);box-shadow:var(--mes-shadow-sm),0 6px 18px #1827380f;color:var(--mes-text);transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease}.platform-shell .platform-main button.summary-tile:hover,.platform-shell .platform-main button.summary-card:hover{transform:translateY(-1px);box-shadow:var(--mes-shadow-sm),0 12px 28px #1827381a}.platform-shell .platform-main :is(.summary-tile,.summary-card).active,.platform-shell .platform-main :is(.summary-tile,.summary-card).online,.platform-shell .platform-main :is(.summary-tile,.summary-card).running{background:color-mix(in srgb,var(--mes-success) 5%,#ffffff)}.platform-shell .platform-main :is(.summary-tile,.summary-card).warning{background:color-mix(in srgb,var(--mes-warning) 6%,#ffffff)}.platform-shell .platform-main :is(.summary-tile,.summary-card).danger,.platform-shell .platform-main :is(.summary-tile,.summary-card).alarm{background:color-mix(in srgb,var(--mes-danger) 5%,#ffffff)}.platform-shell .platform-main :is(.summary-tile,.summary-card) span{color:var(--mes-text-muted);line-height:1.4}.platform-shell .platform-main :is(.summary-tile,.summary-card) strong{color:var(--mes-text);font-variant-numeric:tabular-nums;letter-spacing:-.025em}.platform-shell .platform-main :is(.table-panel,.route-panel){border:0;border-radius:var(--mes-radius-lg);background:var(--mes-surface);box-shadow:var(--mes-shadow-sm),var(--mes-shadow-md)}.platform-shell .platform-main .table-panel.el-card>.el-card__body{padding:0}.platform-shell .platform-main .table-panel:not(.el-card){padding:20px}.platform-shell .platform-main .business-table{border:0;background:var(--mes-surface)}.platform-shell .platform-main .business-table-tools{min-height:52px;padding:8px 14px;border-bottom:1px solid var(--mes-border-subtle);background:var(--mes-surface-subtle)}.platform-shell .platform-main :is(.filters,.filter-panel,.filter-bar){gap:10px;padding:12px;border:1px solid var(--mes-border);border-radius:var(--mes-radius-md);background:var(--mes-surface);box-shadow:var(--mes-shadow-sm)}.platform-shell .platform-main :is(.scan-console,.measurement-panel){border:0;border-radius:var(--mes-radius-lg);background:var(--mes-surface);box-shadow:var(--mes-shadow-sm),var(--mes-shadow-md)}.platform-shell .platform-main :is(.scan-console__head,.panel-heading) strong{color:var(--mes-text);font-size:14px}.platform-shell .platform-main .el-input__wrapper,.platform-shell .platform-main .el-select__wrapper,.platform-shell .platform-main .el-textarea__inner,.platform-shell .platform-main .el-input-number .el-input__wrapper{border:1px solid #b9c7d2;background:#fff;box-shadow:none;transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease}.platform-shell .platform-main :is(.el-input__wrapper,.el-select__wrapper):hover,.platform-shell .platform-main .el-textarea__inner:hover{border-color:#8196a7}.platform-shell .platform-main .el-input__wrapper.is-focus,.platform-shell .platform-main .el-select__wrapper.is-focused,.platform-shell .platform-main .el-textarea__inner:focus{border-color:var(--mes-accent);box-shadow:0 0 0 3px #087da31f}.platform-shell .platform-main .el-button:not(.is-link):not(.is-text){min-height:36px;padding-inline:14px;border-color:#b7c5d0;background:#fff;color:#30465a;box-shadow:0 1px 1px #1827380a}.platform-shell .platform-main .el-button:not(.is-link):not(.is-text):hover{border-color:var(--mes-accent);background:var(--mes-accent-soft);color:var(--mes-accent-strong)}.platform-shell .platform-main .el-button--primary:not(.is-link):not(.is-text):not(.is-plain){border-color:var(--mes-accent);background:var(--mes-accent);color:#fff;box-shadow:0 5px 14px #087da32e}.platform-shell .platform-main .el-button--primary:not(.is-link):not(.is-text):not(.is-plain):hover{border-color:var(--mes-accent-strong);background:var(--mes-accent-strong);color:#fff}.platform-shell .platform-main .el-tag{border-radius:4px;font-weight:600}.platform-shell .platform-main .el-empty{padding-block:42px}.platform-shell .platform-main .el-empty__description p,.platform-shell .platform-main .el-table__empty-text{color:var(--mes-text-muted)}.platform-shell .platform-main :is(.pager,.inventory-panel-pager){min-height:58px;margin:0;padding:11px 14px;border-top:1px solid var(--mes-border-subtle);background:var(--mes-surface-subtle)}.platform-shell .platform-main .el-pagination.is-background .btn-next,.platform-shell .platform-main .el-pagination.is-background .btn-prev,.platform-shell .platform-main .el-pagination.is-background .el-pager li{border:1px solid transparent;background:#fff}.platform-shell .platform-main .el-pagination.is-background .el-pager li.is-active{border-color:var(--mes-accent);background:var(--mes-accent);color:#fff}.platform-shell .platform-main :is(.strong-text,.el-table strong){color:var(--mes-text)}.platform-shell .platform-main :is(.muted-text,.empty-hint){color:var(--mes-text-muted);line-height:1.55}.platform-shell .platform-main ::-webkit-scrollbar{width:9px;height:9px}.platform-shell .platform-main ::-webkit-scrollbar-track{background:#e9eef2}.platform-shell .platform-main ::-webkit-scrollbar-thumb{border:2px solid #e9eef2;border-radius:999px;background:#91a2b0}.record-count{color:var(--platform-muted);font-size:13px}.platform-shell .mes-devices-page .device-filter-group{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.platform-shell .platform-main .mes-devices-page{background:transparent}.platform-shell .mes-devices-page .device-header>div:first-child{flex:1 1 340px;min-width:0}.platform-shell .mes-devices-page .device-header .device-filter-group{flex:0 1 auto}.platform-shell .mes-devices-page .device-header .el-button--primary span{color:#fff}.platform-shell .mes-devices-page .device-header :is(.el-input__wrapper,.el-select__wrapper){box-shadow:0 0 0 1px var(--el-border-color) inset}.platform-shell .mes-devices-page .device-header span{color:var(--platform-muted)}.platform-shell .mes-devices-page .device-filter-group .el-button+.el-button{margin-left:0}.platform-shell .mes-devices-page .device-summary-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin-bottom:24px}.platform-shell .mes-devices-page .summary-card{background:#fff;border:0;border-radius:var(--mes-radius-md);padding:18px 20px;box-shadow:var(--mes-shadow-sm),0 6px 18px #1827380f}.platform-shell .mes-devices-page .summary-card strong{font-size:28px}.platform-shell .mes-devices-page .device-workbench{grid-template-columns:minmax(0,1fr) 300px;gap:24px}.platform-shell .mes-devices-page .device-card-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,440px),1fr));gap:16px}.platform-shell .mes-devices-page .device-card{background:#fff;padding:20px;border:1px solid var(--mes-border-subtle);border-radius:var(--mes-radius-lg);box-shadow:var(--mes-shadow-sm),0 8px 24px #18273812;min-height:0}.platform-shell .mes-devices-page .device-card.selected{border-color:#057ca9;box-shadow:inset 0 0 0 1px #057ca9,0 12px 28px #087da31f}.platform-shell .mes-devices-page .device-collection-tags{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:20px 0}.platform-shell .mes-devices-page .device-point-chip{display:flex;flex-direction:column;justify-content:center;gap:8px;padding:12px 14px;min-height:72px;background:#f5f8fb;border:1px solid #e0e8ef;border-radius:4px}.platform-shell .mes-devices-page .device-point-chip em{color:#5e6d7e;font-size:12px;font-style:normal}.platform-shell .mes-devices-page .device-point-chip b{font-size:20px;color:#4f657d;font-variant-numeric:tabular-nums}.platform-shell .mes-devices-page .device-point-chip.pressure b{color:#087c83}.platform-shell .mes-devices-page .device-point-chip.frequency b{color:#2765ad}.platform-shell .mes-devices-page .device-point-chip.electrical b{color:#6955a4}.platform-shell .mes-devices-page .device-point-chip.power b{color:#9b6319}.platform-shell .mes-devices-page .device-point-chip.speed b{color:#237547}.platform-shell .mes-devices-page .device-point-chip.temperature b{color:#a74e20}.platform-shell .mes-devices-page .device-point-chip.info b{color:#738397}.platform-shell .mes-devices-page .device-point-chip.danger{border-color:#df9a9a;background:#fff4f4}.platform-shell .mes-devices-page .device-point-chip.danger b{color:#bb3434}.platform-shell .mes-devices-page .device-card-actions{flex-direction:column;align-items:stretch;gap:14px}.platform-shell .mes-devices-page .device-card-actions>div{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:14px}.device-list-state{display:inline-flex;align-items:center;gap:8px}.message-device-filter{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:20px}.message-device-filter .el-select{width:300px;max-width:100%}.device-list-state i{width:8px;height:8px;border-radius:50%;background:#8997a6}.device-list-state.running i{background:#17825c}.device-list-state.alarm i{background:#c54141}.device-list-state.idle i{background:#b68124}.device-list-state.maintenance i{background:#7662a5}.platform-shell .mes-devices-page .board-actions{flex-wrap:wrap;gap:8px}.platform-shell .mes-devices-page .device-light{flex-shrink:0}.platform-shell .mes-devices-page .device-card.running .device-light{background:#17825c}.platform-shell .mes-devices-page .device-card.alarm .device-light{background:#c54141}.platform-shell .mes-devices-page .device-card.offline .device-light{background:#8997a6}.platform-shell .platform-main .service-section-tabs>.el-tabs__content{padding:18px}.platform-shell .platform-main .mes-inventory-page{min-width:0}.platform-shell .platform-main .mes-inventory-page .inventory-master-detail{grid-template-columns:minmax(330px,1fr) minmax(300px,.9fr) minmax(560px,2fr);gap:14px;min-height:0}.platform-shell .platform-main .mes-inventory-page :is(.inventory-master-panel,.inventory-location-panel,.inventory-detail-panel){border:1px solid var(--mes-border);border-radius:var(--mes-radius-md);background:var(--mes-surface);box-shadow:var(--mes-shadow-sm)}.platform-shell .platform-main .mes-inventory-page .inventory-panel-head{min-height:64px;padding:11px 14px;border-bottom:1px solid var(--mes-border-subtle);background:#f4f7f9}.platform-shell .platform-main .mes-inventory-page .inventory-panel-head strong{color:var(--mes-text);font-size:14px}.platform-shell .platform-main .mes-inventory-page .inventory-panel-head span{color:var(--mes-text-muted);line-height:1.45}.platform-shell .platform-main .mes-inventory-page :is(.inventory-master-panel,.inventory-location-panel) .el-table .cell{padding-inline:11px}.platform-shell .platform-main .mes-inventory-page :is(.inventory-item-row--selected,.inventory-location-row--selected) td.el-table__cell{background:var(--mes-accent-soft)!important}.platform-shell .platform-main .mes-inventory-page :is(.inventory-item-row--selected,.inventory-location-row--selected) td.el-table__cell:first-child{box-shadow:inset 3px 0 var(--mes-accent)}.platform-shell .platform-main .mes-inventory-page .scan-console{padding:16px 18px;margin-bottom:16px}.platform-shell .platform-main .mes-inventory-page .recent-batches button{border-color:var(--mes-border);border-radius:5px;background:var(--mes-surface-subtle);color:var(--mes-text-secondary)}.platform-shell .platform-main .mes-inventory-page .recent-batches button:hover{border-color:var(--mes-accent);background:var(--mes-accent-soft);color:var(--mes-accent-strong)}.platform-shell .cockpit-page.is-analysis .cockpit-grid{grid-template-columns:minmax(0,2fr) minmax(300px,1fr)}.platform-shell .cockpit-page.is-analysis .work-order-panel{display:none}.route-panel{padding:20px;background:#fff;border:0;border-radius:var(--mes-radius-lg);box-shadow:var(--mes-shadow-sm),var(--mes-shadow-md);min-width:0}.route-panel-footer{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.el-select__wrapper{min-height:36px;padding:7px 12px;border-radius:4px}.el-select .el-select__caret{width:16px;height:16px;font-size:16px;color:#5e6d7e}.el-select .el-select__suffix{gap:8px;margin-left:8px}.el-select__wrapper.is-disabled .el-select__caret{color:#828e9b}.el-select--small .el-select__wrapper{min-height:32px}.el-input__wrapper{min-height:36px;border-radius:4px}.el-dialog{--el-dialog-padding-primary: 24px;border:0;border-radius:var(--mes-radius-lg);max-width:calc(100vw - 32px);overflow:hidden;box-shadow:var(--mes-shadow-lg)}.el-dialog .el-dialog__header{padding:22px 24px 18px;margin:-24px -24px 24px;border-bottom:1px solid var(--platform-border);background:var(--mes-surface-subtle)}.el-dialog .el-dialog__title{font-size:18px;font-weight:600}.el-dialog .el-dialog__body{overflow-wrap:anywhere}.el-dialog :is(.el-input__wrapper,.el-select__wrapper,.el-textarea__inner){border:1px solid #b9c7d2;background:#fff;box-shadow:none}.el-dialog :is(.el-input__wrapper,.el-select__wrapper):hover,.el-dialog .el-textarea__inner:hover{border-color:#8196a7}.el-dialog .el-input__wrapper.is-focus,.el-dialog .el-select__wrapper.is-focused,.el-dialog .el-textarea__inner:focus{border-color:var(--mes-accent);box-shadow:0 0 0 3px #087da31f}.el-dialog .el-dialog__headerbtn{top:12px;right:14px;width:42px;height:42px;border-radius:6px}.el-dialog .el-dialog__headerbtn:hover{background:#e8eef2}.el-dialog .el-dialog__footer{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:10px;border-top:1px solid var(--platform-border);margin:24px -24px -24px;padding:16px 24px;background:var(--mes-surface-subtle)}.el-dialog :is(.el-form-item,.mes-dialog-form .el-form-item){margin-bottom:22px}.el-form--label-top .el-form-item__label{padding:0;margin-bottom:8px;line-height:20px}.el-dialog :is(.el-select,.el-input-number){max-width:100%}.el-drawer .el-drawer__header{margin-bottom:0;padding:24px;border-bottom:1px solid var(--platform-border);background:var(--mes-surface-subtle)}.el-drawer .el-drawer__body{padding:24px;background:#fff}.el-dialog__footer .el-button+.el-button{margin-left:0}.login-page{background:var(--platform-bg)}.login-logo{background:var(--platform-nav)}@media(max-width:1500px){.platform-topbar{gap:14px;padding:0 16px}.platform-brand{font-size:16px}.service-navigation a{padding:0 10px;gap:6px}.shell-account span{display:none}.platform-shell .platform-main .mes-inventory-page .inventory-master-detail{grid-template-columns:minmax(300px,1fr) minmax(280px,1fr)}.platform-shell .platform-main .mes-inventory-page .inventory-detail-panel{grid-column:1 / -1}}@media(max-width:1100px){.platform-brand{display:none}.platform-main .flow-grid,.platform-shell .mes-devices-page .device-workbench,.platform-shell .cockpit-page.is-analysis .cockpit-grid{grid-template-columns:minmax(0,1fr)}.platform-shell .platform-main .cockpit-page:not(.is-fullscreen){min-width:0;overflow:visible}.platform-shell .platform-main .cockpit-page:not(.is-fullscreen) .cockpit-grid{grid-template-columns:minmax(0,1fr)}.platform-shell .platform-main .cockpit-page:not(.is-fullscreen) .metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.platform-shell .platform-main :is(.bom-workbench,.route-workbench,.inventory-master-detail,.quality-grid){grid-template-columns:minmax(0,1fr)}.platform-shell .platform-main .mes-inventory-page .inventory-detail-panel{grid-column:auto}.platform-shell .platform-main :is(.bom-detail-panel,.route-detail-panel){min-width:0}}@media(max-width:760px){.platform-shell,.platform-shell.sidebar-collapsed{grid-template-columns:minmax(0,1fr);grid-template-rows:56px minmax(0,1fr)}.platform-topbar{gap:8px;padding:0 10px}.platform-utilities{gap:4px}.platform-utilities>.shell-icon-button{display:none}.mobile-nav-toggle{display:flex;flex-shrink:0;border:0}.service-navigation{flex:1}.service-navigation a{padding:0 10px}.service-navigation .el-icon{display:none}.service-sidebar{position:fixed;top:56px;bottom:0;left:0;width:232px;z-index:1501;transform:translate(-100%)}.sidebar-open .service-sidebar{transform:translate(0)}.platform-sidebar-mask{display:block;position:fixed;top:56px;right:0;bottom:0;left:0;z-index:1500;border:0;background:#15273880}.platform-main{padding:16px 14px 24px}.platform-breadcrumb{margin-bottom:16px}.platform-shell .platform-main :is(.page-toolbar,.ops-header,.device-header,.page-header){align-items:flex-start}.platform-shell .platform-main .toolbar-actions{width:100%}.platform-main .toolbar-actions :is(.el-input,.el-select){max-width:100%}.platform-shell .platform-main :is(.summary-grid,.device-summary-grid){grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.platform-shell .platform-main .cockpit-page:not(.is-fullscreen) .metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.platform-shell .platform-main .cockpit-page:not(.is-fullscreen) .metric-item{border-bottom:1px solid var(--line)}.platform-shell .platform-main :is(.recent-batches,.trace-strip){min-width:0;flex-wrap:wrap;width:100%}.platform-shell .mes-devices-page .device-header .device-filter-group{width:100%;justify-content:flex-start}.platform-shell .mes-devices-page .panel-head{flex-wrap:wrap;gap:12px}.platform-shell .platform-main .flow-toolbar{flex-wrap:wrap}.platform-shell .platform-main :is(.trace-query-row,.business-scan-row){grid-template-columns:minmax(0,1fr)}.platform-main .el-card__body,.platform-main .flow-panel,.route-panel{padding:14px}.el-dialog{--el-dialog-padding-primary: 18px}.el-dialog .el-col{max-width:100%}.el-dialog .el-form .el-col-12{max-width:100%;flex-basis:100%}.el-select__wrapper{min-height:40px}.el-button:not(.is-link):not(.el-button--small){min-height:40px}.shell-account .account-arrow{display:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}@media(max-width:760px){.service-sidebar.collapsed .sidebar-section-title span,.service-sidebar.collapsed .sidebar-links span,.service-sidebar.collapsed .sidebar-group-title,.service-sidebar.collapsed .sidebar-search span{display:block}.service-sidebar.collapsed .sidebar-links a{justify-content:flex-start;padding:10px 12px}.service-sidebar .sidebar-section-title .shell-icon-button{display:none}}@media(max-width:760px){.service-navigation{scrollbar-width:none}.service-navigation::-webkit-scrollbar{display:none}}.platform-shell .platform-main :is(.bom-workbench,.route-workbench){grid-template-columns:320px minmax(0,1fr);gap:24px}.platform-shell .platform-main .flow-grid{gap:24px}.platform-shell .platform-main .quality-grid{grid-template-columns:minmax(0,1fr)}.platform-shell .platform-main .operation-context .flow-muted{margin:8px 0 0}.platform-shell .platform-main .operation-actions .el-button.is-link{padding:10px 14px;border:1px solid var(--platform-border)}.platform-shell .platform-main .operation-actions .el-button--primary{background:var(--platform-accent);border-color:var(--platform-accent);color:#fff}@media(max-width:1100px){.platform-shell .platform-main :is(.bom-workbench,.route-workbench){grid-template-columns:minmax(0,1fr)}}@media(max-width:1100px){.platform-shell .platform-main .dispatch-workbench{grid-template-columns:minmax(0,1fr)}.platform-shell .platform-main .dispatch-orders{min-height:0;border-right:0;padding-right:0;padding-bottom:16px;border-bottom:1px solid var(--platform-border)}}body .el-dialog{--el-dialog-padding-primary: 24px;--el-dialog-margin-top: 32px;display:flex;flex-direction:column;max-height:calc(100dvh - 64px)}body .el-dialog__header,body .el-dialog__footer{flex-shrink:0}body .el-dialog__body{min-height:0;min-width:0;overflow:auto}body :is(.el-dialog__body,.el-drawer__body) :is(.el-form,.el-form-item,.el-form-item__content){min-width:0;max-width:100%}body :is(.el-dialog__body,.el-drawer__body) .el-form>.el-row{margin-inline:0!important}body :is(.el-dialog,.el-drawer) :is(.el-input__wrapper,.el-select__wrapper){min-height:36px}body :is(.el-dialog,.el-drawer) .el-button:not(.is-link):not(.is-text):not(.el-button--small){min-height:36px}body :is(.el-dialog,.el-drawer) .el-table{--el-table-header-bg-color: #edf2f6;--el-table-header-text-color: #4c5d70;--el-table-row-hover-bg-color: #eef7fb;--el-table-border-color: #e6ecf1;font-variant-numeric:tabular-nums}body :is(.el-dialog,.el-drawer) .el-table th.el-table__cell{height:44px}body .el-drawer{max-width:100vw;max-height:100dvh}body .el-drawer__body{min-width:0;overflow:auto;overflow-wrap:anywhere}body .el-drawer__footer{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}body .el-drawer__footer .el-button+.el-button{margin-left:0}body .el-select__wrapper,body .el-input__wrapper{min-height:36px}.record-detail-name{margin:0 0 20px;font-size:18px;line-height:1.5}@media(max-width:760px){body .el-dialog{--el-dialog-padding-primary: 18px;--el-dialog-margin-top: 16px;max-height:calc(100dvh - 32px)}body .el-drawer .el-col-12{max-width:100%;flex-basis:100%}body .el-select__wrapper{min-height:40px}body :is(.el-dialog,.el-drawer) :is(.el-input__wrapper,.el-select__wrapper),body :is(.el-dialog,.el-drawer) .el-button:not(.is-link):not(.is-text):not(.el-button--small){min-height:40px}}
