@font-face{font-family:Figtree;font-style:normal;font-weight:300 900;font-display:swap;src:url(../media/400bf8aa837fcb7e-s.2u3lqdovtp4z3.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Figtree;font-style:normal;font-weight:300 900;font-display:swap;src:url(../media/f7aa21714c1c53f8-s.p.0jgzmitmnoe6_.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Figtree Fallback;src:local(Arial);ascent-override:94.32%;descent-override:24.82%;line-gap-override:0.0%;size-adjust:100.72%}.figtree_91ec60aa-module___346oa__className{font-family:Figtree,Figtree Fallback;font-style:normal}.figtree_91ec60aa-module___346oa__variable{--font-sans:"Figtree", "Figtree Fallback"}
@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1e219c03c996efbd-s.00ewlnc1znsu7.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/b35b0dbffda7f2c4-s.0bnyh_2yo1emg.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/03bda585a99c6450-s.p.0glcd8n2pdab0.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fraunces Fallback;src:local(Times New Roman);ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.0%;size-adjust:115.45%}.fraunces_5db8dfc6-module__nI_9nG__className{font-family:Fraunces,Fraunces Fallback;font-style:normal}.fraunces_5db8dfc6-module__nI_9nG__variable{--font-display:"Fraunces", "Fraunces Fallback"}
:root{--bg:#f3efe6;--ink:#221c16;--muted:#746b60;--line:#e3dacb;--card:#fffdf8;--green:#1c7a46;--green-soft:#e5f4ea;--danger:#8d3b2b;--shadow:0 16px 40px #3c2a140f}*{box-sizing:border-box}html,body{min-height:100%;margin:0;padding:0}body{background:radial-gradient(1200px 500px at 10% -10%, #fffaf2 0%, transparent 55%), var(--bg);color:var(--ink);font-family:var(--font-sans), "Figtree", sans-serif;font-size:16px;line-height:1.45}a{color:inherit;text-decoration:none}button,input,select{font:inherit;color:inherit}.page{width:min(760px,100% - 32px);margin:0 auto;padding:36px 0 64px}.top{justify-content:space-between;align-items:center;gap:16px;display:flex}.wordmark{font-family:var(--font-display), Georgia, serif;letter-spacing:-.03em;font-size:32px;font-weight:560}.month{background:var(--card);border:1px solid var(--line);border-radius:999px;align-items:center;gap:4px;padding:4px;display:flex}.month-step{width:32px;height:32px;color:var(--muted);border-radius:999px;place-items:center;font-size:22px;line-height:1;display:grid}.month-step:hover{background:var(--bg);color:var(--ink)}.month-input{color:var(--ink);background:0 0;border:0;padding:4px 6px}.tabs{border-bottom:1px solid var(--line);gap:18px;margin:28px 0 22px;display:flex}.tabs a{color:var(--muted);padding:8px 0 10px}.tabs a[aria-current=page]{color:var(--ink);box-shadow:inset 0 -2px 0 var(--ink)}.panel{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:18px;margin-bottom:16px;padding:22px 22px 8px}.panel-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:6px;display:flex}h1{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0;font-size:15px;font-weight:650}.panel-total,.panel-note{color:var(--muted);margin:0}.panel-total{font-variant-numeric:tabular-nums;color:var(--ink)}.lines,.budget-list{margin:0;padding:0;list-style:none}.paid-row,.remain-row,.tx-row{border-top:1px solid var(--line);align-items:center;gap:12px;padding:14px 0;display:grid}.paid-row{grid-template-columns:22px 1fr auto auto}.deposit-row .line-amount,.deposit-row .paid-word{color:var(--green)}button.paid-row{border:0;border-top:1px solid var(--line);text-align:left;cursor:pointer;background:0 0;border-radius:12px;width:100%;padding:14px 8px}button.paid-row:hover,button.paid-row:focus-visible{background:#f7f3ea;outline:none}.remain-row{grid-template-columns:1fr auto}.tx-row{grid-template-columns:64px 1fr auto auto auto}.edit-actions{align-items:center;gap:12px;display:flex}.lines>li>.entry{border-top:1px solid var(--line);margin-top:0;padding-top:14px}.check{background:var(--green-soft);width:22px;height:22px;color:var(--green);border-radius:999px;place-items:center;font-size:13px;display:grid}.line-name{font-size:17px}.line-amount{font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-weight:650}.paid-word{color:#9a9288;letter-spacing:.04em;font-size:13px}.tx-date,.tx-category,.hint,.empty,.form-error{color:var(--muted)}.tx-category,.tx-note{margin-top:2px;font-size:13px;display:block}.entry-note{grid-column:1/-1}.filters{grid-template-columns:minmax(0,1.4fr) 140px minmax(0,1fr) 140px 140px auto;align-items:end;gap:10px;margin:4px 0 8px;display:grid}.filters a{color:var(--muted);padding:10px 0}.tx-kind{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin-top:2px;font-size:12px;font-weight:650;display:block}.tx-kind-in{color:var(--green)}.typeahead{position:relative}.typeahead-list{z-index:5;border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:10px;max-height:220px;margin:0;padding:4px;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:auto}.typeahead-option{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;width:100%;padding:8px 10px}.typeahead-option.is-active,.typeahead-option:hover{background:#f7f3ea}.typeahead-add{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);font-size:12px;display:block}.empty,.hint,.form-error{margin:8px 0 16px}.form-error{color:var(--danger)}.entry,.budget-row{align-items:end;gap:10px;margin:12px 0 8px;display:grid}.entry{grid-template-columns:132px minmax(0,1fr) 132px 96px 128px auto}.entry-add{grid-template-columns:1fr auto}.budget-row{grid-template-columns:1fr 140px auto;margin:0}.budget-note{grid-column:1/-1}label{color:var(--muted);gap:6px;font-size:13px;display:grid}input[type=text],input[type=date],input[type=password],textarea,select{border:1px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:10px;padding:10px 12px}textarea{resize:vertical;min-height:72px;line-height:1.4}.primary,.text-button{cursor:pointer;background:0 0;border:0}.primary{background:var(--ink);color:#fffdf8;border-radius:999px;padding:10px 16px}.text-button{color:var(--muted);padding:8px 0}.budget-line{align-items:center;gap:4px;display:flex}.budget-line.is-child{padding-left:28px}.budget-toggle{text-align:left;cursor:grab;background:0 0;border:0;flex:1;justify-content:space-between;gap:12px;padding:14px 0;display:flex}.budget-toggle:active{cursor:grabbing}.is-dragging{opacity:.45}.budget-open{padding:0 0 14px}.history-line{color:var(--muted);justify-content:space-between;gap:12px;margin:0 0 8px;display:flex}.history-line span:last-child{color:var(--ink);font-variant-numeric:tabular-nums}.budget-list>li{border-top:1px solid var(--line);padding:0;display:block}.budget-list>li form.budget-row{flex:1}.sign-out{margin-top:8px}.sign-out button{color:var(--muted);cursor:pointer;background:0 0;border:0;padding:0}.login-page{place-items:center;min-height:100vh;display:grid}.login-card{background:var(--card);border:1px solid var(--line);width:min(380px,100%);box-shadow:var(--shadow);border-radius:18px;gap:14px;padding:28px;display:grid}.shade{width:min(440px,100vw - 32px);color:var(--ink);background:0 0;border:0;padding:0}.shade::backdrop{background:#221c166b}.shade-card{background:var(--card);border-radius:18px;padding:22px 22px 14px;box-shadow:0 24px 70px #221c1638}.shade h2{font-family:var(--font-display), Georgia, serif;letter-spacing:-.03em;text-transform:none;color:var(--ink);margin:0;font-size:28px;font-weight:520}a.shade-tx{color:inherit;border-radius:12px}a.shade-tx:hover,a.shade-tx:focus-visible{background:#f7f3ea}.is-target{background:#e7f3ea;border-radius:12px}.shade-tx{grid-template-columns:72px 1fr auto}.shade-note{color:var(--muted);white-space:pre-wrap;margin:0 0 8px}.shade-close{margin-top:8px}.login-card h1{text-transform:none;letter-spacing:-.03em;font-family:var(--font-display), Georgia, serif;color:var(--ink);font-size:32px;font-weight:520}@media (max-width:720px){.top{flex-direction:column;align-items:flex-start}.entry,.filters,.budget-row,.paid-row,.tx-row{grid-template-columns:1fr}.paid-row{grid-template-columns:22px 1fr auto;grid-template-areas:"check name amount""check paid amount"}.check{grid-area:check}.paid-row .line-name{grid-area:name}.paid-row .line-amount{grid-area:amount}.paid-word{grid-area:paid}.shade-tx{grid-template-columns:72px 1fr auto}.budget-list>li{flex-direction:column;align-items:stretch}}
