:root{color-scheme:light;--ink:#17342f;--green:#116b5a;--cream:#f7f5ef;--line:#dce5e1;--red:#a34444}*{box-sizing:border-box}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.45 Segoe UI,Arial,sans-serif}header{background:#fff;border-bottom:1px solid var(--line);padding:14px max(18px,calc((100% - 1100px)/2));display:flex;align-items:center;justify-content:space-between;gap:12px}.brand{display:flex;align-items:center;gap:12px}.brand>div{display:flex;flex-direction:column}.brand small,.heading small,.hint{color:#657d76}.mark{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--green);color:white;font-size:22px;font-weight:700}main{max-width:1100px;margin:auto;padding:24px 18px}.card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px}.login{max-width:420px;margin:8vh auto}.login h1{margin-top:0}form{display:grid;gap:14px}label{display:grid;gap:5px;font-weight:600}input,select{width:100%;border:1px solid #b9c9c3;border-radius:10px;padding:11px;font:inherit;background:white;color:var(--ink)}button{border:0;border-radius:10px;background:var(--green);color:white;padding:11px 17px;font:inherit;font-weight:700;cursor:pointer}header button{background:#e7f0ec;color:var(--ink)}.error{color:var(--red);min-height:1.5em}.heading{display:flex;justify-content:space-between;align-items:end;gap:18px;margin-bottom:18px}.heading h1{margin:2px 0}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:18px 0}.metrics article{display:grid;gap:8px}.metrics strong{font-size:28px}.metrics small{color:#657d76}.metrics .balance{background:var(--ink);color:white}.metrics .balance small{color:#bed5cc}.two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.panels{margin-bottom:16px}.card h2{margin:0 0 12px;font-size:20px}.catRow,.forecastRow,.memberRow{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 0;border-bottom:1px solid var(--line)}.catRow:last-child,.forecastRow:last-child,.memberRow:last-child{border:0}.memberRow button{background:#e7f0ec;color:var(--ink);font-size:14px}.tableWrap{overflow:auto}table{border-collapse:collapse;width:100%;min-width:640px}th,td{text-align:left;padding:11px 8px;border-bottom:1px solid var(--line)}th{font-size:12px;text-transform:uppercase;color:#657d76}td:last-child{text-align:right;white-space:nowrap}.expense{color:var(--red)}.income{color:var(--green)}#adminArea{margin-bottom:18px}#adminArea>label{max-width:420px}details{margin-top:18px;border-top:1px solid var(--line);padding-top:12px}summary{cursor:pointer;font-weight:700}details form{margin-top:14px}.credentials{background:#edf6f1;border-radius:10px;padding:14px;white-space:pre-wrap;overflow-wrap:anywhere}.hint{margin:0 0 8px}@media(max-width:690px){main{padding:14px}.heading{align-items:stretch;flex-direction:column}.metrics,.two{grid-template-columns:1fr}.metrics strong{font-size:25px}.card{padding:16px}.memberRow{align-items:flex-start;flex-direction:column}}
