:root{--td-brand-color:#0052d9;--td-brand-color-hover:#2673ff;--td-brand-color-active:#0034b5;--td-brand-color-light:#d9e1ff;--td-brand-color-light-hover:#ccd9ff;--td-success-color:#00a870;--td-warning-color:#ff7d00;--td-error-color:#d54941;--td-bg-color-page:#f0f2f5;--td-bg-color-container:#fff;--td-bg-color-secondary-container:#fafbfc;--td-text-color-primary:#1d2129;--td-text-color-secondary:#86909c;--td-text-color-placeholder:#86909c;--td-text-color-disabled:#c9cdd4;--td-border-level-1-color:#e3e6eb;--td-border-level-2-color:#e5e8ef;--color-primary:#165dff;--color-primary-hover:#4080ff;--color-success:#00a870;--color-success-2:#00b42a;--color-warning:#ff7d00;--color-warning-2:#f90;--color-danger:#d54941;--color-danger-2:#f53f3f;--color-purple:#722ed1;--color-orange:#ff7d00;--color-text-primary:#1d2129;--color-text-regular:#4e5969;--color-text-secondary:#86909c;--color-text-placeholder:#a9aeb8;--color-border-1:#e3e6eb;--color-border-2:#e5e8ef;--radius-sm:4px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--shadow-card:0 1px 4px #0000000d;--shadow-card-2:0 2px 12px #00000005;--shadow-hover:0 4px 16px #0000000f}html,body{margin:0;padding:0}body{background-color:var(--td-bg-color-page);color:var(--color-text-primary);padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,PingFang SC,Microsoft YaHei,sans-serif}.page-container{border-radius:var(--radius-md);box-shadow:var(--shadow-card);background:#fff;margin-bottom:16px;padding:20px 24px}.table-box{box-shadow:var(--shadow-card);border:1px solid var(--color-border-1);background:#fff;border-radius:6px;padding:24px}.unified-box{border-radius:var(--radius-md);box-shadow:var(--shadow-card);border:1px solid var(--color-border-1);background:#fff;padding:24px}.search-area{border-bottom:1px solid #f0f0f0;margin-bottom:16px;padding-bottom:16px}.filter-area{flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:20px;display:flex}.action-area{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.stat-card{box-sizing:border-box;border-radius:var(--radius-md);box-shadow:var(--shadow-card);border:1px solid var(--color-border-1);background:#fff;flex-direction:column;justify-content:space-between;height:100%;min-height:112px;padding:20px;display:flex;position:relative;overflow:hidden}.stat-card:hover{box-shadow:0 4px 12px #00000014}.stat-card:before{content:"";width:4px;height:100%;position:absolute;top:0;left:0}.stat-title{color:var(--color-text-secondary);z-index:1;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:13px;font-weight:500;display:flex}.stat-value{color:var(--color-text-primary);z-index:1;font-family:system-ui,-apple-system,sans-serif;font-size:24px;font-weight:700}.stat-trend{z-index:1;margin-top:6px;font-size:12px;font-weight:500}.stat-trend.up{color:var(--color-danger-2)}.stat-trend.down{color:var(--color-success-2)}.card-blue:before{background:#0052d9}.card-indigo:before{background:#0034b5}.card-green:before{background:#00a870}.card-teal:before{background:#00887a}.card-orange:before{background:#ff7d00}.card-red:before{background:#d54941}.card-purple:before{background:#722ed1}.op-btn{border-radius:2px!important;height:24px!important;padding:0 8px!important;font-size:12px!important}.btn-detail{color:#fff!important;background-color:#00a870!important;border-color:#00a870!important}.btn-edit{color:#fff!important;background-color:#2d8cf0!important;border-color:#2d8cf0!important}.btn-cancel{color:#fff!important;background-color:#ff5722!important;border-color:#ff5722!important}.btn-add-top{border-radius:2px;background-color:#1dc5a3!important;border-color:#1dc5a3!important}.btn-add-top:hover{background-color:#18ab8d!important;border-color:#18ab8d!important}.btn-add-child{color:#fff!important;background-color:#1dc5a3!important;border-color:#1dc5a3!important}.btn-delete{color:#fff!important;background-color:#ff5722!important;border-color:#ff5722!important}.mono-text{color:var(--color-text-primary);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.money-text{color:var(--color-primary);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px;font-weight:700}.salary-text{color:var(--color-success-2);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px;font-weight:700}.bonus-text{color:var(--color-success);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:700}.deduct-text{color:var(--color-danger);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:700}.total-salary{color:var(--color-warning);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:15px;font-weight:700}.text-green{color:#1dc5a3;font-weight:700}.text-red{color:#ff5722;font-weight:700}.code-text{color:var(--color-primary);background:#f4f8ff;border:1px solid #d4e3fc;border-radius:4px;padding:4px 8px;font-family:ui-monospace,monospace;font-size:14px;font-weight:700}.preview-box{background:var(--td-bg-color-page);border-left:4px solid var(--color-primary);border-radius:6px;margin-bottom:20px;padding:12px 16px}.rule-formula{color:var(--color-primary);background:#f4f8ff;border:1px solid #d4e3fc;border-radius:4px;padding:4px 8px;font-family:ui-monospace,monospace;font-weight:700}.ip-text{color:#4e5969;background:#f2f3f5;border-radius:4px;padding:2px 6px;font-family:ui-monospace,monospace;font-size:13px}.unsettled-badge{color:#d54941;background:#fff2f1;border:1px solid #ffd8d6;border-radius:4px;align-items:center;padding:2px 8px;font-family:ui-monospace,monospace;font-size:12px;font-weight:600;display:inline-flex}.amount-block{flex-direction:column;font-size:13px;line-height:1.6;display:flex}.amount-row{justify-content:space-between;width:120px;display:flex}.amount-label{color:#666}.amount-val-receive{color:var(--color-primary);font-weight:700}.amount-val-pay{color:var(--color-warning);font-weight:700}.amount-val-info{color:var(--color-success);font-weight:700}.amt-box{flex-direction:column;padding:4px 0;line-height:1.5;display:flex}.amt-main{font-family:ui-monospace,monospace;font-size:16px;font-weight:700}.amt-in{color:var(--color-success)}.amt-out{color:var(--color-danger)}.amt-balance{color:var(--color-text-secondary);margin-top:2px;font-size:12px}.remark-text{color:#666;white-space:normal;max-width:260px;font-size:13px;line-height:1.5}.layout-container{gap:20px;height:calc(100vh - 40px);display:flex}.left-panel{border-radius:var(--radius-md);width:280px;box-shadow:var(--shadow-card);background:#fff;flex-direction:column;flex-shrink:0;display:flex;overflow:hidden}.right-panel{border-radius:var(--radius-md);box-shadow:var(--shadow-card);background:#fff;flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.panel-header{border-bottom:1px solid var(--color-border-1);color:var(--color-text-primary);justify-content:space-between;align-items:center;padding:16px 20px;font-weight:700;display:flex}.tree-scroll{flex:1;padding:12px;overflow-y:auto}.table-scroll{flex:1;padding:20px;overflow-y:auto}.toolbar{border-bottom:1px solid var(--color-border-1);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:16px 20px;display:flex}.emp-name-box{align-items:center;gap:10px;display:flex}.emp-meta{flex-direction:column;display:flex}.emp-id{color:var(--color-text-secondary);font-family:ui-monospace,monospace;font-size:12px}.grid-container{flex-wrap:wrap;gap:20px;margin-top:16px;display:flex}.grid-card{border:1px solid var(--color-border-1);cursor:pointer;background:#fff;border-radius:6px;width:calc(20% - 16px);min-width:200px;transition:all .2s;position:relative;overflow:hidden}.grid-card:hover{border-color:var(--color-primary);transform:translateY(-2px);box-shadow:0 4px 16px #0000001a}.grid-img-box{background:#f4f8ff;border-bottom:1px solid #f2f3f5;justify-content:center;align-items:center;height:160px;display:flex;position:relative}.grid-img-box img{object-fit:cover;width:100%;height:100%}.grid-meta-box{padding:12px}.grid-title{color:var(--color-text-primary);text-overflow:ellipsis;white-space:nowrap;margin-bottom:6px;font-size:14px;font-weight:500;overflow:hidden}.grid-desc{color:var(--color-text-secondary);justify-content:space-between;align-items:center;font-size:12px;display:flex}.grid-actions{background:#fffffff2;border-radius:4px;padding:4px;display:none;position:absolute;top:10px;right:10px;box-shadow:0 2px 8px #0000001a}.grid-card:hover .grid-actions{gap:4px;display:flex}.grid-card.is-selected{border:2px solid var(--color-primary)}.grid-card.is-selected:after{content:"";pointer-events:none;background:#165dff0d;position:absolute;inset:0}.grid-checkbox{z-index:10;display:none;position:absolute;top:10px;left:10px}.grid-card:hover .grid-checkbox,.grid-card.is-selected .grid-checkbox{display:block}.file-name-col{align-items:center;gap:12px;display:flex}.file-info{flex-direction:column;display:flex}.file-title{color:var(--color-text-primary);font-size:14px;font-weight:500}.file-ext{color:var(--color-text-secondary);font-family:ui-monospace,monospace;font-size:12px}.process-card{border:1px solid var(--color-border-1);border-radius:6px;margin-bottom:24px;overflow:hidden}.process-card-header{border-bottom:1px solid var(--color-border-1);background:#fafbfc;justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.process-card-title{color:var(--color-text-primary);align-items:center;gap:8px;font-size:15px;font-weight:700;display:flex}.step-num{width:20px;height:20px;color:var(--color-primary);background:#e8f3ff;border-radius:50%;justify-content:center;align-items:center;font-size:12px;display:inline-flex}.process-card-body{padding:16px}.readonly-text{color:var(--color-text-primary);padding:6px 0}.readonly-label{color:var(--color-text-secondary);margin-bottom:4px;font-size:13px}.form-grid{grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px;display:grid}.form-grid-full{grid-column:span 2}.tdesign-demo-tabs .t-tabs__nav-item{font-size:15px;font-weight:500}.tab-header-actions{justify-content:space-between;align-items:center;margin:16px 0;display:flex}.tab-box{border-radius:var(--radius-md);box-shadow:var(--shadow-card);border:1px solid var(--color-border-1);background:#fff;padding:12px 24px 24px}.permission-tree-box{border:1px solid var(--color-border-1);background:#fafbfc;border-radius:4px;height:calc(100vh - 160px);padding:10px;overflow-y:auto}.rank-badge{border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-family:ui-monospace,monospace;font-size:12px;font-weight:700;display:inline-flex}.rank-1{color:#f53f3f;background:#ffece8}.rank-2{color:#ff7d00;background:#fff7e8}.rank-3{color:#00b42a;background:#e8ffea}.rank-normal{color:#4e5969;background:#f2f3f5}.chart-box{border-radius:var(--radius-md);box-shadow:var(--shadow-card);border:1px solid var(--color-border-2);box-sizing:border-box;background:#fff;width:100%;height:380px;padding:20px}.page-header{box-shadow:var(--shadow-card);border:1px solid var(--color-border-1);background:#fff;border-radius:6px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;padding:20px 24px;display:flex}.page-title{color:var(--color-text-primary);align-items:center;gap:8px;margin:0 0 4px;font-size:16px;font-weight:600;display:flex}.page-subtitle{color:var(--color-text-secondary);font-size:13px}.stat-grid{grid-template-columns:repeat(5,1fr);gap:16px;margin-bottom:16px;display:grid}.chart-grid{grid-template-columns:2fr 1fr 1fr;gap:16px;margin-bottom:16px;display:grid}.stat-grid.cols-3{grid-template-columns:repeat(3,1fr)}.stat-grid.cols-4{grid-template-columns:repeat(4,1fr)}.chart-grid.wide-narrow{grid-template-columns:2fr 1fr}.chart-grid.narrow-wide{grid-template-columns:1fr 2fr}.chart-grid.cols-1{grid-template-columns:1fr}.filter-card .filter-fields{flex-direction:column;align-items:stretch;gap:8px;margin-top:8px;display:flex}.filter-card .filter-sep{color:var(--color-text-secondary);text-align:center;font-size:12px;line-height:1}@media (width<=1400px){.stat-grid{grid-template-columns:repeat(3,1fr)}.stat-grid.cols-4{grid-template-columns:repeat(2,1fr)}.chart-grid{grid-template-columns:1fr 1fr}.chart-grid>:first-child{grid-column:span 2}}@media (width<=1024px){.stat-grid,.stat-grid.cols-3,.stat-grid.cols-4{grid-template-columns:repeat(2,1fr)}.chart-grid,.chart-grid.wide-narrow,.chart-grid.narrow-wide,.chart-grid.cols-1{grid-template-columns:1fr}.chart-grid>:first-child{grid-column:span 1}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#00000026;border-radius:4px}::-webkit-scrollbar-track{background:0 0}.t-table__content::-webkit-scrollbar{width:14px;height:14px}.t-table__content::-webkit-scrollbar-thumb{background:#00000047;border:3px solid #f0f2f5;border-radius:7px}.t-table__content::-webkit-scrollbar-thumb:hover{background:#0000006b}.t-table__content::-webkit-scrollbar-track{background:#f0f2f5}body:has(.app-layout){padding:0;overflow:hidden}.app-layout{height:100vh;display:flex;overflow:hidden}.app-sidebar{border-right:1px solid var(--td-border-level-1-color);z-index:10;background:#fff;flex-direction:column;flex-shrink:0;width:240px;transition:width .3s;display:flex}.app-sidebar.collapsed{width:64px}.sidebar-logo{color:#1d2129;border-bottom:1px solid var(--td-border-level-1-color);white-space:nowrap;background:#fff;flex-shrink:0;align-items:center;height:64px;padding:0 18px;font-size:16px;font-weight:700;display:flex;overflow:hidden}.sidebar-logo .t-icon,.sidebar-logo svg,.sidebar-logo>i{flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;margin-right:12px;display:inline-flex}.sidebar-logo span{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.app-sidebar.collapsed .sidebar-logo span{display:none}.sidebar-menu{flex:1;padding:8px 0;overflow:hidden auto}.app-main{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.app-header{border-bottom:1px solid var(--td-border-level-1-color);z-index:9;background:#fff;flex-shrink:0;justify-content:space-between;align-items:center;height:64px;padding:0 24px;display:flex}.app-content{flex:1;padding:24px;overflow-y:auto}
