:root{--brand: #2f5fd0;--brand-hover: #2549ab;--brand-bg: #eef2fd;--err: #cc3a3a;--warn: #b9770c;--ok: #15924c;--ink: #1a1a1a;--ink-2: #6b7280;--ink-3: #8a8f99;--line: #e2e5ea;--line-2: #e8ebf0;--line-strong: #d0d5dd;--page: #eef1f5;--hover: #f4f6fb;--sider: #101828;--card-shadow: 0 1px 3px rgba(0, 0, 0, .07), 0 1px 2px rgba(0, 0, 0, .04);--shadow-hover: 0 4px 20px -4px rgba(0, 0, 0, .09);--warn-bg: #fbf3e3;--warn-line: #eedfb6}html,body,#app{height:100%;margin:0}body{background:var(--page);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased}.page{padding:20px 24px;display:flex;flex-direction:column;min-height:100%}.page>*{flex:none}.page-full{height:100%;display:flex;flex-direction:column;padding:20px 24px;overflow:hidden}.page-full .fill-card{flex:1;min-height:0;display:flex;flex-direction:column}.page-full .fill-card>.ant-card-body{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.page-title{font-size:18px;font-weight:600;margin:0;line-height:26px;letter-spacing:.2px}.page-desc{color:var(--ink-3);font-size:13px;margin:2px 0 0}.ant-page-header-heading-title{font-size:18px!important;font-weight:600!important}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:10px}.filter-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:12px}.filter-bar .push{margin-left:auto}.filter-bar .ant-select .ant-select-selector,.filter-bar .ant-picker,.filter-bar .ant-input-affix-wrapper{border-color:var(--line)}.filter-bar .ant-picker-range{min-width:260px}.page-tabs .ant-tabs-nav{margin-bottom:0}.page-tabs .ant-tabs-nav:before{border-bottom:1px solid var(--line-2)}.page-tabs .ant-tabs-tab{padding:8px 2px}.page-tabs .ant-tabs-ink-bar{height:2px}.filter-bar .page-tabs{align-self:stretch;flex:1;min-width:0}.bar-label{font-size:13px;color:var(--ink-3);flex:none}.qd{font-size:14px;color:var(--ink-2);border-radius:8px;padding:3px 14px;cursor:pointer;background:var(--hover)}.qd.on{background:var(--brand-bg);color:var(--brand);font-weight:500}.num{font-variant-numeric:tabular-nums}.money{font-variant-numeric:tabular-nums;letter-spacing:-.01em;white-space:nowrap}.money-lg{font-size:26px;font-weight:650;line-height:32px;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.money-md{font-size:18px;font-weight:600;font-variant-numeric:tabular-nums}.neg{color:var(--err)}.pos{color:var(--ok)}.muted{color:var(--ink-3)}.fs-12{font-size:12px}.fs-13{font-size:13px}.fs-14{font-size:14px}.fs-15{font-size:15px}.mt-4{margin-top:4px}.mt-8{margin-top:8px}.mt-12{margin-top:12px}.mt-16{margin-top:16px}.mt-24{margin-top:24px}.mb-8{margin-bottom:8px}.mb-12{margin-bottom:12px}.mb-16{margin-bottom:16px}.mb-24{margin-bottom:24px}.flex{display:flex}.flex-1{flex:1}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-4{gap:4px}.gap-8{gap:8px}.gap-12{gap:12px}.gap-16{gap:16px}.w-full{width:100%}.ant-layout-sider.app-sider,.app-sider{background:#fff!important;border-right:1px solid var(--line-2);position:relative!important}.app-sider.no-transition{transition:none!important}.ant-layout-header.app-header,.app-header{height:56px;line-height:normal;background:#fff!important;padding:0 20px 0 12px;display:flex;align-items:center;gap:16px;border-bottom:1px solid var(--line-2);position:relative;z-index:9}.app-header .right{margin-left:auto;display:flex;align-items:center;gap:6px}.app-header .user-btn{display:flex;align-items:center;gap:8px;padding:4px 10px;border-radius:6px;cursor:pointer}.app-header .user-btn:hover{background:#0000000a}.app-content{height:calc(100vh - 56px);overflow:auto}.app-content.no-scroll{overflow:hidden}.ant-card{box-shadow:var(--card-shadow)}.ant-card:not(.ant-card-bordered){border:1px solid var(--line)}.stat-card{position:relative;overflow:hidden}.stat-card .ant-card-body{padding:18px 20px}.stat-card .label{font-size:13px;color:var(--ink-3);display:flex;align-items:center;gap:6px}.stat-card .value{font-size:26px;font-weight:650;line-height:32px;margin-top:4px;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.stat-card .foot{font-size:13px;color:var(--ink-3);margin-top:8px;padding-top:8px;border-top:1px solid var(--line-2)}.inbox-item{position:relative;display:flex;align-items:center;gap:14px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--card-shadow);padding:12px 18px 12px 14px;margin-bottom:8px;cursor:pointer;transition:border-color .2s,box-shadow .2s,transform .2s cubic-bezier(.25,.46,.45,.94)}.inbox-item:hover{border-color:#2f5fd059;box-shadow:var(--shadow-hover);transform:translateY(-1px)}.inbox-item.soon .l1 .no{color:#b26a00;font-weight:600}.inbox-item.late .l1 .no{color:var(--err);font-weight:600}.inbox-item .main{flex:1;min-width:0}.inbox-item .l1{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.inbox-item .l1 .subject{font-size:16px;font-weight:600}.inbox-item .l1 .no{font-size:13px;color:var(--ink-3);font-variant-numeric:tabular-nums}.inbox-item .l1 .claim{font-size:14px;font-weight:600;color:var(--ink-2)}.inbox-item .l1 .brief{font-size:14px;color:var(--ink);min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inbox-item .l2{margin-top:3px;font-size:13px;color:var(--ink-3);display:flex;gap:14px;flex-wrap:wrap}.inbox-item .l2 .late-txt{color:var(--err);font-weight:500}.inbox-item .amt{text-align:right;white-space:nowrap}.inbox-item .amt .v{font-size:20px;font-weight:650;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.inbox-item .amt .k{font-size:12px;color:var(--ink-3)}.day-divider{font-size:13px;color:var(--ink-3);margin:18px 0 8px;display:flex;align-items:center;gap:10px}.day-divider:after{content:"";flex:1;height:1px;background:var(--line-2)}.day-divider:first-child{margin-top:0}.detail-hero{background:#fff;border:1px solid var(--line);border-radius:6px;box-shadow:var(--card-shadow);padding:20px 24px;margin-bottom:16px}.detail-hero .amt-row{display:flex;align-items:flex-end;gap:24px;flex-wrap:wrap}.detail-hero .split{font-size:13px;color:var(--ink-3)}.formula{background:var(--hover);border:1px solid var(--line-2);border-radius:6px;padding:14px 16px}.formula .line{display:flex;justify-content:space-between;gap:16px;font-size:14px;padding:5px 0}.formula .line .k{color:var(--ink-2)}.formula .line .v{font-variant-numeric:tabular-nums}.formula .line.total{border-top:1px solid var(--line-2);margin-top:6px;padding-top:10px;font-weight:600;font-size:15px}.gate-box{border:1px solid var(--warn-line);background:var(--warn-bg);border-radius:6px;padding:14px 16px}.gate-box .row{display:flex;gap:12px;align-items:center;font-size:14px;padding:6px 0;border-bottom:1px solid var(--warn-line)}.gate-box .row:last-of-type{border-bottom:0}.ant-table-wrapper{flex:1;min-height:0;display:flex;flex-direction:column}.ant-table-wrapper .ant-spin-nested-loading,.ant-table-wrapper .ant-spin-container{height:100%;display:flex;flex-direction:column}.ant-table-wrapper .ant-table{flex:1;min-height:0}.ant-table-wrapper th.ant-table-cell{font-weight:600;font-size:13px}.clickable-row{cursor:pointer}th.th-draggable{cursor:grab}th.th-draggable:active{cursor:grabbing}th.col-drag-src{background:var(--brand-bg)!important}body.col-dragging{-webkit-user-select:none;user-select:none}body.col-dragging *{cursor:grabbing!important}.col-drag-ghost{position:fixed;z-index:2000;pointer-events:none;display:none;background:#fff;border:1px solid var(--line);border-radius:6px;box-shadow:0 6px 16px #00000024;padding:4px 10px;font-size:13px;color:var(--ink);white-space:nowrap}.col-drag-line{position:fixed;z-index:1999;width:2px;display:none;background:var(--brand);pointer-events:none;box-shadow:0 0 0 1px #2f5fd02e}.ant-table-resize-handle:hover .ant-table-resize-handle-line,.ant-table-resize-handle.dragging .ant-table-resize-handle-line{background:var(--brand)}.ant-tag{border-radius:4px}.ai-filled .ant-input,.ai-filled .ant-input-number-input,.ai-filled .ant-select-selector,.ai-filled .ant-picker{background-color:var(--warn-bg)!important}.chart-box{width:100%;height:380px}.chart-box.sm{height:280px}.ant-drawer-content-wrapper{max-width:100vw}.ant-drawer-body{padding:20px 24px}.ant-drawer-footer{padding:12px 24px}.drawer-actions{display:flex;justify-content:flex-end;gap:8px}.ant-tag{border-width:1px!important;border-style:solid!important;border-color:#e6e8eb!important}.ant-tag-success,.ant-tag-green{color:#15924c!important;background:#eaf6ef!important;border-color:#cde8d6!important}.ant-tag-error,.ant-tag-red,.ant-tag-volcano{color:#cc3a3a!important;background:#fbeceb!important;border-color:#f1cecb!important}.ant-tag-warning,.ant-tag-gold,.ant-tag-orange{color:#b9770c!important;background:#fbf3e3!important;border-color:#eedfb6!important}.ant-tag-processing,.ant-tag-blue,.ant-tag-geekblue{color:#2f5fd0!important;background:#eef2fd!important;border-color:#d3def8!important}.ant-tag-purple,.ant-tag-cyan,.ant-tag-magenta,.ant-tag-lime,.ant-tag-pink{color:#4b5563!important;background:#f2f3f5!important;border-color:#e6e8eb!important}.page-card{background:#fff;border:1px solid var(--line);border-radius:6px;box-shadow:var(--card-shadow);padding:12px 20px 16px;display:flex;flex-direction:column;min-height:0}.page-full>.page-card,.page>.page-card{flex:1}.page-card>.ant-card,.page-card .fill-card{border:0!important;box-shadow:none;border-radius:0}.page-card>.fill-card{flex:1;min-height:0}.page-card .page-tabs .ant-tabs-nav{margin-top:-2px}.page-card .day-divider:first-of-type{margin-top:4px}.ant-picker-cell-in-view.ant-picker-cell-today .ant-picker-cell-inner,.ant-picker-month-panel .ant-picker-cell-today .ant-picker-cell-inner,.ant-picker-year-panel .ant-picker-cell-today .ant-picker-cell-inner,.ant-picker-cell .cur-month-cell{background:var(--brand-bg);color:var(--brand);font-weight:600}.ant-picker-cell-in-view.ant-picker-cell-today .ant-picker-cell-inner:before{border-color:var(--brand)}.ant-picker-cell-in-view.ant-picker-cell-selected .ant-picker-cell-inner,.ant-picker-cell-in-view.ant-picker-cell-range-start .ant-picker-cell-inner,.ant-picker-cell-in-view.ant-picker-cell-range-end .ant-picker-cell-inner{background:var(--brand);color:#fff}.kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin-bottom:12px}.kpi-card{display:flex;align-items:center;gap:12px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--card-shadow);padding:14px 16px;cursor:pointer;transition:border-color .15s,background .15s,transform .1s}.kpi-card:hover{border-color:var(--brand)}.kpi-card.on{border-color:var(--brand);background:var(--brand-bg)}.kpi-icon{width:40px;height:40px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:19px;flex:none}.kpi-body{min-width:0}.kpi-label{display:block;font-size:13px;color:var(--ink-3)}.kpi-value{display:block;font-size:26px;font-weight:650;letter-spacing:-.02em;margin:1px 0;white-space:nowrap}.kpi-delta{font-size:12px}.kpi-delta.pos{color:var(--ok)}.kpi-delta.neg{color:var(--err)}.nav-fly .ant-popover-inner{padding:6px!important;border-radius:10px}.nav-fly .fly-title{font-size:12px;color:#94a3b8;padding:6px 12px 4px}.nav-fly .fly-item{min-width:132px;padding:8px 12px;border-radius:6px;font-size:14px;color:var(--ink);cursor:pointer;transition:background .18s,color .18s}.nav-fly .fly-item:hover{background:#e8f1fd}.nav-fly .fly-item.active{background:#2f5fd014;color:var(--brand);font-weight:600}.nav-tip .ant-tooltip-inner{background:#fff;color:var(--ink);font-size:13px;padding:8px 14px;border-radius:8px;min-height:0;box-shadow:0 6px 16px #00000014,0 3px 6px #0000000f}.page-enter-active,.page-leave-active{transition:opacity .22s ease,transform .22s cubic-bezier(.25,.46,.45,.94)}.page-enter-from{opacity:0;transform:translateY(8px)}.page-leave-to{opacity:0;transform:translateY(-4px)}.ant-card,.page-card{transition:box-shadow .2s ease}.rail-picker.ant-picker{background:var(--hover);border-radius:8px;padding:7px 12px}.rail-picker.ant-picker-focused{background:#eef3ff;box-shadow:none}.rail-picker .ant-picker-input>input{text-align:center;font-weight:600;font-size:13px}.user-select-drop{min-width:232px!important}.case-star{color:var(--err);margin-left:4px;font-size:12px;vertical-align:1px}.ellip{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
