:root{font-family:Inter,system-ui,-apple-system,sans-serif;color:#203b35;background:#f4f7f5;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer;border:0;border-radius:9px;background:#146b50;color:white;padding:12px 18px;font-weight:600}button:hover{filter:brightness(.94)}button:disabled{opacity:.6}input,select{border:1px solid #d6e1dc;border-radius:8px;padding:10px;background:white;color:#203b35;min-width:0}label{display:grid;gap:7px;font-size:14px}h1{font-size:30px;letter-spacing:-1px;margin:8px 0}h2{font-size:18px;margin:0 0 20px}p{color:#6b7d76;line-height:1.6}small{font-size:11px;letter-spacing:1.5px;color:#72877d}.brand{font-size:22px;font-weight:750;letter-spacing:-.7px}aside{position:fixed;width:245px;background:#103e32;color:white;height:100dvh;padding:34px 24px;display:flex;flex-direction:column}aside p{font-size:9px;color:#a0bdb1;letter-spacing:1.2px;margin:13px 0 42px}nav{display:grid;gap:10px}nav button{text-align:left;background:transparent;color:#b7d1c5}nav button.active{background:#2c5c4a;color:white}.asideBottom{margin-top:auto;display:grid;gap:8px}.asideBottom button{background:transparent;text-align:left;font-size:13px;color:#c3dbd0}main{margin-left:245px;padding:40px;max-width:1700px}header,.toolbar,.sectionHead{display:flex;justify-content:space-between;align-items:center;gap:20px}header{margin-bottom:30px}.toolbar{margin:20px 0}.toolbar label{font-size:11px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:24px 0}.card,article,.goal{background:white;padding:25px;border:1px solid #e2eae5;border-radius:15px}.card:first-child{background:#146b50;color:white}.card small{letter-spacing:0;font-size:13px;color:inherit}.card strong{display:block;font-size:27px;margin:14px 0 8px;letter-spacing:-1px}.card p{font-size:11px;margin:0;color:inherit;opacity:.7}.grid{display:grid;grid-template-columns:1.5fr 1fr;gap:22px;margin-bottom:22px}.sectionHead h2{margin:0}.sectionHead{margin-bottom:20px}.secondary{background:#edf4ef;color:#225d44;padding:9px 13px}.income{color:#16805b}.expense{color:#ce7556}.legend{font-size:12px;display:flex;gap:20px}.chart{height:210px;display:flex;gap:12px;align-items:stretch}.chartGroup{flex:1;display:flex;flex-direction:column;justify-content:flex-end;min-width:0}.barPair{height:175px;display:flex;align-items:flex-end;justify-content:center;gap:5px}.bar{width:25%;min-height:2px;border-radius:5px 5px 0 0;background:#21815e}.bar.out{background:#e3a087}.chartGroup small{font-size:10px;text-align:center;letter-spacing:0;margin-top:12px}.categoryRow{margin:20px 0;font-size:13px}.rowHead{display:flex;justify-content:space-between;gap:12px}.track{height:8px;border-radius:20px;background:#edf1ee;margin:12px 0;overflow:hidden}.fill{height:100%;background:#489575;border-radius:20px}.goalGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px}.goal h3{margin:5px 0 22px;font-size:18px}.goal strong{font-size:24px}.goal p{font-size:12px}.goal .actions{margin-top:20px}.actions{display:flex;gap:8px}.actions button{font-size:12px;padding:7px 10px;background:#eff4f0;color:#3d6554}.empty{padding:30px 8px;text-align:center;color:#7a8b82;font-size:14px}.entry{display:flex;justify-content:space-between;align-items:center;padding:18px 0;gap:15px;border-bottom:1px solid #edf1ee}.entry:last-child{border:0}.entry p{font-size:12px;margin:5px 0}.entry .amount{font-weight:700;white-space:nowrap}.note{font-size:13px;background:#e9f1eb;padding:15px;border-radius:9px}footer{margin-top:35px;text-align:center;font-size:11px;color:#8a9a90}.login{max-width:430px;margin:12vh auto;padding:30px}.login h1{font-size:38px;margin-top:40px}.login form{display:grid;gap:20px;margin-top:30px}dialog{border:0;border-radius:16px;width:460px;max-width:calc(100% - 30px);padding:28px;color:#203b35}dialog::backdrop{background:#0a281f80}#fields{display:grid;gap:17px}#editForm>button{width:100%}#formError{color:#ab4037;font-size:13px}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#203b35;color:white;padding:15px 25px;border-radius:9px;max-width:90%;z-index:5}[hidden]{display:none!important}:focus-visible{outline:3px solid #db9f38;outline-offset:3px}@media(max-width:1100px){.cards{grid-template-columns:repeat(2,1fr)}.grid{grid-template-columns:1fr}main{padding:25px}aside{width:210px}main{margin-left:210px}}@media(max-width:700px){aside{position:static;width:100%;height:auto;padding:20px}aside p{display:none}nav{display:flex;overflow:auto;gap:4px;margin-top:18px}nav button{white-space:nowrap;font-size:12px;padding:9px}.asideBottom{display:flex;justify-content:space-between;margin-top:12px}.brand{font-size:20px}main{margin:0;padding:20px}header{align-items:flex-start}header button{font-size:12px;padding:11px}h1{font-size:26px}.toolbar{align-items:flex-start;flex-wrap:wrap}.toolbar p{margin:0}.cards{gap:10px}.card{padding:17px}.card strong{font-size:22px}article{padding:20px}.entry{flex-wrap:wrap}.entry .actions{width:100%}.sectionHead select{max-width:150px;font-size:11px}.login{margin-top:5vh}}

.headerActions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}@media(max-width:700px){.headerActions{max-width:165px}.headerActions button{width:100%}}
