.fab{right:max(16px, env(safe-area-inset-right));bottom:calc(16px + env(safe-area-inset-bottom));z-index:5;background:var(--accent);width:56px;height:56px;color:var(--accent-text);border-radius:50%;place-items:center;font-size:2rem;line-height:1;text-decoration:none;display:grid;position:fixed;box-shadow:0 2px 10px #00000040}.fab:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 60%, transparent);outline-offset:3px}.headline{font-variant-numeric:tabular-nums;margin:.1rem 0;font-size:1.9rem;font-weight:700}.headline.neg,.neg{color:var(--amber)}.amount{font-variant-numeric:tabular-nums;white-space:nowrap}.amount.neg{color:var(--amber);font-weight:600}.meter{width:100%;height:8px;accent-color:var(--accent);margin-top:4px;display:block}.chip.link{align-items:center;text-decoration:none;display:inline-flex}.list a.env-row{color:var(--text);min-height:48px;padding:10px 0;text-decoration:none;display:block}.list a.env-row .top{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.tag{border:1px solid var(--amber);color:var(--amber);border-radius:999px;margin-left:6px;padding:1px 8px;font-size:.8rem;display:inline-block}.dots{align-items:center;gap:6px;display:flex}.dots i{border:2px solid var(--accent);border-radius:50%;width:12px;height:12px;display:inline-block}.dots i.on{background:var(--accent)}.month-nav{justify-content:space-between;align-items:center;gap:8px;display:flex}details>summary{cursor:pointer;min-height:44px;color:var(--link);align-items:center;display:flex}.opt{border:1px solid var(--border);background:var(--surface);width:100%;min-height:48px;color:var(--text);font:inherit;text-align:left;cursor:pointer;border-radius:10px;justify-content:space-between;align-items:center;gap:8px;margin-top:8px;padding:8px 12px;display:flex}.opt[aria-pressed=true]{border-color:var(--accent);outline:2px solid var(--accent)}.rate-step{border:1px dashed var(--border);border-radius:10px;margin:8px 0;padding:8px 12px}.rate-step .eq{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.rate-step input{max-width:11rem}.tabs{gap:8px;margin:8px 0;display:flex}.dash-side>:first-child,.dash-main>:first-child{margin-top:0}@media (width>=900px){.page:has(.dash){max-width:64rem}.dash{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;gap:16px;display:grid}}.kv{grid-template-columns:repeat(auto-fit,minmax(7rem,1fr));gap:8px 16px;margin:0 0 8px;display:grid}.kv dt{color:var(--hint);font-size:.85rem}.kv dd{margin:0;font-weight:600}.steps-list{margin:0;padding-left:1.2rem}.steps-list>li{padding:6px 0 10px}.pad{padding:10px 0}.grow{flex:1}.mt{margin-top:12px}.flush{margin:0}.mb{margin-bottom:8px}.date-input{max-width:12rem}.tap{align-items:center;min-width:44px;min-height:44px;display:inline-flex}.month-nav .btn{min-width:44px}body .page{padding-bottom:calc(88px + env(safe-area-inset-bottom))}.tag.ok{color:var(--accent);border-color:var(--accent)}.page:has(form,[data-testid=edit-tx]) :is(.fab,.fab-strip){display:none}@media (width<=760px){.page:has(:is(input:not([type=checkbox]):not([type=radio]),textarea):focus) :is(.fab,.fab-strip){display:none}}.steps-list>li>strong{margin-bottom:6px;display:block}.split-card{border:1px solid #80808059;border-radius:10px;padding:10px 12px}.split-row .row,.rule-row{flex-wrap:wrap;align-items:center}.split-row .row{flex-wrap:nowrap;justify-content:space-between;gap:8px}.split-row label{overflow-wrap:anywhere;flex:1 1 0;min-width:0;margin:0}.split-row input,.rule-row input{box-sizing:border-box;flex:0 0 7.5rem;width:7.5rem;min-height:44px}.rule-row label{overflow-wrap:anywhere;flex:5rem;min-width:0;margin:0}.rule-row .btn{min-width:44px;min-height:44px}.grow{min-width:0}.spend{margin:6px 0 2px}.spend-track{background:var(--border);border:1px solid var(--border);box-sizing:content-box;border-radius:999px;height:8px;position:relative;overflow:hidden}.spend-fill{background:var(--accent);border-radius:999px;min-width:0;height:100%}.spend.past .spend-fill{background:var(--amber)}.spend-line,.spend-sub{color:var(--hint);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin:4px 0 0;font-size:.85rem}.spend-line.neg,.spend-sub.neg{color:var(--amber);font-weight:600}.plan-edit .field input{max-width:14rem}.spend-mark{background:var(--text);width:2px;margin-left:-1px;position:absolute;top:0;bottom:0}.spend.compact{margin:4px 0 8px}span.spend-sub{display:block}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:var(--tg-theme-bg-color,#f6f5f0);--surface:var(--tg-theme-section-bg-color,#fff);--text:var(--tg-theme-text-color,#1d2420);--hint:var(--tg-theme-hint-color,#5d6761);--accent:var(--tg-theme-button-color,#2f6f5e);--accent-text:var(--tg-theme-button-text-color,#fff);--link:var(--tg-theme-link-color,#1f6b57);--border:color-mix(in srgb, var(--text) 16%, transparent);--amber:#a15c00;--amber-bg:color-mix(in srgb, #e0a100 16%, var(--surface));--radius:12px;font:16px/1.45 system-ui,-apple-system,Segoe UI,Roboto,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}:root:not([data-scheme=light]){--bg:var(--tg-theme-bg-color,#14181a);--surface:var(--tg-theme-section-bg-color,#1d2326);--text:var(--tg-theme-text-color,#e8ece9);--hint:var(--tg-theme-hint-color,#9aa6a0);--accent:var(--tg-theme-button-color,#4fb090);--accent-text:var(--tg-theme-button-text-color,#0b1a15);--link:var(--tg-theme-link-color,#7fd0b4);--amber:#f0b44a}}:root[data-scheme=dark]{--bg:var(--tg-theme-bg-color,#14181a);--surface:var(--tg-theme-section-bg-color,#1d2326);--text:var(--tg-theme-text-color,#e8ece9);--hint:var(--tg-theme-hint-color,#9aa6a0);--accent:var(--tg-theme-button-color,#4fb090);--accent-text:var(--tg-theme-button-text-color,#0b1a15);--link:var(--tg-theme-link-color,#7fd0b4);--amber:#f0b44a}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0}a{color:var(--link)}h1{margin:0 0 .5rem;font-size:1.4rem}h2{margin:0 0 .5rem;font-size:1.1rem}p{margin:.4rem 0}.page{max-width:40rem;padding:16px max(16px, env(safe-area-inset-right)) calc(24px + env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));margin:0 auto}.page.has-fab{padding-bottom:calc(96px + env(safe-area-inset-bottom))}.fab-strip{display:none}@media (width<=760px){html{scroll-padding-bottom:calc(80px + env(safe-area-inset-bottom))}.fab-strip{z-index:4;height:calc(72px + env(safe-area-inset-bottom));background:var(--bg);border-top:1px solid var(--border);display:block;position:fixed;bottom:0;left:0;right:0}}@media (width>=900px){.page.wide{max-width:64rem}}.bar{flex-wrap:wrap;align-items:center;gap:4px 8px;padding-bottom:8px;display:flex}.bar .brand{flex:1;order:1}.bar>.btn{order:2}.bar nav{flex-basis:100%;order:3;grid-template-columns:repeat(4,1fr);gap:4px;display:grid}.bar nav .btn{text-align:center;place-items:center;padding:8px 4px;display:grid}@media (width>=700px){.bar nav{flex:0 auto;order:2;gap:4px;display:flex}.bar nav .btn{padding:8px 16px}.bar>.btn{order:3}}.brand{letter-spacing:.01em;font-weight:700}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin:12px 0;padding:16px}.stack>*+*{margin-top:12px}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.row.between{justify-content:space-between}.field{margin:12px 0}.field label{margin-bottom:4px;font-weight:600;display:block}input,select,textarea{width:100%;min-height:44px;font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:8px 12px}input[type=checkbox],input[type=radio]{width:22px;height:22px;min-height:22px;accent-color:var(--accent)}input:focus-visible,select:focus-visible,.btn:focus-visible,.chip:focus-visible,a:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 60%, transparent);outline-offset:2px}.check{align-items:center;gap:10px;min-height:44px;display:flex}.check label{margin:0;font-weight:400}.msg{margin:.3rem 0;font-size:.92rem}.msg.hint{color:var(--hint)}.msg.err{color:var(--amber);font-weight:600}.btn{min-height:44px;font:inherit;cursor:pointer;border:1px solid #0000;border-radius:10px;padding:8px 16px;font-weight:600}.btn.primary{background:var(--accent);color:var(--accent-text)}.btn.secondary{color:var(--text);border-color:var(--border);background:0 0}.btn.quiet{color:var(--link);background:0 0}.btn.danger{color:var(--amber);border-color:var(--amber);background:0 0}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.block{width:100%}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{border:1px solid var(--border);background:var(--surface);min-width:44px;min-height:44px;color:var(--text);font:inherit;cursor:pointer;border-radius:999px;padding:6px 14px}.chip.on{background:var(--accent);color:var(--accent-text);border-color:#0000;font-weight:600}.banner{border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);margin:12px 0;padding:12px 14px}.banner.amber{background:var(--amber-bg);border-color:var(--amber)}.banner.block{background:var(--amber-bg);border-color:var(--amber);font-weight:600}.banner ul{margin:.3rem 0 0;padding-left:1.2rem}.banner ul.untrusted{overflow-wrap:anywhere;white-space:pre-wrap;max-height:40vh;overflow-y:auto}.banner .btn{margin-top:.5rem}.spin{color:var(--hint);align-items:center;gap:10px;display:flex}.dot{border:2px solid var(--accent);border-right-color:#0000;border-radius:50%;width:14px;height:14px;animation:.8s linear infinite turn}@keyframes turn{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.dot{animation:none}}.mono{word-break:break-word;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.big{border:1px dashed var(--border);-webkit-user-select:all;user-select:all;border-radius:10px;padding:12px;font-size:1.25rem;line-height:1.7}.list{margin:0;padding:0;list-style:none}.list li{border-top:1px solid var(--border)}.list li:first-child{border-top:0}.list a,.list .item{min-height:48px;color:var(--text);justify-content:space-between;align-items:center;gap:8px;padding:8px 0;text-decoration:none;display:flex}.hint{color:var(--hint)}.pin{letter-spacing:.6em;text-align:center;font-size:1.6rem}.qr{width:192px;height:192px;image-rendering:pixelated;background:#fff;border-radius:8px;padding:8px}.steps{color:var(--hint);font-size:.9rem}.center{text-align:center}.sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}
