:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#252b26;background:#f8f8f6;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--green:#275b45;--green-dark:#1e4938;--ink:#252b26;--muted:#858b84;--line:#e9eae5;--cream:#f8f8f6;--amber:#a36c24;--red:#bb5047;--blue:#4066a0;--shadow:0 10px 30px rgba(30,45,34,.075)}*{box-sizing:border-box}body{margin:0;min-width:360px;min-height:100vh}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.58}.app-shell{min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:245px;background:#fff;border-right:1px solid #eeefeb;padding:25px 17px 14px;display:flex;flex-direction:column;z-index:10}.brand{height:35px;display:flex;align-items:center;gap:10px;padding-left:4px;margin-bottom:26px}.brand-mark{height:34px;width:34px;border-radius:10px;background:#275b45;color:#fff;display:grid;place-items:center;flex:none}.brand>div:nth-child(2){display:flex;flex-direction:column;gap:2px}.brand-name{font:800 14px Inter,sans-serif;letter-spacing:1.6px;color:#29332d}.brand-sub{font:600 11px Inter,sans-serif;letter-spacing:1.8px;color:#979c95}.building-card{height:65px;border:1px solid var(--line);border-radius:11px;display:flex;align-items:center;padding:9px;gap:10px;margin-bottom:28px}.building-thumb{width:36px;height:38px;border-radius:8px;background:#f1f5ef;display:flex;align-items:center;justify-content:center;flex-direction:column;color:#47765a;position:relative}.building-thumb span{font:600 9.5px Inter;margin-top:-1px}.building-card>div:nth-child(2){display:flex;flex-direction:column;gap:4px;flex:1}.building-card strong{font-size:13px;font-weight:700}.building-card span{font-size:12px;color:#838980}.muted{color:#999d98}.nav-caption{font-size:11.5px;font-weight:700;color:#a2a59f;letter-spacing:1.15px;padding:0 9px;margin-bottom:9px}.second-cap{margin-top:25px}.sidebar nav{display:grid;gap:3px}.nav-item{width:100%;height:39px;border:0;background:none;border-radius:8px;display:flex;align-items:center;gap:12px;padding:0 11px;text-align:left;font-size:13px;font-weight:500;color:#727870;transition:.15s}.nav-item:hover{background:#f5f7f3;color:#385945}.nav-item.active{background:#edf3ee;color:#275b45;font-weight:700}.nav-item>svg{flex:none}.nav-count{height:18px;min-width:19px;padding:0 5px;margin-left:auto;border-radius:12px;background:#f0e7d9;color:#966326;display:grid;place-items:center;font-size:12px}.sidebar-bottom{margin-top:auto}.support-card{margin:0 2px 15px;padding:14px 12px;background:#f8f8f5;border:1px solid #ededE7;border-radius:10px;display:flex;flex-direction:column;align-items:flex-start}.support-icon{height:25px;width:25px;border-radius:7px;background:#e9eee6;color:#577155;display:grid;place-items:center;margin-bottom:8px}.support-card>strong{font-size:13px}.support-card>span{font-size:12px;color:#858980;line-height:1.5;margin-top:5px}.support-card>button{border:0;background:none;padding:9px 0 0;color:#336448;font-size:12px;font-weight:700;display:flex;gap:6px;align-items:center}.sidebar-user{height:52px;border-top:1px solid var(--line);padding:12px 1px 0;display:flex;align-items:center;gap:9px}.avatar{height:32px;width:32px;border-radius:50%;background:#ecf2ed;color:#41674e;font-size:13px;font-weight:700;display:grid;place-items:center;border:0;flex:none}.user-info{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.user-info strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user-info span{font-size:12px;color:#8b9089}.icon-button{border:0;background:none;width:32px;height:32px;border-radius:7px;display:inline-grid;place-items:center;color:#797f78;flex:none}.icon-button:hover{background:#f1f3ef;color:#375b43}.main-area{margin-left:245px;min-height:100vh;display:flex;flex-direction:column}.topbar{height:63px;padding:0 35px;background:#ffffffd6;border-bottom:1px solid #eceee8;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:5;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.breadcrumb{display:flex;align-items:center;gap:9px;font-size:13px;color:#999d96}.breadcrumb svg{color:#c6c9c1}.breadcrumb strong{font-weight:600;color:#484f48}.top-right{display:flex;align-items:center;gap:14px}.local-pill{border:1px solid #e5e9e4;border-radius:20px;padding:6px 9px;color:#627064;font-size:12px;display:flex;align-items:center;gap:7px}.online-dot{display:inline-block;height:6px;width:6px;border-radius:50%;background:#54a271}.top-divider{height:20px;width:1px;background:#e7e8e3}.top-avatar{height:30px;width:30px}.content{width:min(1220px,100%);margin:0 auto;padding:31px 36px 28px}.page-head{display:flex;justify-content:space-between;align-items:flex-end;gap:25px;margin-bottom:23px}.eyebrow{font-size:11.5px;color:#8c938a;font-weight:700;letter-spacing:1.05px}.page-head h1{font:700 25px Inter,sans-serif;letter-spacing:-.65px;margin:7px 0 5px;color:#262c27}.page-head p{font-size:13px;color:#858b84;margin:0;line-height:1.5}.head-actions{display:flex;align-items:center;gap:9px;flex:none}.period-select{height:36px;min-width:164px;border:1px solid #e5e8e1;border-radius:8px;background:#fff;padding:0 10px;display:flex;align-items:center;gap:8px;color:#667266}.period-select select{border:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;outline:none;flex:1;min-width:0;color:#424c43;font-size:13px;font-weight:600;cursor:pointer}.primary,.secondary{height:35px;border-radius:7px;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:13px;font-weight:650;white-space:nowrap;transition:.16s}.primary{border:1px solid #275b45;background:#275b45;color:#fff}.primary:hover:not(:disabled){background:#1f4937;border-color:#1f4937}.secondary{border:1px solid #e5e8e1;background:#fff;color:#586057}.secondary:hover:not(:disabled){border-color:#c8d2c8;background:#fbfcfa}.full{width:100%;height:43px;font-size:13px}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:14px}.metric-card{min-height:126px;background:#fff;border:1px solid #eaede8;border-radius:10px;padding:14px 15px;text-align:left;position:relative;transition:box-shadow .16s,border .16s}.expense-metric{font:inherit;color:inherit;cursor:pointer}.expense-metric:hover{border-color:#cfdbcf;box-shadow:0 4px 15px #2a442f12}.metric-top{display:flex;align-items:center;justify-content:space-between;color:#777e76;font-size:12.5px}.metric-icon{height:29px;width:29px;display:grid;place-items:center;border-radius:8px}.metric-icon.green{background:#eaf2ec;color:#447251}.metric-icon.blue{background:#eaf0f8;color:#5379ad}.metric-icon.violet{background:#f0ecf7;color:#755f9b}.metric-icon.amber{background:#f6f0e4;color:#a47a36}.metric-value{font:700 21px Inter,sans-serif;letter-spacing:-.55px;color:#292f29;margin:12px 0 9px}.metric-foot{font-size:12px;color:#858b84;display:flex;align-items:center;gap:7px}.trend.flat{height:17px;width:17px;border-radius:50%;display:grid;place-items:center;background:#f1f3ef;color:#6d766b}.review-pill{display:inline-flex;align-items:center;gap:4px;color:#97702e;background:#f7f1e7;padding:3px 7px;border-radius:20px}.metric-arrow{margin-left:auto;color:#9ca199}.section-card{background:#fff;border:1px solid #eaede8;border-radius:10px;overflow:hidden}.section-header{padding:17px 18px 15px;display:flex;align-items:center;justify-content:space-between;gap:12px}.section-header h2{font:700 14px Inter,sans-serif;margin:0 0 4px;color:#303630}.section-header p{font-size:12px;color:#8b9088;margin:0}.text-button{border:none;background:none;color:#34634a;display:inline-flex;align-items:center;gap:5px;font-size:12.5px;font-weight:650;padding:5px 0;white-space:nowrap}.text-button:hover{color:#1c412e}.review-summary{margin:0 18px;padding:13px;background:#fafaf8;border:1px solid #eeefea;border-radius:8px;display:grid;grid-template-columns:minmax(180px,1fr) minmax(130px,2fr) 44px;align-items:center;gap:20px}.progress-copy{display:grid;grid-template-columns:40px 1fr;align-items:center;column-gap:9px}.progress-number{grid-row:span 2;font:700 22px Inter;color:#305c43}.progress-number span{font-size:14px;color:#969c94}.progress-copy>strong{font-size:12px}.progress-copy>span{font-size:11.5px;color:#979b94;margin-top:3px}.progress-track,.tiny-track{height:6px;background:#e9ede8;border-radius:9px;overflow:hidden}.progress-fill,.tiny-track span{display:block;height:100%;border-radius:9px;background:#538363;transition:width .3s}.progress-percent{font:700 13px Inter;color:#687166;text-align:right}.discrepancy{margin:12px 18px 0;border:1px solid #efe3cc;background:#fffcf6;border-radius:7px;padding:11px 12px;display:flex;align-items:center;gap:10px}.discrepancy-mark{height:24px;width:24px;background:#f5ead5;color:#a7752c;display:grid;place-items:center;border-radius:7px;font-weight:800}.discrepancy>div:nth-child(2){display:grid;gap:4px;flex:1}.discrepancy strong{font-size:12px;color:#755829}.discrepancy span{font-size:11.5px;color:#92856f}.discrepancy span i{display:inline-block;height:3px;width:3px;border-radius:50%;background:#b9ae9a;vertical-align:middle;margin:0 6px}.discrepancy span b{color:#ae6742}.discrepancy .text-button{font-size:11.5px}.mini-table-head{margin-top:17px;padding:0 17px 8px;display:grid;grid-template-columns:2.1fr 1.35fr .82fr .9fr 30px;gap:10px;font-size:10.5px;letter-spacing:.7px;font-weight:700;color:#9b9f98;border-bottom:1px solid #f0f0ec}.mini-row{min-height:52px;padding:8px 17px;display:grid;grid-template-columns:2.1fr 1.35fr .82fr .9fr 30px;gap:10px;align-items:center;border-bottom:1px solid #f1f2ee}.mini-title{display:flex;align-items:center;gap:9px;min-width:0}.expense-file{width:29px;height:30px;border-radius:7px;background:#f4f0eb;color:#927c59;display:grid;place-items:center;flex:none}.mini-title>div:nth-child(2){display:flex;flex-direction:column;gap:3px;min-width:0}.mini-title strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:600}.mini-title span{font-size:11px;color:#969a92}.row-payee{font-size:12px;color:#727870;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.amount{font-variant-numeric:tabular-nums;font-size:12.5px;color:#343a34}.status-pending,.status-ok{display:inline-flex;align-items:center;gap:5px;font-size:11.5px;color:#8b713f;white-space:nowrap}.status-pending>span{height:6px;width:6px;border-radius:50%;background:#d4a048}.status-ok{color:#467454}.row-open{height:26px;width:26px;border:0;background:transparent;color:#9ca198;border-radius:6px;display:grid;place-items:center}.row-open:hover{background:#eff4ef;color:#356346}.table-bottom{min-height:39px;display:flex;justify-content:space-between;align-items:center;padding:0 17px;font-size:11.5px;color:#989c95}.lower-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:14px}.compact-card .section-header{padding-bottom:12px}.recent-list,.document-list{padding:0 15px 10px}.recent-row,.document-row{height:45px;display:flex;align-items:center;gap:9px;border-bottom:1px solid #f1f2ee}.recent-icon{height:27px;width:27px;border-radius:7px;display:grid;place-items:center}.debit-icon{color:#a76650;background:#f8efeb}.credit-icon{color:#477956;background:#edf4ee}.recent-desc{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.recent-desc strong{font-size:11.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recent-desc span{font-size:11px;color:#949990}.recent-amount{font-size:12px;font-weight:600;color:#497858;white-space:nowrap}.recent-amount.negative{color:#795f59}.document-row{height:49px}.document-icon{height:30px;width:30px;border-radius:8px;display:grid;place-items:center;flex:none}.statement-color{background:#edf3ec;color:#4f7752}.report-color{background:#f6eee8;color:#ac7355}.document-info{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}.document-info strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.document-info span{font-size:11px;color:#959990}.doc-open{height:26px;width:26px;border:0;border-radius:6px;background:none;color:#92988f;display:grid;place-items:center}.doc-open:hover{color:#315b40;background:#f0f3ee}.upload-inline{width:100%;height:31px;border:1px dashed #dfe5dc;border-radius:7px;margin-top:8px;background:#fcfcfa;color:#54745b;font-size:12px;display:flex;align-items:center;justify-content:center;gap:6px}.notice{display:flex;align-items:center;gap:12px;border-radius:8px;padding:12px 14px;margin-bottom:13px}.notice-amber{border:1px solid #f0e5d1;background:#fffcf6;color:#9a7033}.notice-icon{height:29px;width:29px;border-radius:7px;background:#f7efdf;display:grid;place-items:center;flex:none}.notice>div{flex:1}.notice strong{font-size:12.5px;color:#765b32}.notice p{font-size:12px;color:#90836e;margin:4px 0 0;line-height:1.5}.notice>button{border:0;background:transparent;color:#8a692e;display:flex;gap:5px;align-items:center;font-size:12px;font-weight:650}.content-card{margin-bottom:14px}.content-card>.section-header{padding:17px 18px}.filterbar{min-height:51px;padding:7px 17px;display:flex;align-items:center;gap:9px;background:#fdfdfb;border-top:1px solid #eff0ec;border-bottom:1px solid #eff0ec}.searchbox{height:31px;border:1px solid #e8ebe5;border-radius:6px;background:#fff;display:flex;align-items:center;gap:7px;padding:0 8px;color:#9a9f97;flex:1;max-width:390px}.searchbox input{border:0;outline:0;min-width:0;flex:1;background:transparent;font-size:12px;color:#3c453e}.searchbox input::placeholder{color:#a4a9a1}.searchbox kbd{padding:2px 4px;border:1px solid #ebede8;border-radius:4px;font-size:10.5px;color:#9a9e97}.filterbar>.secondary{height:31px;font-size:12px}.rows-count{font-size:11.5px;color:#90958e;margin-left:auto;white-space:nowrap}.rows-count b{color:#4c584d;margin-left:3px}.table-wrap{width:100%;overflow:auto}table{border-collapse:collapse;width:100%;white-space:nowrap}thead th{text-align:left;padding:10px 12px;font-size:10.5px;letter-spacing:.6px;color:#9b9f98;font-weight:700;background:#fff;white-space:nowrap}thead th:first-child,tbody td:first-child{padding-left:18px}thead th:last-child,tbody td:last-child{padding-right:15px}tbody td{padding:9px 12px;border-top:1px solid #f0f1ed;font-size:12px;color:#697067}tbody tr:hover{background:#fdfdfa}.align-r{text-align:right}.date-cell,.ref-cell{font-variant-numeric:tabular-nums;color:#777e75}.desc-cell{min-width:260px;max-width:430px;white-space:normal}.desc-cell strong{font-size:12px;font-weight:550;display:block;overflow:hidden;text-overflow:ellipsis}.money-out{color:#795e53}.money-in{color:#497756}.balance-cell{font-weight:650;color:#454e45;font-variant-numeric:tabular-nums}.rows-count{display:flex;align-items:center;gap:4px}.filter-select{height:31px;padding:0 9px;border:1px solid #e8ebe5;border-radius:6px;background:#fff;color:#616961;font-size:12px;outline:none}.expenses-table td{padding-top:11px;padding-bottom:11px}.expense-table-title{display:flex;flex-direction:column;gap:4px;min-width:180px;max-width:300px;white-space:normal}.expense-table-title strong{font-size:12px;font-weight:600;color:#333a34;line-height:1.4}.expense-table-title span{font-size:11px;color:#9a9d96}.paperclip-link{display:inline-flex;align-items:center;gap:5px;border:0;background:none;color:#61705e;padding:3px;font-size:11.5px}.paperclip-link:hover{color:#2a5b3d}.report-banner{padding:17px 19px;display:flex;align-items:center;gap:12px}.report-file-icon{height:39px;width:39px;border-radius:9px;background:#f6eee8;color:#aa7153;display:grid;place-items:center;flex:none}.report-info{flex:1;min-width:0}.report-info h2{margin:3px 0 4px;font:700 14px Inter;color:#343a34}.report-info>span:last-child{font-size:11.5px;color:#8f958d}.report-total{display:grid;gap:5px;text-align:right}.report-total>span{font-size:11.5px;color:#92978f}.report-total>strong{font:700 18px Inter}.report-total .text-button{justify-content:flex-end;font-size:11.5px}.recon-banner{display:flex;align-items:center;gap:14px;padding:10px 17px;border-top:1px solid #eee6d7;border-bottom:1px solid #eee6d7;background:#fffcf6;color:#8b6b38;font-size:11.5px}.recon-banner>div:first-child{display:flex;align-items:center;gap:6px}.recon-banner>div>span{color:#89816f}.recon-banner b{color:#565649}.recon-divider{height:24px;width:1px;background:#e9dfcc}.recon-banner>div:nth-child(3){display:flex;flex-direction:column;gap:3px}.recon-banner>div:nth-child(3) strong{font-size:13px;color:#a5603e}.recon-right{margin-left:auto;display:flex;align-items:center;gap:8px}.recon-right span{font-size:11px;color:#89867c}.tiny-track{width:73px;height:4px}.tiny-track span{background:#aa8b53}.upload-layout{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:14px;align-items:start}.upload-layout>.content-card{margin:0}.dropzone{min-height:190px;margin:0 17px 17px;border:1.5px dashed #d8dfd6;background:#fcfdfa;border-radius:9px;display:flex;align-items:center;justify-content:center;flex-direction:column;cursor:pointer;text-align:center;transition:.15s}.dropzone:hover{border-color:#8eaa90;background:#fafcf8}.dropzone>input{position:absolute;opacity:0;pointer-events:none}.drop-icon{height:40px;width:40px;display:grid;place-items:center;border-radius:11px;background:#ecf3eb;color:#4f7855;margin-bottom:11px}.dropzone>strong{font-size:13px;color:#495149}.dropzone>strong span{color:#2d6545}.dropzone p{font-size:11.5px;color:#969b93;margin:7px 0}.dropzone small{font-size:11px;color:#a0a49d}.upload-preview-title{display:flex;justify-content:space-between;align-items:center;padding:2px 18px 9px;font-size:12px}.upload-preview-title span{font-size:11.5px;color:#969a93}.upload-file-list{padding:0 17px}.upload-file-row{height:48px;display:flex;align-items:center;gap:9px;border-top:1px solid #eff0ed}.upload-actions{display:flex;justify-content:flex-end;gap:8px;padding:13px 17px 16px}.upload-actions .secondary,.upload-actions .primary{height:34px}.ocr-progress{margin:0 17px 15px;border:1px solid #e2e9df;border-radius:7px;padding:10px;color:#557655;display:flex;align-items:center;gap:7px;font-size:11.5px}.ocr-review{margin:0 17px 14px;padding:12px;background:#fafaf8;border:1px solid #eceee8;border-radius:8px}.ocr-review>strong{font-size:12px}.ocr-review>p{font-size:11.5px;color:#747c74;line-height:1.55;max-height:150px;overflow:auto}.ocr-review>span{font-size:11.5px;color:#55714d}.upload-aside{padding:16px 14px}.upload-aside>.guide-icon{height:32px;width:32px;border-radius:8px;display:grid;place-items:center;background:#edf3ec;color:#527656;margin-bottom:10px}.upload-aside h3{font:700 13px Inter;margin:0 0 14px}.guide-step{display:flex;gap:9px;margin:14px 0}.guide-step>b{height:21px;width:23px;display:grid;place-items:center;border-radius:6px;background:#f2f4ef;color:#658068;font-size:10.5px}.guide-step>div{display:grid;gap:4px}.guide-step strong{font-size:11.5px}.guide-step span{font-size:11px;color:#90958d;line-height:1.5}.privacy-note{display:flex;align-items:flex-start;gap:7px;border-radius:7px;background:#f5f8f3;padding:10px;margin-top:17px;color:#63806a}.privacy-note svg{flex:none}.privacy-note span{font-size:11px;line-height:1.5;color:#798477}.upload-aside h3.stored-title{margin-top:21px;margin-bottom:9px}.month-chips{display:flex;flex-wrap:wrap;gap:5px}.month-chips button{border:1px solid #e8ebe4;border-radius:20px;background:#fff;padding:5px 8px;color:#777e74;font-size:10.5px}.month-chips button.selected{background:#eef3ed;color:#355f43;border-color:#dfe9dc}.empty-state{min-height:190px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;color:#94a092}.empty-state strong{color:#556057;font-size:13px}.empty-state span{font-size:11.5px}.audit-row,.member-row{min-height:57px;display:flex;align-items:center;gap:10px;padding:8px 18px;border-top:1px solid #eff0ed}.audit-avatar{height:29px;width:29px;border-radius:50%;background:#eff3ed;color:#527157;display:grid;place-items:center;font-size:13px;font-weight:700}.audit-info,.member-info{flex:1;display:flex;flex-direction:column;gap:4px}.audit-info>strong,.member-info>strong{font-size:12px}.audit-info>strong span{font-weight:500;color:#68776c}.audit-info>span,.member-info>span{font-size:11.5px;color:#969a93}.audit-row time{font-size:11px;color:#90958d}.invite-row{display:flex;gap:7px;padding:0 17px 14px}.invite-row input{height:33px;min-width:0;flex:1;border:1px solid #e7eae4;border-radius:6px;padding:0 9px;font-size:11.5px;outline:none}.invite-row input:focus{border-color:#8da990}.invite-row .primary{height:33px;font-size:11.5px}.role-pill{border-radius:18px;padding:5px 8px;background:#eef3ed;color:#58725b;font-size:10.5px}.role-pill.tesorero{background:#f5f0e4;color:#92763d}.backup-section>.notice-blue{margin:0 17px 11px;background:#f5f8fa;border:1px solid #e7edf0;padding:10px;color:#68819a;font-size:11.5px;display:flex}.restore-button{height:31px;margin:0 17px 15px;border:1px solid #e7eae4;border-radius:6px;display:inline-flex;align-items:center;gap:6px;padding:0 10px;color:#616b60;font-size:11.5px;position:relative;overflow:hidden}.restore-button input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.page-footer{margin:auto auto 0;width:min(1220px,100%);padding:13px 36px 17px;display:flex;align-items:center;justify-content:space-between;color:#a1a49d;font-size:11px}.page-footer>span:last-child{display:flex;align-items:center;gap:6px}.toast{position:fixed;right:23px;bottom:21px;z-index:40;max-width:min(440px,calc(100vw - 32px));min-height:44px;padding:10px 12px;border:1px solid #dfe9de;border-radius:9px;background:#fff;color:#4c684e;box-shadow:var(--shadow);display:flex;align-items:center;gap:8px;font-size:12px;line-height:1.5}.toast button{border:0;background:transparent;margin-left:auto;color:#818a80}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;background:#1b221d6b;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:grid;place-items:center;padding:18px}.review-modal{width:min(650px,100%);max-height:calc(100vh - 40px);overflow:auto;border:1px solid #eceee8;border-radius:13px;background:#fff;box-shadow:0 20px 65px #12201833}.modal-top{padding:18px 19px 14px;display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid #eff0ec}.modal-top h2{font:700 16px Inter;letter-spacing:-.2px;margin:5px 0}.modal-top>div>span:last-child{font-size:11.5px;color:#858b83}.modal-amount{padding:12px 18px;background:#fafbf8;border-bottom:1px solid #eff0ec;display:flex;align-items:center;gap:9px}.modal-amount>span{font-size:11.5px;color:#858a82}.modal-amount>strong{font:700 17px Inter}.modal-amount>button{margin-left:auto;border:0;background:none;color:#537456;font-size:11.5px;display:flex;align-items:center;gap:5px}.candidate-heading{padding:14px 18px 8px;display:flex;justify-content:space-between;gap:12px}.candidate-heading h3{font:700 13px Inter;margin:0 0 4px}.candidate-heading p{font-size:11px;color:#939890;margin:0;line-height:1.4}.candidate-tag{align-self:flex-start;padding:5px 7px;border-radius:12px;display:flex;align-items:center;gap:4px;background:#eff4ee;color:#527255;font-size:10.5px}.candidate-list{max-height:240px;overflow:auto;margin:0 15px;border:1px solid #eef0eb;border-radius:8px}.candidate-row{min-height:52px;display:flex;align-items:center;gap:9px;padding:8px 10px;border-bottom:1px solid #eff0ec;cursor:pointer}.candidate-row:last-child{border-bottom:0}.candidate-row.picked{background:#f4f8f3}.candidate-row>input{width:14px;height:14px;accent-color:#2b6043;flex:none}.candidate-main{min-width:0;flex:1;display:flex;flex-direction:column;gap:4px}.candidate-main strong{font-size:11.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.candidate-main span{font-size:10.5px;color:#989c94}.candidate-right{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.candidate-right>strong{font-size:11.5px}.exact-pill,.near-pill,.used-tag,.equal-pill{border-radius:20px;font-size:10px;padding:3px 6px;white-space:nowrap}.exact-pill{background:#edf4ed;color:#4b7952}.near-pill{background:#f7f1e7;color:#987540}.used-tag{background:#faeded;color:#ac5d53}.no-candidates{height:123px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;color:#9a9f96}.no-candidates strong{font-size:12px;color:#646c63}.no-candidates span{max-width:340px;font-size:11px;line-height:1.5}.candidate-total{margin:10px 16px 2px;display:flex;align-items:center;gap:8px}.candidate-total>span:first-child{font-size:11.5px;color:#7f857d}.candidate-total>span:first-child b{font-weight:500}.candidate-total>strong{font:700 13px Inter}.candidate-total>strong.sum-match{color:#467451}.candidate-total>strong.sum-over{color:#b25144}.equal-pill{background:#edf4ed;color:#4c7854;display:flex;align-items:center;gap:3px}.comment-label{margin:11px 17px 0;display:flex;flex-wrap:wrap;gap:4px;font-size:11.5px;font-weight:650;color:#4b534b}.comment-label>span{font-size:10.5px;color:#92978f;font-weight:400;margin-left:auto}.comment-label textarea{height:58px;width:100%;resize:vertical;border:1px solid #e7eae4;border-radius:7px;padding:8px;font:11.5px Inter;outline:none}.comment-label textarea:focus{border-color:#8ca58b}.modal-actions{padding:13px 17px 16px;display:flex;justify-content:flex-end;gap:7px}.modal-actions .primary,.modal-actions .secondary{height:32px;font-size:11.5px}.loading-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;gap:9px;color:#738073;font-size:13px}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.auth-screen{min-height:100vh;background:#fff;display:grid;grid-template-columns:minmax(410px,.92fr) 1.08fr}.auth-panel{width:min(410px,calc(100% - 48px));margin:auto}.auth-brand{display:flex;align-items:center;gap:9px;font:800 13px Inter;letter-spacing:1.6px;color:#2e3e32}.brand-soft{color:#8c958b;font:600 11.5px Inter;letter-spacing:1px}.auth-copy{margin:62px 0 29px}.auth-copy .eyebrow{font-size:11.5px}.auth-copy h1{font:700 27px Inter;letter-spacing:-.6px;line-height:1.23;margin:11px 0;color:#27322a}.auth-copy p{font-size:13px;color:#8b918a;line-height:1.6;max-width:350px}.auth-form{display:grid;gap:15px}.auth-form>label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:600;color:#555d54}.auth-form>label input{height:41px;border:1px solid #e5e9e3;border-radius:7px;padding:0 11px;font-size:13px;outline:none}.auth-form>label input:focus{border-color:#8eaa92}.auth-form .primary{margin-top:4px}.auth-foot{display:flex;justify-content:center;align-items:center;gap:7px;font-size:11px;color:#9a9e97;margin-top:19px}.auth-art{background:#eaf0e9;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden}.auth-art:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 70% 24%,rgba(248,240,211,.75),transparent 29%),linear-gradient(140deg,#edf1e8,#dfe9df 57%,#cbdacd)}.art-glow{position:absolute;width:430px;height:430px;border:1px solid rgba(86,116,91,.11);border-radius:50%;box-shadow:0 0 0 40px #ffffff14,0 0 0 94px #ffffff17;top:14%;left:34%}.art-quote{position:relative;z-index:1;padding:48px 45px;max-width:500px}.art-symbol{font:750 58px Inter;color:#4b7457;letter-spacing:-5px;margin-bottom:50px}.art-quote .eyebrow{color:#6c806d;letter-spacing:1.7px}.art-quote h2{font:600 37px Inter;letter-spacing:-1.15px;line-height:1.2;color:#294335;margin:15px 0}.art-quote p{font-size:13px;line-height:1.7;color:#657665;max-width:320px}.art-bottom{display:block;margin-top:90px;color:#839186;font-size:10.5px;letter-spacing:1.8px}.mobile-menu,.mobile-close,.mobile-scrim{display:none}@media(min-width:1500px){.content,.page-footer{width:min(1320px,100%);padding-left:45px;padding-right:45px}.metric-card{min-height:137px;padding:17px}.metric-value{font-size:23px}.mini-row{min-height:57px}}@media(max-width:1120px){.sidebar{width:220px;padding-left:13px;padding-right:13px}.main-area{margin-left:220px}.content{padding:26px 24px}.topbar{padding:0 24px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.upload-layout{grid-template-columns:minmax(0,1fr) 230px}.metric-card{min-height:112px}}@media(max-width:760px){body{min-width:360px}.sidebar{width:258px;transform:translate(-105%);transition:transform .22s ease;box-shadow:var(--shadow)}.sidebar.sidebar-open{transform:translate(0)}.mobile-close{display:grid;margin-left:auto}.mobile-menu{display:grid}.mobile-scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:9;border:0;background:#161e184d}.main-area{margin-left:0}.topbar{height:56px;padding:0 15px}.content{padding:22px 14px}.page-head{align-items:flex-start;flex-direction:column;gap:12px;margin-bottom:17px}.page-head h1{font-size:22px}.head-actions{width:100%}.head-actions .period-select{flex:1}.metric-grid{gap:8px}.metric-card{min-height:108px;padding:12px}.metric-top{font-size:11.5px}.metric-icon{height:25px;width:25px}.metric-value{font-size:18px;margin:10px 0 7px}.metric-foot{font-size:10.5px}.section-header{padding:14px 12px}.review-summary{margin:0 11px;grid-template-columns:1fr 1.1fr 32px;gap:8px;padding:10px}.progress-copy>span{font-size:10px}.discrepancy{margin:9px 11px 0;padding:9px}.discrepancy>div:nth-child(2){min-width:0}.discrepancy strong{font-size:11.5px;line-height:1.4}.discrepancy span{font-size:10.5px;line-height:1.4}.discrepancy .text-button{font-size:10.5px}.mini-table-head,.mini-row{grid-template-columns:minmax(0,2fr) .88fr .82fr 24px;padding-left:11px;padding-right:11px;gap:6px}.mini-table-head span:nth-child(2),.mini-row .row-payee{display:none}.mini-table-head{font-size:9.5px}.mini-title strong{font-size:11px}.mini-title span{font-size:10.5px}.mini-row .amount{font-size:11.5px}.mini-row .status-pending,.mini-row .status-ok{font-size:0}.mini-row .status-pending>span{height:8px;width:8px}.mini-row .status-ok svg{height:16px;width:16px}.row-open{width:23px}.table-bottom{padding:0 11px;font-size:10.5px;gap:5px}.lower-grid{grid-template-columns:1fr;gap:9px}.filterbar{padding:7px 10px;gap:6px}.filterbar>.secondary{width:32px;padding:0;font-size:0}.filterbar>.secondary svg{width:15px}.rows-count{font-size:10.5px}.searchbox{min-width:100px}.searchbox kbd{display:none}.table-wrap table{min-width:630px}.content-card>.section-header{padding:14px 12px}.report-banner{padding:12px;gap:8px}.report-file-icon{height:32px;width:32px}.report-info h2{font-size:13px}.report-info>span:last-child{font-size:10.5px;line-height:1.5;display:block}.report-total>strong{font-size:14px}.report-total>span{font-size:10.5px}.recon-banner{gap:7px;padding:8px;font-size:10.5px}.recon-right{gap:5px}.recon-right span{font-size:9.5px}.tiny-track{width:36px}.upload-layout{grid-template-columns:1fr}.upload-aside{order:2}.dropzone{min-height:170px}.notice{padding:10px;gap:8px}.notice p{font-size:11px}.page-footer{padding:14px 14px 17px;font-size:10px;gap:8px}.upload-actions{flex-wrap:wrap}.upload-actions>*{flex:1}.modal-backdrop{padding:8px}.review-modal{max-height:calc(100vh - 16px)}.modal-top{padding:13px}.candidate-list{margin:0 10px;max-height:205px}.candidate-main strong{font-size:10.5px}.candidate-heading{padding:12px 12px 8px}.comment-label{margin-left:12px;margin-right:12px}.modal-actions{padding:11px 12px 13px;flex-wrap:wrap}.modal-actions>*{flex:1}.auth-screen{grid-template-columns:1fr}.auth-panel{padding:37px 0;min-height:100vh;display:flex;flex-direction:column;justify-content:center}.auth-art{display:none}.auth-copy{margin-top:48px}.invite-row{flex-wrap:wrap}.invite-row input{flex:1 1 44%}.rows-count{white-space:normal}}@media(max-width:420px){.metric-grid{grid-template-columns:1fr 1fr}.metric-value{font-size:16px}.metric-card{min-height:106px}.head-actions>.primary{font-size:11.5px;padding:0 8px}.period-select{min-width:0;padding:0 7px;gap:5px}.period-select select{font-size:11.5px}.candidate-right .exact-pill{font-size:9.5px}.modal-amount{gap:6px}.modal-amount>strong{font-size:14px}.modal-amount>button{font-size:10.5px}.report-total .text-button{font-size:0}.report-total .text-button svg{width:16px}}.report-editor{margin-top:14px;padding-bottom:4px}.report-form-grid{padding:0 16px 12px;display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:7px}.report-form-grid label{display:grid;gap:5px;color:#777e75;font-size:10.5px}.report-form-grid input,.expense-edit-row input{height:30px;min-width:0;border:1px solid #e8ebe5;border-radius:5px;padding:0 7px;color:#424a41;font-size:11.5px;outline:none}.expense-edit-row{display:grid;grid-template-columns:1.25fr 1fr .6fr .7fr .8fr .45fr 25px;gap:6px;padding:5px 15px;border-top:1px solid #eff0ec}.editor-total{display:flex;align-items:center;justify-content:space-between;padding:9px 16px;color:#7c847a;font-size:11.5px}.editor-total strong{color:#383f37;margin-left:5px}.report-editor>.upload-actions{border-top:1px solid #eff0ec}@media(max-width:760px){.report-form-grid,.expense-edit-row{grid-template-columns:1fr 1fr}.expense-edit-row input{height:32px}.expense-edit-row input:nth-child(3),.expense-edit-row input:nth-child(5){grid-column:auto}.editor-total{gap:6px;flex-wrap:wrap}}.review-checks{display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding:9px 16px 0}.review-checks>span{border:1px solid #ebece7;border-radius:15px;padding:5px 8px;display:inline-flex;align-items:center;gap:5px;font-size:10.5px}.review-checks .check-done{background:#eff5ee;border-color:#e2ecdf;color:#4e7654}.review-checks .check-open{background:#faf8f3;color:#927e5d}.ocr-page{border-top:1px solid #eceee8;margin-top:6px;padding-top:5px}.ocr-page summary{cursor:pointer;color:#557455;font-size:11px;font-weight:650}.ocr-page>p{max-height:160px;margin:6px 0 0;white-space:normal;line-height:1.55;color:#687168}.modal-actions{flex-wrap:wrap}.cashflow-card{margin-bottom:14px}.cashflow-chart{padding:0 16px 11px;overflow:hidden}.cashflow-chart svg{display:block;width:100%;height:auto;min-height:205px;overflow:visible}.chart-legend{display:flex;align-items:center;gap:14px;color:#777e76;font-size:11.5px}.chart-legend span{display:inline-flex;align-items:center;gap:6px}.chart-legend i{height:8px;width:8px;border-radius:2px;display:inline-block}.legend-income{background:#71947a}.legend-expense{background:#9b8bb0}.chart-gridline{stroke:#eef0ec;stroke-width:1}.chart-tick{fill:#a0a49c;font:10.5px Inter,sans-serif}.chart-month{fill:#7c837b;font:11.5px Inter,sans-serif}.chart-income{fill:#71947a}.chart-expense{fill:#9b8bb0}@media(max-width:760px){.cashflow-chart{padding:0 8px 9px}.cashflow-chart svg{min-height:160px}.chart-month{font-size:10.5px}.chart-legend{font-size:10.5px;gap:9px}}.report-list{display:grid;gap:7px;margin-bottom:12px}.report-chip{min-height:44px;padding:8px 12px;display:flex;align-items:center;gap:9px;background:#fff;border:1px solid #eaede8;border-radius:9px;color:#657065}.report-chip>strong{font-size:12px;color:#384238;flex:1}.report-chip>span{font:700 12px Inter;color:#303830}.report-chip .text-button{padding:3px 0}@media(max-width:760px){.report-chip{gap:6px;padding:8px}.report-chip>strong{font-size:10.5px}.report-chip>span{font-size:11.5px}}:root{--ink: #1a1f1c;--muted: #6b726c;--line: #e6e8e5;--cream: #f6f7f5;--shadow: 0 1px 2px rgba(16, 24, 20, .05), 0 8px 24px rgba(16, 24, 20, .06);--ring: 0 0 0 3px rgba(39, 91, 69, .16);background:var(--cream);color:var(--ink);font-feature-settings:"cv11","ss01"}.sidebar{width:252px;background:#fbfbfa;border-right:1px solid var(--line)}.main-area{margin-left:252px}.brand-name{letter-spacing:1.2px;font-size:14px}.building-card{height:auto;background:#fff;border-radius:10px;padding:10px}.nav-caption{font-size:11px;letter-spacing:.6px;color:#8a918b;text-transform:uppercase;font-weight:600}.nav-item{height:36px;font-size:13.5px;font-weight:500;color:#4a524c;border-radius:8px;transition:background .12s,color .12s}.nav-item:hover{background:#f0f2ef;color:var(--ink)}.nav-item.active{background:#fff;color:var(--green);font-weight:600;box-shadow:0 0 0 1px var(--line),0 1px 2px #1018140d}.topbar{background:#fbfbfad9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.breadcrumb{font-size:13px}.local-pill{background:#fff;font-size:12px}.content{padding-top:32px}.page-head h1{font-size:26px;font-weight:650;letter-spacing:-.5px;color:var(--ink)}.page-head p{font-size:14px;color:var(--muted)}.eyebrow{font-size:11px;letter-spacing:.7px}.metric-card,.section-card{border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 1px 2px #1018140a}.expense-metric:hover,.metric-card:hover{border-color:#cfd6d0;box-shadow:var(--shadow)}.metric-value{font-size:26px;font-weight:650;letter-spacing:-.6px;font-variant-numeric:tabular-nums}.section-header h2{font-size:15px;font-weight:650}.section-header p{font-size:12.5px;color:var(--muted)}.primary,.secondary{height:36px;border-radius:8px;font-size:13px;font-weight:550;transition:background .12s,border-color .12s,box-shadow .12s}.primary{box-shadow:0 1px 2px #1018141f}.secondary{border-color:#dcdfdb;box-shadow:0 1px 2px #1018140a}.primary:focus-visible,.secondary:focus-visible,.nav-item:focus-visible,.icon-button:focus-visible{outline:none;box-shadow:var(--ring)}.searchbox,.filter-select,.period-select,.invite-row input,.auth-form>label input,.comment-label textarea{border-color:#dcdfdb;border-radius:8px}.searchbox:focus-within,.filter-select:focus,.invite-row input:focus,.auth-form>label input:focus,.comment-label textarea:focus{border-color:var(--green);box-shadow:var(--ring);outline:none}.searchbox,.filter-select,.filterbar>.secondary{height:34px}.searchbox input,.filter-select{font-size:13px}.filterbar{background:#fafaf9;padding:10px 18px}thead th{font-size:11px;letter-spacing:.5px;text-transform:uppercase;color:#7b827c;background:#fafaf9;border-bottom:1px solid var(--line);padding:10px 12px}tbody td{font-size:13px;color:#3b423d;border-top:1px solid #eff0ee;padding:12px}tbody tr:hover{background:#fafaf9}.desc-cell strong,.expense-table-title strong{font-size:13px}.mini-table-head{font-size:11px}.status-pending,.status-ok{font-size:12px;font-weight:500}.exact-pill,.near-pill,.used-tag,.equal-pill,.role-pill{font-weight:550}.review-modal{border-radius:14px;box-shadow:0 24px 64px #10181438}.modal-backdrop{background:#10181473}.modal-top h2{font-size:18px;font-weight:650}.toast{border-radius:10px;box-shadow:var(--shadow);font-size:13px}.notice{border-radius:10px}.auth-copy h1{font-weight:650}.auth-form>label{font-size:13px}.auth-form>label input{height:44px;font-size:14px}.auth-copy p{font-size:14px}@media(max-width:1120px){.main-area{margin-left:220px}.sidebar{width:220px}}@media(max-width:760px){.main-area{margin-left:0}.sidebar{width:272px}.content{padding-top:22px}.metric-value{font-size:21px}.page-head h1{font-size:22px}}.auth-screen{display:grid;place-items:center;padding:24px;background:radial-gradient(900px 420px at 50% -10%,#e4efe8,transparent 70%),var(--cream)}.auth-panel{width:min(400px,100%);margin:0;padding:32px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}.auth-brand{font-size:13px}.auth-copy{margin:28px 0 22px}.auth-copy h1{font-size:22px;letter-spacing:-.4px;margin:0 0 6px}.auth-copy p{font-size:14px;margin:0}.auth-foot{font-size:12px;text-align:center}.auth-screen{grid-template-columns:1fr}.auth-form>label input{font-weight:400}.auth-form>label input::placeholder{color:#9aa09a;font-weight:400}.auth-foot{align-items:flex-start}
