body{margin:0;font:16px/1.45 system-ui,-apple-system,sans-serif;background:#f4f1ea;color:#1a1714}
a{color:#0b5c3a}
.muted{color:#6b645c;margin:0}
.err{color:#a40000}
.login{min-height:100vh;display:grid;place-items:center}
.login form{width:min(380px,92vw);background:#fff;border:1px solid #d9d2c6;padding:24px;display:grid;gap:12px}
h1{margin:0;font-size:1.6rem}
label{display:grid;gap:6px;font-weight:600}
input,button{font:inherit;padding:10px}
button{background:#0b5c3a;color:#fff;border:0;cursor:pointer}
header,nav,p,table{max-width:1100px;margin:0 auto;padding:12px 16px}
header{display:flex;justify-content:space-between;gap:16px;align-items:flex-end;flex-wrap:wrap;padding-top:28px}
.total strong{display:block;font-size:2rem}
nav{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
nav a{padding:8px 12px;background:#fff;border:1px solid #d9d2c6;text-decoration:none;color:inherit}
nav a.on{background:#0b5c3a;color:#fff;border-color:#0b5c3a}
nav form{margin-left:auto}
nav.views{padding-top:0}
nav.views a{border-radius:999px}
.kpis{display:grid;grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:8px;max-width:1100px;margin:0 auto;padding:8px 16px}
.kpi{background:#fff;border:1px solid #d9d2c6;padding:12px;text-decoration:none;color:inherit;display:block}
.kpi:hover{border-color:#0b5c3a}
.kpi.on{border-color:#0b5c3a;background:#e8f4ee}
.kpi.now strong{color:#0b5c3a}
.kpi .muted{font-size:.85rem}
.kpi strong{display:block;font-size:1.15rem;margin-top:4px;font-variant-numeric:tabular-nums}
.chart-wrap{max-width:1100px;margin:0 auto 8px;padding:0 16px}
.chart{background:#fff;border:1px solid #d9d2c6;padding:6px}
.chart svg{width:100%;height:auto;display:block;overflow:visible;font-size:6px}
.chart svg text{font-size:6px;font-family:system-ui,sans-serif}
.banner{background:#fff3d6;border:1px solid #e6c56a;max-width:1100px}
.bars{width:calc(100% - 32px);border-collapse:collapse;background:#fff}
.bars th{font-weight:600;width:38%}
.bars .bar{width:46%}
.bars .bar span{display:block;height:14px;background:#0b5c3a;min-width:0}
table{width:calc(100% - 32px);border-collapse:collapse;background:#fff}
th,td{text-align:left;padding:10px;border-bottom:1px solid #ece7de;vertical-align:top}
.pic img{width:72px;height:72px;object-fit:cover;background:#eee}
.money.up{color:#0b5c3a}
.money.down{color:#a40000}
code{font-size:.9em}
@media(max-width:700px){
  .pic{display:none}
  th:nth-child(3),td:nth-child(3){display:none}
}
