:root{font-family:PingFang SC,Microsoft YaHei,Arial,sans-serif;color:#263244;background:#f4f6fa}*{box-sizing:border-box}body{margin:0;min-width:1180px;background:#f4f6fa}button,input,select,textarea{font:inherit}.app-shell{min-height:100vh;display:flex}.sidebar{width:228px;flex:none;background:#fff;border-right:1px solid #e6ebf2;color:#37465a}.brand{height:64px;display:flex;align-items:center;gap:12px;padding:0 25px;font-weight:700;font-size:23px;border-bottom:1px solid #edf0f4}.brand-mark{width:31px;height:31px;display:grid;place-items:center;border-radius:50%;background:#2567d5;color:#fff;font-size:10px;font-style:italic}.sidebar nav{padding:13px 9px}.nav-row,.system-row{height:43px;padding:0 14px;display:flex;align-items:center;gap:12px;border-radius:6px;font-size:15px}.parent-active{color:#2363cf;font-weight:600}.nav-icon{width:18px;text-align:center;color:#556479}.chevron{margin-left:auto;color:#8b97a8}.subnav{padding:1px 0 9px 51px;color:#4e5d70;font-size:14px}.subnav div{height:38px;display:flex;align-items:center;padding-left:15px;border-radius:6px;margin-left:-8px}.subnav .selected{background:#eaf2ff;color:#2867cf;font-weight:600}.system-row{margin:0 9px;border-top:1px solid #eef1f4;border-radius:0;padding-top:12px}.workspace{min-width:0;flex:1}.topbar{height:64px;padding:0 32px;display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid #e6ebf2;color:#6e7b8d;font-size:14px}.crumb{display:flex;gap:10px;align-items:center}.crumb i{font-style:normal;color:#b7bfca}.crumb b{font-weight:500;color:#3c485a}.hamburger{font-size:20px;color:#334155}.top-tools{display:flex;align-items:center}.avatar{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:#e6d3b9;color:#825b31;font-size:12px}.page-content{max-width:1640px;margin:0 auto;padding:24px 32px 50px}.back{margin-bottom:18px;color:#2866ce;font-size:14px}.card{background:#fff;border:1px solid #e4eaf2;border-radius:8px}.record-head{padding:22px 26px;display:flex;justify-content:space-between;align-items:center}.record-head h1{margin:0 0 9px;font-size:24px}.meta{font-size:13px;color:#7f8b9c}.header-metrics{display:flex;gap:38px;align-items:center}.header-metrics>div{min-width:142px;padding-left:23px;border-left:1px solid #e8edf3}.header-metrics small{display:block;color:#8390a2;font-size:12px;margin-bottom:6px}.header-metrics b{display:block;font-size:18px;color:#2f3a4a}.header-metrics .money{color:#e46a38}.header-metrics span{display:block;margin-top:5px;color:#9ca6b4;font-size:11px}.status{height:27px;display:inline-flex;align-items:center;padding:0 10px;border-radius:4px;font-size:13px}.status-progress{background:#edf4ff;color:#2766cd}.primary,.ghost{height:36px;border:0;border-radius:5px;padding:0 16px;cursor:pointer;font-weight:500}.primary{background:#2465d3;color:#fff}.primary:disabled{background:#b9c8e2;cursor:not-allowed}.ghost{background:#f1f4f8;color:#4d5a6c}.stage-strip{display:flex;margin-top:18px;padding:20px 32px}.stage{display:flex;position:relative;align-items:center;gap:9px;flex:1;background:none;border:0;text-align:left;color:#98a4b5;cursor:pointer}.stage>span{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;background:#edf0f4;font-size:13px}.stage b{display:block;font-size:14px;font-weight:500}.stage small{display:block;margin-top:4px;font-size:12px;color:#a8b1bd}.stage.current,.stage.done{color:#2462c9}.stage.current>span{background:#e9f1ff;border:1px solid #a6c4fb}.stage.done>span{background:#2465d3;color:#fff}.stage em{position:absolute;left:128px;right:12px;height:1px;background:#e5e9ef}.stage.done em{background:#9abef8}.detail-card{overflow:hidden;margin-top:18px}.panel{padding:25px}.panel-header,.subhead,.cost-heading{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:21px}.panel h2,.subhead h2{font-size:17px;margin:0 0 7px}.panel p,.subhead p{font-size:13px;color:#8c98a8;margin:0}.line-id,.template-tag{font-size:12px;color:#376bb6;background:#f1f6ff;border-radius:4px;padding:6px 8px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px 22px}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.field{display:block}.field>span{display:block;margin-bottom:7px;font-size:13px;color:#526177}.field em,.upload-title em{font-style:normal;color:#e55f50;margin-left:3px}.field input,.field select,.field textarea{width:100%;border:1px solid #dde4ec;border-radius:4px;padding:0 10px;color:#324155;background:#fff;height:38px;outline:none}.field input:focus,.field select:focus,.field textarea:focus{border-color:#6b9ae7}.textarea{margin-top:19px}.field textarea{padding:9px 10px;resize:vertical;min-height:78px;height:92px;line-height:1.6}.pick-staff{height:38px;width:100%;border:1px solid #dde4ec;border-radius:4px;background:#fff;color:#324155;text-align:left;padding:0 10px;cursor:pointer}.pick-staff b{float:right;color:#2766cf;font-weight:500;font-size:12px}.upload-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:23px}.upload-box{border:1px dashed #cbd7e8;border-radius:6px;padding:15px;background:#fbfcff;min-height:126px}.upload-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.upload-title b{font-size:14px}.upload-title small{font-size:12px;color:#97a2b1}.upload-file{display:flex;align-items:center;gap:8px;height:32px;font-size:13px;color:#4d5a6e}.upload-file button{border:0;background:none;color:#9aa5b3;font-size:18px;margin-left:auto;cursor:pointer}.file-icon{width:23px;height:23px;display:grid;place-items:center;border-radius:3px;font-size:10px;font-weight:700}.excel{background:#e7f7ed;color:#249b61}.image{background:#e9f1ff;color:#3a78d9}.pdf{background:#feecec;color:#df5e5e}.add-file{margin-top:8px;border:0;background:#eef5ff;color:#2767cd;border-radius:4px;padding:6px 9px;font-size:12px;cursor:pointer}.save-bar{margin-top:23px;border-top:1px solid #edf0f4;padding-top:18px;display:flex;align-items:center;justify-content:space-between;color:#8490a0;font-size:12px}.records{margin:0 25px 25px;padding:22px 24px;border-top:1px solid #edf0f4}.records .subhead{margin-bottom:16px}.empty{text-align:center;padding:34px;color:#9ba6b4;font-size:13px}table{width:100%;border-collapse:collapse;font-size:12px;color:#526176}th{height:36px;background:#f6f8fb;font-weight:500;color:#69778a;text-align:left;padding:0 11px;border:1px solid #e7ecf2}td{padding:10px 11px;border:1px solid #e7ecf2;line-height:1.45}.inner-tabs{height:47px;border-bottom:1px solid #e8edf3;margin:0 -25px 22px;padding:0 25px;display:flex;gap:27px}.inner-tabs button{border:0;background:none;color:#607086;position:relative;cursor:pointer;font-size:14px;padding:0}.inner-tabs .tab-active{color:#2565cf;font-weight:600}.inner-tabs .tab-active:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:#2565cf}.inner-tabs span{display:inline-grid;place-items:center;margin-left:3px;width:18px;height:18px;font-size:11px;background:#edf3fd;border-radius:10px}.import-card{display:grid;grid-template-columns:1fr 1.2fr auto;gap:18px;align-items:end;padding:18px;border:1px solid #dbe7f9;background:#f8fbff;border-radius:6px;margin-bottom:24px}.import-card b{font-size:14px}.import-card p{margin-top:7px;line-height:1.5}.import-card .textarea{margin:0}.list-actions{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;font-size:13px;color:#7d8999}.list-actions div{display:flex;gap:9px}.list-actions button,.cost-heading button{border:1px solid #d8e2f0;background:#fff;color:#2866cb;border-radius:4px;padding:6px 9px;font-size:12px;cursor:pointer}.list-actions .danger{color:#d65d59;border-color:#f3d5d4}.function-table input,.cost-table input:not([type=checkbox]){width:100%;border:0;background:transparent;color:#506074;font-size:12px;outline:none}.text-danger{border:0;background:none;color:#d65b55;cursor:pointer;font-size:12px}.quote-panel{padding-bottom:0}.quote-section{padding:0 0 23px;margin-bottom:23px;border-bottom:1px solid #edf0f4}.quote-section h3{font-size:15px;margin:0 0 17px}.quote-section h3 small{font-weight:400;color:#95a0ae;margin-left:7px}.sheet-summary{display:flex;align-items:center;gap:18px;height:42px;padding:0 13px;border:1px solid #dfe6ee;border-radius:4px;background:#fafbfd;font-size:13px;color:#59687b}.sheet-summary span{color:#8290a2}.sheet-summary button{margin-left:auto;border:0;background:none;color:#2565ce;cursor:pointer;font-size:12px}.cost-heading{align-items:center;margin-bottom:12px}.cost-heading h3{margin-bottom:5px}.cost-heading p{font-size:12px;color:#97a2b0;margin:0}.cost-table input[type=checkbox]{accent-color:#2767cf}.export-row{height:70px;margin:0 -25px;padding:0 25px;border-top:1px solid #edf0f4;display:flex;align-items:center;justify-content:space-between;color:#7f8d9d;font-size:12px}.archive-form{display:grid;grid-template-columns:1fr 1.4fr;gap:24px;align-items:start}.modal-mask{position:fixed;top:0;right:0;bottom:0;left:0;background:#16213259;z-index:20;display:grid;place-items:center}.staff-modal{width:350px;background:#fff;border-radius:8px;padding:22px;box-shadow:0 16px 50px #1c2d4d40}.staff-modal h3{margin:0 0 7px;font-size:18px}.staff-modal p{font-size:13px;color:#8692a2;margin:0 0 14px}.staff-modal>button:not(.modal-cancel){display:flex;align-items:center;width:100%;border:0;background:#fff;border-top:1px solid #edf0f4;padding:11px 2px;text-align:left;cursor:pointer;color:#344154}.staff-modal small{margin-left:auto;color:#98a3b1}.staff-dot{display:grid;place-items:center;width:26px;height:26px;background:#edf3ff;color:#306fd1;border-radius:50%;margin-right:9px;font-size:12px}.modal-cancel{display:block;margin:15px 0 0 auto;border:0;background:#f2f4f7;padding:7px 14px;border-radius:4px;color:#667386;cursor:pointer}.toast{position:fixed;z-index:30;right:32px;top:83px;background:#fff;border:1px solid #bde8cc;border-radius:6px;padding:12px 17px;color:#218556;box-shadow:0 6px 19px #2b446526;font-size:14px}@media(max-width:1300px){.sidebar{width:205px}.page-content{padding:20px}.form-grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}.stage-strip{padding-inline:20px}.stage em{left:118px}.meta{max-width:650px}.archive-form,.import-card{grid-template-columns:1fr}.header-metrics{gap:20px}.header-metrics>div{min-width:130px}}.template-confirm{margin-top:16px;padding:11px 13px;border:1px solid #dbe7f9;border-radius:5px;background:#f8fbff;display:flex;align-items:center;justify-content:space-between;color:#6380a8;font-size:12px}.export-actions{display:flex;gap:10px}.preview-trigger{border:1px solid #c9d9f1;background:#fff;color:#2766cd}.preview-panel{padding-bottom:0}.preview-toolbar{display:flex;align-items:flex-start;justify-content:space-between;padding-bottom:19px;border-bottom:1px solid #edf0f4}.preview-toolbar h2{margin:0 0 6px;font-size:17px}.preview-toolbar p{margin:0;color:#8c98a8;font-size:13px}.word-paper{width:min(920px,100%);margin:28px auto 0;padding:52px 62px 46px;background:#fff;border:1px solid #dce2eb;box-shadow:0 6px 22px #2b3a5017;color:#242d39;font-family:SimSun,Songti SC,serif}.word-title{text-align:center;font-size:28px;letter-spacing:14px;font-weight:700;margin:0 0 28px}.word-meta{display:flex;justify-content:space-between;border-bottom:1px solid #4b5563;padding-bottom:10px;margin-bottom:20px;font-size:13px}.word-paper input{border:0;border-bottom:1px solid #b9c2ce;background:transparent;outline:none;color:#263244;font:inherit;min-width:100px}.word-to{font-size:15px;margin-bottom:17px}.word-to input{width:220px}.word-paper p{font-size:14px;line-height:1.8}.word-edit{display:block;width:100%;min-height:116px;padding:7px 0;border:0;border-bottom:1px dashed #b9c6d6;outline:none;resize:vertical;font:14px/1.85 SimSun,Songti SC,serif;color:#2f3946}.word-edit:focus{border-color:#4079cb;background:#fbfdff}.word-edit.short{min-height:56px}.word-section-title{margin:27px 0 12px;font-size:16px;font-weight:700}.word-table{font-size:12px;color:#2f3946}.word-table th,.word-table td{border:1px solid #6a7280;padding:8px;text-align:center}.word-table th{background:#f7f7f7;color:#2f3946}.word-table td input{width:100%;text-align:center}.word-more{text-align:center!important;color:#788394}.word-sign{margin-top:33px;display:grid;grid-template-columns:1fr 1fr;gap:36px}.word-sign p{margin:8px 0}.word-sign input{min-width:150px}.preview-panel .save-bar{margin-top:28px}
