@import "https://fonts.googleapis.com/css2?family=Manrope:wght@500;600;700;800&family=Noto+Sans+SC:wght@400;500;600;700&display=swap";.modal.execution-modal{flex-direction:column;width:620px;max-height:calc(100vh - 12px);display:flex}.execution-modal>.modal-head{min-height:61px}.execution-modal>.form-grid{overscroll-behavior:contain;overflow-y:auto}.field .paste-box textarea{resize:vertical;color:#303847;background:#fff;border:1px solid #dce1e9;border-radius:7px;outline:0;width:100%;height:88px;min-height:88px;max-height:160px;padding:9px 10px;font:11px/1.5 inherit;display:block}.field .paste-box textarea:focus{border-color:#5480ee;box-shadow:0 0 0 3px #315ee411}.paste-box small{color:#69758a;align-items:center;gap:5px;margin-top:6px;font-size:10px;display:flex}.limit-exceeded{color:#d92d20;font-weight:600;background:#fff4f3!important}.limit-count{font-weight:500}.limit-exceeded .limit-count{color:#d92d20}.detail-pagination{justify-content:center;align-items:center;gap:16px;margin:14px 0 24px;display:flex}.detail-filters{grid-template-columns:repeat(7,minmax(130px,1fr));gap:12px;margin-bottom:16px;padding:16px;display:grid;overflow:visible}.detail-filter-actions{justify-content:flex-end;align-items:flex-end;gap:8px;display:flex}.detail-panel{overflow:hidden}.detail-table{min-width:3600px}.limit-count{color:#596477;background:#f2f4f7;border-radius:6px;padding:3px 7px;font-weight:700;display:inline-flex}.limit-count.at{color:#9b6410;background:#fff3d9}.limit-count.over{color:#c42435;background:#ffecee;box-shadow:inset 0 0 0 1px #ffcfd5}.detail-table th,.detail-table td{padding:10px 11px}.detail-table td{text-overflow:ellipsis;max-width:240px;overflow:hidden}.detail-pagination{color:#697386;border-top:1px solid #edf0f4;justify-content:flex-end;align-items:center;gap:12px;padding:14px 18px;font-size:11px;display:flex}.detail-pagination button:disabled{opacity:.45;cursor:not-allowed}@media (width<=1400px){.detail-filters{grid-template-columns:repeat(4,minmax(150px,1fr))}}.modal.reminder-modal{flex-direction:column;width:720px;max-height:calc(100vh - 60px);display:flex}.reminder-content{padding:20px;overflow:auto}.reminder-content h3{margin:4px 0 10px;font-size:13px}.reminder-content h3:not(:first-child){margin-top:22px}.reminder-row{border-bottom:1px solid #eef0f3;grid-template-columns:82px 135px 1fr auto;align-items:center;gap:10px;min-height:42px;padding:7px 9px;font-size:11px;display:grid}.reminder-row small{color:#788397}.modal.search-modal{flex-direction:column;width:min(1180px,100vw - 40px);max-height:calc(100vh - 60px);display:flex}.search-results{min-height:180px;max-height:calc(100vh - 122px);overflow:auto}.search-results td{vertical-align:top}.modal-mask{padding:12px}.modal{flex-direction:column;max-height:calc(100vh - 24px);display:flex}.modal>.modal-head{min-height:61px}.modal>.form-grid{overscroll-behavior:contain;min-height:0;overflow-y:auto}.field textarea{resize:vertical;color:#303847;background:#fff;border:1px solid #dce1e9;border-radius:7px;outline:0;width:100%;min-height:96px;padding:10px;font:11px/1.55 inherit;display:block}.field textarea:focus{border-color:#5480ee;box-shadow:0 0 0 3px #315ee411}.quote-order-summary{color:#536178;background:#f5f8ff;border:1px solid #dbe5fa;border-radius:8px;gap:5px;padding:12px 14px;font-size:10px;display:grid}.quote-order-summary b{color:#263a67;font-size:12px}.task-requirements,.requirements-cell{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6}.requirements-cell{min-width:260px;max-width:420px}.negative-money,.negative-flag{color:#dc2626;font-weight:700}:root{color:#18202c;font-synthesis:none;--nav:#111b2e;--blue:#2457e6;--line:#e7eaf0;--muted:#748094;background:#f3f5f8;font-family:Noto Sans SC,sans-serif}*{box-sizing:border-box}body{min-width:1180px;margin:0}button,input,select{font:inherit}.app{grid-template-columns:232px 1fr;min-height:100vh;display:grid}.app.collapsed{grid-template-columns:74px 1fr}aside{color:#d9e1ef;background:linear-gradient(#121d31,#101827 70%);flex-direction:column;height:100vh;transition:all .2s;display:flex;position:sticky;top:0;overflow:hidden}.brand{white-space:nowrap;border-bottom:1px solid #ffffff12;align-items:center;gap:11px;height:72px;padding:0 19px;display:flex}.brand-mark{color:#fff;background:linear-gradient(135deg,#4375ff,#23a7ed);border-radius:11px;place-items:center;width:36px;height:36px;display:grid;box-shadow:0 8px 22px #1a66f455}.brand b{color:#fff;font-size:16px;display:block}.brand span{color:#7889a5;letter-spacing:2px;text-transform:uppercase;font:600 9px Manrope;display:block}.collapsed .brand>div:last-child,.collapsed nav span,.collapsed .aside-foot span,.collapsed .user svg{display:none}.collapsed .brand{padding:0 18px}.collapsed nav a{justify-content:center;margin:3px 11px;padding:12px}.collapsed .aside-foot button,.collapsed .user{justify-content:center}nav{flex:1;padding:16px 0}nav a{color:#96a5bc;white-space:nowrap;border-radius:8px;align-items:center;gap:12px;margin:3px 11px;padding:11px 15px;font-size:13px;font-weight:500;text-decoration:none;display:flex}nav a:hover{color:#fff;background:#ffffff0a}nav a.active{color:#fff;background:linear-gradient(90deg,#295be9,#2452cf);box-shadow:0 6px 18px #08173899}.aside-foot{border-top:1px solid #ffffff12;padding:10px}.aside-foot>button{color:#98a5ba;background:0 0;border:0;gap:12px;width:100%;padding:10px;display:flex}.user{align-items:center;gap:9px;padding:10px 7px;display:flex}.user>div{color:#fff;background:#2747aa;border-radius:9px;place-items:center;width:31px;height:31px;font-weight:700;display:grid}.user span{flex:1}.user b,.user small{font-size:11px;display:block}.user small{color:#75839a;margin-top:2px}main{min-width:0}.topbar{border-bottom:1px solid var(--line);z-index:8;background:#fff;align-items:center;height:64px;padding:0 24px;display:flex;position:sticky;top:0}.icon-btn{color:#667085;cursor:pointer;background:0 0;border:0;border-radius:7px;place-items:center;padding:7px;display:grid}.icon-btn:hover{background:#f0f3f8}.crumb{color:#98a0ae;margin-left:13px;font-size:12px}.crumb b{color:#3f4857}.top-actions{align-items:center;gap:12px;margin-left:auto;display:flex}.search{border:1px solid var(--line);color:#a5adbb;background:#f8f9fb;border-radius:8px;align-items:center;width:245px;height:34px;padding:0 10px;display:flex}.search input{background:0 0;border:0;outline:0;width:100%;padding-left:8px;font-size:11px}.notify{position:relative}.notify i{background:#ff4d5e;border:1px solid #fff;border-radius:50%;width:6px;height:6px;position:absolute;top:5px;right:6px}.content{max-width:1600px;margin:auto;padding:26px 28px 50px}.page-head{justify-content:space-between;align-items:flex-start;margin-bottom:21px;display:flex}.page-head h1{letter-spacing:-.5px;margin:0 0 7px;font-size:23px}.page-head p{color:var(--muted);margin:0;font-size:12px}.primary,.secondary{cursor:pointer;border:0;border-radius:8px;align-items:center;gap:7px;height:36px;padding:0 15px;font-size:12px;font-weight:600;display:inline-flex}.primary{color:#fff;background:#2457e6;box-shadow:0 5px 13px #2457e62b}.primary:hover{background:#1c49ca}.secondary{color:#384253;background:#fff;border:1px solid #dfe4ec}.hero{color:#fff;background:linear-gradient(118deg,#173b94,#245ee8 58%,#3e7df3);border-radius:16px;align-items:center;min-height:150px;margin-bottom:18px;padding:28px 36px;display:flex;position:relative;overflow:hidden;box-shadow:0 12px 30px #2f5fd12b}.hero:after{content:"";border:75px solid #ffffff09;border-radius:50%;width:400px;height:400px;position:absolute;top:-210px;right:-120px}.hero>div:first-child{z-index:1}.hero span{color:#d7e3ff;font-size:12px}.hero strong{margin:4px 0;font:800 40px Manrope;display:block}.hero p{color:#c7d8ff;margin:0;font-size:11px}.hero-ring{--p:0deg;background:radial-gradient(circle closest-side, #2b63df 76%, transparent 77%), conic-gradient(#71e0cf var(--p), #ffffff25 0);z-index:1;border-radius:50%;align-content:center;place-items:center;width:94px;height:94px;margin-left:auto;display:grid}.hero-ring b{font:800 22px Manrope}.hero-ring small{color:#d4e4ff;font-size:9px}.kpis{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px;display:grid}.kpi{background:#fff;border:1px solid #eaedf2;border-radius:12px;align-items:center;gap:13px;padding:17px;display:flex;box-shadow:0 3px 12px #1e293b08}.kpi-icon{color:#315ce1;background:#edf2ff;border-radius:10px;place-items:center;width:39px;height:39px;display:grid}.kpi-icon svg{width:19px}.kpi span,.kpi small,.kpi strong{display:block}.kpi span{color:#798496;font-size:11px}.kpi strong{margin:2px 0;font:800 19px Manrope}.kpi small{color:#9aa3b1;font-size:9px}.panel{background:#fff;border:1px solid #e9ecf1;border-radius:12px;overflow:hidden;box-shadow:0 3px 15px #1f293708}.panel-title{border-bottom:1px solid #edf0f4;align-items:center;height:67px;padding:0 20px;display:flex}.panel-title h2{margin:0 0 3px;font-size:14px}.panel-title p{color:#9099a8;margin:0;font-size:10px}.link-btn{color:#3460dd;background:0 0;border:0;align-items:center;margin-left:auto;font-size:11px;display:flex}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:11px}th{text-align:left;color:#788397;white-space:nowrap;background:#fafbfc;border-bottom:1px solid #e8ebf0;padding:11px 14px;font-weight:600}td{color:#424b5b;white-space:nowrap;border-bottom:1px solid #eef0f3;padding:12px 14px}tbody tr:hover{background:#fafcff}tbody tr:last-child td{border-bottom:0}.mono{color:#314462;font:600 10px Manrope}.muted{color:#9ba3b0}.block{color:#8b96a8;margin-top:3px;font-size:9px;display:block}.profit{color:#146b51;font-weight:700}.progress{align-items:center;gap:7px;width:118px;height:22px;display:flex}.progress:before{content:"";position:absolute}.progress>i{background:linear-gradient(90deg,#2a64ea,#52b6ef);border-radius:5px;min-width:0;height:5px;display:block;position:relative}.progress{background:linear-gradient(#e9edf4,#e9edf4) 0/82px 5px no-repeat}.progress span{color:#49607e;margin-left:auto;font:700 9px Manrope}.badge{border-radius:999px;padding:3px 7px;font-size:9px;font-weight:600;display:inline-flex}.badge.green{color:#177455;background:#e7f6f0}.badge.blue{color:#2458ce;background:#eaf0ff}.badge.gold{color:#9b6410;background:#fff3d9}.badge.red{color:#b3343f;background:#ffecee}.badge.gray{color:#667085;background:#eef0f3}.modal-mask{z-index:30;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0b122599;place-items:center;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:14px;width:620px;overflow:hidden;box-shadow:0 30px 70px #07102455}.modal-head{border-bottom:1px solid var(--line);align-items:center;height:61px;padding:0 21px;display:flex}.modal-head h2{margin:0;font-size:16px}.modal-head button{margin-left:auto}.form-grid{grid-template-columns:1fr 1fr;gap:15px;padding:22px;display:grid}.field{display:block}.field.wide,.wide{grid-column:1/-1}.field>span{color:#596477;margin-bottom:6px;font-size:10px;font-weight:600;display:block}.field input,.field select{color:#303847;background:#fff;border:1px solid #dce1e9;border-radius:7px;outline:0;width:100%;height:37px;padding:0 10px;font-size:11px}.field input:focus,.field select:focus{border-color:#5480ee;box-shadow:0 0 0 3px #315ee411}.form-actions{border-top:1px solid #edf0f4;justify-content:flex-end;gap:9px;padding-top:17px;display:flex}.form-error{color:#a92231;background:#fff0f1;border:1px solid #ffd9dd;border-radius:7px;margin-bottom:10px;padding:9px 12px;font-size:11px}.notice{color:#235ba3;background:#edf7ff;border:1px solid #d3eaff;border-radius:8px;margin-bottom:14px;padding:10px 14px;font-size:11px}.upload-hint{color:#788398;background:#f6f8fb;border-radius:7px;padding:10px 12px;font-size:10px}.row-actions{gap:4px;display:flex}.row-actions button,.mini-primary{color:#2859d0;cursor:pointer;background:#fff;border:1px solid #dbe2ef;border-radius:5px;padding:4px 7px;font-size:9px}.side{border-radius:4px;padding:3px 6px;font-size:9px;font-weight:700}.side.ar{color:#2859d0;background:#eaf0ff}.side.ap{color:#9a5d0b;background:#fff3dc}.actions{gap:8px;display:flex}.empty,.loading,.placeholder{text-align:center;color:#8b95a6;padding:60px}.placeholder{background:#fff;border:1px dashed #d9dee7;border-radius:14px}.placeholder>div{color:#3564df;background:#eef3ff;border-radius:23px;place-items:center;width:80px;height:80px;margin:0 auto 15px;display:grid}.placeholder h2{color:#354052;font-size:17px}.placeholder p{font-size:11px}.json{text-overflow:ellipsis;max-width:320px;overflow:hidden}.loading{place-items:center;height:300px;display:grid}@media (width<=1250px){.kpis{grid-template-columns:repeat(2,1fr)}.content{padding:22px 20px}}.modal.settlement-picker-modal{width:min(1180px,94vw);max-width:none}.settlement-picker{padding:20px}.settlement-filters{margin-bottom:14px}.selection-summary{background:#f4f7ff;border-radius:8px;justify-content:space-between;align-items:center;margin-bottom:10px;padding:10px 12px;display:flex}.selection-summary label{align-items:center;gap:8px;display:flex}.settlement-candidates{max-height:55vh;overflow:auto}.settlement-candidates table{min-width:1050px}.settlement-candidates th{z-index:1;background:#f7f9fc;position:sticky;top:0}.settlement-candidates tr.settled-candidate td{color:#7b8495;background:#f8fafc}.settlement-candidates tr.settled-candidate .mono{color:#667085}.list-filter{margin-bottom:14px}.list-filter-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;display:grid}.list-filter .selection-summary{margin:12px 0 0}.attachment-btn{color:#2d5dd4;cursor:pointer;background:#eef3ff;border:0;border-radius:5px;padding:4px 7px;font-size:9px}.upload-form input[type=file]{background:#fafbfc;height:auto;padding:8px}.tabs{gap:4px;margin-bottom:13px;display:flex}.tabs button{color:#758094;background:0 0;border:0;border-radius:7px;padding:8px 14px;font-size:11px}.tabs button.active{color:#2858d2;background:#e9efff;font-weight:700}.report-grid{grid-template-columns:1.2fr 1fr;gap:15px;display:grid}.login-screen{background:radial-gradient(circle at 70% 20%,#2a5de830,#0000 38%),linear-gradient(135deg,#0f1c33,#152d58);place-items:center;min-width:0;min-height:100vh;display:grid}.login-card{background:#fff;border-radius:18px;width:420px;padding:36px;box-shadow:0 30px 80px #07112580}.login-brand{text-align:center;margin-bottom:27px}.login-brand>div{color:#fff;background:linear-gradient(135deg,#3469f2,#25a7e8);border-radius:16px;place-items:center;width:58px;height:58px;margin:auto;display:grid}.login-brand h1{margin:13px 0 5px;font-size:21px}.login-brand p{color:#8a94a6;letter-spacing:1px;margin:0;font:600 10px Manrope}.login-card form label{margin-bottom:16px;display:block}.login-card form label>span{color:#5c6677;margin-bottom:7px;font-size:11px;font-weight:600;display:block}.login-card input{border:1px solid #dce1e9;border-radius:8px;outline:0;width:100%;height:42px;padding:0 12px}.login-card input:focus{border-color:#4775eb;box-shadow:0 0 0 3px #4775eb18}.password{position:relative}.password svg{color:#95a0b2;position:absolute;top:13px;left:12px}.password input{padding-left:38px}.login-btn{justify-content:center;width:100%;height:43px;margin-top:4px}.login-card>small{text-align:center;color:#98a0ad;margin-top:18px;font-size:9px;display:block}.login-loading{color:#dce6ff}.login-screen .form-error{margin-top:4px}
