:root{font-family:Inter,ui-rounded,system-ui,sans-serif;color:#18221d;background:#f3f6f2;line-height:1.45;--green:#176b45;--ink:#18221d;--card:#fff;--line:#dbe3dc}*{box-sizing:border-box}body{margin:0;min-height:100vh}header{height:64px;background:#103f2d;color:#fff;display:flex;align-items:center;gap:16px;padding:0 max(18px,calc((100% - 760px)/2));box-shadow:0 2px 14px #0002}header .brand{color:#fff;font-weight:850;font-size:1.25rem;margin-right:auto;text-decoration:none}header form{margin:0}header .link{background:transparent;padding:4px;border:0;text-decoration:underline}main{max-width:760px;margin:auto;padding:28px 18px 60px}footer{text-align:center;color:#69746d;padding:28px}h1{font-size:clamp(1.8rem,7vw,2.5rem);margin:.25rem 0 1.4rem}h2{font-size:1.2rem}.card,.child-card,.empty{display:block;background:var(--card);border:1px solid var(--line);border-radius:18px;padding:18px;margin:14px 0;box-shadow:0 5px 24px #193d2b0a}.stack{display:grid;gap:14px}label{display:grid;gap:6px;font-weight:700;font-size:.92rem}input,select,button{font:inherit;border-radius:11px;border:1px solid #bcc9c0;padding:12px;width:100%;background:#fff}button{background:var(--green);color:#fff;border:0;font-weight:800;cursor:pointer}button:hover{filter:brightness(.94)}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.child-card{text-decoration:none;color:var(--ink);margin:0;display:grid;gap:6px}.child-card span{font-weight:800}.child-card strong,.balance{font-size:2rem;color:var(--green)}small,.muted{color:#68736c}.actions{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0}.actions a,a{color:var(--green);font-weight:750}.notice,.error{padding:12px 14px;border-radius:12px}.notice{background:#dff4e8;color:#145c3c}.error{background:#fee5e5;color:#8d2222}details summary{font-weight:800;cursor:pointer}.transactions{list-style:none;padding:0;background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden}.transactions li{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px;border-bottom:1px solid var(--line)}.transactions li:last-child{border:0}.transactions li div{display:grid}.positive{color:#137344;font-weight:800}.negative{color:#a12d2d;font-weight:800}.balance{font-weight:900;margin-bottom:18px}code{display:block;overflow-wrap:anywhere;padding:12px;background:#edf2ee;border-radius:10px}ul{padding-left:22px}@media(min-width:620px){main{padding-top:45px}.card{padding:24px}}
