@import url(//fonts.googleapis.com/earlyaccess/notosanstc.css);body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue","Noto Sans TC",sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,"Courier New",monospace}:root{--sider-header:64px;--sider-footer:48px}.layout-header{padding:0;background:#fff;border-bottom:1px solid #f0f2f4;width:100%;z-index:999;position:fixed}.layout-header-content{display:flex;flex-direction:row;justify-content:flex-start;height:100%;align-items:center}.layout-header-app-release{position:fixed;top:0;right:72px}.layout-header-license-expiration-alert{position:fixed;top:0;right:120px}.header-btn-container{height:64px;line-height:64px}.header-btn,.header-btn-container{display:flex;justify-content:center;align-items:center;width:32px}.header-btn{height:32px;border-radius:50%}.header-btn:hover{background:rgba(0,0,0,.1)}.layout-header-app-switcher{position:fixed;top:0;right:24px}.app-switcher-popover.ant-popover{line-height:0}.app-switcher-popover .ant-popover-arrow{display:none}.app-switcher-popover .ant-popover-inner-content{padding:0}.app-switcher-popover{position:fixed}.layout-header-app-switcher-btn:hover{background:rgba(0,0,0,.1)}.layout-sider{height:100vh;overflow:hidden hidden;position:fixed;left:0}.layout-content{height:100%;min-height:calc(100vh - 112px);padding:24px;margin:88px 16px 24px;overflow:auto;background:#fff}.sider-header{color:#fff;cursor:pointer}.sider-menu{height:calc(100vh - 128px);height:calc(100vh - var(--sider-header) - var(--sider-footer) - 16px);margin-top:18px}.sider-footer{background:#001529;height:48px;height:var(--sider-footer);line-height:48px;line-height:var(--sider-footer);color:hsla(0,0%,100%,.65);padding:0 16px;cursor:pointer}.sider-footer:hover{background:hsla(0,0%,100%,.3)}.sider-user-div{width:100%;height:48px;line-height:48px}.sider-user-div,.sider-user-logo{display:flex;align-items:center;justify-content:center}.sider-user-logo{width:25px;height:100%;line-height:25px;border-radius:50%;text-align:center}.sider-user-text{width:calc(100% - 35px);height:48px;overflow:hidden;margin-left:10px}.collapse-trigger{font-size:20px;padding:0 24px}.collapse-trigger:hover{color:#1890ff}.layout-header-app-release,.user-popover-content,.user-popover-content.account,.user-popover-content.signout{cursor:pointer}.user-popover-content.account:hover,.user-popover-content.signout:hover,.user-popover-content.switch:hover{color:#000}.current-tenant{background:orange}.current-tenant,.other-tenant{color:#fff;border-radius:3px;width:60px;display:flex;justify-content:center;align-items:center}.other-tenant{background:#d3d3d3;cursor:pointer}.other-tenant:hover{opacity:.6}.ant-breadcrumb-link:hover{color:#1890ff}.mask{-webkit-mask-image:linear-gradient(0deg,transparent -1%,#fff 10%);mask-image:linear-gradient(0deg,transparent -1%,#fff 10%)}.ant-menu-item,.current-tenant,.layout-header-breadcrumb,.layout-sider,.modal-title,.other-tenant,.user-popover-content.signout,.user-popover-content.switch{-webkit-touch-callout:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}@media (max-width:576px) and (orientation:portrait){.app-switcher{width:100vw;height:calc(100vh - 64px)}}@media (min-width:577px) and (orientation:portrait){.app-switcher{width:336px;height:500px}}@media (max-height:576px) and (orientation:landscape){.app-switcher{width:336px;height:calc(100vh - 64px)}}@media (min-height:577px) and (orientation:landscape){.app-switcher{width:336px;height:500px}}.edit-icon{margin-left:12px;cursor:pointer}.edit-icon:hover{font-size:16px;cursor:pointer}.tenant-tag{margin-left:10px;margin-right:10px;cursor:pointer}.tenant-tag:hover{-webkit-animation:tim 1s ease-in-out infinite;animation:tim 1s ease-in-out infinite;cursor:pointer;color:#1890ff;background:#e6f7ff;border-color:#91d5ff}@-webkit-keyframes tim{0%{-webkit-transform:scale(1);transform:scale(1)}25%{-webkit-transform:scale(1.1);transform:scale(1.1)}50%{-webkit-transform:scale(1);transform:scale(1)}75%{-webkit-transform:scale(1.1);transform:scale(1.1)}to{-webkit-transform:scale(1);transform:scale(1)}}@keyframes tim{0%{-webkit-transform:scale(1);transform:scale(1)}25%{-webkit-transform:scale(1.1);transform:scale(1.1)}50%{-webkit-transform:scale(1);transform:scale(1)}75%{-webkit-transform:scale(1.1);transform:scale(1.1)}to{-webkit-transform:scale(1);transform:scale(1)}}.ipc-expected-state-editor-view *{cursor:default!important}.ipc-expected-state-editor-edit *{cursor:text!important}.ipc-expected-state-editor-view .monaco-editor .cursors-layer{visibility:hidden}.ipc-expected-state-editor-edit .monaco-editor .cursors-layer{visibility:visible}.ipc-card{height:100%;display:flex;justify-content:flex-start;align-content:flex-start}.card-ipc-sync-btn:hover{width:32px;height:32px}.card-ipc-sync-btn:hover .card-ipc-sync-icon{font-size:18px}.card-ipc-status{width:100%;height:50%;font-size:24px;font-weight:200}.card:hover .card-ipc-status{font-size:25px}.card-ipc-name,.card-ipc-status,.plus-card{display:flex;align-items:center}.card,.plus-card{-webkit-touch-callout:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.card-customer-name,.card-product-name,.card-service-name{width:100%;height:50%;font-size:24px;font-weight:700}.card-product-id,.card-service-id{width:100%;height:50%;font-size:16px;font-weight:200}.card-customer-id,.card-customer-name,.card-product-id,.card-product-name,.card-service-id,.card-service-name,.plus-card{display:flex;align-items:center}.card-customer,.card-product,.card-service{width:100%;overflow-y:auto}.time-range-tag{cursor:pointer}.card,.group-card,.time-range-tag{-webkit-touch-callout:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.group-card{height:100%;display:flex;justify-content:flex-start;flex-flow:row wrap;align-content:flex-start}.plus-card{height:100%;font-size:24px}.plus-card:hover{font-size:28px;background:#fff0f5}.card,.plus-card{width:100%;height:130px;margin:10px;border-radius:10px}.card-customer-name{width:100%;height:46px;font-size:24px;color:#00b5b8;font-weight:700;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.card-customer-name-inactive{color:#d3d3d3;font-weight:400}.card:hover .card-customer-name{font-size:25px}.card-customer-id{width:100%;height:50%;font-size:18px;font-weight:200}.card-customer-id-inactive{color:#d3d3d3}.card:hover .card-customer-id{font-size:19px}.card-customer-id,.card-customer-name,.plus-card{display:flex;align-items:center}.card-title-arrow{padding-left:22px}.card-customer-info{width:100%;height:calc(100vh - 160px);overflow-y:auto}.card,.group-card,.plus-card{-webkit-touch-callout:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.card-service-name{width:100%;height:50%;font-size:24px;font-weight:700;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:#0093e8}.card:hover .card-service-name{font-size:25px}.card-service-id{width:100%;height:50%;font-size:16px;font-weight:200}.card:hover .card-service-id{font-size:17px}.card-service-id,.card-service-name,.plus-card{display:flex;align-items:center}.service-card{height:100%;display:flex;justify-content:flex-start;flex-flow:row wrap;align-content:flex-start}.card,.info-key{-webkit-touch-callout:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.card{width:90%}.card:hover{background:#f0f8ff}.card-product-name{width:100%;height:50%;font-size:24px;font-weight:700;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:#f5a00f}.card:hover .card-product-name{font-size:25px}.card-product-id{width:100%;height:50%;font-size:16px;font-weight:200}.card:hover .card-product-id{font-size:17px}.card-product-id,.card-product-name,.plus-card{display:flex;align-items:center}.product-card{height:100%;display:flex;justify-content:flex-start;flex-flow:row wrap;align-content:flex-start}.card{-webkit-touch-callout:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.detailed-permission-template-editor-view *{cursor:default!important}.detailed-permission-template-editor-view .monaco-editor .cursors-layer{visibility:hidden}.account-card{height:100%;overflow-y:auto;-webkit-touch-callout:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.card{width:100%;height:130px;margin:10px;border-radius:10px}.card-ipc-name{width:100%;height:50%;font-size:28px;color:#00b5b8;font-weight:700;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.card-ipc-device-count{width:100%;height:50%;font-size:18px;font-weight:200}.card:hover .card-ipc-name{font-size:29px}.card:hover .card-ipc-device-count{font-size:19px}.card-ipc-device-count,.card-ipc-name{display:flex;align-items:center}.alert-icon{-webkit-animation:alertBlink .3s steps(5,start) infinite;animation:alertBlink .3s steps(5,start) infinite;color:#e61220}@-webkit-keyframes alertBlink{80%{color:#000}}@keyframes alertBlink{80%{color:#000}}.edge-device-url-input .ant-input:focus,.edge-device-url-input input:hover{outline:0;box-shadow:inherit;-webkit-box-shadow:inherit;border-color:#d1d1d0}.info-key{max-width:200px}.info-value{width:-webkit-fill-available!important}.tree{display:flex;justify-content:flex-start}.tree,.tree-left{height:calc(100vh - 160px)}.tree-left{width:280px;min-width:280px;overflow-y:auto;position:relative}.tree-left-overlay{width:100%;height:100%;background:#fff;position:absolute;top:0;left:0}.tree-right{width:calc(100% - 280px);height:calc(100vh - 160px);display:flex;min-width:570px}.info-key{font-weight:700}.info-value{min-width:350px}.info-button{position:absolute;bottom:12px}.info-panel{width:calc(42vw - 48.96px)}.info-img-device{height:calc(100vh - 662px)}.info-img-factory,.info-img-line,.info-plantFloor{height:calc(100vh - 562px)}.info-img-small{width:90%;height:200px}.info-modify-modal{display:grid;grid-template-columns:40% 60%;grid-gap:12px 0}.info-modify-line-left{grid-column:1/1;line-height:32px}.info-modify-line-right{grid-column:2/auto}.new-modal{display:grid;grid-template-columns:30% 70%;grid-gap:12px 0}.new-line-left{grid-column:1/1;line-height:32px}.new-line-right{grid-column:2/auto}.topology-group-card-container{width:100%;height:100%;display:grid;grid-template-columns:repeat(auto-fill,250px);grid-template-rows:repeat(auto-fill,130px);grid-gap:12px;padding-left:24px;overflow-y:auto}.topology-group-card{border-radius:10px}.topology-group-card:hover{background:#f0f8ff}.topology-group-card-title{font-size:16px;font-weight:200}.topology-group-card:hover .topology-group-card-title{font-size:17px}.topology-group-card-name{font-size:28px;font-weight:700;color:#00b5b8;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.topology-group-card:hover .topology-group-card-name{font-size:29px}@media (max-width:576px){.dashboard{grid-template-columns:1fr;grid-template-rows:repeat(5,minmax(110px,1fr))}.card-content{font-size:2rem}.dashboard-1,.dashboard-2,.dashboard-3,.dashboard-4,.dashboard-5{grid-template-columns:100%;grid-template-rows:30% 70%}.dashboard-app-icons{grid-template-columns:1fr 1fr 1fr 1fr;grid-template-rows:auto}:root{--app-icon-width:40%;--app-text-font-size:20%}}@media (min-width:577px){.dashboard{grid-template-columns:1fr;grid-template-rows:repeat(5,49%)}.card-header{font-size:2rem}.card-content{font-size:5rem}.dashboard-1,.dashboard-2,.dashboard-3,.dashboard-4,.dashboard-5{grid-template-columns:100%;grid-template-rows:20% 80%}.dashboard-app-icons{grid-template-columns:1fr 1fr 1fr;grid-template-rows:auto}:root{--app-icon-width:40%;--app-text-font-size:20%}}@media (min-width:769px){.dashboard{grid-template-columns:repeat(6,1fr);grid-template-rows:1fr 1fr}.dashboard-1{grid-column:1/3;grid-row:1/3}.dashboard-2{grid-column:3/5;grid-row:1/1}.dashboard-3{grid-column:5/7;grid-row:1/1}.dashboard-4{grid-column:3/5;grid-row:2/3}.dashboard-5{grid-column:5/7;grid-row:2/3}.card-header{font-size:1.5rem}.card-content{font-size:5rem}.dashboard-1{grid-template-columns:100%;grid-template-rows:10% 90%}.dashboard-2,.dashboard-3,.dashboard-4,.dashboard-5{grid-template-columns:100%;grid-template-rows:20% 80%}.dashboard-app-icons{grid-template-columns:1fr 1fr 1fr;grid-template-rows:auto}:root{--app-icon-width:45%;--app-text-font-size:22.5%}}.dashboard{display:grid;grid-column-gap:10px;grid-row-gap:10px;height:100%;overflow:auto}.dashboard-1,.dashboard-2,.dashboard-3,.dashboard-4,.dashboard-5{color:#000;border:3px solid #000;border-radius:5px;display:grid;transition:all .3s}.dashboard-2,.dashboard-3,.dashboard-4,.dashboard-5{cursor:pointer}.dashboard-1:hover,.dashboard-2:hover,.dashboard-3:hover,.dashboard-4:hover,.dashboard-5:hover{border:3px solid #000;border-radius:5px;position:relative;z-index:1;box-shadow:0 1px 2px -2px rgba(0,0,0,.16),0 3px 6px 0 rgba(0,0,0,.12),0 5px 12px 4px rgba(0,0,0,.09)}.card-header{font-weight:700}.card-content,.card-header{display:flex;justify-content:center;align-items:center}.card-content{height:100%;min-height:110px;padding:8px 10px 12px}.dashboard-app-icons{display:grid;height:100%;width:100%}.app-icon-container,.app-text-container{display:flex;justify-content:center;align-items:center}.app-text-container{overflow:hidden}.app-text{font-family:monospace;background:hsla(0,0%,93.3%,.9);border:1px dashed grey;border-radius:8px;aspect-ratio:1;font-size:var(--app-text-font-size);display:flex;justify-content:center;align-items:center;color:#a9a9a9;cursor:not-allowed}.app-icon,.app-text{width:var(--app-icon-width)}.app-icon{cursor:pointer}.spreadsheet-outer,.Spreadsheet__table{width:100%}.error-cell,.normal-cell,.Spreadsheet__cell{text-align:center!important}.error-cell{background:red}.schedule-card{display:flex;justify-content:flex-start;flex-flow:row wrap;align-content:flex-start;min-width:550px}.card-schedule-info{width:100%;height:calc(100vh - 160px);overflow-y:auto}.card-title-arrow{margin-right:24px}.card-title-arrow:hover{color:#1890ff}.shift-schedule-icon{cursor:pointer}.shift-schedule-icon:hover{color:#1890ff}.info-key{width:24%;margin-right:3px!important;min-width:175px;font-weight:500}.info-value{width:75%;min-width:320px;-webkit-touch-callout:text;-webkit-user-select:text;-ms-user-select:text;user-select:text}.schedule-card{min-height:calc(100vh - 160px);-webkit-touch-callout:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.cursor-pointer{cursor:pointer}.cursor-default{cursor:default}.fc-day-today{background-color:inherit!important}.fc-header-toolbar{margin-bottom:0!important}.work-shift-schedule .dayHeader-cursor-default *,.work-shift-schedule .slotLane-cursor-default *{cursor:default!important}.work-shift-schedule .slotLane-cursor-copy{cursor:copy!important}.work-shift-schedule .event-cursor-default *{cursor:default!important}.calendar{height:100%;margin-top:24px}.calendar-header{border-radius:15px}.calendar .next,.calendar .prev{width:40px!important;border-radius:15px}.month-container{margin-top:48px;margin-bottom:64px}.tippy-box{box-shadow:0 1px 3px 0 rgb(60 64 67/30%),0 4px 8px 3px rgb(60 64 67/15%);background:#fff;border-radius:15px}.tippy-arrow,.tippy-box[data-placement^=left]>.tippy-arrow:before,.tippy-box[data-placement^=right]>.tippy-arrow:before{color:#fff}.event-container.can-edit{cursor:pointer;border:1px dashed #cdcdcd}.event-container.only-read{cursor:default;border:1px dashed #cdcdcd}.event-container.can-edit:hover{background-color:#fafafa}.loading{z-index:999999;height:2em;width:2em;overflow:show;margin:auto;bottom:0;right:0}.loading,.loading:before{position:fixed;top:0;left:0}.loading:before{content:"";display:block;width:100%;height:100%;background-color:rgba(0,0,0,.3)}.loading:not(:required){font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.loading:not(:required):after{content:"";display:block;font-size:10px;width:1em;height:1em;margin-top:-.5em;-webkit-animation:spinner 1.5s linear infinite;animation:spinner 1.5s linear infinite;border-radius:.5em;box-shadow:1.5em 0 0 0 rgba(0,0,0,.75),1.1em 1.1em 0 0 rgba(0,0,0,.75),0 1.5em 0 0 rgba(0,0,0,.75),-1.1em 1.1em 0 0 rgba(0,0,0,.75),-1.5em 0 0 0 rgba(0,0,0,.75),-1.1em -1.1em 0 0 rgba(0,0,0,.75),0 -1.5em 0 0 rgba(0,0,0,.75),1.1em -1.1em 0 0 rgba(0,0,0,.75)}@-webkit-keyframes spinner{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes spinner{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}