:root{--blue:#1976d2;--blue-dark:#0f64b7;--blue-soft:#e9f3ff;--page:#edf2fa;--line:#cdd7e6;--line-soft:#e5eaf1;--text:#24364b;--muted:#586a7d;--toolbar:#f8faff}*{box-sizing:border-box}body{background:var(--page);color:var(--text);margin:0;font:13px/1.45 Microsoft YaHei,PingFang SC,Arial,sans-serif}button,input,select,textarea{font:inherit}button{color:inherit}.app{min-height:100vh}.topbar{background:var(--blue);color:#fff;align-items:center;gap:26px;height:52px;padding:0 25px 0 34px;display:flex}.product-brand{color:#fff;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:0;display:flex}.product-brand strong{letter-spacing:1px;font-size:21px;font-weight:500}.product-brand em{border:1px solid #ffffff80;border-radius:2px;padding:2px 5px;font-size:10px;font-style:normal}.brand-orbit{width:27px;height:34px;position:relative}.brand-orbit i{background:#fff;border-radius:50%;width:7px;height:7px;position:absolute}.brand-orbit i:first-child{top:1px;left:11px}.brand-orbit i:nth-child(2){top:10px;left:2px}.brand-orbit i:nth-child(3){top:13px;left:17px}.brand-orbit i:nth-child(4){top:25px;left:9px}.global-search{color:#8496aa;background:#fff;border-radius:2px;align-items:center;width:300px;height:32px;margin-left:auto;display:flex}.global-search svg{fill:none;stroke:currentColor;stroke-width:2px;width:19px;margin:0 8px}.global-search input{width:100%;height:100%;color:var(--text);border:0;outline:0}.top-user{align-items:center;gap:17px;font-size:12px;display:flex}.top-user i{background:#fff6;width:1px;height:20px}.tabbar{z-index:10;background:#f5f7fb;border-bottom:1px solid #b8c4d3;align-items:stretch;height:36px;display:flex;position:relative}.tabbar button{cursor:pointer;background:0 0;border:0;border-right:1px solid #0000}.icon-tab{color:#93a4b8;place-items:center;width:43px;display:grid}.icon-tab svg{fill:currentColor;stroke:currentColor;stroke-width:1.6px;width:19px;height:19px}.icon-tab.active{color:var(--blue);border-bottom:2px solid var(--blue);background:#fff}.page-tab{color:#516174;min-width:120px;padding:0 16px}.page-tab.active{border-inline-color:#d8dee8;border-bottom:2px solid var(--blue);color:var(--blue);background:#fff;font-weight:600}.page-tab span{vertical-align:middle;place-items:center;width:18px;height:18px;margin-left:7px;display:inline-grid}.page-tab span svg{fill:none;stroke:#8292a6;stroke-width:2px;width:12px}.menu-popover{z-index:20;background:#fff;border-bottom:1px solid #bcc8d8;grid-template-columns:repeat(4,minmax(180px,1fr));gap:26px;padding:24px 38px 30px;display:grid;position:fixed;top:88px;left:0;right:0;box-shadow:0 12px 25px #415a7726}.menu-popover section+section{border-left:1px solid #e2e7ef;padding-left:25px}.menu-popover h3{color:#334861;margin:0 0 12px;font-size:14px}.menu-popover section div{grid-template-columns:repeat(2,minmax(88px,1fr));gap:4px 12px;display:grid}.menu-popover button{color:#53667c;text-align:left;cursor:pointer;background:0 0;border:0;padding:8px 9px}.menu-popover button:hover{background:var(--blue-soft);color:var(--blue)}.business-page{background:#fff;min-height:calc(100vh - 88px)}.operation-bar{border-bottom:1px solid var(--line);background:var(--toolbar);white-space:nowrap;align-items:center;gap:3px;min-height:46px;padding:5px 24px;display:flex;overflow-x:auto}.action{white-space:nowrap;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:2px;flex:none;min-width:52px;height:32px;padding:0 11px}.action:hover:not(:disabled){background:var(--blue-soft);color:var(--blue-dark);border-color:#bad4ef}.action.primary{background:var(--blue);color:#fff}.action.primary:hover{border-color:var(--blue-dark);background:var(--blue-dark);color:#fff}.action:disabled{color:#b1bac7;cursor:not-allowed}.bar-separator{background:#d4dce7;width:1px;height:22px;margin:0 5px}.quick-filter{border-bottom:1px solid var(--line);background:#fff;align-items:center;gap:8px;min-height:50px;padding:8px 24px;display:flex}.quick-filter label{color:#52667c;margin-right:5px;font-weight:600}.quick-filter select,.quick-filter input{background:#fff;border:1px solid #b9c8da;outline:0;height:30px;padding:0 8px}.quick-filter select{min-width:130px}.quick-filter input{width:min(360px,40vw)}.quick-filter button{cursor:pointer;background:#f8faff;border:1px solid #b9c8da;height:30px;padding:0 14px}.list-layout{grid-template-columns:198px minmax(0,1fr);min-height:calc(100vh - 184px);display:grid}.group-tree{border-right:1px solid var(--line);background:#f7f9fc}.group-tree h3{border-bottom:1px solid var(--line);color:#53667b;height:39px;margin:0;padding:10px 15px;font-size:13px}.group-tree button{color:#53667b;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;width:100%;padding:9px 13px;display:flex}.group-tree button:hover,.group-tree button.active{color:#1b76d0;background:#dfeeff}.group-tree button em{color:#8c9bad;margin-left:auto;font-size:11px;font-style:normal}.data-grid{background:#fff;min-width:0;overflow:auto}.data-grid table{border-collapse:collapse;width:100%;min-width:900px}.data-grid th{z-index:1;color:#4d6076;text-align:left;background:linear-gradient(#f9fafc,#edf1f6);border-bottom:1px solid #b9c7d7;border-right:1px solid #d9e0e9;height:38px;padding:0 10px;font-weight:500;position:sticky;top:0}.data-grid td{color:#384b60;border-bottom:1px solid #e4e9ef;border-right:1px solid #e4e9ef;height:38px;padding:0 10px}.data-grid tr:hover td,.data-grid tr.selected td{background:#e9f4ff}.data-grid .check{text-align:center;width:42px}.link-button{color:#1976d2;cursor:pointer;background:0 0;border:0;padding:0}.status{padding-left:16px;position:relative}.status:before{content:"";background:#8c9baa;border-radius:50%;width:7px;height:7px;position:absolute;top:50%;left:3px;transform:translateY(-50%)}.status-已审核:before{background:#28a66a}.status-已提交:before{background:#e9a128}.empty-state{color:#8492a5;text-align:center;padding:70px 20px}.pager{color:#77889c;border-top:1px solid #d8e0e9;justify-content:flex-end;align-items:center;gap:12px;height:42px;padding:0 16px;display:flex;position:sticky;left:0}.pager div{display:flex}.pager button{background:#fff;border:1px solid #cad4e0;width:28px;height:26px}.pager button.current{background:var(--blue);color:#fff}.document-head{grid-template-columns:repeat(2,minmax(260px,540px));gap:8px 65px;padding:10px 60px 8px;display:grid}.document-head label,fieldset>label{grid-template-columns:86px minmax(130px,1fr) 12px;align-items:center;gap:7px;display:grid}.document-head label span,fieldset>label span{color:#40546b;text-align:right}.document-head input,fieldset input,fieldset select,fieldset textarea{background:#fff;border:1px solid #9db7d4;border-radius:2px;outline:0;min-width:0;height:28px;padding:3px 7px}.document-head input:focus,fieldset input:focus,fieldset select:focus,fieldset textarea:focus{border-color:var(--blue);box-shadow:0 0 0 1px #2989e933}.document-head input:disabled,fieldset input:disabled{color:#7f8b98;background:#eef1f5}.document-head b,fieldset b{color:#e24c4c;font-weight:400}.form-tabs{background:#f4f7fb;border-bottom:1px solid #b9c7d9;gap:0;padding:0 25px;display:flex;overflow-x:auto}.form-tabs button{color:#4e6075;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;flex:none;height:32px;padding:0 15px}.form-tabs button.active{border-bottom-color:var(--blue);color:var(--blue);background:#fff}.form-sections{grid-template-columns:1.15fr 1.05fr .8fr;gap:62px;padding:16px 42px 30px;display:grid}.form-sections fieldset{border:0;border-top:2px solid #9ba6b4;min-width:0;margin:0;padding:17px 8px 8px}.form-sections legend{color:#fff;background:#596574;padding:3px 18px;font-size:12px}.form-sections fieldset>label{margin-bottom:6px}.form-sections textarea{resize:vertical;height:58px}.form-sections .textarea-field{align-items:start}.check-grid{grid-template-columns:repeat(2,1fr);gap:9px;margin:0 15px 24px 95px;display:grid}.check-grid label{white-space:nowrap}.check-grid input{vertical-align:-2px;width:15px;height:15px;accent-color:var(--blue)}.form-sections h4{color:#fff;background:linear-gradient(90deg,#596574 0 90px,#0000 90px);border-bottom:2px solid #9ba6b4;margin:12px 0 13px;padding:4px 18px;font-weight:400}.tab-placeholder{color:#75869a;text-align:center;background:#f8faff;border:1px dashed #aab9ca;margin:20px 42px;padding:36px}.tab-placeholder strong{color:#41566f}.dashboard{background:var(--page);min-height:calc(100vh - 88px);padding:10px 39px 50px}.dashboard>h2{border-left:3px solid var(--blue);color:#46586d;margin:0;padding:10px 0 9px 13px;font-size:15px;line-height:1}.dashboard-row{gap:18px;margin:0 0 22px;display:grid}.dashboard-row.compact{grid-template-columns:340px 310px}.card{background:#fff;border:1px solid #d7dfea;border-radius:3px;box-shadow:0 2px 4px #31465e14}.card h3{color:#425469;margin:0;padding:12px 15px 9px;font-size:13px;font-weight:500}.quick-card>div,.message-card>div{gap:10px;padding:5px 20px 22px;display:flex}.quick-card button,.message-card button{color:#66788c;cursor:pointer;background:0 0;border:0;min-width:62px}.quick-card button span,.message-card button span{width:42px;height:42px;color:var(--blue);border:1px solid #c6d2df;place-items:center;margin:0 auto 6px;font-size:18px;display:grid}.quick-card button:first-child span{background:#deefff}.message-card button{position:relative}.message-card button b{color:#fff;background:#f05b5b;border-radius:10px;min-width:18px;padding:1px 5px;font-size:10px;position:absolute;top:0;right:4px}.analysis-cards{grid-template-columns:repeat(4,minmax(230px,1fr))}.analysis-cards .card{height:188px}.metric-card{padding:0 20px}.metric-card h3{padding-left:0}.metric-card strong,.metric-card b{color:#1b6faa;font-size:21px;font-weight:500;display:block}.metric-card hr{border:0;border-top:1px solid #e6eaf0}.metric-card span{color:#617488;margin:9px 0 4px;display:block}.donut-card{position:relative}.donut{background:conic-gradient(#368ee5 0 48%, #32b6c9 48% 85%, #35a876 85%);border-radius:50%;width:95px;height:95px;position:absolute;top:55px;left:28px}.donut:after{content:"";background:#fff;border-radius:50%;position:absolute;inset:23px}.donut-card ul{color:#647589;margin:0;padding:0;list-style:none;position:absolute;top:50px;left:145px}.donut-card li{white-space:nowrap;margin-bottom:10px}.donut-card li i{background:#368ee5;width:8px;height:8px;margin-right:6px;display:inline-block}.donut-card li i.cyan{background:#32b6c9}.donut-card li i.green{background:#35a876}.bars{background:repeating-linear-gradient(#0000 0 30px,#e8edf3 31px);border-bottom:1px solid #bfcad7;align-items:end;gap:17px;height:125px;margin:12px 25px 0;padding:0 8px;display:flex}.bars i{background:linear-gradient(90deg,#66a8e7,#338adf);flex:1;max-width:28px;min-height:10px}.rank-card{padding:0 15px}.rank-card h3{padding-left:0}.rank-card p{color:#586b80;border-bottom:1px solid #e5eaf0;justify-content:space-between;margin:0;padding:10px 2px;display:flex}.rank-card b{color:#1868ad;font-weight:500}.toast{z-index:40;color:#fff;background:#334861;border-radius:3px;padding:11px 18px;position:fixed;bottom:24px;right:24px;box-shadow:0 8px 24px #1b2c4155}.top-user button{color:#fff;cursor:pointer;background:0 0;border:1px solid #fff6;border-radius:2px;padding:3px 9px}.global-search>span{color:#72859a;text-align:center;width:30px;font-size:20px}.finance-menu{grid-template-columns:repeat(6,minmax(145px,1fr))}.record-count{color:var(--muted);margin-left:auto}.full-grid{height:calc(100vh - 184px)}.full-grid table{min-width:980px}.status-DRAFT:before,.status-OPEN:before,.status-UNMATCHED:before{background:#8c9baa}.status-SUBMITTED:before,.status-PARTIAL:before{background:#e9a128}.status-APPROVED:before,.status-POSTED:before,.status-SETTLED:before,.status-RECONCILED:before,.status-LOCKED:before,.status-CLOSED:before{background:#28a66a}.status-REVERSED:before{background:#c34d65}.login-shell{background:radial-gradient(circle at 35% 25%,#edf7ff,#0000 34%),linear-gradient(135deg,#0f6fc6,#113f73);place-items:center;min-height:100vh;padding:24px;display:grid}.login-panel{background:#fff;border-radius:5px;width:min(420px,100%);padding:35px 44px 28px;box-shadow:0 24px 70px #061d3a66}.login-brand{color:var(--blue);justify-content:center;align-items:center;gap:10px;display:flex}.login-brand strong{font-size:24px;font-weight:500}.login-brand em{border:1px solid #8ab9e6;border-radius:2px;margin-left:6px;padding:2px 5px;font-size:10px;font-style:normal}.login-brand .brand-orbit i{background:var(--blue)}.login-panel h1{color:#304861;text-align:center;margin:28px 0 4px;font-size:19px}.login-panel>p{color:#5f7184;text-align:center;margin:0 0 23px}.login-panel form label{margin-bottom:15px;display:block}.login-panel form label span{color:#53667a;margin-bottom:5px;display:block}.login-panel input{border:1px solid #afbdd0;border-radius:3px;outline:none;width:100%;height:38px;padding:0 10px}.login-panel input:focus{border-color:var(--blue);box-shadow:0 0 0 2px #1976d21c}.login-panel form>button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:3px;width:100%;height:40px;margin-top:6px}.login-panel form>button:disabled{opacity:.65}.external-login{color:#8a98a8;text-align:center;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;margin-top:18px;font-size:12px;display:grid}.external-login:before,.external-login:after{content:"";background:#dce3ea;height:1px}.external-login a{color:#0878e5;border:1px solid #178bff;border-radius:3px;grid-column:1/-1;height:40px;margin-top:2px;font-size:14px;line-height:38px;text-decoration:none;display:block}.external-login a:hover{background:#f2f8ff}.login-error,.form-error{color:#a83e3e;background:#fff3f3;border:1px solid #efb1b1;margin:8px 0;padding:9px 12px}.login-panel footer{color:#657487;text-align:center;margin-top:22px;font-size:11px}.editor-page{background:#fff;min-height:calc(100vh - 184px)}.editor-head{align-items:center;gap:18px;padding:14px 38px 8px;display:flex}.editor-head h2{color:#354b63;margin:0;font-size:16px;font-weight:500}.editor-head span{color:#526579;background:#eef3f8;border-radius:2px;padding:3px 8px}.editor-fields{border-top:1px solid #d9e1eb;grid-template-columns:repeat(2,minmax(280px,520px));gap:9px 50px;padding:26px 70px;display:grid}.editor-fields label{grid-template-columns:95px minmax(0,1fr);align-items:center;gap:8px;display:grid}.editor-fields label span{color:#42566d;text-align:right}.editor-fields input,.editor-fields select{border:1px solid #9db7d4;border-radius:2px;outline:none;height:30px;padding:3px 8px}.editor-page .form-error{margin:0 70px}.report-page{background:#f0f4f9;min-height:calc(100vh - 184px);padding:18px 24px}.report-cards{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.report-cards .card{height:135px}.report-check{background:#fff;border:1px solid;margin:15px 0;padding:12px 16px}.report-check.ok{color:#208153;border-color:#7bc49d}.report-check.warn{color:#b13d3d;border-color:#e4a1a1}.report-page .full-grid{border:1px solid #d4dde8;height:auto;max-height:420px}.import-panel{background:#fff;border:1px solid #cfdae7;width:min(760px,100% - 48px);margin:28px 24px;padding:25px 32px 32px;box-shadow:0 2px 5px #31465e12}.import-panel h2{margin:0 0 6px;font-size:17px;font-weight:500}.import-panel p{color:#718398;margin:0 0 24px}.import-panel label{grid-template-columns:100px 1fr;align-items:center;gap:9px;margin-bottom:12px;display:grid}.import-panel label span{text-align:right}.import-panel select,.import-panel input{border:1px solid #a9b9cb;min-height:34px;padding:5px 8px}.import-panel button{background:var(--blue);color:#fff;cursor:pointer;border:0;border-radius:2px;margin:12px 12px 0 109px;padding:8px 18px}.import-panel a{color:var(--blue)}.import-panel h3{color:#42566d;margin:28px 0 8px;font-size:14px}.import-batches{border:1px solid #d4dde8;max-width:100%;overflow:auto}.import-batches table{border-collapse:collapse;width:100%;min-width:620px}.import-batches th,.import-batches td{text-align:left;border-bottom:1px solid #e2e8ef;padding:8px 10px}.import-batches th{color:#465a70;background:#f3f6fa;font-weight:500}.import-batches button{color:var(--blue);background:#fff;border:1px solid #9db7d4;margin:0;padding:4px 9px}@media (max-width:1000px){.top-user span:first-child{display:none}.menu-popover{grid-template-columns:repeat(2,1fr)}.menu-popover section:nth-child(3){border-left:0;padding-left:0}.document-head{grid-template-columns:1fr}.form-sections{grid-template-columns:1fr;gap:24px}.analysis-cards{grid-template-columns:repeat(2,1fr)}.finance-menu{grid-template-columns:repeat(3,1fr)}.editor-fields{grid-template-columns:1fr}.report-cards{grid-template-columns:repeat(2,1fr)}}@media (max-width:680px){.topbar{padding-inline:12px}.product-brand strong{font-size:17px}.global-search{flex:1;width:auto}.top-user{display:none}.menu-popover{grid-template-columns:1fr;max-height:calc(100vh - 88px);overflow:auto}.menu-popover section+section{border-left:0;padding-left:0}.list-layout{grid-template-columns:1fr}.group-tree{display:none}.quick-filter{flex-wrap:wrap}.quick-filter input{width:100%}.operation-bar{padding-inline:10px}.operation-bar .action:not(.primary){background:#fff;border-color:#d6dee9}.form-tabs{padding-inline:10px}.dashboard{padding-inline:14px}.dashboard-row.compact,.analysis-cards{grid-template-columns:1fr}.document-head,.form-sections{padding-inline:14px}.finance-menu{grid-template-columns:1fr}.editor-fields{padding-inline:14px}.editor-fields label{grid-template-columns:85px 1fr}.report-cards{grid-template-columns:1fr}.import-panel{width:calc(100% - 28px);margin:14px;padding-inline:14px}.import-panel label{grid-template-columns:1fr}.import-panel label span{text-align:left}.import-panel button{margin-left:0}}
