:root{--bg: #f5f7fa;--paper: #ffffff;--ink: #1e2733;--dim: #667085;--faint: #98a2b3;--line: #e4e7ec;--strong: #2f5a96;--strong-soft: #eaf0f9;--warn: #aa7027;--warn-soft: #fff6e9;--danger: #c14b49;--danger-soft: #fcf0ef;--radius: 10px;--nav: 252px;--font: "Onest", "Inter", "Segoe UI", system-ui, -apple-system, BlinkMacSystemFont, Arial, sans-serif}*{box-sizing:border-box}html{font-size:15.5px}body{margin:0;color:var(--ink);background:var(--bg);font-family:var(--font);font-weight:400;font-size:14px;line-height:1.5;letter-spacing:0;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:3px solid #a9bfe0;outline-offset:2px}a{color:inherit;text-decoration:none}.app{display:flex;min-height:100vh}.side{width:var(--nav);background:#fafbfc;border-right:1px solid var(--line);flex-shrink:0;min-height:100vh;position:sticky;top:0;align-self:flex-start;height:100vh;display:flex;flex-direction:column;z-index:30}.logo{display:flex;align-items:center;gap:10px;padding:28px 26px 36px}.brand-mark{display:grid;place-items:center;background:#2f5a96;color:#fff;font-weight:650;border-radius:7px;width:37px;height:37px;font-size:12.5px;letter-spacing:-.03em}.brand-name{font-weight:650;font-size:15.5px;letter-spacing:-.025em}.brand-sub{font-size:12.5px;color:var(--faint);margin-top:2px}.nav-group{padding:0 12px;display:grid;gap:2px}.nav-label{font-size:11px;color:var(--faint);font-weight:500;letter-spacing:.06em;text-transform:uppercase;margin:14px 10px 6px}.nav-item{border:0;background:transparent;color:#374151;display:flex;align-items:center;gap:10px;text-align:left;padding:7px 10px;width:100%;border-radius:8px;font-size:13.5px;transition:.12s;text-decoration:none}.nav-item:hover{background:#f2f3f5}.nav-item.active{background:var(--paper);color:var(--ink);font-weight:500;box-shadow:0 1px 2px #1018280a,0 1px 3px #10182814}.nav-svg{width:16px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;opacity:.75}.nav-item.active .nav-svg{opacity:1}.nav-item .nav-icon{font-size:17px;line-height:1;flex:0 0 19px;text-align:center;font-family:Segoe UI Symbol,system-ui}.sidebar-bottom{margin-top:auto;border-top:1px solid var(--line);padding:17px 15px 21px}.mininote{font-size:12.5px;color:var(--faint);line-height:1.5}.main{flex:1;min-width:0}.topbar{display:none;height:56px;background:var(--paper);border-bottom:1px solid var(--line);align-items:center;padding:0 14px;gap:12px}.topbar .top-section{flex:1}.nav-count{margin-left:auto;background:#b55d4d;color:#fff;border-radius:9px;font-size:11.5px;font-weight:650;min-width:18px;height:18px;line-height:18px;text-align:center;padding:0 5px}.side-user{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);border-radius:6px;padding:4px;margin:-4px}.side-user:hover{background:#f3f5f8}.side-user>span:last-child{display:flex;flex-direction:column}.side-user-name{font-size:13.5px;font-weight:600;line-height:1.3}.top-section{color:#475467;font-size:13.5px;font-weight:550}.top-actions{display:flex;align-items:center;gap:13px}.search-shell{height:35px;width:260px;background:#f3f5f8;border:1px solid transparent;border-radius:7px;display:flex;gap:9px;align-items:center;padding:0 12px;color:var(--faint)}.search-shell:focus-within{border-color:#b4c6e4}.search-shell input{border:0;outline:0;background:transparent;width:100%;font-size:13.5px;color:var(--ink)}.icon-button{position:relative;width:35px;height:35px;border:0;border-radius:7px;background:transparent;color:#5d6878;font-size:18px}.icon-button:hover{background:#eef1f5}.notification-dot{position:absolute;right:1px;top:0;border-radius:50%;background:#b55d4d;border:2px solid white;color:#fff;font-size:11px;min-width:16px;height:16px;line-height:12px;display:grid;place-items:center}.avatar{background:#e6e9ef;color:#3d4655;border:0;width:34px;height:34px;border-radius:50%;font-size:12.5px;font-weight:650;display:grid;place-items:center}.content{max-width:1520px;margin:0 auto;padding:35px 42px 60px}.eyebrow{font-size:12.5px;color:var(--faint);font-weight:550;margin-bottom:13px}.pageheading{display:flex;justify-content:space-between;align-items:flex-start;gap:22px;margin-bottom:20px}.h1{font-size:24px;font-weight:600;line-height:1.25;letter-spacing:-.02em;margin:0}.subtitle{font-size:14px;color:var(--dim);margin-top:4px;line-height:1.5}.actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.btn{border:1px solid #d9dee7;color:#344054;background:#fff;border-radius:9px;min-height:36px;padding:7px 14px;font-size:14px;font-weight:500;display:inline-flex;align-items:center;gap:7px;justify-content:center;font-size:13.5px;font-weight:560;transition:.1s;white-space:nowrap;text-decoration:none}.btn:hover:not(:disabled){background:#f5f7fa;border-color:#c3cddc}.btn-primary{background:var(--strong);color:#fff;border-color:var(--strong)}.btn-primary:hover:not(:disabled){background:#284d82;border-color:#284d82}.btn-ghost{border-color:transparent;background:transparent;color:var(--dim)}.btn-danger{background:#fff;color:var(--danger);border-color:#ecd0cc}.btn-small{min-height:29px;padding:5px 9px;font-size:12.5px}.grid-two{display:grid;grid-template-columns:1.4fr 1fr;gap:25px}.grid-three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}.section{margin-top:30px}.section:first-child{margin-top:0}.section-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:13px;gap:15px}.section-title h2{font-size:16px;font-weight:600;margin:0;letter-spacing:-.01em}.section-title .small{font-size:12.5px;color:var(--dim)}.surface{background:var(--paper);border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:0 1px 2px #1018280a,0 1px 3px #1018280f}.surface.pad{padding:20px 22px}.surface.pad>h3:first-child{font-size:15px;font-weight:600;letter-spacing:-.01em;margin:0 0 4px}.surface.pad>h3+.tiny,.surface.pad>h3+p.tiny{margin:0 0 14px;font-size:13px}.light-surface{padding:22px 24px;background:var(--paper);border-radius:12px;border:1px solid var(--line)}.surface-header{padding:16px 19px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.surface-header .hint{color:var(--dim);font-size:12.5px}.tbl-wrap{overflow:auto}.tbl{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap;min-width:750px}.tbl th{padding:10px 14px;font-weight:500;color:var(--dim);font-size:12.5px;border-bottom:1px solid var(--line);background:#fafbfc}.tbl td{padding:11px 14px;border-bottom:1px solid #f0f1f3;font-size:13.5px;vertical-align:middle}.tbl tr:last-child td{border-bottom:0}.tbl tbody tr:hover{background:#f8fafd}.tbl .primary-line{font-size:13.5px;font-weight:500;color:var(--ink)}.tbl .secondary-line{font-size:12.5px;color:var(--faint);margin-top:2px}.tbl .wrapcell{white-space:normal;min-width:220px;max-width:360px;line-height:1.5}.tbl .custcell{white-space:normal;min-width:180px;max-width:280px;line-height:1.4}.number{text-align:right;font-variant-numeric:tabular-nums;font-feature-settings:"tnum";white-space:nowrap}.muted{color:var(--dim)}.tiny{font-size:12.5px;color:var(--dim)}.mini{font-size:11.5px;color:var(--faint)}.link{color:#2f5a96;font-weight:500;cursor:pointer}.link:hover{text-decoration:underline}.mark{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:500;border-radius:99px;padding:2px 9px;background:#f1f3f6;color:#5d6878;white-space:nowrap}.mark.green{background:#eef6f2;color:#31705c}.mark.orange{background:#fff6e8;color:#a8752f}.mark.red{background:#fcf0ed;color:#b45651}.mark.blue{background:#e8effa;color:#2f5a96}.mark.outline{background:transparent;border:1px solid #e0e5ec}.mark-dot{width:6px;height:6px;background:currentColor;border-radius:50%}.tabline{display:flex;gap:4px;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none;margin-bottom:24px}@media (min-width: 900px){.tabline{flex-wrap:wrap;overflow-x:visible}}.tab{border:0;background:none;padding:9px 12px;margin-bottom:-1px;color:var(--dim);font-size:14px;font-weight:400;white-space:nowrap;border-bottom:2px solid transparent}.tab:hover{color:var(--ink)}.tab.active{color:var(--ink);border-color:var(--ink);font-weight:500}.tab:focus-visible{outline:2px solid #a9bfe0;outline-offset:-2px;border-radius:6px 6px 0 0}.tab:focus:not(:focus-visible){outline:none}.filters{display:flex;align-items:center;gap:9px;margin-bottom:15px;flex-wrap:wrap}.field,.select,.datefield{min-height:36px;border:1px solid var(--line);border-radius:9px;background:#fff;padding:7px 12px;color:var(--ink);font-size:13.5px;outline:0;min-width:130px;transition:border-color .15s,box-shadow .15s}.field:focus,.select:focus,.datefield:focus{border-color:var(--strong);box-shadow:0 0 0 3px #2f5a9624}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding-right:32px;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'><path d='M1 1.5L6 6.5L11 1.5' stroke='%236e7975' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/></svg>");background-repeat:no-repeat;background-position:right 11px center;background-size:10px 7px;cursor:pointer}.select:disabled{opacity:.55;cursor:not-allowed}.select[multiple]{background-image:none;padding-right:11px;cursor:default}:root,select,option,input,textarea{color-scheme:light}.field.wide{width:300px}.filterchip{border:1px solid #dde3eb;border-radius:5px;padding:7px 10px;background:#fff;color:#5d6878;font-size:12.5px}.filterchip.active{border-color:#8fabd6;background:#eaf0f9;color:#2a5290}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin:13px 0 19px}.breadcrumb{color:var(--faint);font-size:12.5px;margin:-4px 0 19px}.breadcrumb a{color:#4a6385}.metric-value{font-size:24px;font-weight:600;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.metric-label{font-size:12.5px;color:var(--dim);margin-top:6px}.metric-rail{display:flex;gap:20px;background:#fff;border:1px solid var(--line);border-radius:8px;padding:20px 23px;flex-wrap:wrap}.metric-rail .metric{flex:1;min-width:125px;border-right:1px solid var(--line)}.metric-rail .metric:last-child{border-right:0}.split{display:grid;grid-template-columns:minmax(0,1fr) 262px;gap:23px}.side-card{background:#fafbfc;border:1px solid var(--line);border-radius:10px;padding:14px 16px}.side-card h3{font-size:14px;font-weight:600;margin:0 0 10px}.property{padding:10px 0;border-bottom:1px solid #eceff3;display:flex;justify-content:space-between;align-items:flex-start;gap:12px;font-size:12.5px}.property:last-child{border-bottom:0}.property strong{font-weight:550;text-align:right}.task-row{display:flex;align-items:center;gap:13px;padding:14px 17px;border-bottom:1px solid #eceff3}.task-row:last-child{border-bottom:0}.task-ic{border:1px solid #dfe6f0;background:#f6f8fc;color:#3a5f94;width:29px;height:29px;border-radius:7px;display:grid;place-items:center;font-size:15.5px;flex:0 0 29px}.task-info{flex:1;min-width:0}.task-title{font-size:13.5px;font-weight:560}.task-meta{font-size:12.5px;color:var(--faint);margin-top:5px}.task-due{font-size:12.5px;color:var(--dim);white-space:nowrap}.task-due.red{color:var(--danger)}.task-due.orange{color:var(--warn)}.empty{text-align:center;padding:32px 20px;font-size:13.5px;color:var(--dim)}.empty .empty-icon{font-size:25px;margin-bottom:14px;color:#aab4c3}.pagination{padding:12px 17px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;color:var(--dim);font-size:12.5px}.divider{height:1px;background:var(--line);margin:23px 0}.footerbar{color:#98a2b3;font-size:12.5px;margin:36px 0 0}.toggle{display:inline-flex;gap:8px;align-items:center;font-size:13.5px}.toggle input{accent-color:var(--strong);width:16px;height:16px}.reportbar{background:#eef0f3;height:10px;border-radius:99px;overflow:hidden;position:relative}.reportbar span{display:block;background:var(--strong);height:100%;border-radius:99px;transition:width .3s}.report-row{display:grid;grid-template-columns:200px 1fr 56px;align-items:center;gap:14px;padding:9px 0;border-top:1px solid #f0f1f3;font-size:13.5px}.report-row:first-of-type{border-top:0}.report-row .number{font-weight:500}.status-strip{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.auth-bg{min-height:100vh;background:#f5f7fa;display:grid;grid-template-columns:1fr 1fr}.auth-side{padding:50px 65px 45px;display:flex;flex-direction:column;justify-content:space-between;border-right:1px solid var(--line)}.auth-quote{font-size:35px;letter-spacing:-.045em;line-height:1.25;max-width:500px;font-weight:500}.auth-caption{font-size:13.5px;color:var(--dim);margin-top:16px;line-height:1.7;max-width:420px}.auth-right{display:grid;place-items:center;padding:35px}.auth-form{width:min(360px,100%)}.auth-form h1{font-size:26px;letter-spacing:-.04em;font-weight:590;margin:0 0 9px}.auth-form>p{color:var(--dim);font-size:13.5px;line-height:1.6;margin:0 0 28px}.auth-form .btn{width:100%;height:39px;margin-top:9px}.auth-form a{color:var(--strong);font-size:12.5px}.auth-form .form-row input{height:39px}.helper{font-size:12.5px;color:var(--dim);line-height:1.65}.form-row{margin:12px 0}.form-row label{display:block;font-size:12.5px;color:var(--dim);margin-bottom:5px}.form-row input:not([type=checkbox]):not([type=radio]),.form-row textarea,.form-row select{width:100%;border:1px solid var(--line);border-radius:9px;padding:8px 12px;background:#fff;color:var(--ink);outline:0;font-size:14px;transition:border-color .15s,box-shadow .15s}.form-row input:not([type=checkbox]):not([type=radio]):focus,.form-row textarea:focus,.form-row select:focus{border-color:var(--strong);box-shadow:0 0 0 3px #2f5a9624}.form-row input[type=checkbox],.form-row input[type=radio]{width:auto;flex-shrink:0;margin:0}.form-row textarea{min-height:70px;resize:vertical}@media (max-width: 1160px){.content{padding:28px 25px 50px}.side{width:195px}.split{grid-template-columns:minmax(0,1fr)}}@media (max-width: 820px){.side{display:none;position:fixed;z-index:34;box-shadow:10px 0 25px #0f1d3322}.side.open,.topbar{display:flex}.content{padding:25px 15px 60px}.search-shell{width:160px}.pageheading{flex-wrap:wrap}.grid-two,.grid-three,.auth-bg{grid-template-columns:1fr}.auth-side{display:none}.auth-right{min-height:100vh}.h1{font-size:25px}.metric-rail .metric{flex:1 0 45%;border-right:0}}@media (max-width: 480px){.task-row{display:grid;grid-template-columns:30px minmax(0,1fr) auto;column-gap:10px;row-gap:5px;padding:13px 12px}.task-row .task-ic{grid-column:1;grid-row:1 / 3}.task-row .task-info{grid-column:2 / 4;grid-row:1}.task-row .task-due{grid-column:2;grid-row:2;margin-left:0}.task-row>.btn{grid-column:3;grid-row:2}.search-shell{width:125px}.top-actions{gap:6px}.content{padding:24px 11px 45px}.pageheading{margin-bottom:20px}.h1{font-size:23px}.actions{width:100%}.btn{min-height:34px}.surface.pad{padding:15px}.report-row{grid-template-columns:85px 1fr 35px}.metric-rail{padding:14px}.auth-right{padding:25px}}@media (max-width: 820px){.mobile-nav-toggle{display:inline-flex!important;align-items:center;justify-content:center;width:36px;height:36px;border-radius:7px;border:1px solid var(--line);background:#fff;color:var(--ink)}}.mobile-nav-toggle{display:none}.sync-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:20px 22px;margin-bottom:18px}.sync-head{display:flex;gap:14px;align-items:flex-start;flex-wrap:wrap}.sync-icon{width:40px;height:40px;border-radius:10px;flex-shrink:0;background:#e8effa;color:#2f5a96;display:grid;place-items:center;font-size:19px;font-weight:700}.sync-title{font-size:16px;font-weight:650;color:var(--ink);line-height:1.3}.sync-sub{font-size:13.5px;color:var(--faint);margin-top:3px;line-height:1.5}.sync-chip{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;font-size:12.5px;font-weight:600;padding:5px 10px;border-radius:999px;background:#f1f3f6;color:#5d6878}.sync-chip.ok{background:#eef6f2;color:#31705c}.sync-chip.bad{background:#fcf0ed;color:#b45651}.sync-dot{width:7px;height:7px;border-radius:50%;background:currentColor}.sync-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin-top:18px}.sync-tile{background:#f7f9fc;border:1px solid #edf0f4;border-radius:8px;padding:12px 14px}.sync-tile-value{font-size:23px;font-weight:650;color:var(--ink);font-variant-numeric:tabular-nums;letter-spacing:-.02em}.sync-tile-label{font-size:12.5px;color:var(--faint);margin-top:2px}.sync-tile.blue{background:#eef3fb;border-color:#dbe6f6}.sync-tile.blue .sync-tile-value{color:#2f5a96}.sync-tile.warn{background:#fff6e8;border-color:#f3e2c4}.sync-tile.warn .sync-tile-value{color:#a8752f}.sync-meta{font-size:13px;color:var(--faint);margin-top:10px}.sync-empty{font-size:14px;color:#5d6878;margin-top:16px}.sync-alert{margin-top:12px;font-size:13.5px;padding:9px 12px;border-radius:7px;background:#fff6e8;color:#8a5f22}.sync-alert.bad{background:#fcf0ed;color:#a2453f}.sync-progress{margin-top:16px}.sync-progress-bar{height:6px;background:#edf0f4;border-radius:999px;overflow:hidden}.sync-progress-bar span{display:block;height:100%;background:#2f5a96;border-radius:999px;transition:width .4s}.sync-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:16px;padding-top:14px;border-top:1px solid #f0f2f5}.filter-panel{display:flex;flex-wrap:wrap;gap:12px 14px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:10px;padding:14px 16px;margin-bottom:15px}.filter-field{display:flex;flex-direction:column;gap:5px}.filter-field>span{font-size:12px;color:var(--faint);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.modal-back{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f1d3344;z-index:40;display:flex;align-items:center;justify-content:center;padding:16px}.modal-box{width:min(760px,100%);background:#fff;border-radius:14px;padding:22px 24px;max-height:92vh;overflow-y:auto;box-shadow:0 24px 60px #10182838}.modal-box h3{font-size:16px;font-weight:600;letter-spacing:-.01em;margin:0 0 12px}.modal-back{background:#11182766;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.spec-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;margin:16px 0 10px;font-size:14px}.spec-grid>div{background:#fafbfc;border:1px solid var(--line);border-radius:10px;padding:8px 12px;min-width:0}.spec-grid>div>div{font-weight:500;overflow-wrap:anywhere}.exp-table td{padding:6px;vertical-align:middle}.exp-table input{width:100%;min-width:110px;box-sizing:border-box;padding:6px 8px;border:1px solid var(--line, #d9dde3);border-radius:6px;font:inherit;background:#fff}.exp-table td:nth-child(1) input{min-width:180px}.exp-table td:nth-child(2) input{min-width:240px}.exp-table td:nth-child(3) input{min-width:170px}.exp-table td:nth-child(4) input,.exp-table td:nth-child(6) input{min-width:90px}.exp-table td:last-child{width:1%}.rules-status{border:1px solid #e3e7ee;border-radius:10px;padding:12px 14px;background:#f8fafd;font-size:14.5px;line-height:1.5}.rules-status.ok{background:#effaf3;border-color:#bfe5cc}.rules-status.warn{background:#fff8eb;border-color:#f1d9a6}.rules-status.bad{background:#fdf0f0;border-color:#f0c4c4}.rules-results{width:100%;margin-top:10px;border-collapse:collapse;font-size:13.5px}.rules-results td{padding:4px 6px;border-top:1px solid rgba(0,0,0,.06)}.rules-results td:first-child{width:18px}.rules-h{font-size:14.5px;margin:18px 0 6px}.rules-input{width:100%;box-sizing:border-box;font-family:ui-monospace,monospace;font-size:13.5px;border:1px solid #d9dee7;border-radius:6px;padding:6px 8px;resize:vertical}.rules-tech{margin-top:12px;font-size:14.5px}.rules-tech summary{cursor:pointer;color:var(--muted, #5b6472)}.profit-cell{position:relative;padding-right:4px}.profit-cell .primary-line{font-weight:650}.profit-cell.good .primary-line{color:#1d7a45}.profit-cell.loss .primary-line{color:var(--danger, #c0392b)}.profit-tag{display:inline-block;margin-top:3px;font-size:11.5px;padding:1px 6px;border-radius:8px;background:#eef1f5;color:#4a5361}.profit-cell.good .profit-tag{background:#e3f5ea;color:#1d7a45}.profit-cell.check .profit-tag{background:#fff3dc;color:#8a5a00}.profit-cell.loss .profit-tag{background:#fde8e8;color:#a32c2c}.econ-list{width:100%;border-collapse:collapse;font-size:13.5px}.econ-list td{padding:5px 0;border-bottom:1px solid #eef0f3}.econ-list td.number{text-align:right;white-space:nowrap}.econ-list tr.total td{border-bottom:0;border-top:2px solid #d9dee7;font-weight:700;font-size:15.5px;padding-top:8px}.econ-list .note{color:#7a8494;font-size:12.5px}.req-checks{margin:6px 0 2px;display:grid;grid-template-columns:auto auto auto auto auto;gap:2px 12px;font-size:12.5px;white-space:normal}.req-checks .st-ok{color:#1d7a45}.req-checks .st-better{color:#1d7a45;font-weight:600}.req-checks .st-bad{color:#a32c2c;font-weight:600}.req-checks .st-check{color:#8a5a00}.spinner{display:inline-block;width:12px;height:12px;margin-right:6px;vertical-align:-2px;border:2px solid #c9d1dd;border-top-color:var(--accent, #3b5998);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.role-switch{margin-bottom:14px}.role-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:18px;padding:10px 14px;border-radius:10px;background:#fff6e6;border:1px solid #f1d9a6;font-size:14.5px}.help-btn{width:34px;height:34px;border-radius:50%;border:1px solid #d9dee7;background:#fff;color:#4a5361;font-weight:700;cursor:pointer;flex:none}.help-btn:hover{background:#f3f5f9}.help-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#141c2847;z-index:1000;display:flex;justify-content:flex-end}.help-drawer{width:min(460px,100%);height:100%;background:#fff;box-shadow:-8px 0 30px #0000001f;display:flex;flex-direction:column;animation:help-in .18s ease-out}@keyframes help-in{0%{transform:translate(30px);opacity:.5}to{transform:none;opacity:1}}.help-head{display:flex;align-items:center;gap:10px;padding:18px 20px;border-bottom:1px solid #eef0f3;font-size:17px}.help-ico{width:22px;height:22px;border-radius:50%;border:1.5px solid #9aa3b2;display:inline-flex;align-items:center;justify-content:center;font-size:13.5px;color:#6b7482}.help-close{margin-left:auto;border:0;background:none;font-size:19px;cursor:pointer;color:#6b7482}.help-body{padding:6px 20px 30px;overflow-y:auto;font-size:15px;line-height:1.55}.help-cap{margin:20px 0 8px;font-size:12.5px;letter-spacing:.08em;text-transform:uppercase;color:#8a93a2;font-weight:700}.help-body ul{margin:0;padding-left:18px}.help-body li{margin-bottom:6px}.help-body p{margin:0 0 8px}.help-roles{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.help-chip{border:1px solid #d9dee7;background:#fff;border-radius:999px;padding:5px 12px;font-size:14px;cursor:pointer}.help-chip.active{background:#e8eef8;border-color:#9fb3d6;color:#26406e;font-weight:600}.help-qa{margin-top:12px}.help-qa b{display:block;margin-bottom:3px}.loading-spin{position:fixed;top:50%;left:calc(var(--nav) + (100vw - var(--nav)) / 2);z-index:900;pointer-events:none;width:52px;height:52px;margin:-26px 0 0 -26px;border-radius:50%;background:var(--paper);box-shadow:0 6px 24px #10182824;display:grid;place-items:center;animation:loading-in .2s ease-out}.loading-spin span{width:24px;height:24px;border-radius:50%;border:2.5px solid #e5e7eb;border-top-color:var(--strong);animation:spin .75s linear infinite}@keyframes loading-in{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:none}}@media (max-width: 1160px){.loading-spin{left:calc(195px + (100vw - 195px)/2)}}@media (max-width: 820px){.loading-spin{left:50%}}@media (prefers-reduced-motion: reduce){.loading-spin span{animation-duration:2s}}.seg{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--paper)}.seg-btn{border:0;background:transparent;padding:6px 14px;font:inherit;font-size:14px;color:var(--dim);cursor:pointer}.seg-btn+.seg-btn{border-left:1px solid var(--line)}.seg-btn.active{background:var(--strong-soft);color:var(--strong);font-weight:600}.tender-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(470px,100%),1fr));gap:14px}.tender-card{display:flex;flex-direction:column;background:var(--paper);border:1px solid var(--line);border-radius:12px;overflow:hidden;color:var(--ink);text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .15s;box-shadow:0 1px 2px #1018280a,0 1px 3px #1018280f}.tender-card:hover{border-color:#c9d6e8;box-shadow:0 8px 24px #10182814;transform:translateY(-1px)}.tender-card:focus-visible{outline:2px solid var(--strong);outline-offset:2px}.tc-wrap{position:relative}.tc-wrap>.tender-card{height:100%}.tender-card.open{position:absolute;top:-6px;left:-6px;right:-6px;height:auto;z-index:20;border-color:#c9d6e8;box-shadow:0 18px 44px #1018282e;transform:none;animation:tc-pop .16s ease-out}.tender-card.open .tc-title{-webkit-line-clamp:unset}@keyframes tc-pop{0%{opacity:.6;transform:scale(.985)}to{opacity:1;transform:none}}.tc-more{display:grid;grid-template-columns:auto 1fr;gap:3px 14px;margin:6px 0 0;padding-top:8px;border-top:1px solid var(--line);font-size:13px}.tc-more dt{color:var(--faint)}.tc-more dd{margin:0;color:var(--ink)}.tc-due{display:flex;align-items:center;gap:6px;padding:7px 16px;font-size:13px;font-variant-numeric:tabular-nums}.tc-due b{font-weight:550}.tc-due.bad{background:#fcebea;color:#b4413c}.tc-due.warn{background:#fff3dc;color:#a8752f}.tc-due.info{background:var(--strong-soft);color:var(--strong)}.tc-due.none{background:#f1f3f6;color:var(--faint)}.tc-actions{margin-left:auto;display:flex;gap:14px}.tc-body{flex:1;min-width:0;padding:12px 16px 10px;display:flex;flex-direction:column;gap:5px}.tc-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tc-top .mark{font-size:11.5px;padding:0 8px;font-weight:400}.tc-top .pick{width:16px;height:16px}.tc-num{font-size:12.5px;color:var(--faint);font-variant-numeric:tabular-nums}.tc-host{margin-left:auto;font-size:12px;color:var(--faint)}.tc-title{font-size:14.5px;font-weight:400;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.tc-note{font-size:12.5px;color:#8a5a00}.tc-meta{display:flex;gap:4px 14px;flex-wrap:wrap;align-items:center;font-size:13px;color:var(--dim);font-variant-numeric:tabular-nums}.tc-cust{max-width:300px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tc-faint{color:var(--faint)}.tc-load{border:0;background:none;padding:0;font:inherit;font-size:13px;color:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.tc-load:hover{text-decoration-thickness:2px}.tc-load:disabled{opacity:.6;cursor:default}.tc-profit.good{color:#1d7a45}.tc-profit.check{color:#8a5a00}.tc-profit.loss{color:#b4413c}@media (max-width: 560px){.tc-host{display:none}}.pick{flex:none;width:18px;height:18px;border:1.5px solid #b7c0cc;border-radius:4px;background:#fff;cursor:pointer;position:relative}.pick:hover{border-color:#2f5a96}.pick.on{background:#2f5a96;border-color:#2f5a96}.pick.on:after{content:"";position:absolute;left:5.5px;top:2px;width:4px;height:8px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}.tender-card.picked{border-color:#2f5a96;box-shadow:0 0 0 1px #2f5a96 inset}.tbl tr.picked td{background:#f1f5fb}.bulk-bar{position:sticky;bottom:16px;z-index:20;margin-top:16px;display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:#fff;border:1px solid var(--line);border-radius:10px;padding:10px 14px;box-shadow:0 6px 24px #14233c1f}.bulk-count{font-weight:600}.bulk-sep{flex:1}.link-btn{border:0;background:none;padding:0;font:inherit;font-size:13px;color:#2f5a96;cursor:pointer}.link-btn:hover{text-decoration:underline}@media (max-width: 640px){.bulk-sep{display:none}.bulk-bar{bottom:8px}}.pick:before{content:"";position:absolute;top:-12px;right:-12px;bottom:-12px;left:-12px}@media (max-width: 560px){.section-title{flex-direction:column;align-items:flex-start;gap:3px}.tbl input[type=checkbox]{width:20px;height:20px}}.set-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:24px;align-items:start}.set-aside{position:sticky;top:20px}.set-card{background:var(--paper);border:1px solid var(--line);border-radius:12px;margin-bottom:16px;box-shadow:0 1px 2px #1018280a,0 1px 3px #1018280f}.set-card-h{padding:18px 22px 6px}.set-card-h h2{font-size:15px;font-weight:600;margin:0;letter-spacing:-.01em;display:flex;align-items:center}.set-card-h p{margin:2px 0 0;color:var(--dim);font-size:13px}.set-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;padding:14px 22px;border-top:1px solid #f0f1f3}.set-card-h+.set-row{border-top:0}.set-row-l b{display:flex;align-items:center;font-weight:500;color:var(--ink)}.set-row-l span{display:block;color:var(--dim);font-size:12.5px;max-width:52ch;margin-top:1px}.set-row-c{display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.set-text{height:36px;width:220px;border:1px solid var(--line);border-radius:9px;padding:0 12px;background:var(--paper);outline:0}.set-text:focus,.num-in:focus-within{border-color:var(--strong);box-shadow:0 0 0 3px #2f5a9624}.num-in{display:flex;align-items:center;height:36px;width:150px;border:1px solid var(--line);border-radius:9px;background:var(--paper);transition:.15s}.num-in input{border:0;outline:0;background:none;width:100%;min-width:0;padding:0 4px 0 12px;text-align:right;font-variant-numeric:tabular-nums;font-weight:500}.num-in input:focus-visible{outline:0}.num-in i{font-style:normal;color:var(--faint);padding:0 12px 0 4px;font-size:13px;white-space:nowrap}.switch{position:relative;width:38px;height:22px;flex:none;display:inline-block}.switch input{position:absolute;opacity:0;width:100%;height:100%;margin:0;cursor:pointer;z-index:1}.switch span{position:absolute;top:0;right:0;bottom:0;left:0;background:#d1d5db;border-radius:99px;transition:.2s}.switch span:after{content:"";position:absolute;left:3px;top:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #0003;transition:.2s}.switch input:checked+span{background:var(--strong)}.switch input:checked+span:after{transform:translate(16px)}.switch input:focus-visible+span{outline:3px solid #a9bfe0;outline-offset:2px}.seg2{display:inline-flex;background:#f1f2f4;border-radius:9px;padding:3px;gap:2px}.seg2 button{border:0;background:none;padding:5px 10px;border-radius:7px;color:var(--dim);font-size:13px;white-space:nowrap}.seg2 button.on{background:var(--paper);color:var(--ink);box-shadow:0 1px 2px #10182814;font-weight:500}.tip{position:relative;display:inline-grid;place-items:center;width:16px;height:16px;margin-left:6px;border:1px solid #d1d5db;border-radius:50%;background:none;color:var(--faint);font-size:10.5px;font-weight:600;line-height:1;cursor:help;padding:0;flex:none}.tip:hover,.tip:focus{color:var(--strong);border-color:var(--strong);outline:0}.tip span{position:absolute;left:50%;bottom:calc(100% + 8px);transform:translate(-50%);width:260px;padding:10px 12px;border-radius:9px;background:#111827;color:#f9fafb;font-size:12.5px;font-weight:400;line-height:1.45;text-align:left;letter-spacing:0;box-shadow:0 8px 24px #0000002e;display:none;pointer-events:none;z-index:30}.tip span:after{content:"";position:absolute;left:50%;top:100%;margin-left:-5px;border:5px solid transparent;border-top-color:#111827}.tip:hover span,.tip.open span{display:block}.set-costs{padding:4px 22px 18px}.set-costs-h{font-weight:500;margin-top:10px}.set-cost{display:grid;grid-template-columns:minmax(0,1fr) 130px 200px 32px;gap:8px;margin-top:8px;align-items:center}.set-cost .set-text,.set-cost .num-in{width:100%}.icon-ghost{border:0;background:none;color:var(--faint);border-radius:8px;height:32px}.icon-ghost:hover{background:#f3f4f6;color:var(--danger)}.add-dashed{margin-top:10px;border:1px dashed #cfd5dd;background:none;border-radius:9px;height:36px;width:100%;color:var(--dim)}.add-dashed:hover{border-color:var(--strong);color:var(--strong)}.econ{background:var(--paper);border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:0 1px 2px #1018280a,0 1px 3px #1018280f}.econ-h{padding:16px 18px 12px;border-bottom:1px solid #f0f1f3}.econ-h small{color:var(--dim);font-size:12.5px}.econ-big{display:flex;align-items:baseline;gap:8px;margin-top:6px;flex-wrap:wrap}.econ-big b{font-size:26px;font-weight:600;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.econ-pill{font-size:12px;font-weight:500;border-radius:99px;padding:2px 8px}.econ-pill.good{background:#ecfdf3;color:#15803d}.econ-pill.warn{background:#fffbeb;color:#b45309}.econ-meter{height:6px;background:#f1f2f4;border-radius:99px;margin-top:12px;position:relative}.econ-meter i{position:absolute;left:0;top:0;bottom:0;border-radius:99px;transition:.25s}.econ-meter u{position:absolute;top:-4px;bottom:-4px;width:2px;background:var(--ink);border-radius:2px}.econ-meter-l{display:flex;justify-content:space-between;font-size:11.5px;color:var(--faint);margin-top:6px}.econ-lines{padding:8px 18px 14px}.econ-ln{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 12px;padding:7px 0;font-variant-numeric:tabular-nums}.econ-ln span{color:#374151}.econ-ln b{font-weight:500;text-align:right}.econ-ln em{grid-column:1 / -1;height:4px;border-radius:99px;background:#f1f2f4;overflow:hidden}.econ-ln em i{display:block;height:100%;background:#cbd5e1;border-radius:99px;transition:.25s}.econ-ln.total{border-top:1px solid var(--line);margin-top:6px;padding-top:12px}.econ-ln.total span,.econ-ln.total b{font-weight:600;color:var(--ink)}.econ-f{padding:12px 18px;background:#fafafb;border-top:1px solid #f0f1f3;color:var(--dim);font-size:12.5px}.save-bar{position:fixed;left:50%;bottom:20px;transform:translate(-50%,calc(100% + 40px));transition:.25s;display:flex;align-items:center;gap:14px;background:#111827;color:#fff;border-radius:12px;padding:10px 10px 10px 16px;box-shadow:0 10px 30px #0003;z-index:40;white-space:nowrap}.save-bar.show{transform:translate(-50%)}.save-bar button{border:0;border-radius:8px;height:32px;padding:0 14px}.save-bar-ok{background:#fff;color:#111827;font-weight:500}.save-bar-reset{background:transparent;color:#d1d5db}@media (max-width: 1100px){.set-layout{grid-template-columns:1fr}.set-aside{position:static}}@media (max-width: 760px){.set-row{grid-template-columns:1fr;gap:10px}.set-row-c{justify-content:flex-start}.num-in,.set-text{width:100%}.set-cost{grid-template-columns:1fr 110px 32px}.set-cost .select-wrap,.set-cost>:nth-child(3){grid-column:1 / 3}.save-bar{left:16px;right:16px;transform:translateY(calc(100% + 40px))}.save-bar.show{transform:none}.save-bar{white-space:normal}.save-bar span{flex:1;font-size:13px}.set-row,.set-card-h{position:relative}.set-row .tip,.set-card-h .tip{position:static}.tip span{left:12px;right:12px;width:auto;bottom:calc(100% - 6px);transform:none}.tip span:after{display:none}}.feed-tabs-wrap{display:flex;align-items:center;gap:6px;margin-bottom:14px;position:relative}.feed-tabs{display:flex;align-items:center;gap:4px;flex-wrap:wrap;min-width:0}.feed-tabs>button{border:0;background:none;height:34px;padding:0 12px;border-radius:9px;color:var(--dim);display:inline-flex;align-items:center;gap:7px;font-size:14px}.feed-tabs>button:hover{background:#eef0f3;color:var(--ink)}.feed-tabs>button.on{background:var(--ink);color:#fff}.feed-count{font-size:12px;font-variant-numeric:tabular-nums;background:#e9ecf0;color:var(--dim);border-radius:99px;padding:0 7px;line-height:18px}.feed-tabs>button.on .feed-count{background:#ffffff2e;color:#fff}.feed-bar{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:12px;display:grid;gap:10px;margin-bottom:12px;box-shadow:0 1px 2px #1018280a,0 1px 3px #1018280f}.feed-bar-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.feed-search{flex:1 1 260px;display:flex;align-items:center;gap:8px;height:36px;padding:0 12px;border:1px solid var(--line);border-radius:9px;color:var(--faint);transition:.15s}.feed-search:focus-within{border-color:var(--strong);box-shadow:0 0 0 3px #2f5a9624}.feed-search input{border:0;outline:0;flex:1;min-width:0;background:none;color:var(--ink);font-size:14px}.feed-search input:focus-visible{outline:0}.feed-chips{display:flex;gap:6px;flex-wrap:wrap}.chip2{border:1px solid var(--line);background:var(--paper);color:var(--ink2, #374151);height:28px;padding:0 11px;border-radius:99px;font-size:13px;transition:.12s}.chip2:hover{border-color:#c9d1dc}.chip2.on{background:var(--strong-soft);border-color:#b9cbe6;color:var(--strong);font-weight:500}.feed-missed{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--dim);margin-left:auto;cursor:pointer}.feed-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 2px 12px;color:var(--dim);font-size:13px;font-variant-numeric:tabular-nums;flex-wrap:wrap}.feed-meta-r{display:inline-flex;align-items:center;gap:14px}@media (max-width: 760px){.feed-bar-row>.select{flex:1 1 140px;min-width:0}.feed-missed{margin-left:0}.feed-tabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}.feed-tabs-wrap .tip{position:static}.feed-tabs>button{flex:none}}.set-layout,.feed-tabs-wrap,.feed-bar,.feed-meta,.save-bar{font-size:14px;line-height:1.5;letter-spacing:0}.set-narrow{max-width:980px}.set-narrow,.fgrid{font-size:14px;letter-spacing:0}.fgrid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px 14px;padding:6px 22px 20px}.ffield{display:flex;flex-direction:column;gap:5px;min-width:0}.ffield>span{font-size:12.5px;color:var(--dim)}.ffield .set-text{width:100%}.ffield .set-text.mono{font-variant-numeric:tabular-nums;letter-spacing:.01em}.ffield-switch{justify-content:flex-end}.ffield-switch .switch{margin-bottom:7px}.ffield.s1{grid-column:span 1}.ffield.s2{grid-column:span 2}.ffield.s3{grid-column:span 3}.ffield.s4{grid-column:span 4}.ffield.s5{grid-column:span 5}.ffield.s6{grid-column:span 6}@media (max-width: 900px){.fgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.ffield.s1,.ffield.s2{grid-column:span 1}.ffield.s3,.ffield.s4,.ffield.s5,.ffield.s6{grid-column:span 2}}@media (max-width: 560px){.fgrid{grid-template-columns:1fr;padding:6px 16px 18px}.ffield[class*=" s"]{grid-column:auto}}.set-alert{padding:12px 16px;border-radius:10px;background:#fffbeb;color:#92400e;border:1px solid #fde68a;margin-bottom:16px;font-size:13.5px}.set-alert.ok{background:#ecfdf3;color:#166534;border-color:#bbf7d0}.set-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}.set-card .fgrid{padding-top:4px}.set-card-h.with-action{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:14px}.tpl-row{display:flex;align-items:center;gap:16px;padding:14px 22px;border-top:1px solid #f0f1f3}.tpl-main{flex:1;min-width:0}.tpl-name{font-weight:500;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.tpl-meta{color:var(--dim);font-size:12.5px;margin-top:2px}.tpl-state{font-size:11.5px;font-weight:500;border-radius:99px;padding:1px 8px;background:#f1f2f4;color:var(--dim)}.tpl-state.on{background:#ecfdf3;color:#15803d}.tpl-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.tpl-empty{padding:18px 22px 22px;color:var(--dim);border-top:1px solid #f0f1f3}.nightly-last{display:flex;align-items:center;gap:8px;padding:12px 22px 16px;border-top:1px solid #f0f1f3;color:var(--dim);font-size:13px}.nightly-last .dot{width:8px;height:8px;border-radius:50%;background:#d1d5db;flex:none}.nightly-last .dot.ok{background:#16a34a}@media (max-width: 760px){.tpl-row{flex-direction:column;align-items:stretch;gap:10px}.tpl-actions{justify-content:flex-start}.set-card-h.with-action{flex-direction:column}}.secret-mask{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12.5px;background:#f3f4f6;border-radius:6px;padding:3px 8px;color:var(--ink)}.secret-mask.none{font-family:inherit;background:#fffbeb;color:#92400e}.secret-date{font-size:12px;color:var(--faint);font-variant-numeric:tabular-nums}.exp-item{position:relative;border-top:1px solid #f0f1f3;padding-top:10px}.exp-item .fgrid{padding-right:56px}.exp-del{position:absolute;top:34px;right:16px;width:32px}.exp-warn{padding:10px 22px 16px;color:#92400e;font-size:13px;border-top:1px solid #f0f1f3}@media (max-width: 560px){.exp-item .fgrid{padding-right:16px}.exp-del{top:6px;right:8px}}.home-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:28px}.home-kpi{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:2px;color:var(--ink);text-decoration:none;box-shadow:0 1px 2px #1018280a,0 1px 3px #1018280f;transition:.15s}a.home-kpi:hover{border-color:#c9d6e8;box-shadow:0 8px 24px #10182814}.home-kpi b{font-size:24px;font-weight:600;letter-spacing:-.02em;font-variant-numeric:tabular-nums;line-height:1.2}.home-kpi span{font-size:13px;color:var(--dim)}.home-sec{margin-bottom:28px}.home-sec-h{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:12px}.home-sec-h h2{font-size:16px;font-weight:600;margin:0;display:flex;align-items:center;gap:8px;letter-spacing:-.01em}.home-sec-h p{margin:2px 0 0;color:var(--dim);font-size:13px}.home-count{font-size:12px;font-weight:500;background:#e9ecf0;color:var(--dim);border-radius:99px;padding:0 8px;line-height:20px;font-variant-numeric:tabular-nums}.home-empty{display:flex;align-items:center;gap:10px;padding:14px 16px;border:1px dashed #d5dbe3;border-radius:12px;color:var(--dim);font-size:13.5px;background:#fff9}.home-empty-ic{width:22px;height:22px;border-radius:50%;background:#ecfdf3;color:#15803d;display:grid;place-items:center;font-size:12px;flex:none}.home-tasks{border-radius:12px}@media (max-width: 900px){.home-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 560px){.home-sec-h{flex-direction:column;align-items:flex-start;gap:4px}}.t-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:-6px 0 14px}.t-due{font-size:13px;font-weight:500;border-radius:99px;padding:4px 12px;font-variant-numeric:tabular-nums}.t-due.bad{background:#fcebea;color:#b4413c}.t-due.warn{background:#fff3dc;color:#8a5a00}.t-due.info{background:var(--strong-soft);color:var(--strong)}.t-due.none{background:#f1f3f6;color:var(--dim)}.t-bar-sep{flex:1}.t-link{font-size:13px;color:var(--strong);border:1px solid var(--line);background:var(--paper);border-radius:99px;padding:3px 11px;text-decoration:none}.t-link:hover{border-color:#b9cbe6}.t-demo{margin:0 0 14px;padding:10px 14px;border-radius:10px;background:var(--warn-soft);color:#7a5418;font-size:13.5px;line-height:1.5}.t-screen{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;padding:10px 14px;border-radius:10px;margin-bottom:12px;font-size:13.5px;background:#f6f7f9;border:1px solid var(--line)}.t-screen b{font-weight:600;white-space:nowrap}.t-screen>span{color:#374151}.t-screen.green{background:#f0fdf4;border-color:#bbf7d0}.t-screen.green b{color:#15803d}.t-screen.orange{background:#fffbeb;border-color:#fde68a}.t-screen.orange b{color:#b45309}.t-screen.red{background:#fef2f2;border-color:#fecaca}.t-screen.red b{color:#b91c1c}.t-screen.info{background:var(--strong-soft);border-color:#cddcf0}.t-screen.info b{color:var(--strong)}.t-tabs{margin:6px 0 14px}.t-pane{background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:20px 22px;box-shadow:0 1px 2px #1018280a,0 1px 3px #1018280f}.t-hint{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 14px;border-radius:10px;background:#fffbeb;border:1px solid #fde68a;color:#92400e;font-size:13.5px;margin-bottom:16px}.t-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.t-kpi{border:1px solid var(--line);border-radius:10px;padding:12px 14px;display:flex;flex-direction:column;gap:2px;background:#fafbfc;min-width:0}.t-kpi span{font-size:12.5px;color:var(--dim)}.t-kpi b{font-size:18px;font-weight:600;letter-spacing:-.01em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.t-kpi small{font-size:12px;color:var(--faint)}.t-fields{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:0 28px}.t-field{padding:10px 0;border-top:1px solid #f0f1f3;min-width:0}.t-field>span{display:block;font-size:12.5px;color:var(--dim);margin-bottom:2px}.t-field>div{overflow-wrap:anywhere}.t-sub{font-size:12.5px;color:var(--dim)}.t-snips{margin-top:18px}.t-snips h3{font-size:14px;font-weight:600;margin:0 0 6px}.t-snips ul{margin:0;padding-left:18px;color:var(--dim);font-size:13px;line-height:1.7}@media (max-width: 900px){.t-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 560px){.t-pane{padding:16px}.t-bar-sep{display:none}.t-kpi b{font-size:15px}.t-kpi:first-child{grid-column:1 / -1}.t-kpi:first-child b{font-size:20px}.t-kpi:nth-child(4){grid-column:1 / -1}.t-fields{grid-template-columns:1fr 1fr;gap:0 16px}}@media (min-width: 821px){.pageheading>div:first-child{min-width:0}.pageheading>.actions{flex-wrap:nowrap;flex-shrink:0}}.t-pane h3{font-size:15px;font-weight:600;letter-spacing:-.01em;margin:22px 0 10px}.t-pane>h3:first-child,.t-pane>:first-child h3:first-child{margin-top:0}.t-pane .tbl-wrap{border:1px solid var(--line);border-radius:10px}.t-pane .surface .tbl-wrap{border:0;border-radius:0}.t-pane .tbl th:first-child,.t-pane .tbl td:first-child{padding-left:16px}.callout{padding:12px 14px;border-radius:10px;background:#f6f7f9;border:1px solid var(--line);color:#374151;font-size:13.5px;line-height:1.55}.callout b{color:var(--ink);font-weight:600}.tbl td a[href^=http],.tbl .break{white-space:normal;overflow-wrap:anywhere;word-break:break-word}.tbl th.number{text-align:right}.t-next{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:12px 16px;margin-bottom:12px;border-radius:12px;background:var(--paper);border:1px solid #cddcf0;border-left:4px solid var(--strong);box-shadow:0 1px 2px #1018280a,0 1px 3px #1018280f}.t-next-l{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1 320px}.t-next-k{font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--strong);font-weight:500}.t-next-l b{font-size:15px;font-weight:600}.t-next-hint{font-size:13px;color:var(--dim);max-width:64ch}.t-next-docs{margin-top:4px}.t-next-docs .link-btn{padding:0;font-size:inherit;display:inline;text-align:left}.t-next-r{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.t-steps{display:flex;align-items:center;gap:4px}.t-step{width:18px;height:4px;border-radius:99px;background:#e5e7eb}.t-step.done{background:#93c5fd}.t-step.now{background:var(--strong)}.t-steps small{margin-left:6px;font-size:11.5px;color:var(--faint);white-space:nowrap}.t-screen .link-btn{margin-left:auto}@media (max-width: 760px){.t-next-r{align-items:flex-start;width:100%}}.rep-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.rep-kpi{background:#fafbfc;border:1px solid var(--line);border-radius:10px;padding:14px 16px;display:flex;flex-direction:column;gap:2px}.rep-kpi b{font-size:24px;font-weight:600;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.rep-kpi span{font-size:13px;color:var(--dim)}.toolbar .tiny{display:inline-flex;align-items:center;gap:6px}.toolbar.toolbar-start{justify-content:flex-start}@media (max-width: 560px){.report-row{grid-template-columns:1fr 48px}.report-row>div:first-child{grid-column:1 / -1;padding-bottom:2px}}.tc-verdict{font-size:12.5px;font-weight:500;border-radius:99px;padding:1px 9px}.tc-verdict.green{background:#ecfdf3;color:#15803d}.tc-verdict.orange{background:#fffbeb;color:#b45309}.tc-verdict.red{background:#fef2f2;color:#b91c1c}.t-screen .tip{margin-left:auto}.line-picker{margin-top:8px;padding:10px;border:1px solid var(--line);border-radius:10px;background:var(--bg);display:grid;gap:8px;max-width:560px}.line-picker-list{display:grid;gap:4px;max-height:240px;overflow:auto}.line-picker-item{display:flex;justify-content:space-between;gap:12px;text-align:left;padding:7px 9px;border:1px solid var(--line);border-radius:8px;background:var(--paper);cursor:pointer;font:inherit}.line-picker-item:hover:not(:disabled){border-color:var(--strong)}.line-picker-item:disabled{opacity:.55;cursor:default}.line-picker-form{display:grid;gap:6px}.t-owner{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:14px}.modal-alert{width:min(440px,100%)}.modal-alert p{margin:0 0 18px;font-size:14px;line-height:1.5;color:var(--ink, #1f2a3a)}.modal-actions{display:flex;justify-content:flex-end;gap:8px}.modal-back{z-index:90}.reply-grid{display:grid;gap:8px}.reply-row{display:grid;grid-template-columns:1fr 150px;gap:10px;align-items:center;font-size:13.5px}@media (max-width: 560px){.reply-row{grid-template-columns:1fr;gap:4px}}.callout.bad{background:#fbeeee;border-color:#e7b9b9;color:#8a3434}.checklist ul{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:4px;font-size:13.5px}.checklist li.ok{color:#2f7a4f}.checklist li.no{color:var(--ink, #1f2a3a)}.checklist li span[aria-hidden]{display:inline-block;width:16px}.modal-choices{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;margin-bottom:14px}.modal-choices .btn{justify-content:flex-start;text-align:left}@media (max-width: 640px){.calc-lines{min-width:0!important;width:100%}.calc-lines thead{display:none}.calc-lines tr{display:block;padding:10px 0;border-bottom:1px solid var(--line, #e5e9f0)}.calc-lines td{display:block;border:0!important;padding:2px 12px!important}.calc-lines .wrapcell{min-width:0;max-width:none;padding-bottom:6px!important}.calc-lines td.number{display:flex;justify-content:space-between;align-items:center;gap:12px;text-align:right}.calc-lines td.number:before{content:attr(data-label);color:var(--dim, #6b7686);font-size:12.5px;text-align:left}}.t-history{margin-top:18px}.t-history h3{font-size:15px;margin:0 0 6px}.t-history p{margin:0 0 6px;font-size:13.5px}.t-history ul{list-style:none;padding:0;margin:8px 0 0;display:grid;gap:6px;font-size:13.5px}.t-history li a{color:var(--ink, #1f2a3a)}.quick-search{position:relative}.quick-search.in-side{margin:0 15px 14px}.quick-search.in-top{flex:1;min-width:0}.quick-search input{width:100%;height:34px;border:1px solid var(--line);border-radius:8px;padding:0 10px;font:inherit;font-size:13.5px;background:#fff}.quick-hits{position:absolute;left:0;right:0;top:38px;z-index:60;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 14px 34px #10182829;max-height:60vh;overflow-y:auto;width:min(380px,92vw)}.quick-hits button{display:grid;gap:2px;width:100%;text-align:left;border:0;background:none;padding:9px 12px;border-bottom:1px solid var(--line);cursor:pointer;font:inherit;font-size:13px;color:var(--ink)}.quick-hits button:hover{background:#f3f6fa}.quick-hits span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.quick-hits small{color:var(--dim, #6b7686)}.quick-empty{padding:10px 12px;font-size:13px;color:var(--dim, #6b7686)}@media (max-width: 820px){.quick-search.in-side{display:none}}@media (max-width: 640px){.tbl:not(.no-stack){min-width:0!important;width:100%;white-space:normal}.tbl:not(.no-stack) thead{display:none}.tbl:not(.no-stack) tr{display:block;padding:10px 0;border-bottom:1px solid var(--line, #e5e9f0)}.tbl:not(.no-stack) td{display:flex;justify-content:flex-end;flex-wrap:wrap;align-items:center;gap:6px 12px;border:0!important;padding:3px 12px!important;text-align:right;min-width:0;max-width:none}.tbl:not(.no-stack) td[data-label]:before{content:attr(data-label);color:var(--dim, #6b7686);font-size:12.5px;text-align:left;flex:0 0 auto;max-width:45%;margin-right:auto}.tbl:not(.no-stack) td:first-child{display:block;text-align:left;font-weight:550}.tbl:not(.no-stack) td:first-child:before{display:none}.tbl:not(.no-stack) td:empty{display:none}}.calc-diff{margin:16px 0 4px;border:1px solid var(--line);border-radius:10px;padding:10px 14px;background:#fafbfd}.calc-diff summary{cursor:pointer;font-weight:600;font-size:14px}.diff-row{display:flex;justify-content:space-between;gap:12px;padding:6px 0;border-top:1px solid var(--line);font-size:13.5px;flex-wrap:wrap}.diff-row:first-of-type{margin-top:8px}.diff-row b.up{color:#2f7a4f}.diff-row b.down{color:#a24a3c}.cost-drift{font-size:12px;color:#a2601c;margin-top:2px}.tc-record{font-size:12px;color:#6b7686;background:#f1f3f7;border-radius:6px;padding:1px 7px}.tc-record.won{color:#2f7a4f;background:#e9f5ee}.t-b24{font-size:14px}.t-b24 a{color:var(--accent, #2f5a96)}.req-checks .req-src{color:var(--dim, #6b7686);font-size:11.5px}@media (max-width: 640px){.req-checks{grid-template-columns:auto auto auto auto}.req-checks .req-src{display:none}}.day-list{padding:0}.day-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:12px 16px;border-top:1px solid var(--line)}.day-row:first-child{border-top:0}.day-row.waiting .day-step{color:var(--dim)}.day-main{min-width:0;flex:1}.day-step{font-weight:600;font-size:14px;color:inherit;text-decoration:none}.day-step:hover{text-decoration:underline}.day-meta{margin-top:2px;color:var(--dim);font-size:12.5px;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.day-more{padding:10px 16px;border-top:1px solid var(--line)}@media (max-width: 600px){.day-row{flex-direction:column;gap:4px}}
