:root{--primary: #1677ff;--primary-dark: #1554cc;--primary-light: rgba(22, 119, 255, .1);--accent: #3b82f6;--accent-soft: #eff6ff;--success: #047857;--success-bg: #ecfdf5;--warning: #b45309;--warning-bg: #fffbeb;--danger: #b91c1c;--danger-bg: #fef2f2;--info: #0e7490;--info-bg: #ecfeff;--tone-0: var(--success);--tone-1: var(--info);--tone-2: var(--warning);--tone-3: var(--danger);--text: #1f2937;--text2: #334155;--text3: #64748b;--text4: #94a3b8;--bg: #f3f6fb;--bg2: #f8fafc;--card: #ffffff;--border: #e2e8f0;--border2: #f1f5f9;--hover: #f1f5f9;--sidebar-w: 220px;--sidebar-collapsed-w: 64px;--topbar-h: 48px;--shadow-sm: 0 1px 2px rgba(12, 18, 34, .04);--shadow: 0 1px 3px rgba(12, 18, 34, .06), 0 1px 2px rgba(12, 18, 34, .04);--shadow-md: 0 12px 28px rgba(12, 18, 34, .08);--radius: 6px;--radius-md: 10px;--bp-lg: 1200px;--bp-md: 992px;--bp-sm: 768px;--bp-xs: 480px;--touch-target: 36px;--content-pad-x: 16px;--content-pad-y: 10px;--font: "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", "Noto Sans CJK SC", "Source Han Sans SC", system-ui, sans-serif;--font-display: "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Songti SC", "STSong", serif;--font-num: "DIN Alternate", "DIN Condensed", "Helvetica Neue", "PingFang SC", "Microsoft YaHei UI", "Microsoft YaHei", system-ui, sans-serif;--el-color-primary: #1677ff;--el-color-primary-light-3: #69b1ff;--el-color-primary-light-5: #91caff;--el-color-primary-light-7: #bae0ff;--el-color-primary-light-8: #d6eaff;--el-color-primary-light-9: #e6f4ff;--el-color-primary-dark-2: #1554cc;--el-color-success: var(--success);--el-color-warning: var(--warning);--el-color-danger: var(--danger);--el-color-info: var(--info);--el-border-radius-base: 6px;--el-font-size-base: 13px;--el-font-family: var(--font);--app-accent: #2dd4bf;--app-accent-2: #0f766e;--app-accent-soft: #5eead4;--app-glow-a: rgba(45, 212, 191, .14);--app-glow-b: rgba(15, 118, 110, .12);--app-border-accent: rgba(45, 212, 191, .22);--app-title-gradient: linear-gradient(90deg, #99f6e4, #2dd4bf, #99f6e4)}*{box-sizing:border-box}html,body,#app{margin:0;min-height:100%;max-width:100%;font:13px/1.6 var(--font);color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}#app{min-width:0;overflow-x:hidden}html{overflow-y:auto}body{overflow-x:hidden}a{color:inherit;text-decoration:none}.content .toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:0!important;padding:8px 14px;background:var(--card);border:1px solid var(--border);border-bottom:none;border-radius:var(--radius-md) var(--radius-md) 0 0;box-shadow:var(--shadow-sm)}.content .el-table{--el-table-header-bg-color: var(--bg2);--el-table-header-text-color: var(--text3);--el-table-text-color: var(--text);--el-table-row-hover-bg-color: var(--primary-light);--el-table-border-color: var(--border);--el-table-bg-color: var(--card);--el-table-tr-bg-color: var(--card);font-size:13px;background:var(--card);border:1px solid var(--border)!important;border-top:none!important;box-shadow:none}.content .el-table .el-table__body tr{transition:background-color .15s ease}.content .el-table .el-table__body tr:hover>td.el-table__cell{background-color:var(--primary-light)!important}.content .el-table th.el-table__cell{font-weight:700;font-size:12px;letter-spacing:.02em;background:color-mix(in srgb,var(--primary) 6%,var(--bg2))!important;color:var(--text3)!important;border-bottom:1px solid color-mix(in srgb,var(--primary) 16%,var(--border))!important}.content .el-table th.el-table__cell,.content .el-table td.el-table__cell{padding:8px 12px}.content .el-table .cell{line-height:1.4}.content .el-table .el-table__fixed-right:before,.content .el-table .el-table__fixed:before{background-color:transparent}.content .el-table .el-table-fixed-column--right,.content .el-table .el-table-fixed-column--left{position:static!important;left:auto!important;right:auto!important;z-index:auto!important;box-shadow:none!important}.content .el-table .el-table-fixed-column--right:before,.content .el-table .el-table-fixed-column--left:before{display:none!important;content:none!important;box-shadow:none!important}.content .el-table .el-table__fixed-right,.content .el-table .el-table__fixed,.content .el-table .el-table__fixed-right-patch{display:none!important}.content .el-pagination{--el-pagination-button-bg-color: var(--bg2);--el-pagination-hover-color: var(--primary);font-weight:500}.content .el-pagination__total{color:var(--text3);font-weight:500}.content .el-pagination.is-background .el-pager li{border-radius:8px!important;font-weight:550}.content .el-pagination.is-background .el-pager li.is-active{background:linear-gradient(135deg,var(--primary),var(--accent))!important;font-weight:650}.content .el-progress-bar__outer{background:var(--hover)!important;border-radius:6px!important}.content .el-progress-bar__inner{border-radius:6px!important;background:linear-gradient(90deg,var(--primary),var(--accent))!important}.content .el-checkbox{margin-right:4px}.content .toolbar~.el-table{border-radius:0}.content .page-panel .page-panel__toolbar .toolbar,.content .page-panel__toolbar>.toolbar{margin:0!important;padding:0;background:transparent;border:none;border-radius:0;box-shadow:none}.content .page-panel .el-table{width:100%;border:none!important;border-radius:0!important;box-shadow:none!important}.content .page-panel__scroll>.el-table{width:100%}.content .table-scroll,.content .page-panel__body{-webkit-overflow-scrolling:touch}.content .table-scroll{width:100%;max-width:100%;overflow-x:auto;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}.content .table-scroll :deep(.el-table){width:max-content;min-width:100%}.content .panel,.content .detail-main-grid>*{min-width:0}.content .table-scroll .el-table{min-width:640px}.content .page-panel .page-panel__footer .pager,.content .page-panel__footer>.pager,.content .page-panel__footer .el-pagination{margin:0!important;padding:0;background:transparent;border:none;border-radius:0;box-shadow:none;justify-content:flex-end;display:flex}.content .page-panel+.pager{display:none}.content .page-panel .opp-board,.content .page-panel .flow-panel,.content .page-panel .list-shell,.content .page-panel .emp-shell,.content .page-panel .report-list,.content .page-panel .leave-shell,.content .page-panel .leave-cal,.content .page-panel .msg-shell,.content .page-panel .announcement-section,.content .page-panel .heat,.content .page-panel .missing-bar{padding:12px 14px}.content .page-panel .missing-bar{padding-bottom:0;margin-bottom:0}.content>div>.el-table:first-child{border-radius:var(--radius-md);border-top:1px solid var(--border)!important;overflow:hidden;box-shadow:var(--shadow-sm)}.content .pager{display:flex;justify-content:flex-end;align-items:center;margin-top:0!important;padding:10px 16px;background:var(--card);border:1px solid var(--border);border-top:none;border-radius:0 0 var(--radius-md) var(--radius-md);box-shadow:var(--shadow-sm)}.content .summary{margin:0 0 12px;padding:0;background:transparent;border:none;box-shadow:none}.content .heat,.content .flows{margin:0!important;padding:12px 14px;background:var(--card);border-left:1px solid var(--border);border-right:1px solid var(--border)}.spacer{flex:1;min-width:8px}.result-hint{font-size:12px;color:var(--text3);white-space:nowrap}.num,.money{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1,"lnum" 1;letter-spacing:0}.money{display:inline-block;white-space:nowrap;font-family:var(--font-num);font-size:12.5px;font-weight:500;color:var(--text)}.money.neg{color:var(--danger)}.money.pos{color:var(--success)}.content .el-table .money{white-space:nowrap;max-width:100%;font-size:12.5px;font-weight:500}.content .el-table .table-ops{display:inline-flex;flex-wrap:wrap;align-items:center;gap:2px 4px}.content .el-table .table-ops .el-button.is-link{margin:0!important;padding:0 4px;height:24px;font-weight:600}.content .el-table .rate-pill{display:inline-flex;align-items:center;justify-content:center;min-width:40px;padding:1px 6px;border-radius:999px;font-size:11px;font-weight:700;font-variant-numeric:tabular-nums}.content .el-table .rate-pill.ok{color:#047857;background:#ecfdf5}.content .el-table .rate-pill.warn{color:#b45309;background:#fffbeb}.content .el-table .rate-pill.danger{color:#b91c1c;background:#fef2f2}.content .el-table__empty-block{min-height:180px;background:radial-gradient(circle at 50% 38%,rgba(15,118,110,.05),transparent 55%)}.content .el-table__empty-text{color:var(--text4);font-size:13px;line-height:1.55}.content .el-table__empty-text:before{content:"";display:block;width:40px;height:40px;margin:0 auto 10px;border-radius:12px;border:1px solid #e2e8f0;background:linear-gradient(180deg,#f8fafc,#eef2f7)}.muted{color:var(--text4, #94a3b8)}.date-pill{display:inline-flex;padding:2px 8px;border-radius:6px;background:color-mix(in srgb,var(--primary) 12%,var(--card));color:var(--primary);font-size:12px;font-weight:600;font-variant-numeric:tabular-nums;white-space:nowrap}.date-pill.overdue{background:color-mix(in srgb,var(--danger) 12%,var(--card));color:var(--danger)}.date-pill.soon,.date-pill.warn{background:color-mix(in srgb,var(--warning) 12%,var(--card));color:var(--warning)}.date-pill.teal{background:color-mix(in srgb,var(--accent) 12%,var(--card));color:var(--accent)}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px;font-size:13px;color:var(--text2)}.detail-grid .span2{grid-column:1 / -1}.detail-grid .lbl{display:block;font-size:11px;font-weight:650;color:var(--text4);margin-bottom:4px}.flow-panel{display:grid;gap:14px;padding:12px 14px;background:var(--card);border:1px solid var(--border);border-bottom:none;border-radius:12px 12px 0 0}.flow-card{padding:12px 14px;border:1px solid var(--border);border-radius:10px;background:linear-gradient(180deg,var(--bg2),var(--card))}.flow-card-head strong{font-size:13px;color:var(--text)}.flow-meta{font-size:12px;color:var(--text3);margin-bottom:10px}.flow-rail{display:flex;flex-direction:column;gap:0;border-left:2px solid color-mix(in srgb,var(--primary) 35%,var(--border));margin-left:10px;padding-left:12px}.flow-node:before{background:var(--primary);border:2px solid var(--card);box-shadow:0 0 0 1px color-mix(in srgb,var(--primary) 40%,var(--border))}.fn-no{background:var(--primary);color:#fff}.flow-node strong{color:var(--text)}.flow-node em{color:var(--text4)}.amt-chip{display:inline-flex;padding:2px 8px;border-radius:6px;background:color-mix(in srgb,var(--primary) 12%,var(--card));color:var(--primary);font-size:11px;font-weight:650}.el-message{border-radius:10px!important;border:1px solid var(--border)!important;box-shadow:var(--shadow-md)!important;padding:10px 14px!important;background:#fff!important}.el-message .el-message__content{font-weight:550!important;color:var(--text)!important}.el-message--success{border-color:#a7f3d0!important;background:#ecfdf5!important}.el-message--warning{border-color:#fde68a!important;background:#fffbeb!important}.el-message--error{border-color:#fecaca!important;background:#fef2f2!important}.el-message-box{border-radius:14px!important;box-shadow:0 24px 64px #0c122229!important}.is-message-box .el-overlay-message-box{position:fixed!important;inset:0!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:16px!important;overflow:auto!important;text-align:center!important;z-index:2000!important}.el-message-box__title{font-weight:700!important}.el-message-box__btns .el-button--primary{background:linear-gradient(135deg,var(--primary),var(--accent))!important;border:none!important;color:#fff!important}.content .el-button--primary:not(.is-link):not(.is-text):not(.is-plain),.el-button--primary:not(.is-link):not(.is-text):not(.is-plain),.el-message-box__btns .el-button--primary{color:#fff!important;--el-button-text-color: #fff;--el-button-hover-text-color: #fff;--el-button-active-text-color: #fff}.content .el-button--success:not(.is-link):not(.is-text):not(.is-plain),.el-button--success:not(.is-link):not(.is-text):not(.is-plain){color:#fff!important;--el-button-text-color: #fff}.content .el-button--warning:not(.is-link):not(.is-text):not(.is-plain),.content .el-button--danger:not(.is-link):not(.is-text):not(.is-plain){color:#fff!important;--el-button-text-color: #fff}.content .el-button--primary.is-plain:not(.is-link):not(.is-text),.el-button--primary.is-plain:not(.is-link):not(.is-text){color:var(--primary)!important;background:var(--primary-light)!important;border:1px solid color-mix(in srgb,var(--primary) 32%,var(--border))!important;box-shadow:none!important;--el-button-bg-color: var(--primary-light);--el-button-border-color: color-mix(in srgb, var(--primary) 32%, var(--border));--el-button-text-color: var(--primary);--el-button-hover-text-color: var(--primary-dark, var(--primary));--el-button-hover-bg-color: color-mix(in srgb, var(--primary) 14%, var(--card))}.content .el-button--success.is-plain:not(.is-link):not(.is-text){color:var(--success)!important;background:color-mix(in srgb,var(--success) 10%,var(--card))!important;border-color:color-mix(in srgb,var(--success) 30%,var(--border))!important;box-shadow:none!important}.content .el-button--primary:not(.is-link):not(.is-text),.content .el-button--success:not(.is-link):not(.is-text),.content .el-button--warning:not(.is-link):not(.is-text),.content .el-button--danger:not(.is-link):not(.is-text),.content .el-button--default:not(.is-link):not(.is-text){min-height:32px;padding:6px 14px;font-weight:650;border-radius:8px;transition:transform .12s ease,box-shadow .12s ease,background .12s ease}.el-button--primary:not(.is-link):not(.is-text):not(.is-plain){--el-button-bg-color: transparent;--el-button-border-color: transparent;background:linear-gradient(135deg,var(--primary),var(--accent))!important;border:none!important;box-shadow:0 2px 8px color-mix(in srgb,var(--primary) 28%,transparent);font-weight:600;border-radius:8px!important;color:#fff!important}.content .el-button--default:not(.is-link):not(.is-text){border-radius:8px!important;font-weight:600;border-color:var(--border)!important;color:var(--text2)!important;background:var(--card)!important}.content .el-button--default:not(.is-link):not(.is-text):hover{border-color:var(--primary)!important;color:var(--primary)!important;background:var(--primary-light)!important}.content .el-button--primary:not(.is-link):not(.is-text):hover{filter:brightness(1.05)}.content .el-button--success:not(.is-link):not(.is-text){background:var(--success)!important;border-color:var(--success)!important;font-weight:600}.content .el-button.is-link{font-weight:500;background:transparent!important;border:none!important;box-shadow:none!important;height:auto!important;padding:0 4px!important}.content .el-button.is-link.el-button--primary{color:var(--primary)!important}.content .el-button.is-link.el-button--success{color:var(--success)!important}.content .el-button.is-link.el-button--danger{color:var(--danger)!important}.content .el-input__wrapper,.content .el-select__wrapper{border-radius:8px!important;box-shadow:0 0 0 1px var(--border) inset!important}.content .el-input__wrapper:hover,.content .el-select__wrapper:hover{box-shadow:0 0 0 1px #cbd5e1 inset!important}.content .el-input__wrapper.is-focus,.content .el-select__wrapper.is-focused{box-shadow:0 0 0 1px var(--primary) inset,0 0 0 3px var(--primary-light)!important}.content .el-table .el-button.is-link{margin:0 2px}.hr-kpis .hk{background:var(--card);border-color:var(--border)}.hr-kpis .hk.active{border-color:color-mix(in srgb,var(--app-accent, var(--primary)) 42%,var(--border));box-shadow:var(--shadow-md),0 0 0 1px color-mix(in srgb,var(--app-accent, var(--primary)) 10%,transparent)}.el-dialog{border-radius:14px!important;overflow:hidden;box-shadow:0 24px 64px #0c122229!important}.el-dialog__header{margin-right:0!important;padding:16px 20px 12px!important;border-bottom:1px solid var(--border);background:var(--card)}.el-dialog__title{font-size:15px!important;font-weight:700!important;color:var(--text)!important}.el-dialog__body{padding:16px 20px 8px!important;max-height:none}.el-dialog.cmd-dialog{border-radius:14px!important;overflow:hidden;box-shadow:0 24px 64px #0c12222e,0 0 0 1px color-mix(in srgb,var(--app-accent, var(--primary)) 12%,transparent)!important}.el-dialog.cmd-dialog .el-dialog__header{display:none}.el-dialog.cmd-dialog .el-dialog__body{padding:16px 18px 14px!important;background:linear-gradient(105deg,var(--primary-light),transparent 42%),linear-gradient(180deg,var(--card) 0%,var(--bg2) 100%)}.el-dialog.cmd-dialog:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--app-accent, var(--primary)),transparent);opacity:.75;pointer-events:none;z-index:2}html[data-theme=dark-tech] .el-dialog.cmd-dialog .el-dialog__body{background:linear-gradient(105deg,var(--primary-light),transparent 42%),linear-gradient(180deg,var(--card) 0%,var(--bg2) 100%)}.content>*,.view-pane>*{min-width:0;max-width:100%}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px;width:100%;max-width:100%;box-sizing:border-box}.form-grid>*{min-width:0;max-width:100%}.form-grid .form-span-2{grid-column:1 / -1}.form-grid .el-form-item,.form-grid .el-form-item__content{min-width:0;max-width:100%}.form-grid .el-form-item__label{white-space:normal;line-height:20px;height:auto;overflow-wrap:anywhere}.form-grid .el-form-item__content>.el-input,.form-grid .el-form-item__content>.el-select,.form-grid .el-form-item__content>.el-date-editor,.form-grid .el-form-item__content>.el-textarea,.form-grid .el-form-item__content>.el-input-number,.form-grid .el-form-item__content>.el-cascader{width:100%!important;max-width:100%}@media(max-width:992px){.form-grid{grid-template-columns:minmax(0,1fr)}}.hr-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:10px}.hk{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--card);border:1px solid var(--border);border-radius:8px;transition:border-color .15s ease,box-shadow .15s ease;color:var(--text)}.hk.clickable{cursor:pointer;user-select:none}.hk.clickable:hover,.hk.clickable.active,.hr-kpis .hk.active{border-color:color-mix(in srgb,var(--primary) 35%,var(--border));box-shadow:0 0 0 1px color-mix(in srgb,var(--primary) 8%,transparent)}.hk-icon{width:32px;height:32px;border-radius:8px;display:grid;place-items:center;font-size:12px;font-weight:600;flex-shrink:0}.hk-icon.blue{background:color-mix(in srgb,var(--accent, #0e7490) 12%,var(--card));color:var(--accent, #0e7490)}.hk-icon.green{background:color-mix(in srgb,var(--success, #047857) 12%,var(--card));color:var(--success, #047857)}.hk-icon.orange{background:color-mix(in srgb,var(--warning, #b45309) 12%,var(--card));color:var(--warning, #b45309)}.hk-icon.rose{background:color-mix(in srgb,var(--danger, #b91c1c) 12%,var(--card));color:var(--danger, #b91c1c)}.hk-icon.slate{background:color-mix(in srgb,var(--text3, #475569) 10%,var(--card));color:var(--text3, #475569)}.hk-icon.teal{background:color-mix(in srgb,var(--primary, #0f766e) 12%,var(--card));color:var(--primary, #0f766e)}.hk-icon.purple{background:color-mix(in srgb,#7c3aed 12%,var(--card));color:#7c3aed}.hk>div:not(.hk-icon){min-width:0;flex:1}.hk-num{font-size:20px;font-weight:600;line-height:1.2;font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:var(--text)}.hk-num.green{color:var(--success, #047857)}.hk-num.orange{color:var(--warning, #b45309)}.hk-num.rose{color:var(--danger, #b91c1c)}.hk-lbl{margin-top:2px;font-size:12px;color:var(--text3)}@media(max-width:1100px){.hr-kpis{grid-template-columns:repeat(3,1fr)}}@media(max-width:992px){.hr-kpis{display:grid!important;grid-template-columns:1fr 1fr;gap:10px}}.el-dialog__footer{padding:12px 20px 16px!important;border-top:1px solid var(--border);background:var(--bg2)}.el-drawer__body{padding:16px 18px 24px!important;background:var(--bg2)}.el-drawer__header{margin-bottom:0!important;padding:14px 18px!important;border-bottom:1px solid var(--border);font-weight:700;background:var(--card);color:var(--text)}.content .detail-bar,.content .wo-actions,.content .head-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;padding:12px 14px;background:var(--card);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.el-dialog .el-table,.el-drawer .el-table{border-top:1px solid var(--border)!important;border-radius:8px!important;overflow:hidden}.el-dialog .table-scroll,.el-drawer .table-scroll{width:100%;overflow-x:auto}.el-dialog .table-scroll .el-table,.el-drawer .table-scroll .el-table{width:max-content;min-width:100%}.el-dialog .table-scroll .el-input,.el-dialog .table-scroll .el-input-number,.el-drawer .table-scroll .el-input,.el-drawer .table-scroll .el-input-number{width:100%!important}.el-dialog .toolbar,.el-drawer .sub-toolbar{box-shadow:none}.el-form-item__label{color:var(--text3)!important;font-weight:500}.el-tag{border:none}.content::-webkit-scrollbar,.nav-scroll::-webkit-scrollbar{width:6px;height:6px}.content::-webkit-scrollbar-thumb,.nav-scroll::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:8px}.detail-banner{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;margin-bottom:14px;border-radius:12px;position:relative;overflow:hidden;background:linear-gradient(105deg,var(--primary-light),transparent 48%),linear-gradient(180deg,var(--card) 0%,var(--bg2) 100%);color:var(--text);border:1px solid var(--border);box-shadow:var(--shadow-sm)}.detail-banner .db-no{font-size:12px;letter-spacing:.06em;opacity:.7}.detail-banner .db-title{margin-top:4px;font-size:15px;font-weight:700}.section-block{padding:12px 0 4px;border-top:1px solid var(--border2)}.section-block:first-of-type{border-top:0;padding-top:0}.section-title{font-size:13px;font-weight:700;margin-bottom:10px;color:var(--text)}.items-head{display:flex;justify-content:space-between;align-items:center;margin:0 0 10px}.name-cell{display:flex;align-items:center;gap:8px}.name-cell .avatar{width:26px;height:26px;border-radius:8px;display:grid;place-items:center;background:linear-gradient(135deg,var(--primary),var(--accent));color:#fff;font-size:11px;font-weight:700;flex-shrink:0}.name-cell .sub{margin-top:1px;font-size:12px;color:var(--text4, #94a3b8)}.code-pill{display:inline;font-family:var(--font);font-size:12px;font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:0;line-height:inherit;padding:0;border-radius:0;background:none;color:var(--text2, #475569);border:none}.content .el-table .code-pill{font-size:12px;font-weight:500;color:var(--text2, #475569);white-space:nowrap}.code-pill.lg{font-size:13px;font-weight:600;color:var(--primary, #1677ff)}.content .el-table .el-button.is-link+.el-button.is-link{margin-left:2px}.content .el-table__fixed-right-patch{background:#fff}.content,.nav-scroll,.el-drawer__body,.messages{scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent}.content::-webkit-scrollbar,.nav-scroll::-webkit-scrollbar,.el-drawer__body::-webkit-scrollbar{width:8px;height:8px}.content::-webkit-scrollbar-thumb,.nav-scroll::-webkit-scrollbar-thumb,.el-drawer__body::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:8px;border:2px solid transparent;background-clip:padding-box}.content::-webkit-scrollbar-thumb:hover,.nav-scroll::-webkit-scrollbar-thumb:hover{background:#94a3b8;border:2px solid transparent;background-clip:padding-box}.el-drawer.rtl{box-shadow:-12px 0 40px #0c12221a!important}.el-select-dropdown{border-radius:10px!important;border:1px solid var(--border)!important;box-shadow:var(--shadow-md)!important}.el-select-dropdown__item.is-selected{font-weight:650!important;color:var(--primary)!important}.el-loading-mask{background-color:#f7f9fcb8!important}.hide-xs{display:revert}.show-xs{display:none!important}.mobile-page-hint{display:block;margin-bottom:12px;padding:10px 14px;border-radius:10px;border:1px dashed color-mix(in srgb,var(--primary) 40%,var(--border));background:color-mix(in srgb,var(--primary) 8%,var(--card))}.mobile-page-hint a{color:var(--primary);font-size:13px;font-weight:650;text-decoration:none}.mobile-page-hint a:hover{text-decoration:underline}html[data-theme=dark-tech] .mobile-page-hint{border-color:color-mix(in srgb,var(--primary) 35%,var(--border));background:color-mix(in srgb,var(--primary) 10%,var(--card))}html[data-theme=dark-tech] .mobile-page-hint a{color:var(--primary)}@media(max-width:992px){.mobile-page-hint{display:none}.content .toolbar{padding:10px 12px;gap:8px;border-radius:var(--radius-md);border-bottom:1px solid var(--border);margin-bottom:10px!important}.content .toolbar .el-input,.content .toolbar .el-select,.content .toolbar .el-date-editor,.content .toolbar .el-cascader,.content .toolbar .el-autocomplete{width:100%!important;max-width:100%!important;flex:1 1 100%}.content .toolbar .el-radio-group{width:100%;flex-wrap:wrap}.content .toolbar .result-hint{width:100%;flex:1 1 100%;order:5}.content .toolbar .spacer{display:none}.content .toolbar .el-button,.content .toolbar .el-upload{flex:1 1 calc(50% - 4px);min-width:0;margin:0!important}.content .toolbar .el-button:not(.is-link){min-height:var(--touch-target);justify-content:center}.content .el-table{border-radius:var(--radius-md)!important;border-top:1px solid var(--border)!important}.content .page-panel__body .el-table,.content .table-scroll .el-table{min-width:640px}.content .page-panel__body,.content .table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.content .pager,.content .page-panel__footer{padding:10px 12px}.content .el-pagination{flex-wrap:wrap;justify-content:center!important;row-gap:6px}.content .el-pagination .el-pagination__sizes,.content .el-pagination .el-pagination__jump{display:none}.content .detail-bar,.content .wo-actions,.content .head-actions{padding:10px 12px;gap:8px}.content .detail-bar .el-button:not(.is-link),.content .wo-actions .el-button:not(.is-link),.content .head-actions .el-button:not(.is-link){flex:1 1 calc(50% - 4px);min-height:var(--touch-target);margin:0!important}.hr-kpis{display:grid!important;grid-template-columns:1fr 1fr;gap:10px}.hide-xs{display:none!important}.show-xs{display:inline-flex!important}.el-dialog{width:calc(100vw - 24px)!important;max-width:calc(100vw - 24px)!important;margin:12px auto!important}.el-dialog__body{padding:14px 16px 18px!important;max-height:calc(100vh - 140px);overflow-y:auto}.el-drawer.rtl,.el-drawer.ltr{width:calc(100vw - 12px)!important;max-width:calc(100vw - 12px)!important}.el-drawer.rtl{max-width:calc(100vw - 12px)!important}.el-dialog .detail-banner,.el-drawer .detail-banner{flex-direction:column;align-items:stretch;gap:10px}.el-dialog .detail-banner .db-meta{word-break:break-word}.el-dialog__footer{display:flex;flex-wrap:wrap;gap:8px;justify-content:stretch}.el-dialog__footer .el-button{flex:1 1 calc(50% - 4px);min-height:var(--touch-target, 36px);margin:0!important}.el-dialog .el-row>.el-col,.el-drawer .el-row>.el-col{max-width:100%!important;flex:0 0 100%!important}.el-dialog .el-form-item,.el-drawer .el-form-item{display:block}.el-dialog .el-form-item__label,.el-drawer .el-form-item__label{width:auto!important;text-align:left;justify-content:flex-start}.el-dialog .el-form-item__content,.el-drawer .el-form-item__content{margin-left:0!important}.el-dialog .table-scroll,.el-drawer .table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.content .expand-box{padding:8px 10px 12px 12px!important}.content .items-head,.content .returns-hd{flex-wrap:wrap;gap:8px}.content .detail-actions,.content .perm-actions{flex-wrap:wrap}.content .scan-mini{width:100%}.el-message-box{width:calc(100vw - 32px)!important;max-width:420px!important}.el-form-item__label{line-height:1.4;padding-bottom:4px}html.is-narrow body{-webkit-text-size-adjust:100%}html.is-narrow .content .toolbar.wrap{flex-wrap:wrap}}@media(max-width:800px){.hr-kpis{grid-template-columns:1fr 1fr}}.content .detail-banner,.content .aging-hero,.content .report-hero,.el-dialog .detail-banner,.el-drawer .detail-banner{background:linear-gradient(105deg,var(--primary-light),transparent 48%),linear-gradient(180deg,var(--card) 0%,var(--bg2) 100%)!important;color:var(--text)!important;border:1px solid var(--border)!important;box-shadow:var(--shadow-sm)}.content .aging-hero .hero-title,.content .aging-hero .hero-kicker,.content .aging-hero .hero-sub,.content .report-hero .hero-title,.content .report-hero .hero-kicker,.content .report-hero .hero-sub,.content .detail-banner .db-no,.content .detail-banner .db-title,.content .detail-banner .db-meta,.el-dialog .detail-banner .db-no,.el-dialog .detail-banner .db-title,.el-dialog .detail-banner .db-meta{color:inherit}.content .aging-hero .hero-kicker,.content .report-hero .hero-kicker,.content .detail-banner .db-meta,.el-dialog .detail-banner .db-meta,.content .aging-hero .hero-sub,.content .report-hero .hero-sub{color:var(--text3)!important;opacity:1!important}.content .aging-hero .hero-title,.content .report-hero .hero-title,.content .detail-banner .db-title,.el-dialog .detail-banner .db-title{font-weight:800}.content .aging-hero .hero-title,.content .report-hero .hero-title,.content .detail-banner .db-title,.el-dialog .detail-banner .db-title{background:var( --app-title-gradient, linear-gradient(90deg, var(--primary), var(--app-accent-2, var(--accent))) );-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:var(--text)!important}.content .detail-banner,.content .contract-hero,.content .cust-detail .cust-hero,.content .opp-hero,.content .wo-hero,.content .sup-hero,.content .quote-hero,.content .biz-hero,.content .mc-hero,.content .proj-banner,.el-dialog .detail-banner,.el-drawer .detail-banner{position:relative;overflow:hidden}.content .detail-banner:before,.content .contract-hero:before,.content .cust-detail .cust-hero:before,.content .opp-hero:before,.content .wo-hero:before,.content .sup-hero:before,.content .quote-hero:before,.content .biz-hero:before,.content .mc-hero:before,.content .proj-banner:before,.el-dialog .detail-banner:before,.el-drawer .detail-banner:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;border-radius:12px 0 0 12px;background:linear-gradient(180deg,var(--primary),var(--app-accent-2, var(--accent)));box-shadow:0 0 12px var(--app-glow-a, transparent);pointer-events:none;z-index:1}.content .detail-banner:after,.content .contract-hero:after,.content .cust-detail .cust-hero:after,.content .opp-hero:after,.content .wo-hero:after,.content .sup-hero:after,.content .quote-hero:after,.content .biz-hero:after,.content .mc-hero:after,.content .proj-banner:after,.el-dialog .detail-banner:after,.el-drawer .detail-banner:after{content:"";position:absolute;right:-24px;top:-36px;width:140px;height:140px;border-radius:40% 60% 55% 45%;background:radial-gradient(circle at 30% 30%,var(--app-glow-a, rgba(14, 116, 144, .1)),transparent 62%);pointer-events:none;z-index:0}.content .detail-banner>*,.content .contract-hero>*,.content .cust-detail .cust-hero>*,.content .opp-hero>*,.content .wo-hero>*,.content .sup-hero>*,.content .quote-hero>*,.content .biz-hero>*,.content .mc-hero>*,.content .proj-banner>*,.el-dialog .detail-banner>*,.el-drawer .detail-banner>*{position:relative;z-index:2}.content .contract-hero h2,.content .cust-detail .cust-hero h2,.content .opp-hero h2,.content .wo-hero h2,.content .sup-hero h2,.content .quote-hero h2,.content .biz-hero h2,.content .mc-hero h2,.content .proj-banner .pb-title,.content .proj-banner .pb-name,.content .detail-banner .db-title,.el-dialog .detail-banner .db-title,.el-drawer .detail-banner .db-title{background:var( --app-title-gradient, linear-gradient(90deg, var(--primary), var(--app-accent-2, var(--accent))) );-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:var(--text)}.content .doc-no,.content .detail-banner .db-no,.content .proj-banner .pb-no,.el-dialog .detail-banner .db-no,.el-drawer .detail-banner .db-no{font-family:var(--font);font-size:12px;font-weight:500;letter-spacing:.02em;font-variant-numeric:tabular-nums;color:var(--text3, #64748b)!important;opacity:1!important}.content .back-btn{margin-bottom:8px;color:var(--text3);font-weight:600;transition:color .15s ease}.content .back-btn:hover{color:var(--primary)}html[data-theme=dark-tech] .content .detail-banner,html[data-theme=dark-tech] .content .contract-hero,html[data-theme=dark-tech] .content .cust-detail .cust-hero,html[data-theme=dark-tech] .content .opp-hero,html[data-theme=dark-tech] .content .wo-hero,html[data-theme=dark-tech] .content .sup-hero,html[data-theme=dark-tech] .content .quote-hero,html[data-theme=dark-tech] .content .biz-hero,html[data-theme=dark-tech] .content .mc-hero,html[data-theme=dark-tech] .content .proj-banner,html[data-theme=dark-tech] .el-dialog .detail-banner,html[data-theme=dark-tech] .el-drawer .detail-banner{box-shadow:var(--shadow-sm),inset 0 1px #ffffff0a}html[data-theme=dark-tech] .code-pill{background:none;color:var(--text2);border:none;font-weight:500}.panel-deco{position:relative}.panel-deco:before,.panel-deco:after{content:"";position:absolute;width:12px;height:12px;pointer-events:none;z-index:3;opacity:.55;transition:opacity .2s ease}.panel-deco:before{top:-1px;left:-1px;border-top:2px solid var(--app-accent, var(--primary));border-left:2px solid var(--app-accent, var(--primary))}.panel-deco:after{bottom:-1px;right:-1px;border-bottom:2px solid var(--app-accent, var(--primary));border-right:2px solid var(--app-accent, var(--primary))}.panel-deco:hover:before,.panel-deco:hover:after{opacity:.9}.content .page-panel{box-shadow:var(--shadow-sm),inset 0 1px color-mix(in srgb,var(--card) 88%,#fff)}.content .page-panel__toolbar{background:linear-gradient(180deg,color-mix(in srgb,var(--card) 96%,var(--bg)),var(--card));border-bottom-color:var(--border)}.content .page-panel__title{display:inline-flex;align-items:center;gap:8px}.content .page-panel__title:before{content:"";width:3px;height:14px;border-radius:2px;background:linear-gradient(180deg,var(--primary),var(--app-accent, var(--accent)));box-shadow:0 0 8px var(--app-glow-a, transparent)}.content .card,.content .dash .card{box-shadow:var(--shadow-sm),inset 0 1px color-mix(in srgb,var(--card) 90%,#fff);transition:box-shadow .2s ease,border-color .2s ease}.content .card:hover,.content .dash .card:hover{border-color:color-mix(in srgb,var(--app-accent, var(--primary)) 28%,var(--border));box-shadow:var(--shadow),0 0 0 1px color-mix(in srgb,var(--app-accent, var(--primary)) 8%,transparent)}.num-tabular{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}html[data-theme=dark-tech] .content .page-panel,html[data-theme=dark-tech] .content .dash .card,html[data-theme=dark-tech] .content .dash .kpi-card,html[data-theme=dark-tech] .content .dash .biz-mini,html[data-theme=dark-tech] .content .dash .alert-strip{background:var(--card);border-color:var(--border)}html[data-theme=dark-tech] .content .dash .welcome-banner{border-color:color-mix(in srgb,var(--app-accent) 35%,var(--border));box-shadow:0 12px 36px #00000059,inset 0 1px #ffffff0a}html[data-theme=dark-tech] .content .page-panel__toolbar,html[data-theme=dark-tech] .content .page-panel__footer{background:color-mix(in srgb,var(--card) 92%,var(--bg2))}html[data-theme=dark-tech] .content .el-table{--el-table-header-bg-color: color-mix(in srgb, var(--bg2) 88%, var(--card));--el-table-header-text-color: var(--text3);--el-table-text-color: var(--text2);--el-table-row-hover-bg-color: color-mix(in srgb, var(--app-accent, var(--primary)) 10%, var(--card));--el-table-border-color: var(--border);--el-table-bg-color: var(--card);--el-table-tr-bg-color: var(--card);--el-table-current-row-bg-color: color-mix(in srgb, var(--primary) 14%, var(--card))}html[data-theme=dark-tech] .content .el-table th.el-table__cell{background:color-mix(in srgb,var(--bg2) 85%,var(--card))!important}html[data-theme=dark-tech] .content .el-table .el-table__body tr:hover>td.el-table__cell{background-color:color-mix(in srgb,var(--app-accent, var(--primary)) 10%,var(--card))!important}html[data-theme=dark-tech] .content .el-table--striped .el-table__body tr.el-table__row--striped td.el-table__cell{background:color-mix(in srgb,var(--bg2) 38%,var(--card))!important}html[data-theme=dark-tech] .content .el-table .el-table__empty-block{background:var(--card)}html[data-theme=dark-tech] .el-form-item__label{color:var(--text3)!important}html[data-theme=dark-tech] .el-input__wrapper.is-focus,html[data-theme=dark-tech] .el-select__wrapper.is-focused,html[data-theme=dark-tech] .el-textarea__inner:focus{box-shadow:0 0 0 1px var(--app-accent, var(--primary)) inset,0 0 0 3px color-mix(in srgb,var(--app-accent, var(--primary)) 16%,transparent) inset!important}html[data-theme=dark-tech] .el-textarea__inner{background:var(--bg2)!important;color:var(--text)!important;box-shadow:0 0 0 1px var(--border) inset!important}html[data-theme=dark-tech] .content .el-tabs__header{background:var(--card);border-color:var(--border)}html[data-theme=dark-tech] .el-tabs__item{color:var(--text3)}html[data-theme=dark-tech] .el-tabs__item.is-active{color:var(--app-accent, var(--primary))}html[data-theme=dark-tech] .el-tabs__active-bar{background:var(--app-accent, var(--primary))}html[data-theme=dark-tech] .el-tabs__nav-wrap:after{background-color:var(--border)}html[data-theme=dark-tech] .content .pager,html[data-theme=dark-tech] .el-pagination{--el-pagination-bg-color: var(--card);--el-pagination-text-color: var(--text3);--el-pagination-button-disabled-bg-color: var(--bg2);--el-pagination-hover-color: var(--app-accent, var(--primary))}html[data-theme=dark-tech] .el-pagination .btn-next,html[data-theme=dark-tech] .el-pagination .btn-prev,html[data-theme=dark-tech] .el-pagination .el-pager li{background:var(--bg2)!important;color:var(--text2)!important}html[data-theme=dark-tech] .el-pagination .el-pager li.is-active{background:color-mix(in srgb,var(--primary) 22%,var(--bg2))!important;color:var(--app-accent, var(--primary))!important}html[data-theme=dark-tech] .content .toolbar{border-color:var(--border);background:linear-gradient(180deg,color-mix(in srgb,var(--card) 96%,var(--bg)),var(--card))}html[data-theme=dark-tech] .el-button--default{--el-button-bg-color: var(--bg2);--el-button-border-color: var(--border);--el-button-text-color: var(--text2);--el-button-hover-bg-color: color-mix(in srgb, var(--bg2) 80%, var(--card));--el-button-hover-border-color: color-mix(in srgb, var(--app-accent, var(--primary)) 35%, var(--border))}html[data-theme=dark-tech] .el-button.is-plain{--el-button-bg-color: transparent;--el-button-hover-bg-color: color-mix(in srgb, var(--primary) 12%, transparent)}html[data-theme=dark-tech] .el-dialog__body,html[data-theme=dark-tech] .el-drawer__body{color:var(--text2)}html[data-theme=dark-tech] .el-descriptions__label{color:var(--text3)!important;background:var(--bg2)!important}html[data-theme=dark-tech] .el-descriptions__content{color:var(--text2)!important;background:var(--card)!important}html[data-theme=dark-tech] .el-descriptions__body .el-descriptions__table{border-color:var(--border)!important}html[data-theme=dark-tech] .el-dropdown-menu{background:var(--card)!important;border-color:var(--border)!important}html[data-theme=dark-tech] .el-dropdown-menu__item{color:var(--text2)!important}html[data-theme=dark-tech] .el-dropdown-menu__item:not(.is-disabled):hover{background:color-mix(in srgb,var(--primary) 12%,var(--card))!important;color:var(--app-accent, var(--primary))!important}html[data-theme=dark-tech] .el-dialog,html[data-theme=dark-tech] .el-message-box,html[data-theme=dark-tech] .el-drawer{--el-bg-color: var(--card);--el-text-color-primary: var(--text);background:var(--card)!important}html[data-theme=dark-tech] .el-dialog__header,html[data-theme=dark-tech] .el-drawer__header{background:var(--bg2)!important;color:var(--text)!important}html[data-theme=dark-tech] .el-table{--el-fill-color-blank: var(--card);--el-bg-color: var(--card)}html[data-theme=dark-tech] .el-input__wrapper,html[data-theme=dark-tech] .el-select__wrapper{background:var(--bg2)!important}html[data-theme=dark-tech] .el-loading-mask{background-color:#0f172ab8!important}html[data-theme=dark-tech] .hk{background:linear-gradient(145deg,var(--card) 0%,color-mix(in srgb,var(--bg2) 88%,var(--card)) 100%);border-color:var(--border);box-shadow:var(--shadow-sm),inset 0 1px #ffffff08}html[data-theme=dark-tech] .hk-icon.blue{background:color-mix(in srgb,#0ea5e9 18%,var(--card));color:#7dd3fc}html[data-theme=dark-tech] .hk-icon.teal{background:color-mix(in srgb,var(--app-accent, #22d3ee) 16%,var(--card));color:#67e8f9}html[data-theme=dark-tech] .hk-icon.green{background:color-mix(in srgb,#10b981 16%,var(--card));color:#6ee7b7}html[data-theme=dark-tech] .hk-icon.orange{background:color-mix(in srgb,#f59e0b 16%,var(--card));color:#fcd34d}html[data-theme=dark-tech] .hk-icon.rose{background:color-mix(in srgb,#f43f5e 16%,var(--card));color:#fda4af}html[data-theme=dark-tech] .hk-icon.slate{background:color-mix(in srgb,#64748b 20%,var(--card));color:#cbd5e1}html[data-theme=dark-tech] .hk-num.green{color:#6ee7b7}html[data-theme=dark-tech] .hk-num.orange{color:#fcd34d}html[data-theme=dark-tech] .hk-num.rose{color:#fda4af}html[data-theme=dark-tech] .el-message{background:var(--card)!important}html[data-theme=dark-tech] .page-panel{background:var(--card)}html.is-mobile{-webkit-tap-highlight-color:transparent}html.is-mobile .content .el-table .el-button.is-link{min-height:32px;padding:4px 10px}@media(max-width:992px){.content .emp-grid{grid-template-columns:1fr;gap:10px}.content .leave-list .leave-card .lc-actions{flex-wrap:wrap;gap:4px}.content .leave-list .leave-card .lc-top{flex-wrap:wrap}.content .msg-item,.content .report-card{padding:12px 14px}.content .wo-detail .wo-hero{flex-direction:column;align-items:stretch}.content .detail-grid{grid-template-columns:1fr!important}.content .dispatch-recs .rec-chip{min-height:var(--touch-target, 36px)}.content .cal-scroll,.content .heat-scroll{overflow-x:visible;margin:0;padding-bottom:0}.content .cal-scroll .cal-grid,.content .heat-scroll .heat-dows,.content .heat-scroll .heat-grid{min-width:0;width:100%}.content .opp-board,.content .kanban-board{flex-direction:column;overflow-x:visible;overflow-y:visible;gap:12px;padding-bottom:0;min-height:0;scroll-snap-type:none}.content .opp-board .board-col,.content .kanban-board .kanban-col{flex:1 1 auto;width:100%;max-width:100%;min-width:0!important;max-height:none}.content .kanban-board .kanban-cards{max-height:280px}.content .table-scroll:after{content:"← 左右滑动查看表格 →";display:block;text-align:center;font-size:11px;color:var(--text4);padding:6px 0 2px;pointer-events:none}.content .page-panel__scroll:after{content:"← 左右滑动查看表格 →";display:block;text-align:center;font-size:11px;color:var(--text4);padding:6px 12px 8px;pointer-events:none}.content .flow-strip{flex-direction:column;overflow-x:visible;flex-wrap:nowrap;padding-bottom:0;gap:0;scroll-snap-type:none}.content .flow-strip .flow-arrow{display:flex;transform:rotate(90deg);padding:2px 0}.content .flow-strip .flow-node{flex:1 1 auto;width:100%;min-width:0;scroll-snap-align:none}.content .biz-life{flex-direction:column;overflow-x:visible}.content .heat-head{flex-direction:column;align-items:stretch;gap:10px}.content .heat-legend{justify-content:flex-start}.content .cal-chip{font-size:9px;padding:2px 3px;max-width:100%}.content .heat-grid{grid-template-columns:repeat(7,1fr);gap:3px}.content .heat-cell{min-height:32px;font-size:10px;padding:2px}.content .cal-grid{font-size:11px}.content .cal-cell{min-height:58px;padding:4px 2px}.content .cal-dow{font-size:10px}.content .quote-line-editor{overflow-x:visible}.content .sticky-bar{position:static}.content .patrol-layout,.content .dept-layout{grid-template-columns:1fr!important;gap:12px}.content .patrol-layout .panel,.content .dept-layout .dept-tree-pane,.content .dept-layout .dept-member-pane{min-width:0}.content .tree-node{flex-wrap:wrap;gap:4px}.content .tree-node .tn-actions{flex:1 1 100%;justify-content:flex-end}.content .proj-banner,.content .contract-hero,.content .opp-hero,.content .aging-hero,.content .cust-hero,.content .wo-hero,.content .sup-hero,.content .quote-hero,.content .biz-hero,.content .mc-hero{flex-direction:column;align-items:stretch;gap:12px}.content .proj-kpis,.content .opp-summary,.content .stat-row,.content .cust-overview,.content .sup-kpis,.content .fin-stats,.content .risk-list,.content .biz-sum-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.content .contract-actions,.content .opp-hero-actions,.content .pb-actions,.content .cust-actions,.content .wo-actions,.content .biz-actions,.content .quote-actions,.content .mc-actions{display:flex;flex-wrap:wrap;gap:8px;width:100%}.content .contract-actions>.el-button:not(.is-link),.content .opp-hero-actions>.el-button:not(.is-link),.content .pb-actions>.el-button:not(.is-link),.content .cust-actions>.el-button:not(.is-link),.content .wo-actions>.el-button:not(.is-link),.content .biz-actions>.el-button:not(.is-link),.content .quote-actions>.el-button:not(.is-link),.content .mc-actions>.el-button:not(.is-link){flex:1 1 calc(50% - 4px);margin:0!important;min-height:var(--touch-target, 36px)}.content .profile-grid{grid-template-columns:1fr!important}.content .cust-meta,.content .wo-meta,.content .cust-title-row,.content .wo-title-row,.content .biz-meta,.content .quote-meta,.content .quote-title-row{flex-wrap:wrap}.content .pay-progress .pp-kpis{grid-template-columns:1fr 1fr}.content .report-hero .hero-actions{display:flex;flex-wrap:wrap;gap:8px;width:100%}.content .report-hero .hero-actions>.el-button:not(.is-link){flex:1 1 calc(50% - 4px);margin:0!important;min-height:var(--touch-target, 36px)}.content .stage-banner{flex-direction:column;align-items:stretch}.content .stage-banner .sev-meter{min-width:0;width:100%}.content .tab-toolbar{flex-direction:column;align-items:stretch;gap:8px}.content .tab-toolbar .el-select,.content .tab-toolbar .el-date-editor{width:100%!important}.content .tab-toolbar .year-total{margin-left:0;width:100%}.content .health-layout{flex-direction:column;align-items:stretch}.content .health-score{margin:0 auto}.content .wo-dist-row,.content .radar-row{grid-template-columns:1fr;gap:4px}.content .dash .welcome-banner{flex-direction:column;align-items:stretch}.content .dash .wb-actions{width:100%;flex-wrap:wrap}.content .dash .wb-btn{flex:1 1 calc(50% - 4px);min-height:var(--touch-target, 36px)}.content .ai-page{height:calc(100dvh - var(--topbar-h, 56px) - 16px);min-height:420px;border-radius:10px}.content .letterhead{flex-direction:column;align-items:flex-start}.content .lh-meta{flex-direction:column;gap:4px}.content .channel-row{flex-direction:column;align-items:stretch;gap:8px}.content .channel-row .el-switch{align-self:flex-start}.content .company-tabs{padding:6px 10px 12px}.content .title-row{flex-wrap:wrap;gap:6px}.content .panel .actions{display:flex;flex-wrap:wrap;gap:8px}.content .panel .actions>.el-button:not(.is-link){flex:1 1 calc(50% - 4px);min-height:var(--touch-target, 36px);margin:0!important}.content .aging-hero>.el-button:not(.is-link){width:100%;min-height:var(--touch-target, 36px);margin:0!important}.content .aging-hero>.el-space{display:flex;flex-wrap:wrap;gap:8px;width:100%}.content .aging-hero>.el-space .el-button{flex:1 1 calc(50% - 4px);min-height:var(--touch-target, 36px);margin:0!important}.content .bucket-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.content .expand-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.content .statement-row{flex-wrap:wrap;gap:4px 8px}.content .statement-row span:last-child{margin-left:auto;text-align:right;word-break:break-word}.content .print-area.el-row>.el-col,.content .print-area .el-col{flex:0 0 100%;max-width:100%}.content .layout-2,.content .mini-row{grid-template-columns:1fr!important}.content .page-panel .el-tabs__header{margin:0;padding:0 14px}.content .page-panel .el-tabs__content{padding:0}.content .page-panel .el-tabs .toolbar{margin:0}.content .hit pre{white-space:pre-wrap;word-break:break-word}.content .el-tabs__nav-wrap{overflow-x:auto}.content .el-tabs__nav-scroll{overflow:visible}.content .el-descriptions:not(.is-vertical) .el-descriptions__body .el-descriptions__table{display:block}.content .el-descriptions:not(.is-vertical) .el-descriptions__cell{display:flex;flex-direction:column;padding-bottom:8px}.content .page-flow-guide{margin-bottom:10px;padding:10px 12px}.content .flow-guide-head{flex-wrap:wrap;gap:6px}.content .detail-tabs,.content .detail-tabs.el-tabs{padding:10px 12px!important}.content .detail-tabs .el-tabs__header{margin-bottom:8px}.content .detail-tabs .el-tabs__nav-wrap{overflow-x:auto}.content .cost-kpis,.content .health-grid,.content .cust-metrics{grid-template-columns:repeat(2,minmax(0,1fr))!important}.content .opp-layout,.content .quote-layout,.content .contract-layout{grid-template-columns:1fr!important}.content .missing-bar,.content .announcement-section{flex-wrap:wrap;gap:6px}.content .mc-detail .desc.el-descriptions,.content .el-descriptions{overflow-x:auto}.content .dash .kpi-grid,.content .dash .biz-mini-grid{grid-template-columns:repeat(2,1fr)}.content .analytics .metrics-tabs,.content .analytics .panel{padding:12px}.content .quote-editor .form-grid{grid-template-columns:1fr}.content .panel:has(>.el-table){overflow-x:auto;-webkit-overflow-scrolling:touch}.content .panel:has(>.el-table)>.el-table{min-width:560px}.content .panel:has(>.el-table):after{content:"← 左右滑动查看表格 →";display:block;text-align:center;font-size:11px;color:var(--text4);padding:6px 0 2px;pointer-events:none}.content .el-table__expanded-cell{overflow-x:auto;-webkit-overflow-scrolling:touch;padding:8px 12px!important}.content .el-table__expanded-cell .el-table{min-width:480px}.content .el-table__expanded-cell:after{content:"← 左右滑动查看分录 →";display:block;text-align:center;font-size:10px;color:var(--text4);padding:4px 0 0;pointer-events:none}.content .el-table .el-table__fixed-right,.content .el-table .el-table__fixed{display:none!important}.content .el-table .el-table-fixed-column--right,.content .el-table .el-table-fixed-column--left{position:static!important;right:auto!important;left:auto!important;box-shadow:none!important}.content .order-detail,.content .contract-detail,.content .quote-detail{min-width:0;max-width:100%;overflow-x:hidden}.content .detail-main-grid{grid-template-columns:1fr!important}.content .gantt-scale{margin-left:0}.content .gantt-row{grid-template-columns:1fr;gap:4px}.content .gantt-label{white-space:normal;font-size:11px}.content .info-dl{grid-template-columns:1fr;gap:2px 0}.content .info-dl dt{font-weight:600;margin-top:6px}.content .pb-progress{min-width:0;width:100%}.content .proj-banner,.content .proj-banner .pb-progress{align-items:stretch}.content .detail-tabs .el-tabs__nav-wrap:after,.content .el-tabs__nav-wrap:after{content:"← 滑动切换标签 →";display:block;text-align:center;font-size:10px;color:var(--text4);padding:4px 0 0;pointer-events:none}.content .quotes-page .page-mode{width:100%}.content .quotes-page .page-mode :deep(.el-radio-button){flex:1}.content .quotes-page .page-mode :deep(.el-radio-button__inner){width:100%}.content .item-row{flex-wrap:wrap;align-items:stretch}.content .item-row>.el-select,.content .item-row>.el-input,.content .item-row>.el-input-number{flex:1 1 100%;min-width:0!important;width:100%!important}.content .report-hero .hero-sub{max-width:none}.content .aging-hero,.content .report-hero{flex-direction:column;align-items:stretch;gap:12px}.content .aging-hero .el-space,.content .report-hero .hero-actions{flex-wrap:wrap;width:100%}@media(max-width:480px){.content .hr-kpis,.content .proj-kpis,.content .opp-summary,.content .cust-overview,.content .sup-kpis,.content .fin-stats,.content .cost-kpis,.content .biz-sum-row,.content .dash .kpi-grid,.content .dash .biz-mini-grid{grid-template-columns:1fr!important}}}@media(prefers-reduced-motion:reduce){.page-hero{animation:none!important}}html[data-theme=dark-tech] .hk-icon.purple{background:#7c3aed26;color:#c4b5fd}.el-popper.rs-flyout-pop{padding:8px!important;border-radius:10px!important;min-width:176px;box-shadow:0 12px 32px #0c122224!important}.m-list .head h1,.m-home .greet .hi{margin:0 0 4px;font-size:22px;font-weight:800;color:var(--text)}.m-list .head p,.m-home .greet p{margin:0 0 14px;color:var(--text3);font-size:13px}.m-filters,.m-list .filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.m-chip,.m-list .chip{border:1px solid var(--border);background:var(--card);color:var(--text3);border-radius:999px;padding:6px 12px;font-size:12px;font-weight:650}.m-chip.on,.m-list .chip.on{border-color:color-mix(in srgb,var(--primary) 40%,var(--border));background:var(--primary-light);color:var(--primary)}.m-cards,.m-list .cards{display:grid;gap:10px}.m-card,.m-list .card{text-align:left;border:1px solid var(--border);background:var(--card);border-radius:14px;padding:12px 14px;box-shadow:var(--shadow-sm);color:var(--text)}.m-card .row1,.m-list .card .row1{display:flex;justify-content:space-between;align-items:center;gap:8px}.m-card .st,.m-list .card .st{font-size:12px;color:var(--primary);font-weight:650}.m-card .od,.m-list .card .od{font-size:11px;color:#fff;background:var(--danger, #b91c1c);border-radius:6px;padding:1px 6px;font-weight:700}.m-card .desc,.m-list .card .desc{margin-top:6px;font-size:13px;color:var(--text2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.m-card .meta,.m-list .card .meta{margin-top:8px;display:flex;justify-content:space-between;gap:8px;font-size:11px;color:var(--text3)}.m-btn-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.m-btn-row .el-button{flex:1 1 auto;min-width:96px;min-height:var(--touch-target, 36px)}@media(max-width:992px){.m-filters,.m-list .filters{flex-direction:column}.m-filters .el-input,.m-filters .el-select,.m-list .filters .el-input,.m-list .filters .el-select{width:100%!important}}.m-section{margin-bottom:16px;padding:14px;background:var(--card);border:1px solid var(--border);border-radius:14px;box-shadow:var(--shadow-sm)}.m-section h3{margin:0 0 10px;font-size:14px;font-weight:750;color:var(--text2)}.m-page .head h1{margin:0 0 4px;font-size:22px;font-weight:800}.m-page .head p{margin:0 0 14px;color:var(--text3);font-size:13px}.m-page .form{display:grid;gap:10px;background:var(--card);border:1px solid var(--border);border-radius:14px;padding:12px;margin-bottom:14px}.m-page label{display:grid;gap:6px;font-size:12px;color:var(--text3);font-weight:650}.m-page input,.m-page textarea,.m-page select{border:1px solid var(--border);border-radius:10px;padding:10px;font:inherit;color:var(--text);background:var(--card)}html[data-theme=dark-tech] .m-page input,html[data-theme=dark-tech] .m-page textarea,html[data-theme=dark-tech] .m-page select{background:var(--bg2);border-color:color-mix(in srgb,var(--border) 80%,#334155);color:var(--text)}html[data-theme=dark-tech] .m-page .card.unread,html[data-theme=dark-tech] .m-list .card.unread{background:color-mix(in srgb,var(--primary) 12%,var(--card));border-color:color-mix(in srgb,var(--primary) 35%,var(--border))}html[data-theme=dark-tech] .m-shell .m-tab{background:color-mix(in srgb,var(--card) 92%,transparent);border-top-color:var(--border)}html[data-theme=dark-tech] .m-shell .m-top{background:linear-gradient(90deg,#020617,color-mix(in srgb,var(--primary) 45%,#0f172a));border-bottom:1px solid color-mix(in srgb,var(--primary) 25%,transparent)}html[data-theme=dark-tech] .m-shell .m-tab .tab.on .ico{background:color-mix(in srgb,var(--primary) 22%,#0f172a);box-shadow:0 0 0 1px color-mix(in srgb,var(--primary) 35%,transparent)}html[data-theme=dark-tech] .m-shell{background:radial-gradient(900px 420px at 10% -20%,color-mix(in srgb,var(--primary) 15%,transparent),transparent),linear-gradient(180deg,var(--bg2),var(--bg))}.m-page .btn{border:0;border-radius:10px;padding:12px;font-weight:750;color:#fff;background:var(--primary)}.m-page .btn:disabled{opacity:.6}.m-page .section-title{font-size:13px;font-weight:750;color:var(--text2);margin-bottom:8px}.m-page .cards{display:flex;flex-direction:column;gap:10px}.m-page .card{border:1px solid var(--border);background:var(--card);border-radius:14px;padding:12px 14px}.m-page .alert{margin-bottom:12px;padding:10px 12px;border-radius:10px;font-size:12px;color:var(--text2);background:color-mix(in srgb,var(--warning, #b45309) 12%,var(--card));border:1px solid color-mix(in srgb,var(--warning, #b45309) 35%,var(--border))}.m-page .alert strong{color:var(--warning, #b45309)}html[data-theme=dark-tech] .m-page .od,html[data-theme=dark-tech] .m-list .od{background:color-mix(in srgb,#be123c 18%,var(--card));color:#fda4af}.auth-shell{min-height:100vh;min-height:100dvh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;font-family:var(--font, "PingFang SC", "Microsoft YaHei", sans-serif);background:radial-gradient(circle at 14% 20%,var(--app-glow-a, rgba(45, 212, 191, .22)),transparent 30%),radial-gradient(circle at 86% 14%,var(--app-glow-b, rgba(56, 189, 248, .18)),transparent 34%),linear-gradient(145deg,#061018,color-mix(in srgb,var(--primary-dark, #0c2430) 42%,#0c2430) 48%,color-mix(in srgb,var(--primary, #0f766e) 22%,#0f3a42))}.auth-shell:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;z-index:2;pointer-events:none;background:linear-gradient(90deg,transparent 8%,var(--app-accent, var(--primary, #0f766e)) 50%,transparent 92%);opacity:.85}.auth-shell .bg-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:56px 56px;mask-image:linear-gradient(180deg,#000000f2,#00000026);pointer-events:none}.auth-shell .bg-orb{position:absolute;border-radius:50%;filter:blur(40px);pointer-events:none}.auth-shell .orb-a{width:260px;height:260px;left:-50px;bottom:10%;background:color-mix(in srgb,var(--primary, #0f766e) 35%,transparent)}.auth-shell .orb-b{width:200px;height:200px;right:-30px;top:14%;background:color-mix(in srgb,var(--accent, #0e7490) 28%,transparent)}.auth-body{position:relative;z-index:1;width:100%;max-width:480px;padding:calc(28px + env(safe-area-inset-top,0px)) 18px calc(32px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;align-items:center}.auth-card{width:100%;background:#fff;border-radius:16px;padding:28px 26px 22px;box-shadow:0 0 0 1px #ffffff14,0 24px 64px #0000006b}.auth-brand{display:flex;align-items:center;gap:10px;margin-bottom:18px;font-weight:750;color:#0f172a}.auth-mark{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(145deg,var(--primary, #0f766e),var(--accent, #0e7490));color:#fff;font-weight:800;font-size:15px;box-shadow:0 8px 20px color-mix(in srgb,var(--primary, #0f766e) 35%,transparent)}.auth-card h1{margin:0;font-family:var(--font-display, "PingFang SC", "Microsoft YaHei", serif);font-size:22px;font-weight:700;color:#0f172a}.auth-sub{margin:8px 0 18px;color:#64748b;font-size:13px;line-height:1.55}.auth-sub.center{text-align:center}.auth-submit{width:100%;margin-top:4px}.auth-back{display:inline-block;margin-top:16px;color:var(--primary, #0f766e);text-decoration:none;font-size:13px;font-weight:600}.auth-back:hover{text-decoration:underline}.auth-mobile{display:block;width:100%;margin-top:14px;padding:11px 14px;text-align:center;font-size:13px;font-weight:650;color:#99f6e4;text-decoration:none;border-radius:10px;border:1px dashed rgba(153,246,228,.45);background:#ffffff0f;box-sizing:border-box}.auth-mobile:hover{background:#ffffff1a;text-decoration:none}.auth-ok{width:52px;height:52px;border-radius:999px;display:grid;place-items:center;margin:0 auto 10px;background:#ecfdf5;color:#059669;font-size:22px;font-weight:800}.auth-ok.err{background:#fef2f2;color:#dc2626}.auth-tip{background:#f0fdfa;border:1px solid #99f6e4;border-radius:10px;padding:12px 14px;font-size:12px;color:#334155;line-height:1.55;margin-bottom:14px}.auth-shell .el-input__wrapper{border-radius:10px!important;padding:4px 14px!important;background:#f8fafc!important;box-shadow:0 0 0 1px #e2e8f0 inset!important}.auth-shell .el-input__wrapper.is-focus{background:#fff!important;box-shadow:0 0 0 1px var(--primary, #0f766e) inset,0 0 0 3px var(--primary-light, rgba(15, 118, 110, .14)) inset!important}.auth-shell .auth-submit.el-button--primary{border:none!important;background:linear-gradient(135deg,var(--primary, #0f766e),var(--accent, #0e7490))!important;box-shadow:0 8px 22px color-mix(in srgb,var(--primary, #0f766e) 32%,transparent);letter-spacing:.06em;font-weight:700}@media(max-width:992px){.auth-shell{align-items:flex-start;overflow:auto}.auth-body{padding:calc(20px + env(safe-area-inset-top,0px)) 16px calc(28px + env(safe-area-inset-bottom,0px))}.auth-card{padding:24px 20px 18px;border-radius:14px}.auth-submit{min-height:var(--touch-target, 44px)}}
