:root{color:#172421;background:#f3f7f6;font-family:Inter,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0}.shell{grid-template-columns:230px 1fr;min-height:100vh;display:grid}aside{color:#c7d8d4;background:#113f38;padding:24px 16px}.brand{align-items:center;gap:11px;margin:0 7px 30px;display:flex}.brand>b{color:#113f38;background:#d9f56f;border-radius:10px;place-items:center;width:38px;height:38px;display:grid}.brand>span{color:#fff;font-weight:750}.brand small{color:#a8c5bf;font-size:11px;font-weight:400;display:block}nav{gap:5px;display:grid}button{font:inherit;cursor:pointer}nav button{color:inherit;text-align:left;background:0 0;border:0;border-radius:9px;align-items:center;gap:10px;padding:11px;display:flex}nav svg{width:18px}nav .active,nav button:hover{color:#fff;background:#24574f}.work{min-width:0;padding:28px 32px}header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px;display:flex}h1{margin:3px 0;font-size:28px}header small{color:#6d7d79}.actions{gap:8px;display:flex}.actions label{background:#fff;border:1px solid #d7e0de;border-radius:9px;align-items:center;gap:7px;width:230px;padding:0 11px;display:flex}.actions label svg,.actions button svg{width:17px}.actions input{border:0;outline:0;width:100%}.actions button{color:#165d50;background:#fff;border:1px solid #cfdbd8;border-radius:9px;align-items:center;gap:6px;padding:9px 12px;display:flex}.actions .primary{color:#fff;background:#165d50;border-color:#165d50}.cards{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:13px;margin-bottom:17px;display:grid}.cards article{background:#fff;border:1px solid #dce4e2;border-radius:13px;padding:18px 20px}.cards span{color:#687975;font-size:13px;display:block}.cards b{margin-top:8px;font-size:25px;display:block}.table{background:#fff;border:1px solid #dce4e2;border-radius:14px;overflow:hidden}.title{justify-content:space-between;align-items:center;padding:16px 19px;display:flex}.title h2{margin:0;font-size:17px}.title p{color:#74847f;margin:5px 0 0;font-size:13px}.interest{color:#8b630f;background:#fff4d9;border-radius:8px;padding:7px 10px;font-size:12px}.scroll{overflow:auto}table{border-collapse:collapse;width:100%;min-width:1020px}th{color:#65746f;text-align:left;background:#f7f9f8;padding:11px 13px;font-size:12px}td{white-space:nowrap;border-top:1px solid #edf0ef;padding:10px 13px;font-size:14px}.no{color:#165d50;background:#edf4f2;border-radius:8px;place-items:center;width:34px;height:30px;display:grid}.debt{color:#b5443e;font-weight:700}.status{border-radius:99px;padding:5px 8px;font-size:12px;font-weight:650}.status.paid{color:#167047;background:#e3f5e9}.status.partial{color:#8d630b;background:#fff4d9}.status.open{color:#aa403a;background:#fce8e6}.pay{color:#165d50;background:#fff;border:1px solid #bfd2cd;border-radius:7px;padding:6px 9px}.empty{color:#69807a;place-items:center;gap:7px;padding:55px;display:grid}.empty svg{width:30px}.empty span{font-size:13px}@media (width<=900px){.shell{grid-template-columns:72px 1fr}aside{padding:20px 10px}.brand span,nav button:not(.active){font-size:0}.brand{margin-left:7px}.work{padding:20px 16px}header{align-items:flex-start}.actions{flex-wrap:wrap;justify-content:flex-end}.cards{grid-template-columns:1fr}}@media (width<=640px){.shell{display:block}aside{display:none}.work{padding:16px 10px}header{display:block}.actions{margin-top:14px}.actions label{width:100%;height:40px}.cards{grid-template-columns:1fr 1fr}.cards article:first-child{grid-column:1/-1}}.panel{background:#fff;border:1px solid #dce4e2;border-radius:14px;margin-bottom:17px;padding:16px 19px}.panel .title{padding:0 0 12px}.form-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.form-grid label{color:#65746f;flex-direction:column;gap:5px;font-size:12px;display:flex}.form-grid label.wide{grid-column:1/-1}.form-grid input,.form-grid select{font:inherit;border:1px solid #d7e0de;border-radius:8px;padding:8px 10px}.panel-actions{justify-content:flex-end;gap:8px;margin-top:14px;display:flex}.panel-actions button{color:#165d50;background:#fff;border:1px solid #cfdbd8;border-radius:9px;padding:8px 14px}.panel-actions .primary{color:#fff;background:#165d50;border-color:#165d50}.import-summary{background:#fffaf0;border:1px solid #f3d9a8;border-radius:14px;margin-bottom:17px;padding:16px 19px}.import-summary .title{padding:0 0 8px}.import-summary p{color:#8b630f;margin:0 0 10px;font-size:13px}.import-summary .issue{border-top:1px solid #f3e6c8;padding:5px 0;font-size:13px}.import-summary .issue.error{color:#aa403a}.import-summary .issue.warning{color:#8b630f}.row-actions{gap:6px;display:flex}.row-actions button{color:#165d50;background:#fff;border:1px solid #bfd2cd;border-radius:7px;align-items:center;gap:5px;padding:5px 8px;font-size:12px;display:flex}.row-actions button svg{width:13px}tr.inactive{opacity:.55}.title-actions{align-items:center;gap:8px;display:flex}.title-actions button{color:#165d50;background:#fff;border:1px solid #cfdbd8;border-radius:9px;align-items:center;gap:6px;padding:8px 12px;font-size:13px;display:flex}.title-actions button svg{width:15px}.title-actions .primary{color:#fff;background:#165d50;border-color:#165d50}.bulk-percent{width:80px;font:inherit;border:1px solid #d7e0de;border-radius:8px;padding:8px 10px}.call{color:#165d50;align-items:center;gap:5px;text-decoration:none;display:inline-flex}.call svg{width:14px}.chart-card .chart-wrap{padding:6px 19px 0;position:relative}.chart-svg{width:100%;height:150px;display:block}.chart-svg .bar.income{fill:#2a78d6}.chart-svg .bar.expense{fill:#eb6834}.chart-svg .bar-label{fill:#74847f;text-anchor:middle;font-size:7px}.chart-svg .baseline{stroke:#dce4e2;stroke-width:1px}.chart-legend{color:#65746f;gap:14px;font-size:12px;display:flex}.chart-legend span{align-items:center;gap:6px;display:flex}.chart-legend .swatch{border-radius:3px;width:10px;height:10px;display:inline-block}.swatch.income{background:#2a78d6}.swatch.expense{background:#eb6834}.chart-tooltip{background:#fff;border:1px solid #dce4e2;border-radius:9px;gap:2px;padding:8px 10px;font-size:12px;display:grid;position:absolute;top:6px;right:19px;box-shadow:0 4px 14px #0000000f}.chart-tooltip b{font-size:12px}.login{background:#113f38;place-items:center;min-height:100vh;display:grid}.login-card{background:#fff;border-radius:16px;gap:16px;width:280px;padding:28px 26px;display:grid;box-shadow:0 12px 40px #0000002e}.login-card .brand{color:#113f38;margin:0 0 4px}.login-card .brand>span{color:#113f38}.login-card label{border:1px solid #d7e0de;border-radius:9px;align-items:center;gap:9px;height:44px;padding:0 12px;display:flex}.login-card label svg{color:#65746f;width:17px}.login-card input{width:100%;font:inherit;border:0;outline:0}.login-card button{color:#fff;background:#165d50;border:0;border-radius:9px;padding:11px;font-weight:600}.login-card button:disabled{opacity:.5;cursor:default}.login-error{color:#aa403a;margin:0;font-size:13px}.link-name{font:inherit;color:inherit;cursor:pointer;text-underline-offset:2px;background:0 0;border:0;padding:0;-webkit-text-decoration:underline #0000;text-decoration:underline #0000}.link-name:hover{color:#165d50;text-decoration-color:#165d50}.actions input.month-picker{color:#165d50;width:auto;font:inherit;background:#fff;border:1px solid #cfdbd8;border-radius:9px;padding:8px 10px}.subtabs{gap:6px;margin-bottom:13px;display:flex}.subtabs button{color:#65746f;background:#fff;border:1px solid #d7e0de;border-radius:9px;padding:8px 14px;font-size:13px}.subtabs button.active{color:#fff;background:#165d50;border-color:#165d50}.panel-hint{color:#74847f;margin:0 0 10px;font-size:13px}.unit-checklist{border:1px solid #edf0ef;border-radius:9px;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:6px 12px;max-height:180px;margin-bottom:6px;padding:10px;display:grid;overflow:auto}.unit-checklist label{align-items:center;gap:7px;font-size:13px;display:flex}.modal-overlay{z-index:50;background:#113f3873;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:16px;width:100%;max-width:520px;max-height:85vh;padding:26px;position:relative;overflow:auto}.modal-close{color:#65746f;background:#f3f7f6;border:0;border-radius:8px;padding:6px;position:absolute;top:14px;right:14px}.modal-close svg{width:16px}.modal-header{align-items:center;gap:14px;margin-bottom:18px;padding-right:34px;display:flex}.modal-download{color:#165d50;white-space:nowrap;background:#fff;border:1px solid #cfdbd8;border-radius:9px;align-items:center;gap:6px;margin-left:auto;padding:8px 12px;font-size:13px;display:flex}.modal-download svg{width:15px}.modal-header h2{margin:0;font-size:19px}.modal-header small{color:#74847f}.modal-grid{grid-template-columns:1fr 1fr;gap:14px 20px;margin-bottom:20px;display:grid}.modal-grid span{color:#687975;margin-bottom:4px;font-size:12px;display:block}.modal h3{margin:0 0 8px;font-size:14px}.modal-scroll{max-height:220px}.modal-empty{color:#74847f;font-size:13px}
