:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#193f37;background:#f4f5ef;font-size:16px;font-synthesis:none}*{box-sizing:border-box}body{margin:0}header{max-width:1140px;margin:auto;padding:26px 26px;display:flex;justify-content:space-between;align-items:center;gap:16px}.brand{font-size:29px;font-weight:800;text-decoration:none;color:#153c35;letter-spacing:-1.2px}.brand span{font-weight:400}.brand small{display:block;font-size:9px;letter-spacing:2px;margin-top:5px;color:#62746a}#account{display:flex;align-items:center;gap:15px;font-size:14px}main{max-width:1100px;margin:auto;padding:0 24px 60px}footer{text-align:center;padding:20px;color:#758277;font-size:13px}nav{display:flex;gap:8px;border-bottom:1px solid #dce3d8;padding:10px 0 16px;overflow:auto}button{border:0;background:#153c35;color:white;padding:13px 20px;border-radius:10px;cursor:pointer;font:inherit;font-weight:650;min-height:44px}button:hover{filter:brightness(1.15)}button:disabled{opacity:.55;cursor:wait}button.secondary{background:#ecf0e7;color:#244f3b;border:1px solid #d3ddcc}button.text-button{background:transparent;color:#9c453d;padding:10px 0;font-size:13px}nav button{background:transparent;color:#567061;white-space:nowrap;font-size:14px}nav button.active{background:#dfe8d9;color:#153c35}h1{font-size:clamp(30px,5vw,45px);line-height:1.12;letter-spacing:-1.5px;margin:8px 0 13px}h2{font-size:23px;letter-spacing:-.6px;margin:0 0 8px}h3{font-size:19px;margin:9px 0 5px;letter-spacing:-.3px}p{color:#68796e;line-height:1.6;margin:8px 0 16px}.eyebrow{font-size:10px;font-weight:750;letter-spacing:2px;color:#6a806e}.intro{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:36px 0 20px}.intro label{min-width:180px}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:0 0 24px}.metrics article{background:white;border:1px solid #e0e5dc;padding:24px;border-radius:16px}.metrics article:first-child{background:#153c35;color:#f5f8ed}.metrics span{display:block;font-size:13px;opacity:.8;margin-bottom:15px}.metrics strong{font-size:clamp(24px,3vw,33px);font-weight:650;letter-spacing:-1px}.panel{background:white;padding:28px;border:1px solid #e0e5dc;border-radius:18px;margin-bottom:24px;box-shadow:0 3px 10px #153c3503}label{display:block;font-size:13px;font-weight:600;color:#52685b}input,select,textarea{display:block;width:100%;font:inherit;font-weight:400;font-size:16px;border:1px solid #ced8c9;border-radius:9px;background:#fff;color:#1a3d31;padding:12px;min-height:46px;margin-top:7px}input:focus,select:focus,textarea:focus{outline:2px solid #7a9e70;outline-offset:2px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.wide{grid-column:1/-1}.trackers{display:grid;gap:12px}.tracker{border:1px solid #e1e7dc;border-radius:12px;padding:20px}.tracker-title{display:flex;align-items:center;justify-content:space-between;gap:16px}.tracker-title p{font-size:13px;margin:5px 0}.pill{font-size:10px;letter-spacing:.6px;background:#eef3e8;border-radius:5px;color:#5c7150;padding:4px 7px}.money-input{width:155px;flex-shrink:0}.money-input input{text-align:right;font-weight:650;background:#fafcf7}.tracker details{margin-top:12px}summary{font-size:12px;color:#71806a;cursor:pointer;padding:6px 0}details .fields{margin-top:12px}.savebar{position:sticky;bottom:8px;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px;background:#f5f8f1;border:1px solid #dbe4d5;border-radius:12px;margin:18px 0;z-index:2}#save-status{font-size:12px;color:#5c725b}.hint{font-size:12px}.chart{margin:24px 0;display:grid;gap:18px}.chart-row>div{display:flex;justify-content:space-between;gap:10px;font-size:13px}.chart-row span{color:#74806c}meter{display:block;width:100%;height:16px;margin-top:7px}meter::-webkit-meter-bar{background:#edf1e7;border:0;border-radius:9px}meter::-webkit-meter-optimum-value{background:#83a765;border-radius:9px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px}td,th{padding:14px 10px;text-align:right;border-bottom:1px solid #e8ece4;white-space:nowrap}td:first-child,th:first-child{text-align:left}th{font-size:11px;color:#6e7d68}.editor{border-bottom:1px solid #e1e8da;padding:20px 0}.list-row{display:flex;align-items:center;gap:10px;margin-bottom:10px}.list-row input{margin:0}.auth{max-width:470px;margin:55px auto}.auth label{margin:20px 0}.auth button{width:100%;margin-top:8px}.notice:not(:empty),.error:not(:empty){padding:14px 18px;border-radius:10px;margin:12px 0;background:#e5f0db;color:#305129}.error:not(:empty){background:#fbe7e2;color:#a4382c}button:focus-visible{outline:3px solid #a6bd80;outline-offset:2px}@media(max-width:680px){header{padding:22px 18px}.brand{font-size:25px}.brand small{font-size:7px}#account span{display:none}main{padding:0 14px 40px}.intro{align-items:flex-start;flex-direction:column;padding-top:25px}.intro label{width:100%}.metrics{grid-template-columns:1fr;gap:9px}.metrics article{padding:18px;display:flex;align-items:center;justify-content:space-between}.metrics span{margin:0}.metrics strong{font-size:25px}.panel{padding:19px 15px}.fields{grid-template-columns:1fr}.wide{grid-column:auto}.tracker{padding:15px}.tracker-title{align-items:flex-start}.money-input{width:125px}.tracker-title h3{font-size:17px}.chart-row>div{flex-wrap:wrap}.savebar{padding:11px}nav button{padding:11px 13px}.auth{margin-top:28px}}@media(prefers-reduced-motion:no-preference){button{transition:background .15s}}
#pwa-status{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:12px 0;font-size:13px}#pwa-status>span{flex:1;min-width:160px}#pwa-status>span:empty{display:none}#pwa-status button{font-size:12px}input:disabled,select:disabled,textarea:disabled{opacity:.8;background:#f0f2ed;color:#52685b}
