:root{color:#17211f;font-synthesis:none;background:#f4f6f5;font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer}h1,h2,h3,p{margin:0}small{color:#65736e;margin-top:4px;display:block}.skip{z-index:99;color:#075b4c;background:#fff;padding:.7rem;position:fixed;top:-5rem;left:1rem}.skip:focus{top:1rem}.shell{grid-template-columns:248px 1fr;min-height:100vh;display:grid}.shell>*{min-width:0}aside{color:#d9e3df;z-index:20;background:#172522;flex-direction:column;height:100vh;padding:18px 14px;display:flex;position:sticky;top:0;overflow:auto}.brand{align-items:center;gap:10px;padding:0 7px 18px;display:flex}.brand>div:nth-child(2){display:grid}.brand span,.identity span{color:#a5b5b0;font-size:12px}.brandmark{color:#172522;background:#e0b944;border-radius:4px;place-items:center;width:35px;height:35px;font-weight:800;display:grid}.close,.menu{display:none}.icon{color:inherit;background:0 0;border:0;padding:6px}.brand .close{margin-left:auto}nav{gap:3px;margin-bottom:14px;display:grid}nav>p{text-transform:uppercase;color:#80958e;letter-spacing:.08em;padding:8px 11px;font-size:10px;font-weight:800}nav button{color:#c3d0cc;text-align:left;background:0 0;border:0;border-radius:4px;align-items:center;gap:9px;padding:9px 11px;display:flex}nav button:hover,nav button.active{color:#fff;background:#294139}nav button.active{box-shadow:inset 3px 0 #e0b944}.nav-status{color:#dac988;margin-left:auto;font-size:9px}.identity{border-top:1px solid #385049;gap:4px;margin-top:auto;padding:14px 8px;display:grid}.identity select{color:#fff;background:#243a34;border:1px solid #526760;border-radius:4px;margin-top:4px;padding:7px}main{outline:none}header{background:#fff;border-bottom:1px solid #dce2df;justify-content:space-between;align-items:center;height:78px;padding:16px clamp(18px,3vw,40px);display:flex}h1{font-size:23px}h2{font-size:18px}h3{font-size:14px}.eyebrow{text-transform:uppercase;letter-spacing:.08em;color:#687671;margin-bottom:4px;font-size:10px;font-weight:800}.period,.badge{background:#fff;border:1px solid #d6dedb;border-radius:4px;padding:6px 9px;font-size:12px}.trust{background:#edf4f0;border-bottom:1px solid #d2ded8;align-items:center;gap:22px;min-height:38px;padding:8px clamp(18px,3vw,40px);font-size:12px;display:flex}.trust span{align-items:center;gap:6px;display:flex}.trust button{color:#075b4c;background:0 0;border:0;margin-left:auto;display:flex}.dot{background:#77827e;border-radius:50%;width:7px;height:7px;display:inline-block}.dot.good{background:#148367}.dot.warn{background:#a66f00}.provenance{background:#fff;border-bottom:1px solid #d2ded8;grid-template-columns:220px 1fr;gap:20px;padding:16px clamp(18px,3vw,40px);display:grid}.provenance dl{grid-template-columns:repeat(3,1fr);gap:12px;margin:0;display:grid}.provenance dl div{border-left:2px solid #d8e1dd;padding-left:10px}.provenance dt{font-size:11px;font-weight:700}.provenance dd{margin:4px 0;font-size:12px}.content{max-width:1600px;margin:auto;padding:24px clamp(18px,3vw,40px) 50px}.stack{gap:17px;display:grid}.metrics{background:#fff;border:1px solid #d9dfdc;grid-template-columns:repeat(4,1fr);display:grid}.metric{border-right:1px solid #e1e5e3;gap:6px;padding:17px;display:grid}.metric:last-child{border:0}.metric>span{color:#63716c;font-size:12px}.metric strong{font-size:22px}.metric small{font-size:11px}.panel{background:#fff;border:1px solid #d9dfdc;border-radius:6px;min-width:0;padding:20px}.section-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px;display:flex}.section-head p:not(.eyebrow){color:#63716d;margin-top:5px;font-size:13px}.banner{background:#fff7df;border-left:4px solid #b47d0d;align-items:flex-start;gap:10px;padding:12px 14px;display:flex}.banner.info{background:#eef7fb;border-color:#26759b}.banner div{gap:2px;display:grid}.banner span{color:#5d6965;font-size:12px}.segments{border:1px solid #cbd5d1;border-radius:4px;display:flex;overflow:hidden}.segments button{background:#fff;border:0;border-right:1px solid #cbd5d1;padding:7px 10px;font-size:12px}.segments button:last-child{border:0}.segments button.selected{color:#fff;background:#1e5548}.chart-summary{justify-content:space-between;gap:14px;font-size:12px;display:flex}.chart-summary span{color:#61716c}.cash-chart{border-bottom:1px solid #dae1de;width:100%;height:230px;margin:8px 0 12px}.cash-chart line{stroke-width:3px}.cash-chart .zero{stroke:#67736f;stroke-width:1px;stroke-dasharray:4}.cash-chart .above{stroke:#08725d}.cash-chart .below{stroke:#b2352b}.cash-chart text{fill:#65736e;font-size:10px}details summary{color:#075b4c;padding:8px 0;font-size:13px;font-weight:700}.table-wrap{width:100%;overflow:auto}.table-wrap:focus{outline:2px solid #147764}table{border-collapse:collapse;width:100%;min-width:760px;font-size:13px}caption{width:1px;height:1px;position:absolute;overflow:hidden}th{text-align:left;text-transform:uppercase;color:#677570;letter-spacing:.04em;background:#fff;border-bottom:1px solid #dbe1de;padding:10px;font-size:10px;position:sticky;top:0}td{vertical-align:top;border-bottom:1px solid #e6eae8;padding:12px 10px}.positive{color:#08725d}.negative,.danger{color:#a13a31}.basis{text-transform:uppercase;color:#075b4c;background:#edf5f2;border-radius:3px;padding:4px 6px;font-size:10px;font-weight:800;display:inline-block}.estimated .basis{color:#315a78;background:#eef3f8}.badge{padding:4px 7px;display:inline-block}.badge.bad{color:#96392f;background:#fbecea;border-color:#efceca}.text-link,.back{color:#076f5b;text-align:left;background:0 0;border:0;padding:0;font-weight:700;text-decoration:underline}.back{width:max-content}.day-list{border-top:1px solid #dfe4e2}.day{border-bottom:1px solid #e2e7e4}.day>button{text-align:left;background:#fff;border:0;justify-content:space-between;align-items:center;width:100%;padding:12px;display:flex}.day>button:hover{background:#f5f8f7}.day>button>span{align-items:center;gap:14px;display:flex}.day>button span:first-child{gap:2px;display:grid}.day-detail{background:#f6f8f7;padding:5px 16px 12px}.day-detail article{border-bottom:1px solid #dde3e0;justify-content:space-between;gap:16px;padding:10px 0;display:flex}.day-detail article>span{text-align:right}.day-detail p{color:#65736e;padding:10px}.primary,.permission button{color:#fff;background:#086c59;border:0;border-radius:4px;padding:9px 13px;font-weight:700}.form-grid{background:#f3f6f4;grid-template-columns:2fr 1fr 1fr;gap:12px;margin-bottom:16px;padding:16px;display:grid}.form-grid label{gap:6px;font-size:12px;font-weight:700;display:grid}.form-grid input,.form-grid select{background:#fff;border:1px solid #aebbb6;border-radius:4px;padding:8px}.form-actions{grid-column:1/-1;justify-content:flex-end;gap:10px;display:flex}.form-actions button{padding:8px 12px}.timeline{gap:8px;padding-left:24px;display:grid}.timeline li{border-left:3px solid #16856c;padding:9px}.mapping-grid{grid-template-columns:1fr 1.2fr;gap:22px;display:grid}.mapping-grid h3{margin-bottom:8px}.inventory{border:1px solid #dce3df;gap:4px;margin-bottom:8px;padding:12px;display:grid}.inventory span{font-size:12px}.state-grid{grid-template-columns:repeat(3,1fr);gap:13px;margin-top:18px;display:grid}.state{border:1px solid #d8dfdc;border-top:3px solid #147764;min-height:140px;padding:18px}.state>span{color:#147764;font-size:12px;font-weight:700}.state h3{margin:15px 0 6px}.state p{color:#5d6b67;font-size:13px;line-height:1.45}.permission{text-align:center;background:#fff;border:1px solid #d9dfdc;padding:55px 20px}.permission svg{color:#147764}.permission h2{margin:12px}.permission p{color:#60706b;margin-bottom:16px}.scrim{display:none}:focus-visible{outline-offset:2px;outline:3px solid #d89d12}@media (width<=1000px){.metrics{grid-template-columns:1fr 1fr}.metric:nth-child(2){border-right:0}.mapping-grid{grid-template-columns:1fr}.state-grid{grid-template-columns:1fr 1fr}.shell{display:block}aside{width:248px;max-width:calc(100vw - 32px);transition:left .2s;position:fixed;left:-270px}aside.open{left:0}.close,.menu{display:block}.scrim{z-index:19;background:#0008;border:0;display:block;position:fixed;inset:0}header{justify-content:flex-start;gap:12px;height:72px}.period{margin-left:auto}}@media (width<=680px){.metrics,.state-grid,.form-grid{grid-template-columns:1fr}.metric{border-bottom:1px solid #e1e5e3;border-right:0}.section-head{flex-direction:column}.segments{width:100%;overflow:auto}.segments button{white-space:nowrap;flex:1}.chart-summary,.day>button,.day>button>span,.day-detail article{flex-direction:column;align-items:flex-start}.day>button>span{gap:4px}.day-detail article>span{text-align:left}.provenance,.provenance dl{grid-template-columns:1fr}.trust{flex-wrap:wrap;gap:8px}.trust button{margin-left:0}.form-actions{grid-column:auto}.cash-chart{height:180px}.panel{padding:14px}}@media (width<=360px){.period{display:none}h1{font-size:20px}.trust{display:grid}.content{padding:16px 12px 40px}}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.chart-scroll{border-bottom:1px solid #dae1de;width:100%;overflow-x:auto}.chart-scroll .cash-chart{border:0;height:280px;margin:8px 0 4px}.cash-chart .axis-title{font-size:11px;font-weight:700}.cash-chart circle{stroke:#fff;stroke-width:2px;cursor:pointer}.cash-chart .above-point{fill:#08725d}.cash-chart .below-point{fill:#b2352b}.cash-chart g:focus{outline:none}.cash-chart g:focus circle,.cash-chart .selected-point circle{stroke:#d89d12;stroke-width:4px;r:7px}.cash-chart .date-tick{font-size:9px}.cash-day{background:#f5f8f7;border:1px solid #d9e2de;grid-template-columns:180px 1fr;gap:20px;margin:8px 0 12px;padding:16px;display:grid}.cash-day-columns{grid-template-columns:1fr 1fr;gap:22px;display:grid}.cash-day-columns>div{align-content:start;gap:8px;display:grid}.cash-day-columns article{border-top:1px solid #dce3e0;grid-template-columns:1fr auto;gap:2px 10px;padding-top:8px;display:grid}.cash-day-columns article small{grid-column:1/-1}.primary:disabled{opacity:.6;cursor:wait}.loading{color:#65736e;place-items:center;min-height:160px;display:grid}.header-actions{align-items:center;gap:12px;margin-left:auto;display:flex}.user-menu-wrap{position:relative}.user-menu-button{background:#fff;border:1px solid #ccd6d2;border-radius:4px;align-items:center;gap:7px;padding:7px 9px;display:flex}.user-menu{z-index:30;background:#fff;border:1px solid #cfd8d4;width:270px;padding:6px;position:absolute;top:calc(100% + 7px);right:0;box-shadow:0 8px 24px #17252224}.user-menu>button,.admin-submenu button{text-align:left;background:#fff;border:0;align-items:center;gap:8px;width:100%;padding:9px;display:flex}.user-menu>button:hover,.admin-submenu button:hover{background:#edf4f0}.admin-submenu{border:1px solid #dce3df;margin:2px 6px 8px;padding:3px}.preview-control{border-top:1px solid #dce3df;border-bottom:1px solid #dce3df;gap:5px;padding:10px 8px;display:grid}.preview-control label{font-size:11px;font-weight:700}.preview-control select{border:1px solid #aebbb6;padding:7px}.preview-banner{background:#fff1c7;border-bottom:2px solid #aa7400;align-items:center;gap:10px;padding:9px clamp(18px,3vw,40px);font-size:12px;display:flex}.preview-banner span{color:#625636}.preview-banner button{background:#fff;border:1px solid #86600b;border-radius:3px;margin-left:auto;padding:5px 8px}.login-page{background:#eef2f0;place-items:center;min-height:100vh;padding:20px;display:grid}.login-panel{background:#fff;border:1px solid #d5ddda;width:min(420px,100%);padding:28px}.login-brand{padding:0 0 28px}.login-panel>p:not(.eyebrow){color:#63716d;margin:8px 0 20px}.login-panel form,.stack-form{gap:14px;margin-top:18px;display:grid}.login-panel label,.stack-form label,.role-body>label{gap:6px;font-size:12px;font-weight:700;display:grid}.login-panel input,.stack-form input,.role-body input,td select{background:#fff;border:1px solid #aebbb6;border-radius:4px;padding:9px}.form-error,.form-success{margin-top:12px;padding:10px;font-size:12px}.form-error{color:#8c3028;background:#fbecea}.form-success{color:#09614f;background:#e8f5ef}.profile-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.role-list{gap:9px;display:grid}.role-editor{border:1px solid #d9e1dd}.role-heading{text-align:left;background:#f7f9f8;border:0;justify-content:space-between;width:100%;padding:12px;display:flex}.role-heading span{display:grid}.role-body{gap:13px;padding:15px;display:grid}.role-body fieldset{border:1px solid #d5ded9;grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.role-body legend{font-size:12px;font-weight:700}.check{gap:7px;font-size:12px;display:flex}@media (width<=680px){.profile-grid,.cash-day,.cash-day-columns{grid-template-columns:1fr}.chart-scroll .cash-chart{height:240px}.period,.user-menu-button span{display:none}.preview-banner{flex-wrap:wrap;align-items:flex-start}.preview-banner button{margin-left:0}.role-body fieldset{grid-template-columns:1fr}}.login-link{color:#076f5b;background:0 0;border:0;margin:16px auto 0;font-weight:700;text-decoration:underline;display:block}.cash-chart .grid-line{stroke:#dfe6e3;stroke-width:1px}.cash-chart .grid-label{font-variant-numeric:tabular-nums}.nav-subitem{width:calc(100% - 18px);margin-left:18px;font-size:12px;border-left:1px solid #526760!important;border-radius:0 4px 4px 0!important}.tentative{margin-top:10px}.account-tiles{background:#fff;border:1px solid #d9dfdc;grid-template-columns:repeat(3,1fr);display:grid}.debt-metric strong{color:#a13a31}.month-picker{gap:5px;font-size:12px;font-weight:700;display:grid}.month-picker input,td input{border:1px solid #aebbb6;border-radius:4px;padding:8px}.empty{color:#65736e;padding:24px}.day-head{text-transform:uppercase;color:#677570;background:#f2f6f4;grid-template-columns:1fr repeat(3,150px);padding:8px 46px 8px 12px;font-size:10px;font-weight:800;display:grid}.day-amounts{grid-template-columns:repeat(3,135px) 20px;justify-items:end;display:grid!important}.report-actions{align-items:center;gap:8px;display:flex}.report-actions .primary{align-items:center;gap:6px;display:flex}.print-only{display:none}@media (width<=900px){.account-tiles{grid-template-columns:1fr 1fr}.day-head{display:none}.day-amounts{justify-items:start;grid-template-columns:1fr!important}}@media (width<=680px){.account-tiles{grid-template-columns:1fr}.tentative{width:100%;overflow:auto}.report-actions{flex-direction:column;align-items:flex-start}}@media print{@page{size:landscape;margin:14mm}.shell{display:block}.shell aside,header,.trust,.provenance,.preview-banner,.back,.no-print{display:none!important}.content{max-width:none;padding:0}.panel{border:0;padding:0}.print-only{display:flex}.report-brand{border-bottom:2px solid #172522;justify-content:space-between;margin-bottom:18px;padding-bottom:10px}.table-wrap{overflow:visible}table{min-width:0;font-size:10pt}thead{display:table-header-group}tr{break-inside:avoid}th{position:static}.section-head{break-after:avoid}.print-report{color:#000}}.inline-percent{align-items:center;gap:6px;display:flex}.inline-percent input{width:100px}.budget-action{margin-top:14px}.override-reason{gap:6px;margin-top:16px;font-size:12px;font-weight:700;display:grid}.override-reason textarea{resize:vertical;border:1px solid #aebbb6;border-radius:4px;min-height:82px;padding:9px}
