:root{--bg:#f4efe6;--surface:#fcfaf5;--text:#221f1a;--muted:#8c8579;--line:#ece6da;--accent:#2f5141;--accent-icon:#245c41;--accent-soft:#e8efe8;--income:#2f5141;--expense:#221f1a;--alert:#b5663b;--danger:#b3402e;--sand:#d8c8ad;--cat-1:#6e8a6f;--cat-2:#c57b53;--cat-3:#d6a24e;--cat-4:#a8765a;--cat-5:#c7bca6;--inc-2:#5b8468;--inc-3:#8fb89c;--inc-4:#c9d6be;--inc-5:#e3e0ce;--exp-6:#9e5a3c;--sidebar-w:220px;--content-max:1240px;--panel-w:360px;--radius-sm:8px;--radius-md:10px;--radius-lg:12px;--radius-xl:16px;--shadow-sm:0 1px 2px #0000000f;--shadow-md:0 4px 12px #0000001a;--shadow-lg:0 12px 32px #00000029;--text-display:1.6rem;--text-title:1.25rem;--text-subtitle:1.05rem;--text-body:.95rem;--text-label:.82rem;--text-caption:.75rem;--text-micro:.68rem}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#15120e;--surface:#211c16;--text:#ece5d9;--muted:#9c9080;--line:#2f2920;--accent:#74b093;--accent-icon:#74b093;--accent-soft:#22302a;--income:#74b093;--expense:#ece5d9;--alert:#d9694b;--danger:#b3402e;--sand:#d8c8ad;--cat-1:#7da17e;--cat-2:#d08a66;--cat-3:#dcb263;--cat-4:#b98870;--cat-5:#b2a88e;--inc-2:#5c9078;--inc-3:#a6cbb3;--inc-4:#7e8c73;--inc-5:#9a9580;--exp-6:#b36a4a;--shadow-sm:0 1px 2px #0006;--shadow-md:0 4px 12px #00000080;--shadow-lg:0 12px 32px #0009}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme]){--bg:#15120e;--surface:#211c16;--text:#ece5d9;--muted:#9c9080;--line:#2f2920;--accent:#74b093;--accent-icon:#74b093;--accent-soft:#22302a;--income:#74b093;--expense:#ece5d9;--alert:#d9694b;--danger:#b3402e;--sand:#d8c8ad;--cat-1:#7da17e;--cat-2:#d08a66;--cat-3:#dcb263;--cat-4:#b98870;--cat-5:#b2a88e;--inc-2:#5c9078;--inc-3:#a6cbb3;--inc-4:#7e8c73;--inc-5:#9a9580;--exp-6:#b36a4a;--shadow-sm:0 1px 2px #0006;--shadow-md:0 4px 12px #00000080;--shadow-lg:0 12px 32px #0009}}*,:before,:after{box-sizing:border-box}*{margin:0;padding:0}html{-webkit-text-size-adjust:100%;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;touch-action:manipulation;overflow-x:hidden}@media (prefers-color-scheme:dark){html{--lightningcss-light: ;--lightningcss-dark:initial}}body{font-family:var(--font-hanken), system-ui, -apple-system, sans-serif;background:var(--bg);color:var(--text);letter-spacing:-.01em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;min-height:100dvh;line-height:1.5;overflow-x:hidden}#boot-splash{display:none}html[data-native-boot=true] #boot-splash{z-index:9999;background:var(--bg);opacity:1;justify-content:center;align-items:center;transition:opacity .2s;display:flex;position:fixed;inset:0}html[data-native-boot=true] #boot-splash[data-hiding=true]{opacity:0}.bootSig{left:0;right:0;bottom:calc(env(safe-area-inset-bottom) + 40px);text-align:center;letter-spacing:.04em;color:#8c8579;pointer-events:none;-webkit-user-select:none;user-select:none;font-size:.8rem;position:absolute}input,textarea,[contenteditable=true]{-webkit-user-select:text;user-select:text;-webkit-touch-callout:default}input,textarea,select{font-size:16px}a{color:inherit;text-decoration:none}.num{font-variant-numeric:lining-nums tabular-nums}.mono{font-family:var(--font-mono), ui-monospace, monospace;font-feature-settings:"tnum" 1}.eyebrow{text-transform:uppercase;letter-spacing:.14em;color:var(--accent);font-size:.74rem;font-weight:600}.cta{background:var(--accent);color:var(--bg);cursor:pointer;border:none;border-radius:10px;width:100%;padding:12px 18px;font-family:inherit;font-size:.95rem;font-weight:600;transition:filter .12s,opacity .12s}.cta:hover:not(:disabled){filter:brightness(1.06)}.cta:disabled{opacity:.55;cursor:default}.input{border:1px solid var(--line);background:var(--surface);width:100%;height:44px;color:var(--text);letter-spacing:-.01em;border-radius:10px;outline:none;padding:0 14px;font-family:inherit;font-size:1rem;transition:border-color .12s,box-shadow .12s;display:block}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 12%, transparent)}.card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:16px}.ghost{color:var(--text);border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:10px;justify-content:center;align-items:center;gap:8px;width:100%;padding:11px 18px;font-family:inherit;font-size:.95rem;font-weight:600;transition:background .12s,border-color .12s;display:inline-flex}.ghost:hover{background:var(--accent-soft)}.ghost:disabled{opacity:.55;cursor:default}
