.org-screen.contract-management-screen{color:#102754;background:linear-gradient(135deg,#f6fbff 0%,#eef6ff 42%,#f9fcff 100%);min-height:100vh}.contract-management-workspace{gap:14px;padding-bottom:18px}.contract-page-topbar{grid-template-columns:minmax(280px,1fr) minmax(420px,560px) minmax(330px,auto)}.contract-page-title{min-width:0}.contract-page-actions{justify-content:end}.contract-global-search input,.contract-filter-bar input{color:#102d58;letter-spacing:0;font-size:12px;font-weight:400}.contract-global-search input::placeholder,.contract-filter-bar input::placeholder{color:#7f8fa8;font-size:12px;font-weight:400}.contract-management-body{z-index:1;grid-template-columns:minmax(800px,1fr) minmax(420px,500px);gap:16px;min-height:0;display:grid;position:relative}.contract-list-panel,.contract-detail-panel{-webkit-backdrop-filter:blur(18px)saturate(1.05);backdrop-filter:blur(18px)saturate(1.05);background:linear-gradient(#fffffff5,#f8fcffe6);border:1px solid #b0cdedb8;border-radius:8px;overflow:hidden;box-shadow:0 18px 46px #26518f14,inset 0 1px #ffffffdb}.contract-list-panel.management-data-panel{grid-template-rows:auto auto minmax(0,1fr) auto;min-width:0;min-height:0;padding:16px 14px 12px;display:grid}.contract-filter-bar{z-index:3;gap:10px;padding:2px 0 12px;display:grid;position:relative}.contract-filter-segments{align-items:center;gap:10px;min-width:0;display:flex;overflow:hidden}.contract-status-tabs.dm-segmented,.contract-year-tabs.dm-segmented{background:#f6faffe6;border-color:#7999c429;border-radius:8px;width:fit-content;max-width:100%;min-height:30px;overflow-x:auto}.contract-status-tabs.dm-segmented{flex:none}.contract-year-tabs.dm-segmented{flex:0 auto}.contract-status-tabs.dm-segmented button,.contract-year-tabs.dm-segmented button{color:#566b88;white-space:nowrap;border-radius:7px;min-width:70px;height:26px;padding:0 14px;font-size:12px;font-weight:500}.contract-year-tabs.dm-segmented button{min-width:76px}.contract-status-tabs.dm-segmented button.is-active,.contract-year-tabs.dm-segmented button.is-active{color:#176bff;background:linear-gradient(#fff,#ecf6fffa);box-shadow:0 6px 14px #176bff1a}.contract-filter-controls{grid-template-columns:minmax(180px,1fr) minmax(124px,.74fr) minmax(120px,.54fr) minmax(120px,.54fr) auto;align-items:center;gap:10px;min-height:34px;display:grid}.contract-name-search{width:100%;min-width:0;height:30px}.contract-name-search input{height:30px}.contract-filter-controls .dm-select-trigger,.contract-filter-controls .dm-button:not(.dm-icon-button){border-radius:8px;height:30px;min-height:30px}.contract-filter-controls .dm-select-trigger>span,.contract-filter-controls .dm-button .dm-button-label{font-size:12px;font-weight:400;line-height:1.2}.contract-list-panel .management-data-table{--management-data-x-padding:12px;--management-data-row-min-height:58px;min-height:0}.contract-list-panel .management-data-body{padding-right:18px}.contract-list-panel .management-data-head-cell:nth-child(3),.contract-list-panel .management-data-row .management-data-cell:nth-child(3){text-align:center}.contract-list-panel .management-data-head-cell:nth-child(9),.contract-list-panel .contract-actions-cell{text-align:left}.contract-list-panel .management-data-row{align-items:center}.contract-main-icon.is-0{color:#176bff}.contract-main-icon.is-1{color:#0f9a67}.contract-main-icon.is-2{color:#f08a16}.contract-main-icon.is-3{color:#7c5df6}.contract-entity-cell{color:#24456f;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-width:0;font-size:12px;font-weight:500;line-height:1.34;display:-webkit-box;overflow:hidden}.contract-amount{color:#102754;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12px;font-weight:650;line-height:1.3;display:block;overflow:hidden}.contract-amount.is-text{color:#b96f13;font-weight:600}.contract-due{color:#355272;white-space:nowrap;font-size:12px;font-weight:500}.contract-due.is-alert{color:#f05234}.contract-risk-badges{align-items:center;gap:5px;min-width:0;max-width:100%;display:inline-flex}.contract-risk-badges .dm-status-badge{max-width:72px}.contract-risk-badges em{color:#7b8da6;font-size:11px;font-style:normal}.contract-risk-empty{color:#7b8da6}.contract-row-actions{justify-content:flex-start;justify-self:start;gap:4px;width:92px}.contract-row-actions .dm-icon-button{color:#24466f;background:linear-gradient(#fffffffa,#f4f9ffe6);width:28px;min-width:28px;height:28px;box-shadow:0 5px 12px #17539409}.contract-row-actions .dm-icon-button svg{width:14px;height:14px}.contract-row-actions .dm-icon-button:first-child{color:#176bff;background:#f6fafff5;border-color:#176bff2e}.contract-detail-panel{grid-template-rows:auto auto minmax(0,1fr);min-width:0;min-height:0;padding:13px 14px 12px;display:grid}.contract-detail-shell-head{border-bottom:1px solid #7999c424;justify-content:space-between;align-items:center;gap:10px;min-width:0;min-height:34px;padding:0 0 10px;display:flex}.contract-detail-shell-head>strong{color:#082354;font-size:14px;font-weight:650;line-height:1.2}.contract-detail-head{border-bottom:1px solid #7999c41f;min-width:0;padding:12px 0;display:block}.contract-detail-title-row{grid-template-columns:46px minmax(0,1fr);align-items:center;gap:12px;min-width:0;display:grid}.contract-detail-title-row>i{color:#176bff;background:linear-gradient(135deg,#ebf5fffa,#d2e7ffdb);border:1px solid #176bff2e;border-radius:9px;place-items:center;width:46px;height:46px;display:grid}.contract-detail-title-row strong{color:#082354;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:15px;font-weight:650;line-height:1.22;display:block;overflow:hidden}.contract-detail-title-row span{color:#6f819d;align-items:center;gap:7px;min-width:0;margin-top:5px;font-size:12px;display:flex}.contract-detail-title-row span em{color:#526987;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-style:normal;font-weight:500;overflow:hidden}.contract-detail-scroll{align-content:start;gap:9px;min-height:0;padding:11px 4px 0 0;display:grid;overflow-y:auto}.contract-detail-section-body{min-width:0;display:grid}.contract-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;margin:0;display:grid}.contract-detail-grid span{gap:4px;min-width:0;display:grid}.contract-detail-grid dt{color:#75869f;font-size:12px;line-height:1.2}.contract-detail-grid dd{color:#17365f;text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:0;font-size:12px;font-weight:500;line-height:1.25;overflow:hidden}.contract-detail-date.is-alert,.contract-detail-grid dd .contract-detail-date.is-alert{color:#f05234}.contract-party-list{grid-template-columns:1fr;gap:6px;display:grid}.contract-party-list section{background:#f7fbffb8;border:1px solid #7999c41f;border-radius:8px;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:8px;min-width:0;min-height:42px;padding:7px 9px;display:grid}.contract-party-list span{color:#176bff;background:#e6f2ffe6;border:1px solid #176bff1f;border-radius:7px;justify-content:center;align-items:center;width:34px;height:24px;font-size:11px;font-weight:700;display:inline-flex}.contract-party-list section>div{gap:2px;min-width:0;display:grid}.contract-party-list strong,.contract-party-list em{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.contract-party-list strong{color:#102754;font-size:12px;font-weight:700}.contract-party-list em{color:#6d7f99;font-size:11px;font-style:normal;font-weight:400}.contract-finance-summary{gap:8px;display:grid}.contract-finance-line{grid-template-columns:minmax(128px,.92fr) minmax(96px,1fr) 38px;align-items:center;gap:10px;min-width:0;display:grid}.contract-finance-line span{gap:2px;min-width:0;display:grid}.contract-finance-line strong,.contract-finance-line em{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.contract-finance-line strong{color:#526987;font-size:12px;font-weight:500}.contract-finance-line em{color:#102754;font-size:12px;font-style:normal;font-weight:650}.contract-finance-line>div{background:#dbe7f9eb;border-radius:999px;height:5px;overflow:hidden}.contract-finance-line>div i{border-radius:inherit;background:linear-gradient(90deg,#176bff,#3f9bff);height:100%;display:block}.contract-finance-line b{color:#426081;text-align:right;font-size:12px;font-weight:500}.contract-finance-node-list{gap:6px;margin-top:10px;display:grid}.contract-finance-node-list section{background:#f7fbffd1;border:1px solid #7999c41f;border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(84px,auto) auto;align-items:center;gap:8px;min-width:0;padding:8px 9px;display:grid}.contract-finance-node-list div,.contract-finance-node-list section>em{min-width:0}.contract-finance-node-list strong,.contract-finance-node-list span,.contract-finance-node-list section>em{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.contract-finance-node-list strong{color:#102754;font-size:12px;font-weight:650}.contract-finance-node-list span,.contract-finance-node-list section>em{color:#6d7f99;font-size:12px;font-style:normal}.contract-risk-list{gap:7px;display:grid}.contract-risk-list section{border:1px solid #7999c421;border-radius:8px;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:8px;min-width:0;padding:8px 9px;display:grid}.contract-risk-list section.is-danger{background:#fff6f8e0;border-color:#ef40562e}.contract-risk-list section.is-warning{background:#fff9ede6;border-color:#f08a162e}.contract-risk-list section.is-info{background:#f1f8ffe6;border-color:#176bff21}.contract-risk-list i{color:#f08a16;background:#ffffffc7;border-radius:7px;place-items:center;width:24px;height:24px;display:grid}.contract-risk-list section.is-danger i{color:#ef4056}.contract-risk-list strong,.contract-risk-list span{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.contract-risk-list strong{color:#102754;font-size:12px;font-weight:650}.contract-risk-list span{color:#6d7f99;font-size:12px}.contract-attachment-counts{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;min-width:0;display:grid}.contract-attachment-counts section{background:#f7fbffd1;border:1px solid #7999c424;border-radius:8px;justify-items:center;gap:4px;min-width:0;padding:9px 6px;display:grid}.contract-attachment-counts i{color:#176bff;place-items:center;width:24px;height:24px;display:grid}.contract-attachment-counts span{color:#526987;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:12px;overflow:hidden}.contract-attachment-counts strong{color:#102754;font-size:18px;font-weight:650;line-height:1.1}.contract-attachment-list{gap:6px;margin-top:10px;display:grid}.contract-attachment-list section{background:#ffffffc2;border:1px solid #7999c41f;border-radius:8px;grid-template-columns:28px minmax(0,1fr) 30px 30px;align-items:center;gap:8px;min-width:0;padding:8px;display:grid}.contract-attachment-list>section>i{color:#176bff;background:#ebf5ffe6;border-radius:8px;place-items:center;width:28px;height:28px;display:grid}.contract-attachment-list span,.contract-attachment-list strong,.contract-attachment-list em{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.contract-attachment-list span{gap:2px;display:grid}.contract-attachment-list strong{color:#102754;font-size:12px;font-weight:650}.contract-attachment-list em{color:#6d7f99;font-size:12px;font-style:normal}.contract-attachment-list .dm-icon-button{width:30px;min-width:30px;height:30px}.contract-attachment-preview-dialog .dm-dialog-panel{width:min(1180px,100vw - 56px)}.contract-attachment-preview-content{min-height:min(72vh,760px);display:grid;overflow:hidden}.contract-attachment-preview-frame{background:#fff;border:1px solid #7999c429;border-radius:8px;width:100%;min-height:min(72vh,760px)}.contract-attachment-preview-image{background:#f7fbffdb;border:1px solid #7999c429;border-radius:8px;place-items:center;min-height:min(72vh,760px);padding:12px;display:grid;overflow:auto}.contract-attachment-preview-image img{object-fit:contain;max-width:100%;max-height:calc(min(72vh,760px) - 24px);display:block}.contract-detail-empty{color:#7a8aa3;margin:0;font-size:12px;line-height:1.45}.contract-detail-head-actions{align-items:center;gap:7px;min-width:0;display:inline-flex}.contract-detail-head-actions .dm-icon-button{width:30px;min-width:30px;height:30px}.contract-form-dialog .dm-dialog-panel{width:min(1580px,100vw - 56px)}.contract-form-dialog .contract-form-dialog-content{max-height:none;overflow:auto}.contract-form-shell{grid-template-columns:minmax(0,1fr);gap:16px;min-height:0;display:grid}.contract-form-dialog .contract-form-main{gap:12px;min-width:0;display:grid;overflow:visible}.contract-form-section{background:linear-gradient(#fffffff5,#f8fcffe0);border:1px solid #b0cdeda8;border-radius:8px;gap:12px;min-width:0;padding:14px;display:grid;box-shadow:0 10px 26px #26518f0d}.contract-form-section>header{justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.contract-form-section>header>b{color:#fff;background:linear-gradient(135deg,#176bff,#0aa4ff);border-radius:999px;flex:none;place-items:center;width:22px;height:22px;font-size:12px;font-weight:700;display:grid}.contract-form-section>header>strong{color:#102754;flex:1;min-width:0;font-size:14px;font-weight:700}.contract-form-section>header>span{color:#577091;white-space:nowrap;flex:none;align-items:center;gap:5px;min-width:0;font-size:12px;font-weight:600;display:inline-flex}.contract-form-grid{gap:12px;min-width:0;display:grid}.contract-form-grid.is-four{grid-template-columns:repeat(4,minmax(0,1fr))}.contract-form-dialog .dm-form-field{gap:5px;min-width:0}.contract-form-dialog .dm-form-field-label{color:#304b70;font-size:12px;font-weight:650}.contract-form-dialog .dm-form-field-label b{color:#ef4056}.contract-form-dialog input,.contract-form-dialog textarea{color:#102754;letter-spacing:0;background:#fffffff2;border:1px solid #7999c447;border-radius:8px;outline:none;width:100%;min-width:0;font-size:12px;line-height:1.35;transition:border-color .16s,box-shadow .16s,background-color .16s;box-shadow:inset 0 1px #ffffffe6}.contract-form-dialog input{height:34px;padding:0 10px}.contract-form-dialog textarea{resize:vertical;min-height:76px;padding:9px 10px}.contract-form-dialog input:focus,.contract-form-dialog textarea:focus{background:#fff;border-color:#176bff94;box-shadow:0 0 0 3px #176bff1a}.contract-form-dialog input::placeholder,.contract-form-dialog textarea::placeholder{color:#8a99ad}.contract-form-dialog input:disabled{color:#8b9ab0;background:#f1f6fcdb}.contract-form-dialog .dm-select-trigger,.contract-form-dialog .dm-date-trigger{border-radius:8px;min-height:34px}.contract-form-dialog .dm-select-trigger>span,.contract-form-dialog .dm-date-trigger>span{font-size:12px;font-weight:500}.contract-form-remark{margin-top:-2px}.contract-form-disclosure{border-top:1px solid #7999c41f;min-width:0;display:grid}.contract-form-disclosure>summary{color:#304b70;cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-height:32px;font-size:12px;list-style:none;display:flex}.contract-form-disclosure>summary::-webkit-details-marker{display:none}.contract-form-disclosure>summary span{align-items:center;gap:8px;min-width:0;display:flex}.contract-form-disclosure>summary strong{color:#102754;font-size:12px;font-weight:700}.contract-form-disclosure>summary em,.contract-party-optional-disclosure>summary em,.contract-finance-row-more>summary em{color:#6d7f99;font-size:11px;font-style:normal}.contract-form-disclosure>summary b{color:#176bff;flex:none;font-size:11px;font-weight:650}.contract-form-disclosure[open]>summary b{color:#526987}.contract-form-disclosure[open]{gap:8px;padding-top:2px}.contract-party-editor{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-width:0;display:grid}.contract-party-section-head{flex-wrap:wrap}.contract-party-section-actions{flex:420px;justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.contract-party-section-actions>span{color:#607895;text-align:right;min-width:0;font-size:12px;font-weight:500;line-height:1.35}.contract-party-create-notice{color:#176bff;margin:-4px 0 0;font-size:12px;line-height:1.4}.contract-party-create-choice{gap:10px;display:grid}.contract-party-create-choice>button{text-align:left;cursor:pointer;background:#f8fcffe6;border:1px solid #b0cdedb8;border-radius:8px;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;min-width:0;padding:10px;display:grid}.contract-party-create-choice>button:hover:not(:disabled){background:#eff7fffa;border-color:#176bff57}.contract-party-create-choice>button:disabled{cursor:not-allowed;opacity:.58}.contract-party-create-choice i{color:#176bff;background:#edf6ff;border-radius:8px;place-items:center;width:34px;height:34px;display:grid}.contract-party-create-choice span{gap:3px;min-width:0;display:grid}.contract-party-create-choice strong{color:#102754;font-size:13px;font-weight:700}.contract-party-create-choice em{color:#637994;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-style:normal;line-height:1.3;overflow:hidden}.contract-party-editor>section{background:#f7fbffd1;border:1px solid #7999c429;border-radius:8px;gap:7px;min-width:0;padding:9px;display:grid}.contract-party-editor.is-optional-row{grid-template-columns:minmax(0,1fr)}.contract-party-editor>section.is-optional{background:#fafcffb8}.contract-party-actions{border-top:1px solid #7999c41a;align-items:center;min-height:32px;padding-top:2px;display:flex}.contract-party-card-head{align-items:center;gap:8px;min-width:0;display:flex}.contract-party-card-head i{color:#176bff;background:#e6f2fff5;border-radius:8px;place-items:center;width:24px;height:24px;display:grid}.contract-party-card-head strong{color:#102754;flex:1;min-width:0;font-size:12px;font-weight:700}.contract-party-card-head span{color:#526987;background:#ffffffd1;border:1px solid #7999c429;border-radius:999px;flex:none;padding:3px 7px;font-size:11px}.contract-party-fields{gap:8px;min-width:0;display:grid}.contract-party-selected{background:#ffffffc7;border:1px dashed #7999c447;border-radius:8px;grid-template-columns:minmax(0,1fr);align-items:center;gap:8px;min-height:38px;padding:7px 8px;display:grid}.contract-party-selected.is-filled{background:linear-gradient(#f2f8fff5,#ffffffe6);border-style:solid;border-color:#176bff3d;grid-template-columns:minmax(0,1fr) 28px}.contract-party-selected span,.contract-party-selected strong,.contract-party-selected em{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.contract-party-selected span{gap:1px;display:grid}.contract-party-selected strong{color:#102754;font-size:12px;font-weight:700}.contract-party-selected em{color:#6d7f99;font-size:11px;font-style:normal}.contract-party-picker-field{color:#6d7f99;background:#fffffff2;border:1px solid #7999c447;border-radius:8px;grid-template-columns:18px minmax(0,1fr) 18px;align-items:center;gap:6px;min-width:0;display:grid;position:relative;box-shadow:inset 0 1px #ffffffe6}.contract-party-picker-field>svg{justify-self:center}.contract-party-picker-field>input{height:30px;box-shadow:none;border:0;padding:0}.contract-party-picker-field>input:focus{box-shadow:none}.contract-party-picker-field .is-spinning{animation:.78s linear infinite contract-spin}.contract-party-candidates{z-index:24;background:#fffffffa;border:1px solid #7999c438;border-radius:8px;max-height:238px;padding:6px;display:grid;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:auto;box-shadow:0 18px 36px #22477c29}.contract-party-optional-disclosure{border-top:1px solid #7999c41a;min-width:0;padding:0;display:grid}.contract-party-optional-disclosure>summary{color:#304b70;cursor:pointer;justify-content:space-between;align-items:center;min-height:32px;font-size:12px;list-style:none;display:flex}.contract-party-optional-disclosure>summary::-webkit-details-marker{display:none}.contract-party-optional-disclosure>summary span{color:#176bff;align-items:center;gap:6px;font-weight:650;display:inline-flex}.contract-party-optional-disclosure[open]{gap:8px;padding-top:2px}.contract-party-candidates>span{color:#6d7f99;text-align:center;padding:10px;font-size:12px}.contract-party-candidates button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;grid-template-columns:28px minmax(0,1fr) 18px;align-items:center;gap:8px;width:100%;min-width:0;padding:8px;display:grid}.contract-party-candidates button:hover{background:#e8f3ffdb}.contract-party-candidates button>i{color:#176bff;background:#e7f2fff5;border-radius:8px;place-items:center;width:28px;height:28px;display:grid}.contract-party-candidates button>span,.contract-party-candidates button strong,.contract-party-candidates button em{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.contract-party-candidates button>span{gap:2px;display:grid}.contract-party-candidates button strong{color:#102754;font-size:12px;font-weight:700}.contract-party-candidates button em{color:#6d7f99;font-size:12px;font-style:normal}.contract-person-picker{min-width:0;display:grid;position:relative}.contract-person-candidates button>i{color:#176bff;background:#e7f2fff5;border-radius:8px;place-items:center;display:grid}.contract-person-search{color:#6d7f99;background:#fffffff5;border:1px solid #7999c447;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px;min-width:0;min-height:34px;display:grid;position:relative;box-shadow:inset 0 1px #ffffffe6}.contract-form-dialog .contract-person-search>input{height:32px;box-shadow:none;background:0 0;border:0;border-radius:0;padding:0 8px 0 10px}.contract-form-dialog .contract-person-search>input::selection{color:#0e4fd3;background:#bfdaffad}.contract-form-dialog .contract-person-search>input:focus{box-shadow:none;background:0 0;border:0}.contract-person-search .dm-icon-button{--dm-icon-button-size:22px;color:#7c8da6;background:0 0;border-color:#0000;border-radius:6px;justify-self:center;width:22px;min-width:22px;height:22px;margin-right:5px}.contract-person-search .dm-icon-button:hover{color:#176bff;background:#e7f2ffb8;border-color:#0000}.contract-person-search .dm-icon-button svg{width:12px;height:12px}.contract-person-search .is-spinning{justify-self:center;width:14px;height:14px;margin-right:9px;animation:.78s linear infinite contract-spin}.contract-person-candidates{z-index:28;background:#fffffffa;border:1px solid #7999c438;border-radius:8px;max-height:238px;padding:6px;display:grid;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:auto;box-shadow:0 18px 36px #22477c29}.contract-person-candidates>span{color:#6d7f99;text-align:center;padding:10px;font-size:12px}.contract-person-candidates button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;min-width:0;padding:8px;display:grid}.contract-person-candidates button:hover{background:#e8f3ffdb}.contract-person-candidates button>i{width:28px;height:28px}.contract-person-candidates button span,.contract-person-candidates button strong,.contract-person-candidates button em{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.contract-person-candidates button span{gap:2px;display:grid}.contract-person-candidates button strong{color:#102754;font-size:12px;font-weight:700}.contract-person-candidates button em{color:#6d7f99;font-size:11px;font-style:normal}.contract-person-candidates button small{color:#526987;white-space:nowrap;flex:none;font-size:11px}.contract-settlement-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;min-width:0;display:grid}.contract-settlement-grid .dm-form-field.is-wide{grid-column:1/-1}.contract-settlement-grid textarea{min-height:64px}.contract-finance-editor{border:1px solid #7999c429;border-radius:8px;min-width:0;display:grid;overflow-x:auto}.contract-finance-editor-head,.contract-finance-editor-row{grid-template-columns:minmax(148px,1.2fr) 122px 122px 132px 126px 44px;align-items:center;gap:8px;min-width:760px;padding:8px 10px;display:grid}.contract-finance-editor-head{color:#526987;background:#f4f9ffe6;border-bottom:1px solid #7999c424;font-size:12px;font-weight:650}.contract-finance-editor-row{background:#ffffffbd;border-bottom:1px solid #7999c41a;align-items:start}.contract-finance-editor-row:last-child{border-bottom:0}.contract-finance-note-fields{grid-template-columns:minmax(180px,.42fr) minmax(0,1fr);gap:8px;min-width:0;display:grid}.contract-finance-note-fields textarea{min-height:58px}.contract-finance-row-more{border-top:1px dashed #7999c424;grid-column:1/-1;min-width:0;margin-top:-1px;padding-top:2px}.contract-finance-row-more>summary{color:#176bff;cursor:pointer;align-items:center;gap:8px;min-height:28px;font-size:12px;font-weight:650;list-style:none;display:flex}.contract-finance-row-more>summary::-webkit-details-marker{display:none}.contract-finance-row-more[open]{padding-bottom:2px}.contract-finance-row-more[open]>summary{color:#304b70}.contract-finance-editor-row .dm-icon-button{justify-self:center;width:30px;min-width:30px;height:30px}.contract-attachment-editor{grid-template-columns:minmax(260px,.42fr) minmax(0,1fr);gap:12px;min-width:0;display:grid}.contract-upload-zone{text-align:center;background:linear-gradient(#f4faffeb,#fafdffdb);border:1px dashed #176bff5c;border-radius:8px;align-content:center;justify-items:center;gap:8px;min-height:170px;padding:18px;display:grid;position:relative}.contract-upload-zone>svg{color:#176bff}.contract-upload-zone strong{color:#102754;font-size:13px;font-weight:700}.contract-upload-zone span{color:#6d7f99;max-width:260px;font-size:12px;line-height:1.45}.contract-upload-zone input[type=file]{display:none}.contract-form-attachment-list{align-content:start;gap:8px;min-width:0;max-height:242px;display:grid;overflow:auto}.contract-form-attachment-list section{background:#ffffffd1;border:1px solid #7999c424;border-radius:8px;grid-template-columns:30px minmax(0,1fr) 150px 32px;align-items:center;gap:8px;min-width:0;padding:8px;display:grid}.contract-form-attachment-list section>i{color:#176bff;background:#e7f2fff5;border-radius:8px;place-items:center;width:30px;height:30px;display:grid}.contract-form-attachment-list span,.contract-form-attachment-list strong,.contract-form-attachment-list em{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.contract-form-attachment-list span{gap:2px;display:grid}.contract-form-attachment-list strong{color:#102754;font-size:12px;font-weight:650}.contract-form-attachment-list em{color:#6d7f99;font-size:12px;font-style:normal}.contract-form-attachment-list .dm-icon-button{width:30px;min-width:30px;height:30px}.contract-form-error{color:#d92840;margin:0;font-size:12px;line-height:1.45}.contract-dingtalk-plan-dialog .dm-dialog-panel{width:min(1280px,100vw - 56px)}.contract-dingtalk-plan-content{max-height:min(76vh,760px);overflow:auto}.contract-dingtalk-plan-shell{gap:12px;min-width:0;display:grid}.contract-dingtalk-plan-params{background:#f8fcffe6;border:1px solid #b0cded94;border-radius:8px;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;min-width:0;padding:12px;display:grid}.contract-dingtalk-plan-dialog .dm-form-field{gap:5px;min-width:0}.contract-dingtalk-plan-dialog .dm-form-field-label{color:#304b70;font-size:12px;font-weight:650}.contract-dingtalk-plan-dialog input{color:#102754;letter-spacing:0;background:#fffffff2;border:1px solid #7999c447;border-radius:8px;outline:none;width:100%;min-width:0;height:34px;padding:0 10px;font-size:12px;line-height:1.35;transition:border-color .16s,box-shadow .16s,background-color .16s;box-shadow:inset 0 1px #ffffffe6}.contract-dingtalk-plan-dialog input:focus{background:#fff;border-color:#176bff94;box-shadow:0 0 0 3px #176bff1a}.contract-dingtalk-plan-dialog input::placeholder{color:#8a99ad}.contract-dingtalk-plan-dialog .dm-select-trigger{border-radius:8px;min-height:34px}.contract-dingtalk-plan-summary{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;min-width:0;display:grid}.contract-dingtalk-plan-metric{background:#ffffffe0;border:1px solid #7999c429;border-radius:8px;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:4px 8px;min-width:0;padding:9px 10px;display:grid}.contract-dingtalk-plan-metric i{color:#176bff;background:#e7f2fff5;border-radius:8px;grid-row:span 2;place-items:center;width:28px;height:28px;display:grid}.contract-dingtalk-plan-metric span,.contract-dingtalk-plan-metric strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.contract-dingtalk-plan-metric span{color:#6d7f99;font-size:11px;line-height:1.2}.contract-dingtalk-plan-metric strong{color:#102754;font-size:15px;font-weight:750;line-height:1.2}.contract-dingtalk-plan-warnings{color:#8a5b10;background:#fff9eae6;border:1px solid #e8b55b52;border-radius:8px;gap:6px;min-width:0;padding:10px 12px;font-size:12px;line-height:1.45;display:grid}.contract-dingtalk-plan-warnings span{overflow-wrap:anywhere;min-width:0}.contract-dingtalk-plan-execute{background:#ffffffe6;border:1px solid #b0cded94;border-radius:8px;grid-template-columns:minmax(0,1fr) 160px;align-items:end;gap:10px;min-width:0;padding:12px;display:grid}.contract-dingtalk-plan-confirm{color:#102754;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:9px;min-width:0;margin:0;display:grid}.contract-dingtalk-plan-confirm input[type=checkbox]{accent-color:#176bff;width:16px;min-width:16px;height:16px;box-shadow:none;margin:0;padding:0}.contract-dingtalk-plan-confirm span{gap:2px;min-width:0;display:grid}.contract-dingtalk-plan-confirm strong,.contract-dingtalk-plan-confirm em{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.contract-dingtalk-plan-confirm strong{color:#102754;font-size:12px;font-weight:700}.contract-dingtalk-plan-confirm em{color:#6d7f99;font-size:11px;font-style:normal}.contract-dingtalk-plan-execute-result{flex-wrap:wrap;grid-column:1/-1;gap:6px;min-width:0;display:flex}.contract-dingtalk-plan-execute-result span{color:#304b70;background:#f8fcffe6;border:1px solid #7999c429;border-radius:999px;min-height:24px;padding:4px 8px;font-size:12px;line-height:1.25}.contract-dingtalk-plan-results{background:#ffffffe6;border:1px solid #b0cded94;border-radius:8px;gap:8px;min-width:0;padding:12px;display:grid}.contract-dingtalk-plan-results>header{justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.contract-dingtalk-plan-results>header strong{color:#102754;font-size:13px;font-weight:700}.contract-dingtalk-plan-results>header span{color:#6d7f99;font-size:12px}.contract-dingtalk-plan-list{border:1px solid #7999c424;border-radius:8px;min-width:0;max-height:360px;display:grid;overflow:auto}.contract-dingtalk-plan-list section{background:#ffffffbd;border-bottom:1px solid #7999c41a;grid-template-columns:92px minmax(220px,1.3fr) minmax(180px,.8fr) minmax(150px,.62fr);align-items:center;gap:10px;min-width:840px;padding:9px 10px;display:grid}.contract-dingtalk-plan-list section:last-child{border-bottom:0}.contract-dingtalk-plan-list span{gap:2px;min-width:0;display:grid}.contract-dingtalk-plan-list strong,.contract-dingtalk-plan-list em{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.contract-dingtalk-plan-list strong{color:#102754;font-size:12px;font-weight:650}.contract-dingtalk-plan-list em{color:#6d7f99;font-size:11px;font-style:normal}.contract-dingtalk-plan-dialog .is-spinning{animation:.78s linear infinite contract-spin}@keyframes contract-spin{to{transform:rotate(360deg)}}@media (max-width:1380px){.contract-management-body{grid-template-columns:minmax(720px,1fr) minmax(380px,440px)}.contract-filter-segments{flex-wrap:wrap}.contract-year-tabs.dm-segmented{flex:0 auto}.contract-filter-controls{grid-template-columns:repeat(2,minmax(0,1fr)) auto}.contract-name-search{grid-column:span 2}.contract-form-shell{grid-template-columns:1fr}.contract-dingtalk-plan-params{grid-template-columns:repeat(2,minmax(0,1fr))}.contract-dingtalk-plan-summary{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:1180px){.contract-page-topbar{grid-template-columns:1fr;min-height:auto}.contract-management-body{grid-template-columns:1fr}.contract-detail-panel{min-height:520px}.contract-form-grid.is-four,.contract-settlement-grid,.contract-party-editor,.contract-attachment-editor,.contract-dingtalk-plan-params{grid-template-columns:1fr}.contract-dingtalk-plan-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.contract-dingtalk-plan-execute{grid-template-columns:1fr}}@media (max-width:760px){.contract-filter-segments,.contract-status-tabs.dm-segmented,.contract-year-tabs.dm-segmented{width:100%}.contract-filter-controls,.contract-party-list,.contract-detail-grid,.contract-attachment-counts,.contract-dingtalk-plan-summary{grid-template-columns:1fr}.contract-dingtalk-plan-dialog .dm-dialog-panel{width:calc(100vw - 24px)}}
.org-screen.outsourcing-management-screen{color:#102754;background:linear-gradient(135deg,#f5faff 0%,#edf6ff 52%,#f8fbff 100%);min-height:100vh}.outsourcing-workspace{gap:14px;padding-bottom:18px}.outsourcing-page-topbar{grid-template-columns:minmax(280px,1fr) minmax(320px,520px) minmax(430px,auto)}.outsourcing-page-title,.outsourcing-global-search,.outsourcing-list-panel,.outsourcing-detail-panel{min-width:0}.outsourcing-page-actions{justify-content:end}.outsourcing-global-search input,.outsourcing-filter-bar input,.outsourcing-form-dialog input,.outsourcing-form-dialog textarea{color:#102d58;letter-spacing:0;font-size:12px;font-weight:400}.outsourcing-global-search input::placeholder,.outsourcing-filter-bar input::placeholder,.outsourcing-form-dialog input::placeholder,.outsourcing-form-dialog textarea::placeholder{color:#7f8fa8;font-size:12px}.outsourcing-body{z-index:1;grid-template-columns:minmax(0,1fr) clamp(500px,38vw,620px);gap:16px;min-height:0;display:grid;position:relative}.outsourcing-list-panel,.outsourcing-detail-panel{background:linear-gradient(#fffffff5,#f8fcffe8);border:1px solid #b0cdedb8;border-radius:8px;overflow:hidden;box-shadow:0 18px 46px #26518f14,inset 0 1px #ffffffdb}.outsourcing-list-panel.management-data-panel{grid-template-rows:auto auto minmax(0,1fr) auto;min-height:0;padding:16px 14px 12px;display:grid}.outsourcing-filter-bar{z-index:3;grid-template-columns:auto minmax(360px,1fr);align-items:center;gap:12px;padding:2px 0 12px;display:grid;position:relative}.outsourcing-status-tabs.dm-segmented{width:fit-content;max-width:100%}.outsourcing-filter-controls{grid-template-columns:minmax(132px,.48fr) minmax(118px,150px) minmax(150px,190px) minmax(210px,.9fr) auto;align-items:center;gap:10px;display:grid}.outsourcing-filter-controls .dm-select-trigger,.outsourcing-filter-controls .dm-month-trigger,.outsourcing-filter-controls .dm-search-input,.outsourcing-project-multi-trigger,.outsourcing-filter-controls .dm-button:not(.dm-icon-button){border-radius:8px;height:30px;min-height:30px}.outsourcing-filter-controls .dm-button:not(.dm-icon-button){white-space:nowrap;justify-content:center;min-width:68px;padding-inline:10px}.outsourcing-filter-controls .dm-select-trigger>span,.outsourcing-filter-controls .dm-month-trigger>span,.outsourcing-filter-controls .dm-search-input input,.outsourcing-filter-controls .dm-search-input input::placeholder,.outsourcing-project-multi-trigger,.outsourcing-filter-controls .dm-button .dm-button-label{font-size:11px;font-weight:400;line-height:1.2}.outsourcing-filter-controls .dm-button .dm-button-label{white-space:nowrap;align-items:center;line-height:1;display:inline-flex}.outsourcing-project-multi-trigger svg,.outsourcing-filter-controls .dm-button svg{width:13px;height:13px}.outsourcing-project-filter,.outsourcing-project-multi,.outsourcing-search-picker{min-width:0;position:relative}.outsourcing-project-multi-trigger{color:#284163;cursor:pointer;background:#fffffff0;border:1px solid #7999c43d;justify-content:space-between;align-items:center;gap:8px;width:100%;padding:0 10px;display:inline-flex}.outsourcing-filter-controls .outsourcing-project-multi-trigger,.outsourcing-filter-controls .outsourcing-project-multi-trigger .outsourcing-project-multi-label{line-height:1.1;font-size:11px!important}.outsourcing-project-multi-trigger:hover{border-color:#176bff57}.outsourcing-project-multi-label{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.outsourcing-project-multi-popover{z-index:32;background:#fffffffc;border:1px solid #7999c438;border-radius:9px;gap:6px;min-width:320px;padding:7px;display:grid;position:absolute;top:calc(100% + 6px);left:0;right:0;box-shadow:0 18px 38px #26518f24}.outsourcing-project-multi-selected{flex-wrap:wrap;gap:5px;max-height:48px;display:flex;overflow-y:auto}.outsourcing-project-multi-chip{color:#176bff;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;background:#e9f4fff5;border:1px solid #176bff2e;border-radius:999px;align-items:center;gap:4px;max-width:100%;height:19px;padding:0 6px;font-size:10.5px;font-weight:500;line-height:1;display:inline-flex;overflow:hidden}.outsourcing-project-multi-popover .outsourcing-project-multi-chip,.outsourcing-project-multi-popover .outsourcing-project-multi-chip *{line-height:1;font-size:10.5px!important}.outsourcing-project-multi-options{max-height:236px;display:grid;overflow-y:auto}.outsourcing-project-multi-option{color:#102754;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;grid-template-columns:18px minmax(0,1fr);align-items:center;gap:6px;min-height:40px;padding:6px 7px;display:grid}.outsourcing-project-multi-option:hover,.outsourcing-project-multi-option.is-selected{background:linear-gradient(90deg,#176bff14,#ffffffdb)}.outsourcing-project-multi-check{color:#176bff;justify-content:center;align-items:center;width:18px;height:18px;display:inline-flex}.outsourcing-project-multi-copy{gap:2px;min-width:0;display:grid}.outsourcing-project-multi-copy strong,.outsourcing-project-multi-copy span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.outsourcing-project-multi-copy strong{font-size:11px;font-weight:400}.outsourcing-project-multi-copy span,.outsourcing-project-multi-empty{color:#71829b;font-size:11px}.outsourcing-project-multi-empty{text-align:center;padding:12px 8px}.outsourcing-project-multi-clear{color:#176bff;cursor:pointer;background:0 0;border:0;justify-self:end;padding:0;line-height:1.1;font-size:10.5px!important}.outsourcing-filter-chip{color:#176bff;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;background:#e9f4fff5;border:1px solid #176bff2e;border-radius:999px;align-items:center;gap:4px;max-width:48%;height:22px;padding:0 7px;font-size:12px;font-weight:500;display:inline-flex;position:absolute;top:4px;right:6px;overflow:hidden}.outsourcing-candidate-popover{z-index:30;background:#fffffffa;border:1px solid #7999c433;border-radius:8px;max-height:236px;padding:6px;display:grid;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto;box-shadow:0 18px 38px #26518f21}.outsourcing-candidate-popover.is-form{top:calc(100% + 8px)}.outsourcing-candidate-popover button{color:#102754;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;gap:3px;min-height:46px;padding:8px 10px;display:grid}.outsourcing-candidate-popover button:hover{background:linear-gradient(90deg,#176bff12,#ffffffd1)}.outsourcing-candidate-popover strong,.outsourcing-candidate-popover span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.outsourcing-candidate-popover strong{font-size:12px;font-weight:400}.outsourcing-candidate-popover span{color:#71829b;font-size:12px}.outsourcing-list-panel .management-data-table{--management-data-x-padding:10px;--management-data-row-min-height:60px;min-height:0}.outsourcing-list-panel .management-data-row{align-items:center}.outsourcing-list-panel .management-data-main-copy strong,.outsourcing-list-panel .management-data-main-copy em,.outsourcing-list-panel .management-data-main-copy small,.outsourcing-list-panel .management-data-cell{font-weight:400}.outsourcing-main-icon.is-0{color:#176bff}.outsourcing-main-icon.is-1{color:#0ea5e9}.outsourcing-main-icon.is-2{color:#14b8a6}.outsourcing-main-icon.is-3{color:#8b5cf6}.outsourcing-table-main-text{color:#102754;word-break:break-word;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-weight:400;line-height:1.35;display:-webkit-box;overflow:hidden}.outsourcing-table-main-text+small{color:#71829b;margin-top:3px;font-size:12px;display:block}.outsourcing-date-stack,.outsourcing-cost-stack,.outsourcing-profit{gap:3px;min-width:0;display:grid}.outsourcing-date-stack strong,.outsourcing-cost-stack strong,.outsourcing-profit{color:#102754;font-size:12px;font-weight:400}.outsourcing-date-stack em,.outsourcing-cost-stack em,.outsourcing-profit em{color:#71829b;font-size:12px;font-style:normal;font-weight:400}.outsourcing-profit.is-positive{color:#dc2626}.outsourcing-profit.is-negative{color:#047857}.outsourcing-detail-panel{align-content:start;gap:10px;max-height:calc(100vh - 178px);padding:14px 16px;display:grid;overflow-y:auto}.outsourcing-detail-head{border-bottom:1px solid #b0cded8f;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:6px 12px;padding:0 0 12px;display:grid}.outsourcing-detail-head .outsourcing-avatar,.outsourcing-section-title svg{color:#176bff}.outsourcing-detail-head .outsourcing-avatar.is-md{object-fit:cover;color:#176bff;background:linear-gradient(#eef6ff,#f7fbff);border:1px solid #82b5f56b;border-radius:8px;place-items:center;width:46px;height:46px;font-size:14px;font-weight:500;display:grid;overflow:hidden}.outsourcing-avatar.is-sm{object-fit:cover;color:#176bff;background:radial-gradient(circle at 30% 18%,#fffffff2,#0000 34%),linear-gradient(135deg,#ebf5fffa,#d2e7ffdb);border:1px solid #176bff29;border-radius:8px;place-items:center;width:34px;height:34px;font-size:12px;font-weight:500;display:grid;overflow:hidden;box-shadow:0 8px 18px #176bff14}img.outsourcing-avatar{background:#eef6ff}.outsourcing-detail-person{gap:2px;min-width:0;display:grid}.outsourcing-detail-person strong{color:#081a4a;font-size:16px;font-weight:400;line-height:22px;display:block}.outsourcing-detail-person span{color:#64748b;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:12px;line-height:18px;display:block;overflow:hidden}.outsourcing-detail-person .outsourcing-detail-assignment-line{color:#153a66;font-weight:500}.outsourcing-detail-person .outsourcing-detail-org-line{color:#71829b;font-weight:400}.outsourcing-detail-actions{scrollbar-width:none;white-space:nowrap;flex-wrap:nowrap;grid-column:2/-1;justify-content:flex-start;align-items:center;gap:5px;min-width:0;max-width:100%;padding-top:2px;display:flex;overflow:auto hidden}.outsourcing-detail-actions::-webkit-scrollbar{display:none}.outsourcing-detail-actions .dm-button{border-radius:7px;flex:none;height:26px;min-height:26px;padding-inline:8px;font-size:11.5px;font-weight:400}.outsourcing-detail-actions .dm-button-label{font-size:11.5px;font-weight:400;line-height:1}.outsourcing-detail-actions .dm-button svg{width:13px;height:13px}.outsourcing-detail-section,.outsourcing-form-section{gap:10px;display:grid}.outsourcing-detail-section{border-bottom:1px solid #b0cded75;padding-bottom:10px}.outsourcing-section-title{color:#122b58;align-items:center;gap:6px;min-height:24px;font-size:13px;font-weight:500;display:inline-flex}.outsourcing-section-title em{color:#71829b;font-size:12px;font-style:normal;font-weight:400}.outsourcing-section-toggle{width:100%;min-height:26px;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;padding:0;display:flex}.outsourcing-section-toggle>svg{color:#47648d;flex:none;transition:transform .16s}.outsourcing-section-toggle>svg.is-collapsed{transform:rotate(-90deg)}.outsourcing-detail-section.is-collapsed{gap:0;padding-bottom:8px}.outsourcing-current-assignment{background:#f7fbffc7;border:1px solid #b0cded7a;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px 12px;padding:10px;display:grid}.outsourcing-current-assignment>div:first-child{min-width:0}.outsourcing-current-assignment>div:first-child strong{color:#102754;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:400;display:block;overflow:hidden}.outsourcing-current-assignment>div:first-child span{color:#64748b;font-size:12px}.outsourcing-current-assignment dl{border-top:1px solid #b0cded57;grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 10px;margin:0;padding-top:8px;display:grid}.outsourcing-current-assignment dl div{min-width:0}.outsourcing-current-assignment dt,.outsourcing-current-assignment dd{margin:0}.outsourcing-current-assignment dt{color:#71829b;font-size:12px}.outsourcing-current-assignment dd{color:#102754;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:12px;font-weight:500;overflow:hidden}.outsourcing-workflow-link{color:#176bff;vertical-align:top;align-items:center;gap:4px;max-width:100%;font-size:12px;font-weight:500;line-height:1.35;text-decoration:none;display:inline-flex}.outsourcing-workflow-link:hover{color:#0f55d8;text-decoration:underline}.outsourcing-workflow-link svg{flex:none}.outsourcing-mini-table,.outsourcing-rate-history{gap:8px;display:grid}.outsourcing-mini-table>div,.outsourcing-rate-history>span{background:#f7fbffd1;border:1px solid #b0cded94;border-radius:8px;gap:3px;min-width:0;padding:8px 10px;display:grid}.outsourcing-mini-table span,.outsourcing-rate-history strong{color:#102754;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:500;overflow:hidden}.outsourcing-mini-table strong{color:#176bff;font-size:12px;font-weight:500}.outsourcing-mini-table em,.outsourcing-rate-history em,.outsourcing-rate-history small,.outsourcing-mini-table p,.outsourcing-rate-history p{color:#71829b;text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:12px;font-style:normal;overflow:hidden}.outsourcing-rate-history small{color:#475569}.outsourcing-history-card-head{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;display:grid}.outsourcing-history-card-head>span{min-width:0}.outsourcing-history-card-actions{align-items:center;gap:6px;display:inline-flex}.outsourcing-void-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.outsourcing-void-summary span{background:#f7fbffd1;border:1px solid #b0cded94;border-radius:8px;gap:4px;min-width:0;padding:8px 10px;display:grid}.outsourcing-void-summary em,.outsourcing-void-summary strong{text-overflow:ellipsis;white-space:nowrap;font-style:normal;overflow:hidden}.outsourcing-void-summary em{color:#71829b;font-size:12px}.outsourcing-void-summary strong{color:#102754;font-size:12px;font-weight:500}.outsourcing-cost-version-list em{text-overflow:clip;white-space:normal;word-break:break-word;line-height:1.55;overflow:visible}.outsourcing-cost-version-head{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;min-width:0;display:grid}.outsourcing-cost-version-head>span{min-width:0}.outsourcing-cost-version-head .dm-icon-button{--dm-icon-button-size:24px;border-radius:7px}.outsourcing-assignment-history-list dl,.outsourcing-upcoming-assignment-list dl,.outsourcing-monthly-cost-list dl,.outsourcing-cost-version-list dl{border-top:1px solid #b0cded57;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px 10px;margin:4px 0 0;padding-top:7px;display:grid}.outsourcing-assignment-history-list dl div,.outsourcing-upcoming-assignment-list dl div,.outsourcing-monthly-cost-list dl div,.outsourcing-cost-version-list dl div{min-width:0}.outsourcing-assignment-history-list dt,.outsourcing-assignment-history-list dd,.outsourcing-upcoming-assignment-list dt,.outsourcing-upcoming-assignment-list dd,.outsourcing-monthly-cost-list dt,.outsourcing-monthly-cost-list dd,.outsourcing-cost-version-list dt,.outsourcing-cost-version-list dd{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:12px;line-height:1.35;overflow:hidden}.outsourcing-assignment-history-list dt,.outsourcing-upcoming-assignment-list dt,.outsourcing-monthly-cost-list dt,.outsourcing-cost-version-list dt{color:#71829b}.outsourcing-assignment-history-list dd,.outsourcing-upcoming-assignment-list dd,.outsourcing-monthly-cost-list dd,.outsourcing-cost-version-list dd{color:#102754;font-weight:400}.outsourcing-detail-panel strong{font-weight:400}.outsourcing-detail-panel .outsourcing-mini-table span,.outsourcing-detail-panel .outsourcing-mini-table strong,.outsourcing-detail-panel .outsourcing-rate-history strong,.outsourcing-detail-panel dd strong,.outsourcing-detail-panel .outsourcing-mini-table dd,.outsourcing-detail-panel .outsourcing-monthly-cost-list dd,.outsourcing-detail-panel .outsourcing-cost-version-list dd,.outsourcing-detail-panel .outsourcing-rate-history strong,.outsourcing-detail-panel .is-positive,.outsourcing-detail-panel .is-negative{font-weight:500}.outsourcing-assignment-history-list dd.is-revenue,.outsourcing-upcoming-assignment-list dd.is-revenue,.outsourcing-monthly-cost-list dd.is-revenue{text-overflow:clip;white-space:normal;overflow:visible}.outsourcing-assignment-history-list dd small,.outsourcing-upcoming-assignment-list dd small,.outsourcing-monthly-cost-list dd small{color:#71829b;font-size:11px;font-weight:400;line-height:inherit;margin-left:4px;display:inline}.outsourcing-assignment-history-list dd.is-positive,.outsourcing-upcoming-assignment-list dd.is-positive,.outsourcing-monthly-cost-list dd.is-positive{color:#dc2626}.outsourcing-assignment-history-list dd.is-negative,.outsourcing-upcoming-assignment-list dd.is-negative,.outsourcing-monthly-cost-list dd.is-negative{color:#047857}.outsourcing-upcoming-assignment-list>div{background:linear-gradient(#eff6ffeb,#f8fcffe6);border-color:#176bff38;padding-left:12px;position:relative}.outsourcing-upcoming-assignment-list>div:before{content:"";background:#176bff;border-radius:999px;width:3px;position:absolute;top:9px;bottom:9px;left:0}.outsourcing-upcoming-assignment-list .dm-status-badge{width:fit-content;margin-top:1px}.outsourcing-form-dialog.dm-dialog--xl{width:min(1080px,100vw - 80px)}.outsourcing-form-dialog .dm-dialog-body{max-height:min(720px,100vh - 190px);padding:18px;overflow-y:auto}.outsourcing-form-grid{gap:12px;display:grid}.outsourcing-dialog-error{color:#b42318;background:#fff1f2f0;border:1px solid #f8717157;border-radius:8px;padding:9px 11px;font-size:12px;font-weight:400}.outsourcing-dialog-tip{color:#24558f;background:#eff6ffdb;border:1px solid #78a6e647;border-radius:8px;padding:9px 11px;font-size:12px;line-height:1.5}.outsourcing-status-readonly{color:#64748b;background:#f7fbffe6;border:1px solid #b0cdedb8;border-radius:8px;align-items:center;gap:7px;min-height:34px;padding:0 10px;font-size:12px;display:flex}.outsourcing-status-readonly svg{color:#176bff;flex:none}.outsourcing-status-readonly span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.outsourcing-form-section.is-assignment{padding:10px 12px}.outsourcing-form-section.is-assignment .outsourcing-section-title{margin-bottom:8px}.outsourcing-form-fields.is-assignment{align-items:start;gap:10px}.outsourcing-form-fields.is-assignment .dm-form-field{gap:5px}.outsourcing-form-fields.is-assignment .dm-form-field-label{min-height:16px;line-height:16px}.outsourcing-form-fields.is-assignment .dm-date-picker-trigger,.outsourcing-form-fields.is-assignment .outsourcing-status-readonly{height:32px;min-height:32px}.outsourcing-form-fields.is-assignment .outsourcing-status-readonly{background:#f8fcffeb;border-color:#94afd35c;padding:0 9px}.outsourcing-form-fields.is-assignment .outsourcing-status-readonly .dm-status-badge{flex:none}.outsourcing-form-fields.is-assignment .outsourcing-status-readonly span{color:#64748b;font-size:12px}.outsourcing-calendar-dialog .dm-dialog-body{padding:18px}.outsourcing-calendar-body{gap:14px;display:grid}.outsourcing-calendar-toolbar{grid-template-columns:minmax(160px,1fr) auto;align-items:end;gap:10px;display:grid}.outsourcing-calendar-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.outsourcing-calendar-summary span{background:linear-gradient(#f8fcfff5,#f0f7ffd1);border:1px solid #b0cdedb8;border-radius:8px;gap:6px;min-width:0;padding:12px;display:grid}.outsourcing-calendar-summary em{color:#71829b;font-size:12px;font-style:normal;line-height:1.25}.outsourcing-calendar-summary strong{color:#08245a;font-size:20px;font-weight:400;line-height:1.05}.outsourcing-calendar-source{color:#667794;margin:0;font-size:12px;line-height:1.55}.outsourcing-attendance-dialog.dm-dialog--xl{width:min(1120px,100vw - 80px)}.outsourcing-attendance-toolbar{grid-template-columns:minmax(160px,220px) minmax(0,1fr);align-items:end}.outsourcing-attendance-toolbar,.outsourcing-attendance-result{gap:10px;display:grid}.outsourcing-attendance-metrics,.outsourcing-attendance-result{grid-template-columns:repeat(4,minmax(0,1fr))}.outsourcing-attendance-metrics{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.outsourcing-attendance-metrics span,.outsourcing-attendance-result span{background:#f1f7ffb8;border:1px solid #7999c429;border-radius:8px;gap:3px;min-width:0;padding:8px 10px;display:grid}.outsourcing-attendance-metrics em,.outsourcing-attendance-result em,.outsourcing-attendance-result small{color:#71829b;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-style:normal;overflow:hidden}.outsourcing-attendance-result small{color:#8a9ab2;font-size:11px}.outsourcing-attendance-metrics strong,.outsourcing-attendance-result strong{color:#102754;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:400;overflow:hidden}.outsourcing-attendance-result strong{align-items:baseline;gap:8px;display:flex}.outsourcing-attendance-result strong b,.outsourcing-attendance-result strong i{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-style:normal;overflow:hidden}.outsourcing-attendance-result strong b{flex:none}.outsourcing-attendance-result strong i{color:#60718d;font-size:11px;font-weight:500}.outsourcing-attendance-result strong.is-positive{color:#dc2626}.outsourcing-attendance-result strong.is-negative{color:#047857}.outsourcing-attendance-section .outsourcing-section-title{justify-content:space-between;gap:8px}.outsourcing-attendance-section .outsourcing-section-title strong{margin-right:auto}.outsourcing-attendance-section .dm-segmented{min-height:30px;padding:2px}.outsourcing-attendance-section .dm-segmented button{min-height:24px;padding:0 10px;font-size:12px;font-weight:400}.outsourcing-attendance-table{gap:6px;min-width:0;display:grid}.outsourcing-attendance-row{grid-template-columns:minmax(122px,.78fr) minmax(140px,1fr) minmax(112px,.82fr) minmax(70px,.5fr) minmax(70px,.5fr) minmax(78px,.56fr) minmax(68px,.5fr) minmax(120px,.84fr) minmax(70px,.48fr);align-items:center;gap:8px;min-width:0;display:grid}.outsourcing-attendance-row.is-head{color:#71829b;min-height:26px;font-size:12px}.outsourcing-attendance-row:not(.is-head){background:#f8fcffc2;border:1px solid #b0cded6b;border-radius:8px;padding:8px}.outsourcing-attendance-row.is-pending{background:#fffbeb9e;border-color:#fbbf2447}.outsourcing-attendance-row input,.outsourcing-attendance-row .dm-select-trigger,.outsourcing-attendance-row .dm-date-trigger{color:#102d58;height:30px;min-height:30px;font-size:12px;font-weight:400}.outsourcing-attendance-row input{background:#fffffff0;border:1px solid #94afd361;border-radius:8px;outline:none;min-width:0;padding:0 9px}.outsourcing-attendance-row input::placeholder{color:#8da0bb}.outsourcing-attendance-project{color:#102d58;text-overflow:ellipsis;white-space:nowrap;background:#eff6ffb8;border:1px solid #94afd347;border-radius:8px;min-width:0;height:30px;padding:0 9px;font-size:12px;line-height:30px;overflow:hidden}.outsourcing-attendance-project.is-missing{color:#dc2626;background:#fef2f2b8;border-color:#f8717152}.outsourcing-attendance-status{white-space:nowrap;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;min-width:0;height:24px;padding:0 8px;font-size:12px;font-weight:400;display:inline-flex}.outsourcing-attendance-status.is-pending_calculation{color:#b45309;background:#fff7ede6;border-color:#fb923c47}.outsourcing-attendance-status.is-calculated{color:#047857;background:#ecfdf5e0;border-color:#34d39947}.outsourcing-attendance-actions{justify-content:flex-end;align-items:center;gap:4px;min-width:0;display:inline-flex}.outsourcing-attendance-actions>button:not(.dm-icon-button){color:#0f63e6;cursor:pointer;background:#eff6ffeb;border:1px solid #2563eb38;border-radius:7px;height:28px;padding:0 8px;font-size:12px;font-weight:400}.outsourcing-attendance-row .dm-icon-button{width:30px;height:30px;min-height:30px}.outsourcing-attendance-filter-empty{color:#7b8ca6;background:#f8fcffb8;border:1px dashed #94afd36b;border-radius:8px;place-items:center;min-height:54px;font-size:12px;display:grid}.outsourcing-attendance-empty{justify-items:center;gap:10px;padding:8px 0;display:grid}.outsourcing-variable-cost-section .outsourcing-section-title{justify-content:space-between;gap:8px}.outsourcing-variable-cost-section .outsourcing-section-title strong{margin-right:auto}.outsourcing-variable-cost-table{gap:6px;min-width:0;display:grid}.outsourcing-variable-cost-row{grid-template-columns:minmax(160px,1fr) repeat(5,minmax(72px,.5fr)) minmax(118px,.76fr) minmax(54px,.36fr);align-items:center;gap:8px;min-width:0;display:grid}.outsourcing-variable-cost-row.is-head{color:#71829b;min-height:26px;font-size:12px}.outsourcing-variable-cost-row:not(.is-head){background:#f8fcffc2;border:1px solid #b0cded6b;border-radius:8px;padding:8px}.outsourcing-variable-cost-row input,.outsourcing-variable-cost-row .dm-select-trigger,.outsourcing-variable-cost-project{color:#102d58;height:30px;min-height:30px;font-size:12px;font-weight:400}.outsourcing-variable-cost-project{text-overflow:ellipsis;white-space:nowrap;background:#eff6ffb8;border:1px solid #94afd347;border-radius:8px;min-width:0;padding:0 9px;line-height:30px;display:block;overflow:hidden}.outsourcing-variable-cost-row input{background:#fffffff0;border:1px solid #94afd361;border-radius:8px;outline:none;min-width:0;padding:0 9px}.outsourcing-variable-cost-row input::placeholder{color:#8da0bb}.outsourcing-variable-cost-row .dm-icon-button{width:30px;height:30px;min-height:30px}.outsourcing-form-section{background:linear-gradient(#fffffffa,#f9fcffeb);border:1px solid #b0cdedb3;border-radius:8px;padding:12px}.outsourcing-pick-grid,.outsourcing-form-fields{gap:12px;display:grid}.outsourcing-pick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.outsourcing-form-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.outsourcing-form-fields.is-cost,.outsourcing-form-fields.is-extra{grid-template-columns:repeat(4,minmax(0,1fr))}.outsourcing-cost-metrics{background:#f1f7ffb8;border:1px solid #7999c429;border-radius:8px;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;min-width:0;padding:8px 10px;display:grid}.outsourcing-cost-metrics.is-compact{grid-template-columns:repeat(2,minmax(0,1fr))}.outsourcing-cost-metrics span{gap:3px;min-width:0;display:grid}.outsourcing-cost-metrics em{color:#71829b;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-style:normal;overflow:hidden}.outsourcing-cost-metrics strong{color:#102754;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:400;overflow:hidden}.outsourcing-cost-metrics strong.is-positive{color:#dc2626}.outsourcing-cost-metrics strong.is-negative{color:#047857}.outsourcing-form-dialog .dm-form-field{min-width:0}.outsourcing-form-dialog .dm-search-input,.outsourcing-form-dialog .dm-select-trigger,.outsourcing-form-dialog .dm-date-picker-trigger,.outsourcing-form-dialog .dm-form-field-control>input,.outsourcing-form-dialog textarea{border-radius:8px;width:100%;min-height:34px}.outsourcing-form-dialog .dm-form-field-control>input,.outsourcing-form-dialog textarea{background:#ffffffe6;border:1px solid #94afd361;outline:none;padding:0 11px}.outsourcing-form-dialog textarea{resize:vertical;min-height:72px;padding:10px 11px}.outsourcing-search-picker .dm-search-input{padding-right:30px}.outsourcing-search-picker .dm-search-input input,.outsourcing-search-picker .dm-search-input input:focus,.outsourcing-search-picker .dm-search-input input:disabled{appearance:none;min-height:0!important;box-shadow:none!important;background:0 0!important;border:0!important;border-radius:0!important;outline:none!important;padding:0!important}.outsourcing-search-picker>button[aria-label]{color:#64748b;cursor:pointer;background:0 0;border:0;border-radius:7px;place-items:center;width:22px;height:22px;display:grid;position:absolute;top:50%;right:7px;transform:translateY(-50%)}.outsourcing-search-picker>button[aria-label]:hover{color:#176bff;background:#176bff14}.outsourcing-selected-line{color:#64748b;text-overflow:ellipsis;white-space:nowrap;margin-top:6px;font-size:12px;display:block;overflow:hidden}.outsourcing-change-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.outsourcing-change-summary span{background:#f1f7ffb8;border:1px solid #7999c429;border-radius:8px;gap:3px;min-width:0;padding:8px 10px;display:grid}.outsourcing-change-summary em,.outsourcing-change-summary strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.outsourcing-change-summary em{color:#71829b;font-size:12px;font-style:normal}.outsourcing-change-summary strong{color:#102754;font-size:12px;font-weight:400}.outsourcing-collapse-trigger{color:#17315f;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;width:100%;min-height:32px;padding:0;font-size:13px;font-weight:500;display:flex}.outsourcing-collapse-trigger span{color:#176bff;font-size:12px;font-weight:400}@media (max-width:1280px){.outsourcing-page-topbar,.outsourcing-body{grid-template-columns:1fr}.outsourcing-detail-panel{max-height:none}}@media (max-width:860px){.outsourcing-filter-bar,.outsourcing-filter-controls,.outsourcing-pick-grid,.outsourcing-form-fields,.outsourcing-form-fields.is-cost,.outsourcing-form-fields.is-extra,.outsourcing-calendar-toolbar,.outsourcing-calendar-summary,.outsourcing-attendance-toolbar,.outsourcing-attendance-metrics,.outsourcing-attendance-result,.outsourcing-change-summary,.outsourcing-cost-metrics,.outsourcing-cost-metrics.is-compact,.outsourcing-attendance-row,.outsourcing-variable-cost-row{grid-template-columns:1fr}.outsourcing-attendance-row.is-head,.outsourcing-variable-cost-row.is-head{display:none}.outsourcing-form-dialog.dm-dialog--xl{width:calc(100vw - 24px)}}
.settlement-management-screen .settlement-workspace{background:radial-gradient(circle at 12% 0,#0e74fa1f,#0000 28%),linear-gradient(#f5fbff 0%,#f8fbff 42%,#fff 100%)}.settlement-workspace{flex-direction:column;gap:12px;min-width:0;display:flex}.settlement-page-topbar.management-page-topbar{grid-template-columns:minmax(300px,.88fr) minmax(420px,560px) minmax(220px,max-content)}.settlement-global-search{justify-self:stretch}.settlement-page-actions{justify-content:flex-end;align-items:center;gap:8px;display:flex}.settlement-page-actions .dm-button:not(.dm-icon-button){border-radius:8px;height:34px;min-height:34px;padding:0 12px;font-size:12px;font-weight:400;line-height:1}.org-screen.settlement-management-screen .settlement-page-actions .dm-button:not(.dm-icon-button){font-weight:400}.settlement-page-actions .dm-button .dm-button-label{font-size:12px;font-weight:400;line-height:1}.settlement-page-actions .dm-button svg{width:15px;height:15px}.settlement-subnav{background:#ffffffdb;border:1px solid #d9e6ff;border-radius:8px;gap:4px;width:max-content;max-width:100%;margin-top:-2px;padding:4px;display:inline-flex;box-shadow:0 10px 24px #486ca214}.settlement-subnav a,.settlement-subnav span{color:#4c5f83;white-space:nowrap;border-radius:6px;justify-content:center;align-items:center;min-height:30px;padding:0 14px;font-size:12px;text-decoration:none;display:inline-flex}.settlement-subnav .is-active{color:#0f67ea;background:#eaf3ff;font-weight:500;box-shadow:inset 0 0 0 1px #1e6cee1f}.settlement-subnav .is-disabled{color:#9aa9c3}.settlement-layout{flex:1 1 0;grid-template-columns:minmax(760px,1fr) clamp(460px,36vw,560px);align-items:stretch;gap:12px;width:100%;min-width:0;min-height:0;display:grid;overflow:hidden}.settlement-placeholder-panel{background:#ffffffd1;border:1px solid #91b0dc3d;border-radius:8px;place-items:center;min-height:320px;padding:18px;display:grid;box-shadow:0 16px 42px #46699614}.settlement-list-panel.management-data-panel{grid-template-rows:auto auto auto minmax(0,1fr) auto;min-width:0;height:100%;min-height:0;padding:14px;display:grid}.settlement-list-panel .management-data-panel-head{grid-row:1}.settlement-list-panel .management-data-panel-head>div:first-child{flex:none}.settlement-list-panel .management-data-panel-actions{flex:auto;justify-content:space-between}.settlement-status-tabs{scrollbar-width:none;background:#f1f7ffb8;border:1px solid #7999c429;border-radius:9px;align-items:center;gap:2px;min-width:0;max-width:100%;padding:2px;display:inline-flex;overflow-x:auto}.settlement-status-tabs::-webkit-scrollbar{display:none}.settlement-status-tabs button{min-width:auto;height:26px;color:var(--dm-text-muted);white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:7px;padding:0 9px;font-size:12px;font-weight:400;line-height:1}.settlement-status-tabs button:hover{color:var(--dm-action-primary)}.settlement-status-tabs button.is-active,.settlement-status-tabs button[aria-pressed=true]{color:var(--dm-action-primary);background:#fffffff5;box-shadow:0 6px 16px #2d6bd414}.settlement-filter-row{border-bottom:0;flex-wrap:nowrap;grid-row:2;justify-content:flex-start;align-items:center;gap:8px;min-width:0;padding:2px 0 12px;display:flex}.settlement-filter-row .dm-segmented{width:fit-content;max-width:100%}.settlement-filter-row .dm-select-trigger,.settlement-filter-row .dm-month-trigger,.settlement-filter-row .dm-search-input,.settlement-filter-row .dm-button:not(.dm-icon-button){border-radius:8px;height:30px;min-height:30px}.settlement-filter-row .dm-select-trigger>span,.settlement-filter-row .dm-month-trigger>span,.settlement-filter-row .dm-search-input input,.settlement-filter-row .dm-search-input input::placeholder,.settlement-filter-row .dm-button .dm-button-label{font-size:12px;font-weight:400;line-height:1.2}.settlement-filter-row .dm-button svg{width:13px;height:13px}.settlement-batch-toolbar{background:#f1f7ffc2;border:1px solid #1f6feb24;border-radius:8px;grid-row:3;align-items:center;gap:8px;min-width:0;margin:0 0 10px;padding:7px 8px;display:flex}.settlement-batch-toolbar>span{color:#334b78;white-space:nowrap;flex:none;font-size:12px;font-weight:400}.settlement-batch-toolbar .dm-select-trigger,.settlement-batch-toolbar .dm-button:not(.dm-icon-button){border-radius:8px;height:30px;min-height:30px}.settlement-batch-toolbar .dm-select-trigger>span,.settlement-batch-toolbar .dm-button .dm-button-label{font-size:12px;font-weight:400}.settlement-batch-status-select{width:138px}.settlement-project-filter{flex:320px;width:auto;min-width:170px;max-width:460px}.settlement-month-filter{flex:0 0 210px;width:210px}.settlement-filter-summary{background:#f8fbffc7;border:1px solid #7999c429;border-radius:8px;flex:0 auto;grid-template-columns:auto repeat(4,max-content);justify-content:start;align-items:center;gap:2px 12px;width:max-content;min-width:0;max-width:none;margin-left:auto;padding:5px 8px;display:grid}.settlement-filter-summary-title{color:#6d7f9e;white-space:nowrap;font-size:12px;font-weight:400}.settlement-filter-summary>span:not(.settlement-filter-summary-title){white-space:nowrap;flex-direction:column;gap:1px;min-width:max-content;display:inline-flex}.settlement-filter-summary em{color:#6d7f9e;font-size:11px;font-style:normal;line-height:1.1}.settlement-filter-summary strong{color:#071a44;white-space:nowrap;font-size:12px;font-weight:500;line-height:1.18}.settlement-filter-summary .is-positive strong{color:#dc2626}.settlement-filter-summary .is-negative strong{color:#047857}@media (max-width:1280px){.settlement-filter-summary{column-gap:10px}}@media (max-width:980px){.settlement-filter-row{flex-wrap:wrap}.settlement-filter-summary{flex:1 0 100%;grid-template-columns:auto repeat(4,minmax(96px,1fr));justify-content:stretch;margin-left:0}}@media (max-width:720px){.settlement-project-filter,.settlement-month-filter{flex-basis:100%;width:100%}.settlement-filter-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.settlement-filter-summary>span:not(.settlement-filter-summary-title){min-width:0}.settlement-filter-summary-title{grid-column:1/-1}}.settlement-table{grid-row:4;min-width:0}.settlement-table .management-data-row{min-height:68px}.settlement-table .management-data-main-cell{align-items:flex-start}.settlement-table .management-data-main-copy strong{color:#102754;text-overflow:clip;white-space:normal;font-weight:400;line-height:1.35;overflow:visible}.settlement-table .management-data-main-copy em,.settlement-table .management-data-main-copy small,.settlement-table .management-data-cell{font-weight:400}.settlement-list-panel .management-data-panel-footer{grid-row:5}.settlement-row-select-cell{justify-content:center}.settlement-row-checkbox{accent-color:#1768f2;cursor:pointer;width:15px;height:15px;margin:0}.settlement-metric-stack{flex-direction:column;gap:2px;min-width:0;display:inline-flex}.settlement-metric-stack strong{color:#071a44;font-size:13px;font-weight:400}.settlement-metric-stack small{color:#6d7f9e;font-size:12px}.settlement-metric-stack.is-positive strong,.settlement-detail-metric.is-positive strong{color:#dc2626}.settlement-metric-stack.is-negative strong,.settlement-detail-metric.is-negative strong{color:#047857}.settlement-detail-panel{background:#ffffffe6;border:1px solid #d7e6fb;border-radius:8px;flex-direction:column;min-height:680px;max-height:calc(100vh - 136px);display:flex;overflow:hidden;box-shadow:0 18px 44px #486ca21a}.settlement-detail-scroll{align-content:start;gap:10px;min-height:0;padding:14px;display:grid;overflow:auto}.settlement-detail-head{border-bottom:1px solid #e4edf9;grid-template-columns:42px minmax(0,1fr);align-items:start;gap:10px;padding-bottom:12px;display:grid}.settlement-detail-icon{color:#0f67ea;background:#eef6ff;border:1px solid #c9ddff;border-radius:8px;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.settlement-detail-title{flex-direction:column;gap:3px;min-width:0;display:flex}.settlement-detail-title strong{color:#071a44;text-overflow:clip;white-space:normal;font-size:15px;font-weight:400;line-height:1.35;overflow:visible}.settlement-detail-title span{color:#5f7296;font-size:12px}.settlement-detail-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;display:flex}.settlement-status-select{width:124px}.settlement-status-select .dm-select-trigger{border-radius:8px;height:30px;min-height:30px}.settlement-status-select .dm-select-trigger>span{font-size:12px;font-weight:400}.settlement-sync-note{color:#6d7f9e;margin-top:4px;font-size:12px;font-style:normal;line-height:1.45;display:block}.settlement-warning{color:#9a3412;background:#fff7ed;border:1px solid #fed7aa;border-radius:8px;align-items:flex-start;gap:8px;margin:0;padding:10px;font-size:12px;display:flex}.settlement-detail-section-body{gap:10px}.settlement-section-title{color:#092156;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;font-size:13px;font-weight:500;display:flex}.settlement-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.settlement-detail-metric{background:#f8fbff;border:1px solid #dbe8fb;border-radius:8px;min-width:0;padding:10px}.settlement-detail-metric span{color:#6d7f9e;font-size:12px;display:block}.settlement-detail-metric strong{color:#071a44;margin-top:4px;font-size:14px;font-weight:400;display:block}.settlement-detail-metric em{color:#7c8daa;text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:11px;font-style:normal;display:block;overflow:hidden}.settlement-financial-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.settlement-financial-card{background:#f8fbff;border:1px solid #dbe8fb;border-radius:8px;min-width:0;padding:10px}.settlement-financial-card-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.settlement-financial-card-head span{color:#6d7f9e;font-size:12px}.settlement-financial-card-head strong{color:#071a44;font-size:14px;font-weight:400}.settlement-financial-bar{background:#e5edf8;border-radius:999px;height:6px;margin:8px 0;overflow:hidden}.settlement-financial-bar i{border-radius:inherit;background:linear-gradient(90deg,#0f67ea 0%,#20b7c8 100%);height:100%;display:block}.settlement-financial-sources{color:#6d7f9e;gap:3px;font-size:11px;line-height:1.35;display:grid}.settlement-financial-card em{color:#0f67ea;margin-top:6px;font-size:12px;font-style:normal;display:block}.settlement-financial-remark{color:#5f7296;background:#fff;border:1px dashed #cfe1fb;border-radius:8px;margin:10px 0 0;padding:8px 10px;font-size:12px;line-height:1.5}.settlement-invoice-source-list,.settlement-receipt-source-list,.settlement-receipt-candidate-list{gap:8px;display:grid}.settlement-invoice-source-list article,.settlement-receipt-source-list article,.settlement-receipt-candidate-list article{background:#f9fcff;border:1px solid #d7e6fb;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;padding:9px 10px;display:grid}.settlement-invoice-source-list article{background:#f8fbff}.settlement-receipt-candidate-list article{background:#fffaf2;border-color:#fed7aa}.settlement-invoice-source-list div,.settlement-receipt-source-list div,.settlement-receipt-candidate-list div{gap:2px;min-width:0;display:grid}.settlement-invoice-source-list strong,.settlement-invoice-source-list span,.settlement-receipt-source-list strong,.settlement-receipt-source-list span,.settlement-receipt-candidate-list strong,.settlement-receipt-candidate-list span{text-overflow:ellipsis;white-space:nowrap;min-width:0;line-height:1.35;overflow:hidden}.settlement-invoice-source-list strong,.settlement-receipt-source-list strong,.settlement-receipt-candidate-list strong{color:#071a44;font-size:12px;font-weight:400}.settlement-invoice-source-list span,.settlement-receipt-source-list span,.settlement-receipt-candidate-list span{color:#5f7296;font-size:12px}.settlement-invoice-source-list em,.settlement-receipt-source-list em,.settlement-receipt-candidate-list em{color:#047857;white-space:nowrap;font-size:12px;font-style:normal;font-weight:400}.settlement-receipt-candidate-list em{color:#b45309}.settlement-person-card{background:#f9fcff;border:1px solid #d7e6fb;border-radius:8px;padding:10px}.settlement-person-card+.settlement-person-card{margin-top:8px}.settlement-person-card-head{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px;display:grid}.settlement-person-name{flex-direction:column;gap:2px;min-width:0;display:flex}.settlement-person-name strong{color:#071a44;font-size:13px;font-weight:400}.settlement-person-name span{color:#5f7296;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.settlement-person-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:10px;display:grid}.settlement-person-metrics span{color:#6d7f9e;flex-direction:column;gap:2px;min-width:0;font-size:11px;display:flex}.settlement-person-metrics strong{color:#071a44;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:400;overflow:hidden}.settlement-person-metrics .is-positive{color:#dc2626}.settlement-person-metrics .is-negative{color:#047857}.settlement-form-grid{gap:12px;display:grid}.settlement-form-section{background:linear-gradient(#fff 0%,#f8fbff 100%);border:1px solid #cfe1fb;border-radius:8px;padding:14px}.settlement-form-fields,.settlement-financial-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.settlement-financial-preview{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.settlement-financial-preview span{color:#6d7f9e;background:#f8fbff;border:1px solid #dbe8fb;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;font-size:12px;display:flex}.settlement-financial-preview strong{color:#071a44;font-weight:400}.settlement-project-picker{position:relative}.settlement-picker-popover{z-index:5;background:#fff;border:1px solid #cfe1fb;border-radius:8px;max-height:240px;padding:6px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:auto;box-shadow:0 18px 40px #2e4c7a29}.settlement-picker-option{color:#071a44;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:6px;flex-direction:column;gap:2px;width:100%;padding:8px 10px;font-size:12px;display:flex}.settlement-picker-option:hover{background:#eef6ff}.settlement-picker-option strong{font-size:12px}.settlement-picker-option em{color:#6d7f9e;font-style:normal}.settlement-candidate-toolbar{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;margin:12px 0 10px;display:grid}.settlement-candidate-list{gap:8px;max-height:330px;display:grid;overflow:auto}.settlement-candidate-row{background:#fff;border:1px solid #dbe8fb;border-radius:8px;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;display:grid}.settlement-candidate-row.is-disabled{opacity:.72;background:#f8fafc}.settlement-candidate-row input{width:16px;height:16px}.settlement-candidate-copy{flex-direction:column;gap:3px;min-width:0;display:flex}.settlement-candidate-copy strong{color:#071a44;font-size:13px;font-weight:400}.settlement-candidate-copy span,.settlement-candidate-copy em{color:#6d7f9e;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-style:normal;overflow:hidden}.settlement-candidate-amount{color:#071a44;flex-direction:column;align-items:flex-end;gap:2px;min-width:150px;font-size:12px;font-weight:400;display:flex}.settlement-candidate-amount em{color:#6d7f9e;font-style:normal;font-weight:400}.settlement-dialog-error{color:#b91c1c;background:#fff1f2;border:1px solid #fecaca;border-radius:8px;padding:10px 12px;font-size:12px}.settlement-batch-dialog-body{flex-direction:column;gap:12px;display:flex}.settlement-batch-preview-list,.settlement-batch-result-list{flex-direction:column;gap:8px;display:flex}.settlement-batch-preview-list span,.settlement-batch-result-item{background:#f8fbffd1;border:1px solid #89a6d038;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;min-width:0;padding:9px 10px;display:flex}.settlement-batch-preview-list span{flex-direction:column;align-items:flex-start;gap:2px}.settlement-batch-preview-list strong,.settlement-batch-result-item strong{color:#102754;font-size:13px;font-weight:400}.settlement-batch-preview-list em,.settlement-batch-preview-list small,.settlement-batch-result-item em{color:#6d7f9e;font-size:12px;font-style:normal;font-weight:400}.settlement-batch-result-item>span{flex-direction:column;gap:2px;min-width:0;display:flex}.settlement-batch-result-item.is-failed{background:#fffbebc2;border-color:#f59e0b47}@media (max-width:1180px){.settlement-layout{grid-template-columns:minmax(0,1fr)}.settlement-detail-panel{display:none}}
