.m-shell[data-v-57365718]{min-height:100dvh}.m-top[data-v-57365718]{position:sticky;top:0;z-index:30;height:calc(48px + env(safe-area-inset-top,0px));padding-top:env(safe-area-inset-top,0px);display:flex;align-items:center;justify-content:center;gap:8px;background:var(--surface);border-bottom:1px solid var(--border)}.m-title[data-v-57365718]{font-size:17px;font-weight:600}.m-logo[data-v-57365718]{width:26px;height:26px;border-radius:7px}.m-back[data-v-57365718]{position:absolute;left:4px;bottom:4px;width:40px;height:40px;border:0;background:none;color:var(--text);display:grid;place-items:center}.m-tabs[data-v-57365718]{position:fixed;left:0;right:0;bottom:0;z-index:30;height:calc(var(--tabbar-h) + var(--safe-b));padding-bottom:var(--safe-b);display:flex;background:var(--surface);border-top:1px solid var(--border)}.m-tab[data-v-57365718]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;font-size:11px;color:var(--muted)}.m-tab.active[data-v-57365718]{color:var(--brand)}.m-tab.add[data-v-57365718]{color:var(--text-2)}.m-add[data-v-57365718]{width:44px;height:32px;border-radius:16px;display:grid;place-items:center;background:var(--brand);color:#fff;box-shadow:0 4px 12px #e8590c59}.d-shell[data-v-57365718]{height:100dvh}.d-brand[data-v-57365718]{height:60px;display:flex;align-items:center;gap:10px;padding:0 20px;font-size:17px;font-weight:700;white-space:nowrap}.d-brand.collapsed[data-v-57365718]{padding:0;justify-content:center}.d-brand img[data-v-57365718]{width:30px;height:30px;border-radius:8px}.d-add[data-v-57365718]{padding:4px 16px 10px;display:flex;justify-content:center}.d-header[data-v-57365718]{height:56px;padding:0 16px 0 24px;display:flex;align-items:center;justify-content:space-between}.d-title[data-v-57365718]{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600}.d-content[data-v-57365718]{height:calc(100dvh - 56px);background:var(--bg)}:root{--bg: #f7f5f2;--surface: #ffffff;--surface-2: #fbf8f5;--border: rgba(11, 11, 11, .08);--text: #1f1f1d;--text-2: #52514e;--muted: #898781;--brand: #e8590c;--brand-soft: #fff4e6;--income: #006300;--expense: #1f1f1d;--danger: #d03b3b;--grid: #e1e0d9;--axis: #c3c2b7;--tabbar-h: 58px;--safe-b: env(safe-area-inset-bottom, 0px);color-scheme:light}:root[data-theme=dark]{--bg: #141413;--surface: #1c1c1b;--surface-2: #232321;--border: rgba(255, 255, 255, .09);--text: #f0efec;--text-2: #c3c2b7;--muted: #898781;--brand: #f76707;--brand-soft: rgba(247, 103, 7, .14);--income: #0ca30c;--expense: #f0efec;--grid: #2c2c2a;--axis: #383835;color-scheme:dark}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;background:var(--bg);color:var(--text)}body{min-height:100dvh;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.num{font-variant-numeric:tabular-nums;white-space:nowrap}.income{color:var(--income)}.expense{color:var(--expense)}.muted{color:var(--muted)}.text-2{color:var(--text-2)}.page{max-width:1280px;margin:0 auto;padding:20px 24px 32px}.page.narrow{max-width:720px}.page-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px}.page-head h1{margin:0;font-size:20px;font-weight:600}.page-head h1{display:none}.page-head:has(>h1:only-child){display:none}.page-head:has(>h1){justify-content:flex-end}.toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:14px}.toolbar>.grow{flex:1}.panel{background:var(--surface);border:1px solid var(--border);border-radius:12px}.section-title{font-size:15px;font-weight:600;margin:0 0 12px}.empty{padding:40px 16px;text-align:center;color:var(--muted)}@media(max-width:899px){.page{padding:12px 12px calc(var(--tabbar-h) + var(--safe-b) + 20px)}.page.sub{padding-bottom:calc(var(--safe-b) + 96px)}.page-head h1{display:none}.hide-mobile{display:none!important}}@media(min-width:900px){.hide-desktop{display:none!important}}.action-bar{display:flex;gap:10px;margin-top:20px}@media(max-width:899px){.action-bar{position:fixed;left:0;right:0;bottom:0;z-index:20;margin:0;padding:10px 12px calc(10px + var(--safe-b));background:var(--surface);border-top:1px solid var(--border)}.action-bar>*{flex:1}}
