.overlay[data-v-7b6f572c]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:100;display:flex;align-items:flex-end;touch-action:none}.sheet[data-v-7b6f572c]{width:100%;background:#f4f3f0;border-radius:24px 24px 0 0;padding:14px 16px 0;display:flex;flex-direction:column;gap:12px;max-height:calc(90dvh + env(safe-area-inset-bottom));overflow-y:auto;-webkit-overflow-scrolling:touch}.safe-bottom[data-v-7b6f572c]{height:calc(env(safe-area-inset-bottom) + 8px);flex-shrink:0}.swipe-bar[data-v-7b6f572c]{width:44px;height:5px;background:#d0cfc8;border-radius:99px;margin:0 auto;cursor:pointer;flex-shrink:0}.sheet-header[data-v-7b6f572c]{display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.sheet-title[data-v-7b6f572c]{font-size:clamp(17px,4.5vw,19px);font-weight:700;color:#1a1a1a}.close-btn[data-v-7b6f572c]{background:#e2e0da;border:none;border-radius:50%;min-width:44px;min-height:44px;cursor:pointer;font-size:14px;color:#555;display:flex;align-items:center;justify-content:center;-webkit-tap-highlight-color:transparent}.pill-row[data-v-7b6f572c]{display:flex;gap:8px;flex-wrap:wrap;position:relative;flex-shrink:0}.pill-wrap[data-v-7b6f572c]{position:relative}.pill[data-v-7b6f572c]{display:flex;align-items:center;gap:5px;padding:10px 14px;border-radius:99px;border:none;background:#e2e0da;font-family:Outfit,sans-serif;font-size:clamp(12px,3.2vw,13px);font-weight:600;cursor:pointer;color:#1a1a1a;white-space:nowrap;min-height:44px;-webkit-tap-highlight-color:transparent}.pill[data-v-7b6f572c]:active{opacity:.8}.pill-expense[data-v-7b6f572c]{background:#ff6961;color:#fff}.pill-income[data-v-7b6f572c]{background:#52c97a;color:#fff}.dropdown[data-v-7b6f572c]{position:absolute;top:calc(100% + 6px);left:0;background:#fff;border-radius:14px;box-shadow:0 8px 28px #00000024;overflow:hidden;z-index:200;min-width:160px}.dropdown-item[data-v-7b6f572c]{display:block;width:100%;padding:13px 16px;border:none;background:none;text-align:left;font-family:Outfit,sans-serif;font-size:15px;cursor:pointer;color:#1a1a1a;-webkit-tap-highlight-color:transparent;min-height:48px}.dropdown-item[data-v-7b6f572c]:active,.dropdown-item.active[data-v-7b6f572c]{background:#f0efeb;font-weight:700}.input-row[data-v-7b6f572c]{display:flex;align-items:center;gap:10px;background:#fff;border-radius:14px;padding:0 14px;border:1.5px solid #E8E7E2;min-height:52px;flex-shrink:0;cursor:text}.input-icon[data-v-7b6f572c]{font-size:18px;flex-shrink:0}.field[data-v-7b6f572c]{flex:1;border:none;outline:none;font-family:Outfit,sans-serif;font-size:16px;color:#1a1a1a;background:transparent;padding:14px 0}.field[data-v-7b6f572c]::placeholder{color:#bbb}.add-btn[data-v-7b6f572c]{width:100%;padding:0;height:54px;background:#4f46e5;color:#fff;border:none;border-radius:16px;font-family:Outfit,sans-serif;font-size:16px;font-weight:700;cursor:pointer;flex-shrink:0;-webkit-tap-highlight-color:transparent;transition:opacity .15s}.add-btn[data-v-7b6f572c]:active{opacity:.85}.overlay-fade-enter-active[data-v-7b6f572c],.overlay-fade-leave-active[data-v-7b6f572c]{transition:opacity .25s}.overlay-fade-enter-from[data-v-7b6f572c],.overlay-fade-leave-to[data-v-7b6f572c]{opacity:0}.sheet-enter-from[data-v-7b6f572c],.sheet-leave-to[data-v-7b6f572c]{transform:translateY(100%)}.sheet-enter-active[data-v-7b6f572c],.sheet-leave-active[data-v-7b6f572c]{transition:transform .32s cubic-bezier(.32,.72,0,1)}.dropdown-fade-enter-active[data-v-7b6f572c],.dropdown-fade-leave-active[data-v-7b6f572c]{transition:opacity .15s,transform .15s}.dropdown-fade-enter-from[data-v-7b6f572c],.dropdown-fade-leave-to[data-v-7b6f572c]{opacity:0;transform:translateY(-6px)}.overlay[data-v-102b78db]{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:50;display:flex;align-items:flex-end;touch-action:none}.sheet[data-v-102b78db]{width:100%;max-height:calc(85dvh + env(safe-area-inset-bottom));background:#f4f3f0;border-radius:24px 24px 0 0;padding:14px 16px 0;display:flex;flex-direction:column;gap:12px;overflow:hidden}.safe-bottom[data-v-102b78db]{height:env(safe-area-inset-bottom);flex-shrink:0}.swipe-bar[data-v-102b78db]{width:44px;height:5px;background:#d0cfc8;border-radius:99px;margin:0 auto;cursor:pointer;flex-shrink:0;padding:10px 0;box-sizing:content-box}.sheet-header[data-v-102b78db]{display:flex;align-items:flex-start;justify-content:space-between;flex-shrink:0}.sheet-date[data-v-102b78db]{font-size:12px;color:#888;text-transform:capitalize;margin:0 0 2px}.sheet-title[data-v-102b78db]{font-size:clamp(19px,5vw,22px);font-weight:800;color:#1a1a1a;margin:0}.close-btn[data-v-102b78db]{background:#e2e0da;border:none;border-radius:50%;width:36px;height:36px;min-width:44px;min-height:44px;cursor:pointer;font-size:14px;color:#555;display:flex;align-items:center;justify-content:center;-webkit-tap-highlight-color:transparent}.totals-row[data-v-102b78db]{display:flex;gap:8px;flex-shrink:0}.total-chip[data-v-102b78db]{flex:1;padding:10px;border-radius:14px;display:flex;flex-direction:column;gap:2px;min-width:0}.expense-chip[data-v-102b78db]{background:#ffe8e6}.income-chip[data-v-102b78db]{background:#e6f9ee}.net-pos-chip[data-v-102b78db]{background:#e8f0ff}.net-neg-chip[data-v-102b78db]{background:#fff0e6}.chip-label[data-v-102b78db]{font-size:10px;font-weight:700;color:#888;text-transform:uppercase;letter-spacing:.4px;white-space:nowrap}.chip-amount[data-v-102b78db]{font-family:DM Mono,monospace;font-size:clamp(12px,3.2vw,14px);font-weight:500;color:#1a1a1a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.actions-row[data-v-102b78db]{display:flex;align-items:center;gap:8px;flex-shrink:0}.action-btn[data-v-102b78db]{padding:0 14px;height:44px;border-radius:10px;border:none;background:#e2e0da;font-family:Outfit,sans-serif;font-size:14px;font-weight:600;cursor:pointer;color:#1a1a1a;white-space:nowrap;-webkit-tap-highlight-color:transparent}.action-btn.dark[data-v-102b78db]{background:#1a1a1a;color:#fff}.action-btn[data-v-102b78db]:active{opacity:.8}.add-fab[data-v-102b78db]{flex:1;background:#4f46e5;color:#fff;border:none;border-radius:12px;height:44px;font-family:Outfit,sans-serif;font-size:15px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:4px;-webkit-tap-highlight-color:transparent;transition:opacity .15s}.add-fab[data-v-102b78db]:active{opacity:.85}.tx-list[data-v-102b78db]{display:flex;flex-direction:column;gap:8px;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex:1;padding-bottom:4px}.tx-card[data-v-102b78db]{background:#fff;border-radius:14px;padding:13px 14px;display:flex;flex-direction:column;gap:5px;flex-shrink:0}.tx-top[data-v-102b78db]{display:flex;align-items:center;justify-content:space-between;gap:8px}.tx-info[data-v-102b78db]{display:flex;align-items:center;gap:8px;min-width:0}.tx-dot[data-v-102b78db]{width:10px;height:10px;border-radius:50%;flex-shrink:0}.tx-dot.expense[data-v-102b78db]{background:#ff6961}.tx-dot.income[data-v-102b78db]{background:#52c97a}.tx-name[data-v-102b78db]{font-size:clamp(14px,4vw,16px);font-weight:600;color:#1a1a1a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tx-amount[data-v-102b78db]{font-family:DM Mono,monospace;font-size:clamp(13px,3.5vw,15px);font-weight:500;flex-shrink:0}.tx-amount.expense[data-v-102b78db]{color:#e63b30}.tx-amount.income[data-v-102b78db]{color:#2ea85a}.tx-meta[data-v-102b78db]{display:flex;gap:8px;font-size:12px;color:#999;align-items:center}.tx-period[data-v-102b78db]{background:#f0efeb;padding:1px 8px;border-radius:99px;font-size:11px}.empty-msg[data-v-102b78db]{text-align:center;color:#bbb;font-size:14px;padding:24px 0;flex:1;display:flex;align-items:center;justify-content:center}.overlay-fade-enter-active[data-v-102b78db],.overlay-fade-leave-active[data-v-102b78db]{transition:opacity .25s}.overlay-fade-enter-from[data-v-102b78db],.overlay-fade-leave-to[data-v-102b78db]{opacity:0}.sheet-enter-from[data-v-102b78db],.sheet-leave-to[data-v-102b78db]{transform:translateY(100%)}.sheet-enter-active[data-v-102b78db],.sheet-leave-active[data-v-102b78db]{transition:transform .32s cubic-bezier(.32,.72,0,1)}.calendar-wrap[data-v-1cd3d35b]{background:#fff;border-radius:20px;padding:16px 12px;box-shadow:0 2px 16px #0000000f;min-width:0}.cal-nav[data-v-1cd3d35b]{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;padding:0 2px}.month-label[data-v-1cd3d35b]{font-family:Outfit,sans-serif;font-size:clamp(15px,4vw,17px);font-weight:700;color:#1a1a1a;text-transform:capitalize}.nav-btn[data-v-1cd3d35b]{background:#f0efeb;border:none;width:34px;height:34px;font-size:20px;cursor:pointer;color:#1a1a1a;display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border-radius:12px;transition:background .15s;-webkit-tap-highlight-color:transparent}.nav-btn[data-v-1cd3d35b]:active{background:#e2e0da}.day-names[data-v-1cd3d35b]{display:grid;grid-template-columns:repeat(7,1fr);margin-bottom:4px}.day-name[data-v-1cd3d35b]{font-family:Outfit,sans-serif;font-size:clamp(10px,2.5vw,11px);font-weight:700;color:#bbb;text-align:center;text-transform:uppercase;letter-spacing:.3px;padding:4px 0}.days-grid[data-v-1cd3d35b]{display:grid;grid-template-columns:repeat(7,1fr);gap:1px}.day-cell[data-v-1cd3d35b]{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding:3px 1px;border-radius:10px;cursor:pointer;aspect-ratio:1 / 1.15;gap:2px;-webkit-tap-highlight-color:transparent;transition:background .1s;min-height:40px}.day-cell[data-v-1cd3d35b]:active:not(.other-month){background:#f0efeb}.other-month[data-v-1cd3d35b]{opacity:.28;cursor:default}.day-num[data-v-1cd3d35b]{font-family:Outfit,sans-serif;font-size:clamp(12px,3.5vw,14px);font-weight:500;color:#1a1a1a;width:clamp(26px,7vw,32px);height:clamp(26px,7vw,32px);display:flex;align-items:center;justify-content:center;border-radius:50%;flex-shrink:0}.is-today .day-num[data-v-1cd3d35b]{background:#f0efeb;font-weight:700}.is-selected .day-num[data-v-1cd3d35b]{background:#4f46e5;color:#fff;font-weight:700}.dot-row[data-v-1cd3d35b]{display:flex;align-items:center;justify-content:center;gap:2px;flex-wrap:nowrap}.dot[data-v-1cd3d35b]{width:5px;height:5px;border-radius:50%;flex-shrink:0}.dot.expense[data-v-1cd3d35b]{background:#ff6961}.dot.income[data-v-1cd3d35b]{background:#52c97a}.dot-more[data-v-1cd3d35b]{font-family:DM Mono,monospace;font-size:8px;color:#999;line-height:1}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{height:100%;height:100dvh;background:#efede8}body{height:100%;height:100dvh;background:#efede8;font-family:Outfit,sans-serif;overflow:hidden;overscroll-behavior:none}#app{height:100%;height:100dvh}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#d0cfc8;border-radius:99px}.app[data-v-75f3cb6b]{height:100dvh;display:flex;flex-direction:column;max-width:480px;margin:0 auto;position:relative}.header[data-v-75f3cb6b]{flex-shrink:0;padding:calc(env(safe-area-inset-top) + 10px) 14px 10px;background:#efede8}.header-inner[data-v-75f3cb6b]{background:#4f46e5;border-radius:18px;padding:13px 18px;display:flex;align-items:center;justify-content:space-between}.logo[data-v-75f3cb6b]{display:flex;align-items:center;gap:8px}.logo-icon[data-v-75f3cb6b]{font-size:20px;line-height:1}.logo-text[data-v-75f3cb6b]{font-size:20px;font-weight:800;color:#fff;letter-spacing:-.5px}.today-badge[data-v-75f3cb6b]{background:#fff3;color:#fff;font-size:13px;font-weight:600;padding:5px 12px;border-radius:99px;text-transform:capitalize}.main[data-v-75f3cb6b]{flex:1;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;padding:4px 14px calc(env(safe-area-inset-bottom) + 20px);display:flex;flex-direction:column;gap:14px}
