:root{--bg:#f5f5f0;--ink:#222c28;--muted:#7c827b;--green:#24634c;--line:#e8eae2;--lime:#dcf493}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:14px}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.6;cursor:wait}a{color:inherit;text-decoration:none}.topbar{max-width:1280px;margin:auto;padding:30px 40px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:10px;font-size:20px;letter-spacing:2px;font-weight:800}.brand-icon{display:grid;place-items:center;width:38px;height:38px;background:var(--ink);color:var(--lime);border-radius:12px;font-size:14px;letter-spacing:-1px}.brand-tag{font-size:9px;font-weight:400;letter-spacing:1.7px;margin-left:16px;color:var(--muted)}.pill{font-size:11px;background:#e9ece2;border-radius:30px;padding:10px 14px;white-space:nowrap}.card{background:#fff;border:1px solid var(--line);border-radius:24px}.eyebrow{font-size:10px;letter-spacing:1.7px;font-weight:700;color:var(--muted)}h1{font-size:48px;line-height:1.13;letter-spacing:-2.5px;font-weight:500;margin:20px 0 16px}h2{font-size:20px;letter-spacing:-.6px;margin:0}h3{font-size:14px;margin:0 0 7px}p{color:var(--muted);line-height:1.7;margin:8px 0}label{display:block;font-size:12px;font-weight:600;margin:0 0 10px}input{border:1px solid #dfe3d9;background:#fafbf7;border-radius:12px;padding:15px;width:100%;color:var(--ink);outline:none}input:focus{border-color:var(--green);box-shadow:0 0 0 3px #24634c13}input::placeholder{color:#92988f}.primary{border:0;background:var(--ink);color:white;border-radius:12px;padding:15px 20px;font-weight:600}.primary:hover{background:var(--green)}.quiet{background:transparent;border:1px solid #d8ddd1;border-radius:10px;padding:10px 15px}.login-grid{max-width:1120px;margin:55px auto 70px;padding:0 30px;display:grid;grid-template-columns:1.35fr 1fr;gap:18px}.welcome{padding:45px;background:#e8eddf;overflow:hidden}.welcome p{max-width:330px;color:#697164}.art{display:flex;gap:12px;margin-top:65px;align-items:center;transform:rotate(-7deg)}.art-tile{border-radius:20px;width:135px;height:135px;background:#f5f7ed;display:flex;flex-direction:column;justify-content:center;padding:22px;font-size:44px;box-shadow:0 8px 20px #29322208}.art-tile span{font-size:11px;margin-top:12px}.art-tile.dark{background:var(--ink);color:var(--lime);transform:translateY(-15px)}.login-card{padding:40px;display:flex;flex-direction:column;justify-content:center}.lock{display:grid;place-items:center;background:var(--lime);border-radius:16px;width:48px;height:48px;font-size:24px;margin-bottom:28px}.login-card h2{font-size:28px;margin:12px 0 4px}.login-card form{margin-top:27px}.login-card button{width:100%;display:flex;justify-content:space-between;margin-top:15px}.login-note{font-size:11px;color:var(--muted);padding-top:22px;border-top:1px solid var(--line);margin-top:14px}.login-note span{margin-right:8px}.feature{display:flex;align-items:center;gap:20px;padding:25px 30px}.feature>span{font-size:12px;color:#8c9682;border:1px solid var(--line);padding:12px;border-radius:50%}.feature p{font-size:12px;margin:0}.ledger-layout{max-width:1280px;margin:40px auto 70px;padding:0 40px;display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:24px;align-items:start}.heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.heading h1{font-size:42px;margin:12px 0 8px}.title-dot{color:#73a459}.summaries{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:22px}.summary{padding:25px;display:flex;flex-direction:column;gap:15px}.summary strong{font-size:28px;font-weight:500;letter-spacing:-1px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.summary>span:last-child{font-size:11px;color:var(--muted)}.green{color:var(--green)}.entry-card{padding:26px;margin-bottom:22px}.card-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px}.subtle{font-size:11px;color:var(--muted)}.entry-fields{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:14px}.entry-bottom{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:18px}.entry-bottom .primary{white-space:nowrap}.entry-bottom p{margin:0;font-size:12px}#message{min-height:20px;font-size:12px}.table-card{padding:26px 0 0;overflow:hidden}.table-card .card-heading{padding:0 26px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px}th{text-align:left;background:#f8f9f4;color:var(--muted);font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:1px;padding:15px 26px}td{border-top:1px solid var(--line);padding:20px 26px;font-variant-numeric:tabular-nums}th:nth-child(n+3),td:nth-child(n+3){text-align:right;white-space:nowrap}td:nth-child(2){min-width:190px;overflow-wrap:anywhere}td:nth-child(2) span{display:inline}button.delete{margin-left:9px;background:transparent;border:0;color:#9da295;font-size:18px;padding:3px 7px;border-radius:5px}button.delete:hover{background:#fbe8e5;color:#a64238}.empty{text-align:center;padding:36px 20px 45px}.empty>span{font-size:38px;color:#a7b296;display:block;margin-bottom:12px}.empty p{font-size:12px}.balance-side{position:sticky;top:24px;padding-top:7px}.balance-card{background:var(--ink);color:var(--lime);padding:30px}.balance-card .eyebrow{color:#b6c0aa}.balance-card output{display:block;font-size:35px;letter-spacing:-1.3px;font-weight:500;line-height:1.3;margin:28px 0;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.balance-line{height:1px;background:#465044}.balance-card p{color:#aeb9a6;font-size:12px;margin:20px 0}.balance-chip{display:inline-block;padding:9px 12px;background:#354331;border-radius:30px;font-size:10px}.side-note{padding:23px;margin-top:18px;background:#e9eddf}.side-note>span{font-size:23px}.side-note p{font-size:12px;color:#697361;margin:12px 0 0}footer{max-width:1280px;margin:auto;padding:24px 40px;border-top:1px solid var(--line);color:#7e8579;font-size:11px;display:flex;justify-content:space-between}[hidden]{display:none!important}:focus-visible{outline:3px solid #80aa55;outline-offset:3px}@media(min-width:1450px){.login-grid{margin-top:90px}}@media(max-width:850px){.topbar{padding:22px}.brand-tag{display:none}.ledger-layout{padding:0 22px;grid-template-columns:minmax(0,1fr) 235px;gap:16px}.balance-card{padding:23px}.balance-card output{font-size:28px}.entry-fields{grid-template-columns:1fr 1fr}.entry-fields>div:first-child{grid-column:1/-1}.login-grid{padding:0 22px;gap:14px}.welcome{padding:30px}h1{font-size:40px}.login-card{padding:30px}.art{gap:7px}.art-tile{width:100px;height:110px;padding:14px}.feature{padding:20px}.summary strong{font-size:23px}}@media(max-width:620px){.topbar>.pill{display:none}.login-grid{grid-template-columns:1fr;margin:25px auto}.welcome{padding:28px}.welcome h1{font-size:37px}.art{margin-top:35px;margin-bottom:5px}.login-card{padding:28px}.feature{padding:20px}.ledger-layout{display:flex;flex-direction:column;margin-top:22px;padding:0 16px}.ledger-main{width:100%;padding-top:103px}.heading h1{font-size:36px}.balance-side{position:fixed;top:0;left:0;right:0;padding:0;z-index:5;pointer-events:none}.balance-card{border-radius:0 0 20px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:19px 20px;box-shadow:0 5px 25px #0002;pointer-events:auto}.balance-card .eyebrow{font-size:9px;max-width:90px;line-height:1.5}.balance-card output{font-size:26px;margin:0;letter-spacing:-1px}.balance-line,.balance-card p,.balance-chip,.side-note{display:none}.topbar{margin-top:78px}.ledger-layout{margin-top:0}.ledger-main{padding-top:22px}.summaries{gap:12px}.summary{padding:19px 16px;gap:12px}.summary strong{font-size:22px}.summary .eyebrow{font-size:9px;letter-spacing:1px}.entry-card{padding:20px}.entry-fields{gap:12px}.table-card .card-heading{padding:0 20px}th,td{padding:16px}th:nth-child(n+3),td:nth-child(n+3){min-width:115px}.entry-bottom{align-items:flex-start}.entry-bottom p{max-width:150px}footer{padding:22px}.login-grid~footer{margin-top:30px}body[data-page=login] .topbar{margin-top:0}}
.install-button{margin-left:12px;white-space:nowrap}.topbar .brand{margin-right:auto}.install-tip{text-align:center;padding:10px 22px;font-size:12px}.topbar{gap:12px}@media(max-width:620px){.topbar{gap:6px}.brand{font-size:16px}.install-button{padding:10px;margin-left:0}.topbar .quiet{font-size:11px}}

.entry-fields{grid-template-columns:1fr 1.5fr 1fr 1fr}.transaction-date{white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--muted)}.entry-fields input[type=date]{min-width:0;min-height:48px}@media(max-width:1100px){.entry-fields{grid-template-columns:1fr 1fr}}@media(max-width:850px){.entry-fields>div:first-child{grid-column:auto}.entry-fields>div:nth-child(2){grid-column:auto}}@media(max-width:620px){.transaction-date{min-width:112px}}
