:root{--ground:#fff;--panel:#fff;--panel-edge:#f6d3dd;--ink:#1d1619;--muted:#665a60;--faint:#978a90;--pink:#e0527a;--pink-deep:#c93d66;--blush:#fbe3ea;--mint:#139b82;--mint-soft:#dcf3ee;--coin:#f6c343;--coin-edge:#d99a1a;--chart-money:#e0527a;--chart-temp:#3b6fd4;--rule:#f1e3e8;--shadow:0 1px 2px #6e1c380f, 0 10px 28px #6e1c381a;--surface:#fff0f4;--deep:#fde2ea;--good:#0f9d63;--bad:#d2453c;--accent:var(--pink);--accentInk:#fff;--accentText:var(--pink-deep);--heading-lead:24px;--heading-section:19px;--card-pad:22px;--control-h:42px;--display:"Quicksand", "Trebuchet MS", sans-serif;--body:"Nunito", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--ground:#17121a;--panel:#2a2029;--panel-edge:#4a3542;--ink:#f3eef0;--muted:#bcaeb5;--faint:#8d7f86;--pink:#ff7fa2;--pink-deep:#ff9bb7;--blush:#3a2230;--mint:#3fd1b4;--mint-soft:#16342f;--coin:#ffd25e;--coin-edge:#e8a93a;--chart-money:#e05a85;--chart-temp:#5f86e6;--rule:#33262f;--shadow:0 1px 2px #00000059, 0 10px 28px #00000052;--surface:#221823;--deep:#150f16;--good:#3ddc9a;--bad:#ff7a70;--accentInk:#2a0f1a}}*{box-sizing:border-box}html,body{height:100%}body{background:linear-gradient(180deg, var(--surface) 0%, var(--ground) 42%, var(--deep) 100%) fixed;color:var(--ink);font-family:var(--body);-webkit-font-smoothing:antialiased;margin:0;font-size:17px;line-height:1.6}button{font:inherit;cursor:pointer}:focus-visible{outline:2px solid var(--mint);outline-offset:2px;border-radius:6px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.moneyBox{max-width:220px;height:var(--control-h);border:1px solid var(--panel-edge);background:var(--panel);border-radius:12px;align-items:stretch;display:flex;overflow:hidden}.moneyBox:focus-within{outline:2px solid var(--mint);outline-offset:1px}.moneyBox>.moneySym{border-right:1px solid var(--panel-edge);background:var(--surface);color:var(--muted);-webkit-user-select:none;user-select:none;flex:none;align-items:center;padding:0 13px;font-size:16px;line-height:1.3;display:flex}.moneyBox>input.moneyInput{font-family:var(--body);font-variant-numeric:tabular-nums;color:var(--ink);background:0 0;border:none;border-radius:0;width:100%;min-width:0;padding:0 13px;font-size:16px;font-weight:400;line-height:1.3}.moneyBox>input.moneyInput:focus{outline:none}
