.budget-module{min-width:0}.budget-breadcrumb{color:#71869a;align-items:center;gap:7px;margin:0 0 9px;font-size:12px;line-height:1.35;display:flex}.budget-breadcrumb>span[aria-hidden=true]{color:#9aabba}.budget-breadcrumb strong{color:#244b67;font-weight:700}.budget-tabs{flex-wrap:wrap;gap:8px;margin:0 0 22px;display:flex}.budget-tabs .button{font-size:12px}.budget-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0 11px;display:grid}.budget-summary-item{background:#f5f9fb;border:1px solid #d9e4eb;border-radius:9px;min-width:0;padding:11px 14px 12px;position:relative;overflow:hidden}.budget-summary-item:before{content:"";background:#2d719b;width:7px;position:absolute;inset:0 auto 0 0}.budget-summary-item:nth-child(2):before{background:#3f8a62}.budget-summary-item:nth-child(3):before{background:#7f1730}.budget-summary-item span{color:#60798c;letter-spacing:.015em;font-size:11px;font-weight:600;display:block}.budget-summary-item strong{color:#163650;text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums;margin-top:5px;font-size:clamp(17px,1.25vw,21px);line-height:1.15;display:block;overflow:hidden}.budget-counters{flex-wrap:wrap;gap:8px;margin:18px 0;display:flex}.budget-counters button{color:#46647d;background:#fff;border:1px solid #d7e3ed;border-radius:8px;padding:9px 12px}.budget-counters button.selected{color:#14587f;background:#eaf3fb;border-color:#2073aa;font-weight:700}.budget-table-wrap{background:#fff;border:1px solid #e2eaf1;border-radius:10px;margin:16px 0 24px;overflow:auto}.budget-table-wrap table{border-collapse:collapse;width:100%}.budget-table-wrap th{color:#607993;text-align:left;white-space:nowrap;background:#eff5fa;padding:12px;font-size:11px}.budget-table-wrap td{vertical-align:top;border-top:1px solid #edf1f4;padding:12px;font-size:12px}.budget-row-link{color:#126ba0;background:0 0;border:0;padding:0;font-weight:700}.budget-modal-backdrop{z-index:50;background:#102d4380;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.budget-modal{background:#fff;border-radius:12px;width:100%;max-width:560px;padding:24px;position:relative;box-shadow:0 24px 70px #102e4a40}.budget-modal h2{margin-bottom:8px}.budget-modal label{color:#5d7489;gap:5px;margin:14px 0;font-size:12px;display:grid}.budget-modal select,.budget-modal textarea{border:1px solid #d6e1ea;border-radius:7px;width:100%;padding:10px}.budget-modal textarea{min-height:80px}.budget-close{background:0 0;border:0;font-size:24px;position:absolute;top:10px;right:14px}.budget-raw{padding:22px}.budget-raw input{margin:12px 0;display:block}.budget-import-file{color:#34556d;background:#f7fafc;border:1px dashed #abc2d3;border-radius:9px;gap:4px;margin-top:18px;padding:14px 16px;font-size:12px;font-weight:600;display:grid}.budget-import-file input{margin:4px 0}.budget-import-file small{color:#72859a;font-weight:400}.budget-analysis-restoring{color:#637a8f;background:#f7fafc;border:1px solid #dbe5ec;border-radius:9px;margin-top:18px;padding:18px;font-size:12px}.budget-runtime-parser-debug{color:#6f8293;margin:8px 0 0;font-size:10px}.budget-import-preview{border:1px solid #dbe5ec;border-radius:10px;margin-top:18px;overflow:hidden}.budget-import-preview>header,.budget-import-preview>footer{background:#f8fafc;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.budget-import-preview>header{border-bottom:1px solid #e2eaf0}.budget-import-preview>footer{border-top:1px solid #e2eaf0;justify-content:flex-end}.budget-import-preview h3,.budget-import-preview header p{margin:0}.budget-import-preview header p{color:#72859a;margin-top:3px;font-size:11px}.budget-import-preview header>span{border-radius:999px;padding:5px 8px;font-size:11px;font-weight:600}.budget-import-preview header>span.is-ready{color:#24714c;background:#e7f5ed}.budget-import-preview header>span.has-error{color:#9b1739;background:#fff0f1}.budget-import-stats{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding:14px 16px;display:grid}.budget-import-stats>div{background:#fff;border:1px solid #e1e9ef;border-radius:8px;padding:10px 12px}.budget-import-stats span{color:#71869a;font-size:10px;display:block}.budget-import-stats strong{color:#193c55;margin-top:4px;font-size:19px;display:block}.budget-import-types{grid-template-columns:1fr 1fr;gap:12px;padding:0 16px 14px;display:grid}.budget-import-types>div{background:#f3f7fa;border-radius:8px;min-width:0;padding:10px 12px}.budget-import-types strong{color:#34556d;font-size:11px}.budget-import-types p{color:#637a8f;margin:5px 0 0;font-size:11px;line-height:1.55}.budget-import-columns{border:1px solid #e1e8ee;border-radius:8px;max-height:280px;margin:0 16px 14px;overflow:auto}.budget-import-columns table{border-collapse:collapse;width:100%}.budget-import-columns th{color:#536f84;text-align:left;background:#edf4f8;font-size:10px;position:sticky;top:0}.budget-import-columns th,.budget-import-columns td{border-bottom:1px solid #e8eef2;padding:8px 10px}.budget-import-columns td{color:#34556d;font-size:11px}.budget-import-columns th:first-child,.budget-import-columns td:first-child{text-align:center;width:48px}.budget-import-columns th:last-child,.budget-import-columns td:last-child{width:120px}.budget-import-preview>footer>span{color:#71869a;margin-right:auto;font-size:11px}.budget-match-analysis{border:1px solid #dbe5ec;border-radius:10px;margin-top:18px;overflow:hidden}.budget-match-analysis>header{background:#f8fafc;border-bottom:1px solid #e2eaf0;justify-content:space-between;align-items:center;gap:14px;padding:14px 16px;display:flex}.budget-match-header-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:7px;display:flex}.budget-import-result{gap:16px;min-width:min(440px,75vw);display:grid}.budget-import-result>p{margin:0}.budget-import-result>h3{color:#173e5d;margin:2px 0 -6px;font-size:14px}.budget-import-result-grid{border:1px solid #dce6ed;border-radius:10px;grid-template-columns:minmax(190px,1fr) auto;gap:0;display:grid;overflow:hidden}.budget-import-result-grid>span,.budget-import-result-grid>strong{border-bottom:1px solid #e8eef2;padding:8px 11px}.budget-import-result-grid>:nth-last-child(-n+2){border-bottom:0}.budget-import-result-grid>strong{text-align:right;color:#173e5d;font-variant-numeric:tabular-nums;background:#f8fafc}.budget-import-result-grid .has-error{color:#a71930;background:#fff1f3}.budget-import-result-grid.compact>span,.budget-import-result-grid.compact>strong{padding-block:6px}.budget-import-result .form-actions{justify-content:flex-end;margin-top:0}.budget-match-analysis h3,.budget-match-analysis header p{margin:0}.budget-match-analysis header p{color:#72859a;margin-top:3px;font-size:11px}.budget-match-counters{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;padding:14px 16px;display:grid}.budget-match-counters button{color:#49677e;text-align:left;cursor:pointer;background:#fff;border:1px solid #dce6ed;border-radius:8px;padding:10px 12px}.budget-match-counters button:hover,.budget-match-counters button.selected{border-color:#2775a5;box-shadow:0 0 0 2px #2073aa16}.budget-match-counters button.duplicate.selected{border-color:#c18225}.budget-match-counters button.removed_from_synteka.selected{border-color:#76549a}.budget-match-counters button.error.selected{border-color:#a93243}.budget-match-counters span{font-size:10px;display:block}.budget-match-counters strong{color:#193c55;margin-top:3px;font-size:19px;display:block}.budget-match-table{border-top:1px solid #e3ebf0;border-bottom:1px solid #e3ebf0;height:min(430px,48vh);overflow:auto}.budget-match-table table{border-collapse:collapse;width:100%;min-width:1260px}.budget-match-table th{z-index:2;color:#557186;text-align:left;white-space:nowrap;background:#edf4f8;padding:9px 10px;font-size:10px;position:sticky;top:0}.budget-match-table td{color:#34556d;vertical-align:top;border-top:1px solid #e8eef2;padding:8px 10px;font-size:11px}.budget-match-table tbody tr{cursor:pointer}.budget-match-table tbody tr:hover,.budget-match-table tbody tr.selected{background:#f0f7fb}.budget-match-table th:first-child{width:100px}.budget-match-table th:nth-child(2){width:270px}.budget-match-table th:nth-child(3){width:210px}.budget-match-table th:nth-child(4){width:120px}.budget-match-table th:nth-child(5){width:145px}.budget-match-table th:nth-child(7){width:135px}.budget-match-status{color:#49677e;white-space:nowrap;background:#eef3f6;border-radius:999px;padding:4px 7px;font-size:10px;font-weight:700;display:inline-flex}.budget-match-status.matched{color:#24714c;background:#e7f5ed}.budget-match-status.new{color:#176b9f;background:#e8f2fa}.budget-match-status.duplicate{color:#8a5a12;background:#fff4dc}.budget-match-status.removed_from_synteka{color:#69458b;background:#f1edf7}.budget-match-status.review{color:#8a5a12;background:#fff4dc}.budget-match-status.error{color:#9b1739;background:#fff0f1}.budget-match-detail{border:1px solid #dce6ed;border-radius:9px;margin:14px 16px;overflow:hidden}.budget-match-detail>header{background:#f6f9fb;justify-content:space-between;align-items:start;gap:12px;padding:12px 14px;display:flex}.budget-match-detail h4{color:#24475f;margin:0}.budget-match-detail header button{color:#49677e;cursor:pointer;background:0 0;border:0;font-size:20px}.budget-match-detail>p{color:#71869a;padding:0 14px 14px}.budget-match-classification{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:12px 14px;display:grid}.budget-match-classification>div{background:#f2f7fa;border-radius:7px;min-width:0;padding:8px 10px}.budget-match-classification span{color:#71869a;font-size:9px;display:block}.budget-match-classification strong{overflow-wrap:anywhere;color:#294c64;margin-top:3px;font-size:11px;display:block}.budget-match-detail table{border-collapse:collapse;width:100%}.budget-match-detail th,.budget-match-detail td{color:#49677e;text-align:left;border-top:1px solid #e4ebf0;padding:8px 12px;font-size:11px}.budget-match-detail tr.different{background:#fff8e9}@media (max-width:760px){.budget-import-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.budget-import-types{grid-template-columns:1fr}.budget-match-counters,.budget-match-classification{grid-template-columns:repeat(2,minmax(0,1fr))}.budget-match-analysis>header{flex-direction:column;align-items:stretch}.budget-match-header-actions{justify-content:flex-start}}.code-add{gap:8px;margin:14px 0;display:flex}.code-add input{flex:1}.budget-report-options{background:#eaf1f5;border:1px solid #d6e1e9;border-radius:8px;gap:3px;padding:3px;display:inline-flex}.budget-report-options button{color:#526b7e;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:7px 11px;font-size:12px;font-weight:600}.budget-report-options button:hover{color:#234b68;background:#ffffff94}.budget-report-options button.selected{color:#7f1730;background:#fff;font-weight:700;box-shadow:0 1px 3px #233d4f1f}.budget-code-report{flex-direction:column;height:calc(100vh - 174px);min-height:0;display:flex;overflow:hidden}.budget-code-report-header{flex:none;padding:1px 1px 0}.budget-code-report-header h2{color:#173e5d;letter-spacing:-.015em;margin:0;font-size:clamp(18px,1.35vw,22px);line-height:1.25}.budget-code-report-header p{color:#647b8d;margin:4px 0 0;font-size:12px}.budget-code-report-controls{justify-content:space-between;align-items:center;gap:14px;margin:12px 0 10px;display:flex}.budget-code-report-export{white-space:nowrap;align-items:center;gap:7px;min-height:34px;padding:7px 11px;display:inline-flex}.budget-code-report-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:11px;display:grid}.budget-code-report-summary>div{background:#f5f9fb;border:1px solid #d9e4eb;border-radius:9px;min-width:0;padding:11px 14px 12px;position:relative;overflow:hidden}.budget-code-report-summary>div:before{content:"";background:#2d719b;width:7px;position:absolute;inset:0 auto 0 0}.budget-code-report-summary>div:nth-child(2):before{background:#3f8a62}.budget-code-report-summary>div:nth-child(3):before{background:#7f1730}.budget-code-report-summary span{color:#60798c;letter-spacing:.015em;font-size:11px;font-weight:600;display:block}.budget-code-report-summary strong{color:#173e5d;text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums;margin-top:5px;font-size:clamp(17px,1.25vw,21px);line-height:1.15;display:block;overflow:hidden}.budget-code-report-table{scrollbar-color:#9bb2c5 #eef3f7;scrollbar-width:thin;background:#fff;border:1px solid #d7e2ea;border-radius:9px;flex:auto;min-height:0;overflow:auto;box-shadow:0 1px 2px #1f3a4b0a}.budget-code-report-table table{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%;font-size:12px}.budget-code-report-table th{z-index:2;color:#294e68;text-align:left;white-space:nowrap;background:#eaf1f5;border-bottom:1px solid #cbdbe5;padding:8px 10px;font-size:11px;font-weight:700;position:sticky;top:0}.budget-code-report-table td{color:#334e63;white-space:nowrap;border-bottom:1px solid #e8eef2;padding:6px 10px;line-height:1.35}.budget-code-report-table td:nth-last-child(-n+3),.budget-code-report-table th:nth-last-child(-n+3){text-align:right;font-variant-numeric:tabular-nums}.budget-code-report-table tbody tr:hover td{background:#f7fafc}.budget-code-report-table tr.is-group td{color:#244b67;background:#f0f5f8;border-bottom-color:#d9e4eb;font-weight:700}.budget-code-report-table tr.report-uncoded td{color:#654d27;background:#fff8eb;border-top:1px solid #ead9b8;font-weight:700}.budget-code-report-table tr.report-total td{z-index:1;color:#173e5d;background:#e4eef4;border-top:2px solid #91afc1;border-bottom:0;font-weight:800;position:sticky;bottom:0}.budget-code-report-table tr.report-unknown td{background:#fffdf7}.budget-report-code{font-weight:700;display:inline-block}.budget-code-report-table small{color:#7b6c51}@media (max-width:760px){.budget-summary{grid-template-columns:1fr}.budget-table-wrap{max-width:100%}.budget-code-report{height:auto;overflow:visible}.budget-code-report-controls{flex-direction:column;align-items:stretch}.budget-code-report-export{align-self:flex-start}.budget-code-report-summary{grid-template-columns:1fr}.budget-code-report-table{max-height:65vh}}.budget-table-toolbar{justify-content:flex-end;align-items:center;gap:8px;margin:12px 0;display:flex;position:relative}.budget-table-toolbar .button{align-items:center;gap:6px;display:inline-flex}.budget-export-menu-wrap{position:relative}.budget-export-menu{z-index:24;background:#fff;border:1px solid #d6e2eb;border-radius:9px;width:240px;padding:8px;position:absolute;top:calc(100% + 7px);right:0;box-shadow:0 14px 32px #102e4a24}.budget-export-menu button{color:#294e68;text-align:left;background:0 0;border:0;border-radius:6px;gap:2px;width:100%;padding:8px 9px;display:grid}.budget-export-menu button:hover{background:#f1f6f9}.budget-export-menu button span,.budget-export-menu small{color:#72859a;font-size:10px}.budget-export-menu small{border-top:1px solid #edf2f5;padding:7px 9px 2px;display:block}.budget-pagination{color:#536f83;justify-content:flex-end;align-items:center;gap:8px;padding:9px 0 0;font-size:11px;display:flex}.budget-pagination label{align-items:center;gap:5px;margin-right:auto;display:inline-flex}.budget-pagination select{color:#294e68;background:#fff;border:1px solid #ccdbe6;border-radius:6px;min-width:58px;padding:5px 7px}.budget-filter-result{color:#72859a;margin-right:auto;font-size:11px}.budget-active-filters{flex-wrap:wrap;align-items:center;gap:6px;margin:-4px 0 10px;display:flex}.budget-active-filters>button{color:#315875;background:#f5f9fc;border:1px solid #cbdce9;border-radius:999px;align-items:center;gap:7px;padding:5px 8px;font-size:11px;display:inline-flex}.budget-active-filters>button:hover{border-color:#91b5cd}.budget-active-filters .budget-clear-filters{color:#9b1739;background:0 0;border:0;text-decoration:underline}.budget-filter-heading{position:relative}.budget-filter-heading>button{width:100%;color:inherit;font:inherit;font-weight:inherit;text-align:left;white-space:nowrap;background:0 0;border:0;justify-content:space-between;align-items:center;gap:8px;padding:0;display:flex}.budget-filter-heading>button svg{color:#8aa0b4;flex:none}.budget-filter-heading>button.filtered svg{color:#a80f3d;fill:#a80f3d}.budget-filter-popover{z-index:12;color:#38566e;background:#fff;border:1px solid #d4e0e9;border-radius:8px;width:230px;padding:10px;position:absolute;top:calc(100% + 11px);left:-7px;box-shadow:0 13px 35px #102e4a33}.budget-filter-popover label{gap:5px;font-size:10px;display:grid}.budget-filter-popover input,.budget-filter-popover select{color:#23465e;background:#fff;border:1px solid #cbd9e4;border-radius:6px;width:100%;padding:8px;font-size:12px}.budget-filter-popover>div{justify-content:space-between;align-items:center;margin-top:7px;display:flex}.budget-filter-popover small{color:#72859a}.budget-filter-popover button{color:#9b1739;background:0 0;border:0;padding:3px;font-size:11px}.budget-filter-popover button:disabled{color:#aab7c2}.budget-table-wrap th{overflow:visible}.budget-tracking-screen .budget-table-wrap th.budget-synteka-id{color:#365b75;background:#e8f1f7;border-left:2px solid #b5c9d8;border-right:1px solid #ccdbe6}.budget-tracking-screen .budget-table-wrap td.budget-synteka-id{color:#234b67;background:#f7fafc;border-left:2px solid #b5c9d8;border-right:1px solid #d5e1e9;font-weight:600}.budget-tracking-screen .budget-table-wrap tr:hover td.budget-synteka-id{background:#edf4f8}.budget-column-menu{z-index:20;background:#fff;border:1px solid #d9e5ee;border-radius:10px;width:min(390px,100vw - 40px);max-height:540px;padding:12px;position:absolute;top:42px;right:0;box-shadow:0 18px 45px #102e4a24}.budget-column-menu>input{border:1px solid #d6e1ea;border-radius:7px;width:100%;padding:8px 10px}.budget-column-actions{gap:6px;margin:9px 0;display:flex}.budget-column-actions button{color:#21648b;background:#edf5fa;border:0;border-radius:6px;padding:6px 8px;font-size:11px}.budget-column-list{border-top:1px solid #edf1f4;max-height:410px;padding-top:6px;overflow:auto}.budget-column-list label{color:#3e5a70;align-items:center;gap:8px;padding:6px 3px;font-size:11px;display:flex}.budget-column-list input{accent-color:#176b9f}.budget-table-wrap table{min-width:max-content}.budget-table-wrap th{z-index:2;position:sticky;top:0}.budget-table-wrap th:first-child,.budget-table-wrap td:first-child{z-index:3;background:#fff;position:sticky;left:0}.budget-table-wrap th:nth-child(2),.budget-table-wrap td:nth-child(2){z-index:3;background:#fff;position:sticky;left:120px}.budget-table-wrap th:first-child,.budget-table-wrap th:nth-child(2){z-index:4;background:#eff5fa}.budget-table-wrap td{white-space:nowrap;text-overflow:ellipsis;min-width:120px;max-width:280px;overflow:hidden}.budget-table-wrap td:first-child{min-width:150px}.budget-table-wrap td:nth-child(2){min-width:240px}.budget-tracking-screen{--tracking-control-height:clamp(32px, 3.6vh, 38px);--tracking-block-gap:clamp(5px, .72vh, 10px);flex-direction:column;height:100%;min-height:0;max-height:100%;display:flex;overflow:hidden}.budget-tracking-screen>.budget-breadcrumb{margin-bottom:var(--tracking-block-gap)}.budget-tracking-screen .budget-tabs{margin-bottom:var(--tracking-block-gap);scrollbar-width:thin;flex-wrap:nowrap;gap:clamp(4px,.42vw,8px);overflow-x:auto}.budget-tracking-screen .budget-tabs .button{min-height:var(--tracking-control-height);white-space:nowrap;flex:none;padding:clamp(6px,.65vh,9px) clamp(9px,.72vw,14px);font-size:clamp(10px,.63vw,12px)}.budget-tracking-screen .budget-counters{margin:var(--tracking-block-gap) 0;grid-template-columns:repeat(5,minmax(0,1fr));gap:clamp(4px,.42vw,8px);display:grid}.budget-tracking-screen .budget-counters button{min-height:var(--tracking-control-height);text-overflow:ellipsis;white-space:nowrap;padding:clamp(6px,.62vh,9px) clamp(8px,.68vw,12px);font-size:clamp(10px,.62vw,12px);line-height:1.2;overflow:hidden}.budget-tracking-screen .budget-table-toolbar{min-height:var(--tracking-control-height);margin:0 0 var(--tracking-block-gap);gap:clamp(5px,.42vw,8px)}.budget-tracking-screen .budget-table-toolbar .button{min-height:var(--tracking-control-height);padding:6px clamp(9px,.68vw,13px)}.budget-tracking-screen .budget-active-filters{margin:0 0 var(--tracking-block-gap)}.budget-tracking-screen>.notice{margin:0 0 var(--tracking-block-gap);padding-block:clamp(7px,.72vh,10px)}.budget-tracking-screen>.budget-breadcrumb,.budget-tracking-screen .budget-tabs,.budget-tracking-screen .budget-counters,.budget-tracking-screen .budget-table-toolbar,.budget-tracking-screen .budget-active-filters,.budget-tracking-screen>.notice{flex:none}.budget-tracking-screen .budget-table-wrap{scrollbar-gutter:stable;scrollbar-color:#9bb2c3 #edf3f7;scrollbar-width:auto;border-radius:clamp(7px,.55vw,10px);flex:auto;height:auto;min-height:0;margin:0;overflow:auto}.budget-tracking-screen .budget-table-wrap::-webkit-scrollbar{width:12px;height:12px}.budget-tracking-screen .budget-table-wrap::-webkit-scrollbar-track{background:#edf3f7}.budget-tracking-screen .budget-table-wrap::-webkit-scrollbar-thumb{background:#9bb2c3;border:3px solid #edf3f7;border-radius:8px}.budget-tracking-screen .budget-table-wrap::-webkit-scrollbar-corner{background:#edf3f7}.budget-tracking-screen .budget-table-wrap table{min-width:max-content}.budget-tracking-screen .budget-table-wrap thead th{position:sticky;top:0}.budget-tracking-screen .budget-table-wrap tbody tr{height:clamp(32px,3.65vh,37px)}.budget-tracking-screen .budget-table-wrap th{padding:clamp(7px,.72vh,10px) clamp(9px,.68vw,12px)}.budget-tracking-screen .budget-table-wrap td{padding:clamp(6px,.66vh,8px) clamp(9px,.68vw,12px)}.budget-tracking-screen .budget-pagination{min-height:var(--tracking-control-height);padding-top:var(--tracking-block-gap);flex:none}.budget-tracking-screen .budget-pagination .button{min-height:var(--tracking-control-height);padding:6px clamp(9px,.68vw,13px)}.budget-tracking-screen .budget-pagination select{min-height:calc(var(--tracking-control-height) - 4px)}@media (max-width:1500px) and (min-width:761px){.budget-tracking-screen .budget-tabs .button,.budget-tracking-screen .budget-counters button{font-size:10px}}@media (max-height:820px) and (min-width:761px){.budget-tracking-screen{--tracking-control-height:31px;--tracking-block-gap:4px}.budget-tracking-screen>.budget-breadcrumb{margin-bottom:4px;font-size:10px;line-height:1.25}.budget-tracking-screen .budget-tabs .button,.budget-tracking-screen .budget-counters button,.budget-tracking-screen .budget-table-toolbar .button,.budget-tracking-screen .budget-pagination .button{padding-block:5px}.budget-tracking-screen .budget-table-wrap tbody tr{height:31px}.budget-tracking-screen .budget-table-wrap th,.budget-tracking-screen .budget-table-wrap td{padding-top:5px;padding-bottom:5px}}@media (min-width:761px){body.budget-tracking-active{height:100vh;overflow:hidden}body.budget-tracking-active .main-shell{height:100vh;min-height:0;overflow:hidden}body.budget-tracking-active .main-shell>main{flex:auto;min-height:0;overflow:hidden}body.budget-tracking-active .main-shell>footer{display:none}}@media (max-width:760px){.budget-tracking-screen{height:auto;max-height:none;overflow:visible}.budget-tracking-screen .budget-table-wrap{flex:none;height:min(58vh,520px)}}.budget-record-dialog{z-index:70;color:#25465f;background:#fff;border:1px solid #dae5ee;border-radius:12px;flex-direction:column;width:min(76vw,1280px);max-height:76dvh;padding:0;display:flex;position:fixed;top:12vh;right:2vw;box-shadow:0 20px 55px #102d4338}.budget-record-dialog>header{border-bottom:1px solid #e2eaf1;justify-content:space-between;gap:12px;padding:16px 20px;display:flex}.budget-record-dialog h2{margin:0;font-size:17px}.budget-record-dialog header span{color:#72859a;text-transform:uppercase;margin-top:7px;font-size:10px;font-weight:600;display:block}.budget-record-dialog header p{overflow-wrap:anywhere;margin:2px 0 0;font-size:15px;font-weight:600}.budget-record-dialog header button{background:0 0;border:0;align-self:start;font-size:24px}.budget-record-body{grid-template-columns:minmax(380px,.85fr) minmax(520px,1.15fr);gap:20px;min-height:0;padding:16px 20px;display:grid;overflow:auto}.budget-record-dialog>footer{border-top:1px solid #e2eaf1;flex:none;justify-content:flex-end;align-items:center;gap:8px;padding:12px 20px;display:flex}.budget-record-dialog>footer>span{color:#71869a;margin-right:auto;font-size:11px}.budget-record-dialog>footer>span.is-dirty{color:#9d3040;font-weight:600}.budget-record-toolbar{justify-content:space-between;align-items:center;gap:10px;display:flex}.budget-record-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px;margin:12px 0 0;display:grid}.budget-record-fields div{border-bottom:1px solid #edf1f4;grid-template-columns:minmax(110px,.9fr) minmax(0,1.1fr);align-items:baseline;gap:8px;min-width:0;padding:7px 0;display:grid}.budget-record-fields dt{color:#72859a;font-size:10px}.budget-record-fields dd{overflow-wrap:anywhere;margin:0;font-size:12px;font-weight:600}.budget-record-edit{border-left:1px solid #d7e3ed;min-width:0;padding-left:20px}.budget-record-edit h3{margin:0 0 9px;font-size:13px}.budget-record-edit-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px;display:grid}.budget-record-edit label{gap:5px;margin:0;font-size:12px;display:grid}.budget-record-edit input,.budget-record-edit select,.budget-record-edit textarea,.budget-field-options>input{border:1px solid #d6e1ea;border-radius:6px;width:100%;padding:8px}.budget-record-edit textarea{resize:vertical;min-height:54px}.budget-group-field{min-width:0}.budget-new-group{grid-column:1/-1}.budget-code-input{grid-column:1/-1;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:10px;display:grid;position:relative}.budget-code-description{color:#607993;gap:5px;min-width:0;font-size:12px;display:grid}.budget-code-description output{background:#f5f8fb;border:1px solid #dce5ec;border-radius:6px;min-height:34px;max-height:50px;padding:8px;line-height:1.35;display:block;overflow:auto}.budget-field-options{background:#f6f9fb;margin-top:10px;padding:10px}.budget-field-options .budget-column-list{max-height:210px}.budget-code-input [role=listbox]{z-index:4;background:#f5f9fc;border:1px solid #d6e1ea;border-radius:6px;width:calc(35% - 5px);max-height:150px;position:absolute;top:61px;left:0;overflow:auto}.budget-unsaved-warning{background:#fff8ed;border:1px solid #e4c7a2;border-radius:8px;grid-column:1/-1;padding:11px 13px}.budget-unsaved-warning strong,.budget-unsaved-warning p{margin:0}.budget-unsaved-warning p{color:#6f5b43;margin-top:3px;font-size:12px}.budget-unsaved-warning>div{flex-wrap:wrap;gap:7px;margin-top:9px;display:flex}.budget-code-input [role=option]{text-align:left;background:0 0;border:0;width:100%;padding:8px;font-size:12px;display:block}.budget-code-input [role=option]:hover{background:#e5eff7}.budget-groups{padding:18px}.budget-groups ul{padding:0;list-style:none}.budget-groups li{border-bottom:1px solid #edf1f4;align-items:center;gap:8px;padding:10px 0;display:flex}.budget-groups li>span{flex:1}.budget-groups small{color:#72859a;display:block}.budget-tracking-screen tbody tr:hover td{background:#f2f7fb}.budget-tracking-screen tbody tr:focus-visible{outline:2px solid #2073aa}@media (max-width:600px){.budget-record-dialog{width:calc(100vw - 20px);max-height:84dvh;top:8vh;right:10px}.budget-record-body{grid-template-columns:1fr}.budget-record-edit{border-top:1px solid #d7e3ed;border-left:0;padding:14px 0 0}.budget-record-fields,.budget-record-edit-grid,.budget-code-input{grid-template-columns:1fr}.budget-code-input [role=listbox]{width:100%}.budget-groups li{flex-wrap:wrap}.budget-groups li>span{flex-basis:100%}}.budget-code-catalog{flex-direction:column;min-width:0;min-height:0;padding:18px;display:flex;overflow:hidden}.budget-code-heading{justify-content:space-between;align-items:end;gap:18px;display:flex}.budget-code-heading h2{margin:0 0 5px}.budget-code-heading p{color:#72859a;margin:0;font-size:12px}.budget-code-actions{align-items:center;gap:8px;display:flex}.budget-code-search{color:#6a8095;background:#fff;border:1px solid #d6e1ea;border-radius:7px;align-items:center;gap:7px;width:min(340px,100%);padding:0 10px;display:flex}.budget-code-search input{background:0 0;border:0;outline:0;width:100%;min-width:150px;padding:9px 0}.budget-code-export{white-space:nowrap;min-height:36px;padding:7px 11px}.budget-code-table{scrollbar-color:#9bb2c5 #eef3f7;scrollbar-width:thin;border:1px solid #e2eaf1;border-radius:9px;flex:1;min-height:0;margin-top:16px;overflow:auto}.budget-code-active-filters{margin:12px 0 -4px}.budget-code-table th{overflow:visible}.budget-code-table table{border-collapse:collapse;width:100%;min-width:1470px}.budget-code-table th{z-index:2;text-align:left;color:#607993;white-space:nowrap;background:#eff5fa;padding:10px 12px;font-size:11px;position:sticky;top:0}.budget-code-table td{vertical-align:middle;border-top:1px solid #edf1f4;padding:9px 12px;font-size:12px}.budget-code-table th:first-child,.budget-code-table td:first-child{text-align:center;width:64px}.budget-code-table th:nth-child(2),.budget-code-table td:nth-child(2){width:170px}.budget-code-table th:last-child,.budget-code-table td:last-child{width:180px}.budget-code-group td{background:#edf4f8;border-top-color:#cfdee8;font-weight:600}.budget-code-name{white-space:nowrap;align-items:center;gap:5px;display:flex}.budget-code-leaf,.budget-code-group-mark{flex:0 0 12px;width:12px;height:12px}.budget-code-leaf{border-bottom:1px solid #c9d8e3;border-left:1px solid #c9d8e3;transform:translateY(-3px)}.budget-code-group-mark{background:#176b9f;border-radius:3px}.budget-code-toggle{cursor:pointer;align-items:center;gap:7px;display:flex}.budget-code-toggle input{accent-color:#176b9f}.budget-code-toggle.is-disabled{cursor:not-allowed;opacity:.58}.budget-code-note{color:#637a8f;max-width:330px}.budget-code-level{color:#607993;font-variant-numeric:tabular-nums;font-weight:600}.budget-code-edit{color:#176b9f;cursor:pointer;background:#fff;border:1px solid #d5e1e9;border-radius:6px;align-items:center;gap:5px;padding:5px 7px;font-size:11px;display:inline-flex}.budget-code-edit:hover:not(:disabled){background:#f0f7fb;border-color:#176b9f}.budget-code-edit:disabled{cursor:not-allowed;opacity:.45}.budget-code-row-actions{white-space:nowrap;align-items:center;gap:6px;display:flex}.budget-code-delete{color:#9d3040;cursor:pointer;background:#fff;border:1px solid #e5c9ce;border-radius:6px;align-items:center;gap:5px;padding:5px 7px;font-size:11px;display:inline-flex}.budget-code-delete:hover:not(:disabled){background:#fff4f5;border-color:#a93243}.budget-code-delete:disabled{cursor:not-allowed;opacity:.45}.budget-code-empty{color:#72859a;padding:22px}.budget-code-item:hover td{background:#f7fafc}.budget-code-dialog-backdrop{z-index:80;background:#0a203385;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.budget-code-dialog{background:#fff;border-radius:12px;width:min(680px,100%);max-height:calc(100vh - 40px);overflow:auto;box-shadow:0 24px 70px #0419294d}.budget-code-dialog>header{border-bottom:1px solid #e4ebf0;justify-content:space-between;align-items:start;padding:18px 20px 13px;display:flex}.budget-code-dialog h3,.budget-code-dialog header p{margin:0}.budget-code-dialog header p{color:#73869a;margin-top:4px;font-size:12px}.budget-code-dialog header button{color:#536c81;cursor:pointer;background:0 0;border:0}.budget-code-dialog form{padding:18px 20px}.budget-code-dialog-grid{grid-template-columns:1fr 1fr;gap:13px;display:grid}.budget-code-dialog-grid label{color:#526b80;gap:6px;font-size:12px;font-weight:600;display:grid}.budget-code-dialog-grid label.wide{grid-column:1/-1}.budget-code-dialog-grid input,.budget-code-dialog-grid select,.budget-code-dialog-grid textarea{width:100%;font:inherit;color:#243c50;border:1px solid #cfdae3;border-radius:7px;padding:9px 10px}.budget-code-dialog-grid textarea{resize:vertical}.budget-parent-preview{color:#176b9f;margin-top:2px;font-size:11px;font-weight:600;display:block}.budget-code-dialog footer{justify-content:flex-end;gap:8px;margin-top:18px;display:flex}.budget-delete-dialog{width:min(520px,100%)}.budget-delete-dialog .budget-delete-body{color:#334e63;padding:18px 20px 0}.budget-delete-dialog .budget-delete-body>p:first-child{margin:0}.budget-delete-dialog>footer{padding:0 20px 18px}.budget-reference-dialog{width:min(780px,100%)}.budget-reference-dialog>footer{padding:0 20px 18px}.budget-reference-body{padding:16px 20px 0}.budget-reference-path{color:#425f76;align-items:center;gap:10px;min-height:32px;font-size:12px;display:flex}.budget-reference-path button{color:#176b9f;cursor:pointer;background:#fff;border:1px solid #d5e1e9;border-radius:6px;align-items:center;gap:5px;padding:5px 8px;display:inline-flex}.budget-reference-filters{justify-content:space-between;align-items:center;gap:12px;margin:10px 0;display:flex}.budget-reference-filters>label:last-child{color:#637a8f;white-space:nowrap;align-items:center;gap:6px;font-size:11px;display:flex}.budget-reference-list{border:1px solid #dde6ed;border-radius:8px;height:min(390px,45vh);overflow:auto}.budget-reference-list>button{color:#334e63;text-align:left;cursor:pointer;background:#fff;border:0;border-bottom:1px solid #e9eef2;grid-template-columns:14px 180px 1fr 100px;align-items:center;gap:8px;width:100%;padding:9px 11px;display:grid}.budget-reference-list>button:hover,.budget-reference-list>button.selected{background:#edf6fb}.budget-reference-list>button strong,.budget-reference-list>button span{font-size:12px}.budget-reference-list>button small{color:#73869a;text-align:right}.budget-reference-selection{background:#f2f8fb;border:1px solid #bad5e5;border-radius:7px;gap:3px;margin-top:10px;padding:10px 12px;font-size:12px;display:grid}.budget-reference-selection small{color:#9c3341}.budget-code-screen{flex-direction:column;height:100%;min-height:0;max-height:100%;display:flex;overflow:hidden}.budget-code-screen>.page-title,.budget-code-screen>.budget-tabs,.budget-code-screen>.notice{flex:none}.budget-code-screen>.budget-code-catalog{flex:auto}@media (min-width:761px){body.budget-code-catalog-active{height:100vh;overflow:hidden}body.budget-code-catalog-active .main-shell{height:100vh;min-height:0;overflow:hidden}body.budget-code-catalog-active .main-shell>main{flex:1;min-height:0;overflow:hidden}body.budget-code-catalog-active .main-shell>footer{display:none}}@media (max-width:760px){.budget-code-screen{height:auto;max-height:none;overflow:visible}.budget-code-catalog{overflow:visible}.budget-code-heading,.budget-code-actions{flex-direction:column;align-items:stretch}.budget-code-search{width:100%}.budget-code-table{flex:none;height:58vh}.budget-code-dialog-grid{grid-template-columns:1fr}.budget-code-dialog-grid label.wide{grid-column:auto}.budget-reference-filters{flex-direction:column;align-items:stretch}.budget-reference-list>button{grid-template-columns:14px 1fr}.budget-reference-list>button span,.budget-reference-list>button small{text-align:left;grid-column:2}}
