:root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#192e30;background:#f3f5f6;font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer;min-height:44px;border:0;border-radius:12px;padding:10px 16px;background:#e9eeef;color:#233b3c}button:focus-visible,input:focus-visible{outline:3px solid #6d971b;outline-offset:3px}main{max-width:1080px;margin:auto;padding:48px 32px}header{display:flex;align-items:center;justify-content:space-between;margin-bottom:40px}.brand{display:flex;align-items:center;gap:12px}.mark{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:#183537;color:#d5f591;font-size:28px}h1{font-size:22px;letter-spacing:-.7px;margin:0}.private{font-size:14px;color:#5c7072}.layout{display:grid;grid-template-columns:360px 1fr;gap:36px;align-items:start}.overview{background:#152e30;border-radius:24px;color:#fff;padding:28px;position:sticky;top:24px}.budget-field label{font-size:16px;color:#d4dfdf}.budget-input{display:flex;align-items:center;gap:12px;border-bottom:1px solid #5c7474;padding:10px 0}.budget-input input{font-size:36px;font-weight:600;width:100%;min-width:0;background:none;border:0;color:white;outline-offset:0}.budget-input>span{font-size:26px;color:#b8cccc}.remaining{padding:34px 0 28px}.remaining>span{font-size:16px;color:#d3e7b4}.remaining strong{display:block;font-size:44px;font-weight:600;letter-spacing:-1.8px;color:#d4f48a;margin-top:10px;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}.remaining p{font-size:14px;line-height:1.5;color:#c0cfcf;margin:12px 0 0}.total{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;border-top:1px solid #435b5d;padding-top:22px;font-size:16px}.total strong{font-variant-numeric:tabular-nums}.hint{font-size:14px;line-height:1.6;margin:24px 0 0;color:#adbec0}.exceeded .remaining strong,.exceeded .remaining>span{color:#ffb9a9}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:22px}h2{font-size:22px;letter-spacing:-.5px;margin:0}.section-head p{margin:6px 0 0;color:#647577;font-size:14px}.primary{background:#d4f48a;font-weight:600}.primary span{font-size:20px;margin-right:3px}.expense{background:white;border:1px solid #dbe2e3;border-radius:18px;padding:14px 18px;margin-bottom:12px;transition:background .15s}.row-top,.row-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px}.description{width:100%;min-width:0;font-size:17px;font-weight:600;border:0;background:transparent;color:#243c3d;padding:10px 0}.delete{color:#748587;background:transparent;width:44px;flex-shrink:0;padding:10px}.delete:hover{color:#a23424;background:#fff0eb}.row-bottom{margin-top:8px}.amount-wrap{display:flex;flex-direction:column;gap:4px;min-width:0}.amount-wrap>span{font-size:13px;color:#637779}.amount{width:170px;max-width:100%;border:0;background:transparent;font-size:24px;letter-spacing:-.5px;color:#1b3638;padding:5px 0;font-variant-numeric:tabular-nums}.toggle{background:transparent;display:flex;align-items:center;gap:9px;padding:8px 0 8px 8px;font-size:14px;flex-shrink:0}.switch{width:40px;height:24px;background:#244d43;border-radius:20px;padding:3px}.switch:after{content:'';display:block;width:18px;height:18px;border-radius:50%;background:#d4f48a;transform:translateX(16px)}.inactive{background:#e9eeef}.inactive .description,.inactive .amount{color:#687a7c}.inactive .switch{background:#bac6c7}.inactive .switch:after{background:#fff;transform:none}.toggle-label{width:48px;text-align:left}.error{display:block;color:#b33021;font-size:13px;line-height:1.4}.error:empty{display:none}.budget-field .error{color:#ffb9a9;padding-top:8px}[aria-invalid=true]{box-shadow:0 2px #cf4b38}#empty{text-align:center;border:1px dashed #c6d2d4;border-radius:20px;padding:48px 24px;color:#617779}#empty[hidden]{display:none}.empty-symbol{font-size:28px;display:inline-grid;place-items:center;background:#e4ebea;border-radius:16px;width:56px;height:56px}h3{font-size:18px;color:#2d4547;margin-bottom:8px}#empty p{font-size:16px;line-height:1.6;max-width:280px;margin:0 auto}footer{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:22px}#saved{font-size:13px;color:#68797b;line-height:1.5}.quiet{background:transparent;color:#5d7173;font-size:14px;white-space:nowrap;padding-right:0}dialog{border:0;border-radius:22px;padding:28px;max-width:400px;width:calc(100% - 32px);color:#1b3435}dialog::backdrop{background:#10282999}dialog p{line-height:1.6;color:#5b6c6d}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.danger{background:#a93427;color:white}@media(max-width:760px){main{padding:24px 18px calc(24px + env(safe-area-inset-bottom))}header{margin-bottom:24px}.private{max-width:100px;text-align:right;font-size:12px}.layout{grid-template-columns:1fr;gap:28px}.overview{position:static;padding:24px;border-radius:22px}.budget-input input{font-size:32px}.remaining{padding:24px 0}.remaining strong{font-size:42px}.hint{display:none}.section-head{margin-bottom:18px}.expense{padding:12px 16px}.amount{width:155px}footer{align-items:flex-start}h1{font-size:20px}}@media(prefers-reduced-motion:reduce){*{transition:none!important}}
.layout>*{min-width:0}@media(max-width:360px){header{gap:10px}.brand{gap:8px}h1{font-size:18px}.private{max-width:80px}.section-head h2{font-size:20px}.primary{padding:10px 12px}footer{flex-wrap:wrap}.amount{width:130px}}
/* Respect the iPhone's sensor area and Home indicator in standalone mode. */
@media (max-width:760px){main{padding-top:calc(24px + env(safe-area-inset-top));padding-left:calc(18px + env(safe-area-inset-left));padding-right:calc(18px + env(safe-area-inset-right))}}
@media (display-mode:standalone){body{min-height:100dvh}}
