:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,Arial,sans-serif;color:#17283c;background:#f3f6f8}*{box-sizing:border-box}body{margin:0}header{background:#13263d;color:white;padding:18px max(24px,calc((100vw - 1280px)/2));display:flex;justify-content:space-between;align-items:center;gap:18px}header strong{letter-spacing:.13em;font-size:15px}header span{display:block;color:#b7c7d8;font-size:12px;margin-top:4px}main{max-width:1280px;margin:auto;padding:28px 24px 70px}h1{font-size:29px;margin:0 0 6px}h2{font-size:18px;margin:0 0 16px}p{margin:0}.intro{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;gap:18px}.intro p,.hint{color:#607388;font-size:14px;line-height:1.5}.hint{margin-bottom:16px}.live{font-size:13px;color:#257457;white-space:nowrap}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px}.metric,.card{background:white;border:1px solid #e0e8ee;border-radius:14px;box-shadow:0 2px 9px #17283c07}.metric{padding:18px}.metric strong{display:block;font-size:23px}.metric span{color:#607388;font-size:12px}.grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}.card{padding:22px;min-width:0}.narrow{max-width:420px;margin:8vh auto}.editor{margin-bottom:19px}.editor form,form.editor{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.narrow form{display:grid;gap:12px}label{font-size:12px;color:#52677e;display:flex;flex-direction:column;gap:5px}input,select{font:inherit;color:#17283c;background:#fff;border:1px solid #cdd9e4;border-radius:8px;padding:10px;min-width:0;width:100%}input:focus,select:focus{outline:2px solid #81a7cd}button{font:inherit;background:#174970;color:white;border:0;border-radius:8px;padding:10px 15px;cursor:pointer;align-self:end}button:hover{background:#0d3455}button.secondary{background:#e8eff5;color:#174970;font-size:12px;padding:7px 10px}button.secondary:hover{background:#d7e4ee}.full{grid-column:1/-1}.item{padding:12px 0;border-top:1px solid #e8eef2;display:flex;justify-content:space-between;gap:12px;align-items:center}.item:first-child{border-top:0}.item strong{font-size:14px}.item small{display:block;color:#697d90;margin-top:4px;line-height:1.4}.item .right{text-align:right;white-space:nowrap}.item select{font-size:12px;padding:7px;max-width:150px}.empty{padding:12px 0;color:#7a8ca0;font-size:13px}.badge{font-size:11px;border-radius:20px;background:#ecf1f7;color:#36516c;padding:4px 8px}.candidate{display:flex;flex-direction:row;align-items:center;border-bottom:1px solid #e8eef2;padding:7px 0;font-size:13px}.candidate input{width:auto}#message{position:fixed;bottom:20px;right:20px;max-width:420px;background:#183c59;color:white;border-radius:9px;padding:12px 16px;box-shadow:0 8px 22px #0003;display:none}#message.error{background:#963c3c}@media(max-width:850px){.grid{grid-template-columns:1fr}.metrics{grid-template-columns:repeat(2,1fr)}header{padding:17px 22px}}@media(max-width:480px){main{padding:20px 14px}.metrics{gap:8px}.card{padding:17px}.editor form,form.editor{grid-template-columns:1fr}.intro{align-items:flex-start;flex-direction:column}}
.pay-expense{display:flex;gap:5px;margin-top:6px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.pay-expense input{max-width:160px;font-size:12px;padding:7px}.pay-expense button{font-size:12px;padding:8px;white-space:nowrap}
.report-link{display:inline-block;font-size:12px;color:#174970;margin-top:9px;text-decoration:underline}#audit-panel{margin-top:18px}
@media(max-width:480px){.item{align-items:flex-start;flex-wrap:wrap}.item .right{white-space:normal}.pay-expense{flex-wrap:wrap}}
.personnel-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto;gap:8px;align-items:end;margin-bottom:8px}.personnel-row button{height:40px}#personnel-rows:before{content:attr(data-label);display:block;color:#52677e;font-size:12px;margin-bottom:6px}@media(max-width:480px){.personnel-row{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.personnel-row button{grid-column:1/-1;justify-self:start}}
[hidden]{display:none!important}
button.danger{background:#963c3c}button.danger:hover{background:#782d2d}
.adjustment-heading{display:flex;flex-direction:column;gap:3px;margin-top:4px;color:#17283c}.adjustment-heading span{font-size:12px;color:#697d90}.adjustment-row{border:1px solid #e0e8ee;border-radius:10px;padding:10px;margin-bottom:9px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;align-items:end}.adjustment-row label{min-width:0}.adjustment-row button{height:40px}.adjustment-amount[hidden],.adjustment-rate[hidden],.adjustment-basis-wrap[hidden]{display:none!important}@media(max-width:850px){.adjustment-row{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.adjustment-row{grid-template-columns:1fr}.adjustment-row button{justify-self:start}}
.account-ledger-card{margin-bottom:18px}.ledger-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.ledger-heading>div:last-child{min-width:260px}.ledger-heading .hint{margin-bottom:0}.account-manage{display:grid;grid-template-columns:minmax(150px,2fr) minmax(90px,1fr) auto auto;gap:6px;align-items:center;margin-top:8px}.account-manage input,.account-manage select{padding:7px;font-size:12px}.account-manage label{flex-direction:row;align-items:center;white-space:nowrap}.account-manage label input{width:auto}.money-in{color:#257457}.money-out{color:#963c3c}@media(max-width:650px){.ledger-heading{flex-direction:column}.ledger-heading>div:last-child{width:100%;min-width:0}.account-manage{grid-template-columns:1fr 1fr}.account-item{align-items:flex-start;flex-wrap:wrap}}
.project-summary-card{margin-bottom:18px}.summary-heading{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.summary-heading .hint{margin-bottom:0;max-width:850px}.summary-heading .report-link{white-space:nowrap}.table-scroll{overflow-x:auto;margin-top:16px}.summary-table{border-collapse:collapse;width:100%;min-width:1050px;font-size:12px}.summary-table th,.summary-table td{text-align:right;padding:10px;border-bottom:1px solid #e8eef2;white-space:nowrap}.summary-table th{color:#52677e;font-weight:600;background:#f7f9fb}.summary-table th:first-child,.summary-table td:first-child{text-align:left;position:sticky;left:0;background:white}.summary-table thead th:first-child{background:#f7f9fb}.summary-table small{display:block;color:#697d90;margin-top:3px}@media(max-width:650px){.summary-heading{flex-direction:column}}
.master-item{align-items:flex-start}.master-item>div:first-child{min-width:0;flex:1}.master-manage{display:grid;grid-template-columns:repeat(3,minmax(90px,1fr));gap:6px;margin-top:9px;align-items:end}.master-manage input,.master-manage select{padding:7px;font-size:12px}.master-manage button{font-size:12px}.set-manage{grid-template-columns:repeat(3,minmax(90px,1fr)) auto}button:disabled,input:disabled{opacity:.55;cursor:not-allowed}@media(max-width:650px){.master-manage,.set-manage{grid-template-columns:1fr 1fr}.master-item{flex-wrap:wrap}.master-item .right{width:100%;text-align:left}}
.user-grid{align-items:start}.user-item>div{width:100%}.user-manage{display:grid;grid-template-columns:minmax(120px,1fr) auto auto minmax(210px,2fr);gap:7px;align-items:center;margin-top:8px}.user-manage input,.user-manage select{padding:7px;font-size:12px}.user-manage select[multiple]{min-height:78px;grid-column:1/-1}.user-manage>input{grid-column:1/-2}.user-manage label{flex-direction:row;align-items:center;white-space:nowrap}.user-manage label input{width:auto}#password-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media(max-width:650px){.user-manage{grid-template-columns:1fr 1fr}.user-manage>input{grid-column:1/-1}#password-form{grid-template-columns:1fr}}
.approval-manage{display:grid;grid-template-columns:repeat(2,minmax(120px,1fr));gap:6px;margin-top:9px;padding:9px;border:1px solid #e0e8ee;border-radius:9px}.approval-manage input{padding:7px;font-size:12px}.approval-manage button{grid-column:1/-1;justify-self:start}.payment-row{display:grid;grid-template-columns:minmax(0,2fr) minmax(110px,1fr) auto;gap:7px;align-items:end;margin-bottom:8px}.payment-row button{height:40px}@media(max-width:650px){.approval-manage,.payment-row{grid-template-columns:1fr}.approval-manage button,.payment-row button{grid-column:auto;justify-self:start}}
.filter-bar{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr)) auto auto;gap:9px;align-items:end;margin-top:18px}.tool-row{display:flex;gap:9px;align-items:center;margin-bottom:14px}.tool-row input{max-width:220px}.admin-tools{align-items:start}.admin-tools #backups{margin-top:14px}@media(max-width:850px){.filter-bar{grid-template-columns:1fr 1fr}.filter-bar button{width:100%}}@media(max-width:480px){.filter-bar{grid-template-columns:1fr}.tool-row{flex-direction:column;align-items:stretch}.tool-row input{max-width:none}}
.organization-manage{display:grid;grid-template-columns:2fr 1fr 1fr auto auto;gap:6px;align-items:center;margin-top:9px}.organization-manage input,.organization-manage select{padding:7px;font-size:12px}.organization-manage label{flex-direction:row;align-items:center}.organization-manage label input{width:auto}@media(max-width:650px){.organization-manage{grid-template-columns:1fr 1fr}.organization-manage [data-org-name]{grid-column:1/-1}}
