.app-data-table-wrap[data-v-4283ef54]{flex-direction:column;flex:auto;width:100%;min-width:0;height:100%;min-height:0;display:flex;overflow:hidden}.app-data-table-wrap[data-v-4283ef54] .n-data-table{flex:1;min-width:0;height:100%;min-height:0}.app-data-table-wrap[data-v-4283ef54] .n-data-table-wrapper{overflow:auto!important}.app-data-table-wrap[data-v-4283ef54] .n-data-table-base-table-body{overflow-x:auto!important}.app-data-table-wrap[data-v-4283ef54] .n-data-table-base-table--scrollable{min-width:max-content}.app-data-table-wrap[data-v-4283ef54] .n-data-table-th,.app-data-table-wrap[data-v-4283ef54] .n-data-table-td{vertical-align:middle!important}.app-data-table-wrap--embedded[data-v-4283ef54]{flex:none;height:auto;min-height:0;overflow:visible}.app-data-table-wrap--embedded[data-v-4283ef54] .n-data-table{flex:none!important;height:auto!important}.app-data-table-wrap--embedded[data-v-4283ef54] .n-data-table-wrapper{overflow:auto!important}.role-auth-page[data-v-e0cc267a]{overflow:hidden;flex-direction:row!important;flex:1!important;width:100%!important;min-width:0!important;min-height:0!important;display:flex!important}.role-sidebar[data-v-e0cc267a]{background:#fff;border-right:1px solid #e5e7eb;flex-direction:column;flex-shrink:0;width:240px;min-width:200px;display:flex;box-shadow:2px 0 6px #0000000a}.sidebar-header[data-v-e0cc267a]{border-bottom:1px solid #f0f2f5;justify-content:space-between;align-items:center;padding:12px 12px 8px;display:flex}.sidebar-title[data-v-e0cc267a]{color:#1d2129;font-size:14px;font-weight:600}.sidebar-actions[data-v-e0cc267a]{gap:4px;display:flex}.sidebar-search[data-v-e0cc267a]{padding:8px 10px}.role-list[data-v-e0cc267a]{flex:1;overflow-y:auto}.role-item[data-v-e0cc267a]{cursor:pointer;border-bottom:1px solid #f5f5f5;padding:8px 12px;transition:background .15s}.role-item[data-v-e0cc267a]:hover{background:#f0f4ff}.role-item.active[data-v-e0cc267a]{background:#e6edff;border-left:3px solid #4f6ef7}.role-item-main[data-v-e0cc267a]{justify-content:space-between;align-items:center;gap:6px;display:flex}.role-name[data-v-e0cc267a]{color:#1d2129;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:13px;font-weight:500;overflow:hidden}.role-code[data-v-e0cc267a]{color:#86909c;margin-top:2px;font-size:11px}.empty-tip[data-v-e0cc267a]{text-align:center;color:#c0c4cc;padding:24px;font-size:13px}.sidebar-loading[data-v-e0cc267a]{justify-content:center;padding:20px;display:flex}.role-detail[data-v-e0cc267a]{background:#fff;border-radius:8px;flex-direction:column;flex:1;min-width:0;margin:12px 12px 12px 0;display:flex;overflow:hidden;box-shadow:0 1px 4px #00000014}.role-placeholder[data-v-e0cc267a]{color:#86909c;flex-direction:column;justify-content:center;align-items:center;gap:12px;font-size:14px;display:flex}.main-tabs[data-v-e0cc267a]{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.main-tabs[data-v-e0cc267a] .n-tabs-nav{flex-shrink:0;padding:0 16px}.main-tabs[data-v-e0cc267a] .n-tabs-tab-pane-wrapper{flex:1;min-height:0;display:flex}.main-tabs[data-v-e0cc267a] .n-tab-pane{flex-direction:column;flex:1;min-height:0;padding:0;display:flex;overflow:hidden}.tab-content[data-v-e0cc267a]{flex-direction:column;height:100%;display:flex;overflow:hidden}.tab-action-bar[data-v-e0cc267a]{border-bottom:1px solid #f0f2f5;flex-wrap:wrap;flex-shrink:0;align-items:center;gap:8px;padding:10px 16px;display:flex}.table-wrapper[data-v-e0cc267a]{flex:1;min-height:0;overflow:hidden}.pagination-bar[data-v-e0cc267a]{border-top:1px solid #f0f2f5;flex-shrink:0;align-items:center;gap:8px;padding:8px 16px;display:flex}.perm-sub-tabs[data-v-e0cc267a]{flex-direction:column;flex:1;min-height:0;display:flex}.perm-sub-tabs[data-v-e0cc267a] .n-tabs-nav{flex-shrink:0;padding:8px 16px 0}.perm-sub-tabs[data-v-e0cc267a] .n-tab-pane{flex-direction:column;flex:1;padding:0;display:flex;overflow:hidden}.perm-content[data-v-e0cc267a]{flex-direction:column;height:100%;display:flex;overflow:hidden}.perm-action-bar[data-v-e0cc267a]{border-bottom:1px solid #f0f2f5;flex-shrink:0;align-items:center;gap:8px;padding:10px 16px;display:flex}.perm-modules[data-v-e0cc267a]{flex:1;padding:4px 16px;overflow-y:auto}.perm-module-row[data-v-e0cc267a]{border-bottom:1px solid #f5f5f5;align-items:flex-start;gap:12px;padding:8px 0;display:flex}.perm-module-row[data-v-e0cc267a]:last-child{border-bottom:none}.module-label[data-v-e0cc267a]{flex-shrink:0;width:110px;padding-top:1px;font-size:13px}.module-actions[data-v-e0cc267a]{flex-wrap:wrap;flex:1;gap:8px 16px;display:flex}.module-actions[data-v-e0cc267a] .n-checkbox{font-size:13px}.data-scope-wrap[data-v-e0cc267a]{flex:1;padding:16px;overflow-y:auto}.scope-title[data-v-e0cc267a]{color:#1d2129;margin-bottom:12px;font-weight:500}.custom-emp-section[data-v-e0cc267a]{border:1px solid #e5e7eb;border-radius:6px;margin-top:16px;overflow:hidden}.custom-emp-header[data-v-e0cc267a]{background:#f9fafb;border-bottom:1px solid #e5e7eb;align-items:center;gap:8px;padding:8px 12px;display:flex}.custom-emp-title[data-v-e0cc267a]{color:#4e5969;flex:1;font-size:13px;font-weight:500}.dept-emp-preview[data-v-e0cc267a]{color:#86909c;margin-top:8px;font-size:12px}.preview-label[data-v-e0cc267a]{color:#4f6ef7}.report-list[data-v-e0cc267a]{flex-wrap:wrap;flex:1;gap:12px 24px;padding:16px;display:flex;overflow-y:auto}.report-item[data-v-e0cc267a]{font-size:13px}.modal-search-bar[data-v-e0cc267a]{gap:8px;margin-bottom:4px;display:flex}#app{height:100%;min-height:0}.list-page-table .n-data-table-th{border-right:1px solid #e5e7eb}.list-page-table .n-data-table-th:last-child{border-right:none}.list-page-table .n-data-table-td{border-right:1px solid #f0f0f0}.list-page-table .n-data-table-td:last-child{border-right:none}.table-wrapper .n-data-table-th,.page-table .n-data-table-th,.line-table-wrap .n-data-table-th,.list-page-table .n-data-table-th{border-right:1px solid #e5e7eb}.table-wrapper .n-data-table-th:last-child,.page-table .n-data-table-th:last-child,.line-table-wrap .n-data-table-th:last-child,.list-page-table .n-data-table-th:last-child{border-right:none}.table-wrapper .n-data-table-td,.page-table .n-data-table-td,.line-table-wrap .n-data-table-td,.list-page-table .n-data-table-td{border-right:1px solid #f0f0f0}.table-wrapper .n-data-table-td:last-child,.page-table .n-data-table-td:last-child,.line-table-wrap .n-data-table-td:last-child,.list-page-table .n-data-table-td:last-child{border-right:none}.table-wrapper{flex:1;min-width:0;min-height:0;overflow:auto}.table-wrapper>.app-data-table-wrap,.table-wrapper>.n-data-table{flex:1;min-width:0;height:100%;min-height:0}.table-wrapper .n-data-table{flex:1;min-width:0;min-height:0}:is(.ws-route-page .table-wrapper:has(>.app-data-table-wrap),.ws-route-page .table-wrapper:has(>.n-data-table)){flex-direction:column!important;min-width:0!important;display:flex!important;overflow:hidden!important}.ws-route-page .table-wrapper:has(>.hr-overview-board){flex-direction:column!important;min-width:0!important;min-height:0!important;display:flex!important;overflow:hidden!important}.ws-route-page .content-card.glass-card-static:not(.detail-body){min-width:0;overflow:hidden}.app-icon[data-v-e8d4708a]{vertical-align:-.15em;flex-shrink:0;line-height:1;display:inline-block}.list-pagination-bar[data-v-281c184f]{color:#646a73;flex-wrap:wrap;align-items:center;gap:8px;margin-top:12px;font-size:12px;display:flex}.total-text[data-v-281c184f],.page-info[data-v-281c184f]{white-space:nowrap}.page-size-select[data-v-281c184f]{color:#1d2129;background:#fff;border:1px solid #e5e6eb;border-radius:4px;height:24px;padding:0 6px;font-size:12px}:root{--bg-primary:#0a0a0f;--bg-secondary:#12121a;--bg-tertiary:#1a1a2e;--bg-elevated:#222240;--bg-hover:#2a2a4a;--accent-primary:#7c3aed;--accent-secondary:#3b82f6;--accent-gradient:linear-gradient(135deg, #7c3aed 0%, #3b82f6 100%);--accent-gradient-hover:linear-gradient(135deg, #8b5cf6 0%, #60a5fa 100%);--accent-glow:#7c3aed66;--accent-glow-soft:#7c3aed26;--success:#22c55e;--warning:#f59e0b;--danger:#ef4444;--info:#06b6d4;--text-primary:#f0f0f5;--text-secondary:#a0a0b8;--text-tertiary:#6b6b80;--border-primary:#ffffff0f;--border-hover:#7c3aed4d;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--radius-sm:6px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--shadow-card:0 4px 24px #0000004d;--shadow-glow:0 0 20px #7c3aed26;--shadow-elevated:0 8px 32px #0006;--duration-fast:.15s;--duration-normal:.3s;--duration-slow:.5s;--ease-out:cubic-bezier(.16, 1, .3, 1);--sidebar-width:240px;--sidebar-collapsed-width:64px;--header-height:60px;--list-table-header-height:36px;--list-table-row-height:38px;--list-table-cell-px:8px;--list-table-font-size:12px;--list-table-action-btn-height:24px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;height:100%;font-size:13px}body{color:#1d2129;background-color:#f5f7fa;max-width:100vw;height:100%;min-height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,PingFang SC,Microsoft YaHei,sans-serif;line-height:1.45;overflow:hidden;width:100%!important;margin-right:0!important;padding-right:0!important}#app{height:100%;min-height:0;overflow:hidden}a{color:#165dff;text-decoration:none;transition:color .15s}a:hover{color:#4080ff}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#0000001a;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#0003}input:-webkit-autofill{-webkit-text-fill-color:#1d2129!important;-webkit-box-shadow:inset 0 0 0 1000px #fff!important}.iconify,.app-icon,svg.iconify{vertical-align:-.15em;flex-shrink:0;display:inline-block}.n-data-table-th{font-weight:700!important}.n-data-table-th .zr-col-header{cursor:grab;-webkit-user-select:none;user-select:none;align-items:center;gap:4px;max-width:100%;display:inline-flex}.n-data-table-th .zr-col-header:active{cursor:grabbing}.n-data-table-th .zr-col-header-grip{color:var(--n-th-icon-color,#00000059);letter-spacing:-2px;flex-shrink:0;font-size:10px;line-height:1}.n-data-table-th .zr-col-header-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.n-data-table .n-data-table-th,.n-data-table .n-data-table-td{text-overflow:ellipsis;vertical-align:middle;overflow:hidden;white-space:nowrap!important}.n-data-table .n-data-table-td__ellipsis,.n-data-table .n-data-table-td__ellipsis .n-ellipsis,.n-data-table .n-ellipsis{text-overflow:ellipsis;overflow:hidden;white-space:nowrap!important}.n-data-table .n-data-table-td>:not(.n-data-table-expand-trigger):not(.n-checkbox){white-space:nowrap;max-width:100%}.n-data-table .n-data-table-td .n-space{vertical-align:middle;align-items:center;max-width:100%;overflow:hidden;flex-wrap:nowrap!important;gap:4px!important;display:inline-flex!important}.n-data-table .n-data-table-td .n-button,.n-data-table .n-data-table-td .n-tag{white-space:nowrap;flex-shrink:0}.n-data-table .n-data-table-td .wo-no-cell{vertical-align:middle;flex-wrap:nowrap;align-items:center;max-width:100%;display:inline-flex;overflow:hidden}.n-data-table .n-data-table-td .wo-no-cell>*{flex-shrink:0}.n-data-table .n-data-table-td .wo-progress-cell{flex-flow:row;align-items:center;gap:6px;max-width:100%;overflow:hidden}.n-data-table .n-data-table-td .wo-list-pct-inline{white-space:nowrap;flex-shrink:0;display:inline}table.data th,table.data td,.split-table th,.split-table td,.wo-route-quick-table th,.wo-route-quick-table td{white-space:nowrap;text-overflow:ellipsis;vertical-align:middle;overflow:hidden}.tenant-page,.order-page,.report-page,.quality-page,.platform-user-page,.role-page,.package-page,.permission-page,.user-page,.tickets-page{flex-direction:column;flex:1;display:flex;overflow:hidden;gap:0!important;max-width:100%!important}.dashboard,.monitor-page,.app-management-page{flex:1;overflow-y:auto;max-width:100%!important}.so-page,.audit-page,.wo-page,.app-page,.prv-page,.po-page,.pr-page,.preturn-page,.pt-page,.st-page,.sc-page,.sd-page,.sr-page,.flow-page,.osf-page,.wh-page,.recon-page,.ff-page,.qc-task-page,.qc-record-page,.process-inspection-page{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;position:relative;overflow:hidden;width:100%!important;max-width:100%!important}.dashboard-page,.monitor-page{flex:1;width:100%;min-width:0;min-height:0;overflow-y:auto}.ws-route-page.wo-page,.ws-route-page.app-page,.ws-route-page.so-page,.ws-route-page.audit-page,.ws-route-page.dashboard-page,.ws-route-page.prv-page,.ws-route-page.po-page,.ws-route-page.pr-page,.ws-route-page.preturn-page,.ws-route-page.sc-page,.ws-route-page.sd-page,.ws-route-page.sr-page,.ws-route-page.ff-page{flex:1!important;height:100%!important;min-height:0!important;position:relative!important;inset:auto!important}.wo-page>.content-card,.app-page>.content-card,.prv-page>.content-card,.po-page>.content-card,.pr-page>.content-card,.preturn-page>.content-card,.sc-page>.content-card,.sd-page>.content-card,.sr-page>.content-card,.ff-page>.content-card{flex-direction:column;flex:1;width:100%;min-width:0;min-height:0;display:flex;overflow:hidden}.dept-employee-layout{flex:1;gap:0;width:100%;min-width:0;overflow:hidden;flex-direction:row!important}.dept-panel{border-right:1px solid #e5e6eb;flex-direction:column;flex-shrink:0;width:280px;min-width:280px;display:flex;position:relative;overflow:hidden}.emp-panel{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.table-wrapper,.page-table,.line-table-wrap,.so-page .table-wrapper,.audit-page .table-wrapper,.wo-page .table-wrapper,.tenant-page .table-wrapper,.order-page .table-wrapper,.report-page .table-wrapper,.quality-page .table-wrapper,.platform-user-page .table-wrapper,.role-page .table-wrapper,.package-page .table-wrapper,.permission-page .table-wrapper,.user-page .table-wrapper,.tickets-page .table-wrapper{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;overflow:auto}.so-page .table-wrapper .n-data-table,.audit-page .table-wrapper .n-data-table,.wo-page .table-wrapper .n-data-table,.tenant-page .table-wrapper .n-data-table,.order-page .table-wrapper .n-data-table,.report-page .table-wrapper .n-data-table,.quality-page .table-wrapper .n-data-table,.platform-user-page .table-wrapper .n-data-table,.role-page .table-wrapper .n-data-table,.package-page .table-wrapper .n-data-table,.permission-page .table-wrapper .n-data-table,.user-page .table-wrapper .n-data-table,.tickets-page .table-wrapper .n-data-table{--n-td-color:transparent;--n-th-color:transparent;flex:1}.order-page .content-card,.report-page .content-card,.quality-page .content-card,.order-page .table-wrapper,.report-page .table-wrapper,.quality-page .table-wrapper{flex-direction:column;flex:1;display:flex;overflow:hidden}.order-page .table-wrapper .n-data-table,.report-page .table-wrapper .n-data-table,.quality-page .table-wrapper .n-data-table{flex:1}.so-page .table-wrapper .n-data-table-wrapper,.audit-page .table-wrapper .n-data-table-wrapper,.wo-page .table-wrapper .n-data-table-wrapper,.tenant-page .table-wrapper .n-data-table-wrapper,.order-page .table-wrapper .n-data-table-wrapper,.report-page .table-wrapper .n-data-table-wrapper,.quality-page .table-wrapper .n-data-table-wrapper,.platform-user-page .table-wrapper .n-data-table-wrapper,.role-page .table-wrapper .n-data-table-wrapper,.package-page .table-wrapper .n-data-table-wrapper,.permission-page .table-wrapper .n-data-table-wrapper,.user-page .table-wrapper .n-data-table-wrapper,.tickets-page .table-wrapper .n-data-table-wrapper{flex:1;width:100%;min-height:0;overflow:auto}.wo-page .table-wrapper .n-data-table,.wo-page .table-wrapper .n-data-table-base-table{width:100%!important}.wo-route-stepper{scrollbar-width:thin;flex-wrap:nowrap;align-items:flex-start;gap:0;min-width:160px;max-width:520px;padding:2px 0 4px;display:flex;overflow:auto hidden}.wo-route-stepper::-webkit-scrollbar{height:4px}.wo-route-stepper--compact .wo-route-step{width:44px}.wo-route-stepper--compact .wo-route-step-circle{width:24px;height:24px;font-size:8px}.wo-route-stepper--compact .wo-route-step-label{max-width:44px;font-size:9px}.wo-route-step{flex-direction:column;flex:none;align-items:center;width:52px;display:flex;position:relative}.wo-route-step:not(:last-child):before{content:"";z-index:0;background:#e5e6eb;width:calc(100% - 28px);height:2px;position:absolute;top:13px;left:calc(50% + 14px)}.wo-route-step.done:not(:last-child):before,.wo-route-step.active:not(:last-child):before{background:#22c55e}.wo-route-step-circle{color:#86909c;z-index:1;background:#fff;border:2px solid #e5e6eb;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:9px;font-weight:700;line-height:1;display:flex;position:relative}.wo-route-step.done .wo-route-step-circle{color:#22c55e;background:#22c55e14;border-color:#22c55e}.wo-route-step.done .wo-route-step-circle:after{content:"✓";font-size:14px;font-weight:800}.wo-route-step.done .wo-route-step-pct{display:none}.wo-route-step.active .wo-route-step-circle{color:#16a34a;background:#fff;border-color:#22c55e}.wo-route-step-label{color:#86909c;text-align:center;white-space:nowrap;text-overflow:ellipsis;max-width:52px;margin-top:4px;font-size:10px;overflow:hidden}.wo-route-step.active .wo-route-step-label{color:#16a34a;font-weight:600}.wo-route-step.done .wo-route-step-label{color:#22c55e}.wo-progress-cell{flex-flow:row;align-items:center;gap:6px;min-width:0;max-width:100%;display:flex;overflow:hidden}.wo-list-pct-inline{color:#86909c;font-size:11px;line-height:1.3}.wo-route-pct-num{color:#16a34a;font-weight:700}.wo-route-empty{color:#c9cdd4;font-size:12px}.wo-list-table-wrap .wo-route-stepper{max-width:100%}.glass-card-static{border-radius:8px}.wo-page .page-header,.app-page .page-header{padding:6px 12px 0!important}.wo-page .page-title,.app-page .page-title{line-height:1.3;font-size:16px!important}.wo-page .kpi-bar,.wo-page .filter-bar,.wo-page .action-bar,.audit-page .action-bar,.audit-page .filter-bar{font-size:12px;gap:6px!important;margin-top:4px!important;margin-bottom:0!important;padding-top:6px!important;padding-bottom:6px!important}.wo-page .filter-bar,.wo-page .action-bar{padding-left:12px!important;padding-right:12px!important}.wo-page .pagination-bar{font-size:12px;padding:6px 12px!important}.wo-page .view-tabs{padding:0 10px 6px!important}.wo-page .view-tabs :deep(.n-tabs-nav){min-height:32px}.wo-page .kanban-wrapper{gap:8px;min-height:0!important}.wo-page .kanban-header{font-size:13px;padding:8px 10px!important}.wo-page .kanban-body{padding:6px!important}.wo-page .kanban-card{padding:8px!important}.wo-page .gantt-pane{min-height:0!important}.ptd-page{gap:6px!important}.ptd-kpi-strip{padding:6px 10px!important}.ptd-toolbar{padding:4px 0!important}.ptd-grid-wrap{flex:1;min-height:0!important}.portal-layout,.login-page{height:auto;min-height:100%;overflow:auto}:is(body:has(.portal-layout),body:has(.login-page)){overflow:auto}.wo-route-stepper--list{align-items:flex-start;padding:0}.wo-route-stepper--list .wo-route-step{width:44px}.wo-route-stepper--list .wo-route-step-circle{width:22px;height:22px;font-size:8px}.wo-route-stepper--list .wo-route-step:not(:last-child):before{width:calc(100% - 22px);top:11px;left:calc(50% + 11px)}.wo-route-stepper--list .wo-route-step.done .wo-route-step-circle:after{font-size:11px}.wo-route-stepper--list .wo-route-step-label{white-space:nowrap;text-overflow:ellipsis;max-width:44px;margin-top:2px;font-size:9px;line-height:1.1;display:block;overflow:hidden}.wo-route-stepper--list .wo-route-step.done .wo-route-step-label{color:#1d2129}.wo-route-stepper--list .wo-route-step.active .wo-route-step-label{color:#16a34a;font-weight:600}.n-data-table .n-data-table-th{color:#4e5969;border-bottom:1px solid #e5e7eb;height:var(--list-table-header-height)!important;max-height:var(--list-table-header-height)!important;padding:0 var(--list-table-cell-px)!important;font-size:var(--list-table-font-size)!important;line-height:var(--list-table-header-height)!important;box-sizing:border-box!important;background:#f0f2f5!important}.n-data-table .n-data-table-td{color:#333;border-bottom:1px solid #f0f0f0;height:var(--list-table-row-height)!important;max-height:var(--list-table-row-height)!important;padding:0 var(--list-table-cell-px)!important;font-size:var(--list-table-font-size)!important;box-sizing:border-box!important;line-height:1.2!important}.n-data-table .n-data-table-tr:hover .n-data-table-td{background:#e8f0fe!important}.n-data-table .n-data-table-tr--checked .n-data-table-td{background:#e8f4fe!important}.n-data-table .n-data-table-td .n-button{height:var(--list-table-action-btn-height)!important;min-height:var(--list-table-action-btn-height)!important;font-size:var(--list-table-font-size)!important;padding:0 6px!important}.n-data-table .n-data-table-td .n-tag{height:22px!important;padding:0 6px!important;font-size:11px!important;line-height:20px!important}.n-data-table .n-data-table-td .n-checkbox{align-items:center;height:100%;display:inline-flex}.n-data-table .n-data-table-td .pct-cell,.n-data-table .n-data-table-td .ship-cell{max-height:calc(var(--list-table-row-height) - 4px);flex-direction:column;justify-content:center;gap:1px;display:flex;overflow:hidden}.n-data-table .n-data-table-td .pct-val,.n-data-table .n-data-table-td .ship-val{margin:0;font-size:11px;line-height:1}.n-data-table .n-data-table-td .n-progress{margin:0!important}.n-data-table .n-data-table-td .n-progress-graph{height:4px!important}.app-data-table-wrap .n-data-table .n-data-table-th,.app-data-table-wrap .n-data-table .n-data-table-td{vertical-align:middle!important}.ws-route-page:has(>.content-card.glass-card-static){box-sizing:border-box;flex-direction:column!important;flex:1!important;width:100%!important;min-width:0!important;height:100%!important;min-height:0!important;display:flex!important;position:relative!important;inset:auto!important;overflow:hidden!important}.ws-route-page>.content-card.glass-card-static{flex-direction:column;flex:1;width:100%;min-width:0;min-height:0;display:flex;overflow:hidden}.ws-route-page.report-page-shell>.content-card.glass-card-static,.ws-route-page.report-page-fill>.content-card.glass-card-static{flex:none;height:auto;min-height:0;display:block;overflow:visible}.ws-route-page .action-bar,.ws-route-page .filter-bar,.ws-route-page .query-bar,.ws-route-page .so-toolbar{border-bottom:1px solid #f2f3f5;flex-wrap:wrap;flex-shrink:0;align-items:center;gap:8px;padding:12px 16px;flex-direction:row!important;display:flex!important}.ws-route-page .action-bar+.filter-bar,.ws-route-page .so-head+.so-toolbar{border-top:none}.ws-route-page .table-wrapper{flex:auto;min-width:0;min-height:120px;overflow:auto}.ws-route-page .pagination-bar{background:#fafafa;border-top:1px solid #e5e6eb;flex-shrink:0;align-items:center;gap:8px;padding:10px 16px;display:flex}.ws-route-page .total-text{color:#86909c;margin-right:8px;font-size:13px}.ws-route-page .page-info{color:#4e5969;font-size:13px}.ws-route-page .page-size-select{cursor:pointer;background:#fff;border:1px solid #e5e6eb;border-radius:4px;outline:none;padding:2px 4px;font-size:13px;line-height:22px}.ws-route-page:is(.wo-detail-page,.os-detail-page,.so-create-page,.purchase-detail-page,.detail-page,.shipment-detail-page){box-sizing:border-box;flex-direction:column!important;flex:1!important;width:100%!important;min-width:0!important;height:100%!important;min-height:0!important;display:flex!important;position:relative!important;inset:auto!important;overflow:hidden!important}.ws-route-page.purchase-detail-page,.ws-route-page.shipment-detail-page{background:#f5f6f8}.ws-route-page.wo-detail-page,.ws-route-page.os-detail-page,.ws-route-page.so-create-page{background:#fff}.ws-route-page .create-header,.ws-route-page .detail-toolbar{z-index:10;background:#fff;border-bottom:1px solid #f2f3f5;flex-wrap:wrap;flex-shrink:0;align-items:center;gap:12px;padding:10px 20px;display:flex;position:sticky;top:0}.ws-route-page .header-main{flex:1;align-items:baseline;gap:10px;min-width:120px;display:flex}.ws-route-page .header-title,.ws-route-page .toolbar-title{color:#1d2129;font-size:15px;font-weight:600}.ws-route-page .header-sub{color:#86909c;font-family:ui-monospace,monospace;font-size:12px}.ws-route-page .back-btn{color:#4e5969}.ws-route-page .header-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.ws-route-page .detail-loading{flex:1;justify-content:center;align-items:center;padding:48px;display:flex}.ws-route-page .detail-body,.ws-route-page .wo-body,.ws-route-page .so-body{-webkit-overflow-scrolling:touch;flex:auto;min-width:0;min-height:0;overflow:hidden auto}.ws-route-page.purchase-detail-page .detail-body,.ws-route-page.shipment-detail-page .detail-body{margin:12px;padding:16px}.ws-route-page.purchase-detail-page .detail-body.content-card.glass-card-static{flex:auto;min-height:0;overflow:hidden auto}.ws-route-page.wo-detail-page .wo-body,.ws-route-page.os-detail-page .wo-body,.ws-route-page.so-create-page .so-body{padding:0 20px 16px}:is(.ws-route-page.so-create-page .so-body .so-tabs :deep(.n-tabs),.ws-route-page.wo-detail-page .wo-body .wo-tabs :deep(.n-tabs),.ws-route-page.os-detail-page .wo-body .wo-tabs :deep(.n-tabs)){flex:none!important;height:auto!important;max-height:none!important}:is(.ws-route-page.so-create-page .so-body .so-tabs :deep(.n-tabs-pane-wrapper),.ws-route-page.wo-detail-page .wo-body .wo-tabs :deep(.n-tabs-pane-wrapper),.ws-route-page.os-detail-page .wo-body .wo-tabs :deep(.n-tabs-pane-wrapper),.ws-route-page.so-create-page .so-body .so-tabs :deep(.n-tab-pane),.ws-route-page.wo-detail-page .wo-body .wo-tabs :deep(.n-tab-pane),.ws-route-page.os-detail-page .wo-body .wo-tabs :deep(.n-tab-pane)){flex:none!important;height:auto!important;max-height:none!important;overflow:visible!important}:is(.ws-route-page .wo-tabs :deep(.n-tabs-nav),.ws-route-page .so-tabs :deep(.n-tabs-nav)){margin-bottom:4px}.ws-route-page .form-section{margin-bottom:20px}.ws-route-page .section-title{color:#1d2129;border-left:2px solid #165dff;margin:0 0 12px;padding-left:8px;font-size:13px;font-weight:600;line-height:1.4}.ws-route-page .page-desc-line{color:#4e5969;flex-shrink:0;margin:6px 20px 0;font-size:13px}.ws-route-page .tab-hint{color:#86909c;margin:0 0 10px;font-size:12px}.ws-route-page .tab-toolbar{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.ws-route-page .wo-detail-alert-bar,.ws-route-page .detail-alert-bar{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:12px;padding:8px 20px 0;display:flex}.ws-route-page .wo-detail-meta{color:#86909c;font-size:12px}.ws-route-page .lines-section{border-top:1px solid #eee;margin-top:12px;padding-top:12px}.ws-route-page .lines-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.ws-route-page .hr-page-header{border-bottom:1px solid #f2f3f5;flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:12px;padding:14px 16px 10px;display:flex}.ws-route-page .hr-page-title{color:#1d2129;margin:0;font-size:16px;font-weight:600;line-height:1.4}.ws-route-page .hr-page-desc{color:#86909c;margin:4px 0 0;font-size:13px;line-height:1.5}.ws-route-page .hr-page-header-extra{flex-shrink:0;align-items:center;gap:8px;display:flex}.n-drawer .n-drawer-content .n-descriptions{margin-bottom:4px}.n-drawer .n-drawer-content .n-h5{color:#1d2129;margin-top:12px;margin-bottom:8px;font-size:13px;font-weight:600}.glass-card{background:#fff;border:1px solid #e5e6eb;border-radius:12px;transition:all .3s cubic-bezier(.16,1,.3,1);box-shadow:0 2px 12px #0000000f}.glass-card:hover{border-color:#165dff;transform:translateY(-2px);box-shadow:0 2px 12px #0000000f,0 0 20px #165dff1a}.glass-card-static{background:#fff;border:1px solid #e5e6eb;border-radius:12px;box-shadow:0 2px 12px #0000000f}.glass-sidebar{background:#fff;border-right:1px solid #e5e6eb}.glass-header{background:#fff;border-bottom:1px solid #e5e6eb;box-shadow:0 1px 4px #0000000a}.glass-input{background:#fff;border:1px solid #e5e6eb;border-radius:8px;transition:border-color .15s,box-shadow .15s}.glass-input:focus{border-color:#165dff;outline:none;box-shadow:0 0 0 3px #165dff1a}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pulseGlow{0%,to{box-shadow:0 0 8px #165dff33}50%{box-shadow:0 0 24px #165dff66}}@keyframes statusPulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes gradientShift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.animate-fade-in-up{animation:fadeInUp .5s var(--ease-out) forwards;opacity:0}.animate-fade-in{animation:fadeIn .4s var(--ease-out) forwards;opacity:0}.animate-delay-1{animation-delay:.1s}.animate-delay-2{animation-delay:.2s}.animate-delay-3{animation-delay:.3s}.animate-delay-4{animation-delay:.4s}.animate-delay-5{animation-delay:.5s}
