@import url("https://fonts.googleapis.com/css2?family=Inter:ital,wght@0,400;0,500;0,600;0,700;1,400&family=JetBrains+Mono:wght@400;500;600&display=swap");:root{--halo-bg:#0A0B0F;--halo-surface:#14151C;--halo-elevated:#1E2029;--halo-border:#2A2D38;--halo-brand:#8B5CF6;--halo-brand-dim:rgba(139,92,246,0.15);--halo-brand-hover:#7C3AED;--halo-success:#2BE08C;--halo-danger:#FF3A5C;--halo-info:#3DD7E5;--halo-warning:#F5D547;--halo-success-dim:rgba(43,224,140,0.12);--halo-danger-dim:rgba(255,58,92,0.12);--halo-info-dim:rgba(61,215,229,0.12);--halo-warning-dim:rgba(245,213,71,0.12);--halo-text:#E4E6F0;--halo-text-dim:#7A7F99;--halo-font-ui:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--halo-font-mono:"JetBrains Mono","Fira Code","Cascadia Code",monospace;--halo-radius-sm:6px;--halo-radius-md:10px;--halo-radius-lg:14px;--halo-ease:cubic-bezier(0.4,0,0.2,1);--halo-duration-fast:120ms;--halo-duration-base:200ms;--halo-glass-bg:rgba(20,21,28,0.72);--halo-glass-nav-bg:rgba(10,11,15,0.88);--halo-glass-border:rgba(255,255,255,0.07);--halo-glass-highlight:rgba(255,255,255,0.04);--halo-glass-blur:blur(20px) saturate(180%);--halo-glass-shadow:0 4px 24px rgba(0,0,0,0.45),inset 0 1px 0 rgba(255,255,255,0.05)}.halo-stat{position:relative;overflow:hidden;background:var(--halo-glass-bg)!important;backdrop-filter:var(--halo-glass-blur);-webkit-backdrop-filter:var(--halo-glass-blur);border-color:var(--halo-glass-border)!important;box-shadow:var(--halo-glass-shadow);transition:transform var(--halo-duration-base) var(--halo-ease),box-shadow var(--halo-duration-base) var(--halo-ease)}.halo-stat:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--halo-stat-accent,var(--halo-brand))}.glass-card{background:var(--halo-glass-bg)!important;backdrop-filter:var(--halo-glass-blur);-webkit-backdrop-filter:var(--halo-glass-blur);border-color:var(--halo-glass-border)!important;box-shadow:var(--halo-glass-shadow)}.halo-glow-brand{box-shadow:0 0 0 1px var(--halo-brand),0 0 20px rgba(91,107,255,.35)}.halo-amount,.halo-stat-value{font-family:var(--halo-font-mono);font-variant-numeric:tabular-nums;font-feature-settings:"tnum";font-weight:600;letter-spacing:-.02em}.halo-amount-income{color:var(--halo-success)}.halo-amount-expense{color:var(--halo-danger)}.halo-amount-neutral{color:var(--halo-text)}.halo-chip-positive{background:var(--halo-success-dim);color:var(--halo-success)}.halo-chip-negative,.halo-chip-positive{display:inline-flex;align-items:center;gap:3px;padding:2px 8px;border-radius:999px;font-size:11px;font-weight:600;font-family:var(--halo-font-mono)}.halo-chip-negative{background:var(--halo-danger-dim);color:var(--halo-danger)}:focus-visible{outline:2px solid var(--halo-brand);outline-offset:2px;border-radius:var(--halo-radius-sm)}.mantine-Input-input{transition:border-color var(--halo-duration-fast) var(--halo-ease)!important}.mantine-Input-input:focus{border-color:var(--halo-brand)!important}*,:after,:before{box-sizing:border-box}:root{--sat:env(safe-area-inset-top,0px);--sab:env(safe-area-inset-bottom,0px);--sal:env(safe-area-inset-left,0px);--sar:env(safe-area-inset-right,0px);--app-layout-viewport-height:100dvh;--app-visual-viewport-height:100dvh;--app-visual-viewport-top:0px}html{background:radial-gradient(ellipse at -10% -15%,rgba(139,92,246,.18) 0,rgba(139,92,246,.06) 30%,transparent 55%),radial-gradient(ellipse at 115% 55%,rgba(168,85,247,.14) 0,rgba(168,85,247,.04) 30%,transparent 55%),radial-gradient(ellipse at 45% 115%,rgba(61,215,229,.08) 0,rgba(61,215,229,.02) 35%,transparent 55%),#0A0B0F;background-attachment:fixed}body,html{height:100%;margin:0;padding:0;overscroll-behavior:none}body{background:transparent!important}.app-boot-screen{position:fixed;z-index:10000;inset:0;height:var(--app-layout-viewport-height,100dvh);background:radial-gradient(circle at 50% 42%,rgba(139,92,246,.2),transparent 36%),rgba(10,11,15,.62);backdrop-filter:blur(22px) saturate(82%);-webkit-backdrop-filter:blur(22px) saturate(82%);opacity:1;transition:opacity .95s cubic-bezier(.16,1,.3,1),background .95s ease,backdrop-filter .95s cubic-bezier(.16,1,.3,1),-webkit-backdrop-filter .95s cubic-bezier(.16,1,.3,1)}.app-boot-indicator{transform:scale(1);filter:blur(0);opacity:1;transition:transform .85s cubic-bezier(.16,1,.3,1),filter .85s ease,opacity .65s ease}.app-boot-screen[data-phase=revealing]{background:rgba(10,11,15,0);backdrop-filter:blur(0) saturate(100%);-webkit-backdrop-filter:blur(0) saturate(100%);opacity:0}.app-boot-screen[data-phase=revealing] .app-boot-indicator{transform:scale(2.15);filter:blur(14px);opacity:0}.app-stage .bottom-nav-wrap,.app-stage .mantine-AppShell-header{transition-property:translate,opacity,transform}.app-stage[data-boot-phase=loading] .mantine-AppShell-header{translate:0 -115%;opacity:0}.app-stage[data-boot-phase=loading] .bottom-nav-wrap{translate:0 135%;opacity:0}.app-stage[data-boot-phase=ready] .mantine-AppShell-header,.app-stage[data-boot-phase=revealing] .mantine-AppShell-header{translate:0 0;opacity:1;transition-duration:.65s,.42s,.64s;transition-delay:.42s,.42s,0s;transition-timing-function:cubic-bezier(.16,1,.3,1),ease,cubic-bezier(.16,1,.3,1)}.app-stage[data-boot-phase=ready] .bottom-nav-wrap,.app-stage[data-boot-phase=revealing] .bottom-nav-wrap{translate:0 0;opacity:1;transition-duration:.7s,.44s,.64s;transition-delay:.5s,.5s,0s;transition-timing-function:cubic-bezier(.16,1,.3,1),ease,cubic-bezier(.16,1,.3,1)}@media (prefers-reduced-motion:reduce){.app-boot-indicator,.app-boot-screen,.app-stage .bottom-nav-wrap,.app-stage .mantine-AppShell-header{transition-duration:1ms!important;transition-delay:0s!important}}@media (max-width:768px){body,html{overflow:hidden;height:var(--app-layout-viewport-height);min-height:var(--app-layout-viewport-height)}.mantine-AppShell-header{padding-top:env(safe-area-inset-top,0)!important;height:calc(68px + env(safe-area-inset-top, 0px))!important}.mantine-AppShell-main{overflow-y:auto;-webkit-overflow-scrolling:touch;height:var(--app-layout-viewport-height)!important;min-height:0!important;overscroll-behavior-y:contain;padding-top:calc(68px + env(safe-area-inset-top, 0px) + 20px)!important}.mantine-Drawer-header{padding-top:env(safe-area-inset-top,0)}.mantine-Drawer-inner{top:var(--app-visual-viewport-top)!important;bottom:auto!important;height:var(--app-visual-viewport-height)!important}.mantine-Modal-inner{padding:calc(68px + env(safe-area-inset-top, 0px) + 12px) 12px calc(72px + env(safe-area-inset-bottom, 0px) + 26px)!important}.mantine-Modal-content{border-radius:16px!important;width:100%!important;max-height:calc(100dvh - 178px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px))!important;overflow-y:auto!important;overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.mantine-Modal-content::-webkit-scrollbar{display:none;width:0;height:0}.mantine-Modal-header{position:sticky;z-index:2;top:0;background:inherit}.mantine-Modal-body{padding-bottom:12px!important}.mantine-Modal-content:after{display:none}.mantine-AppShell-main,.mantine-Drawer-body,.mantine-Drawer-content,.mobile-header-menu-scroll{scrollbar-width:none;-ms-overflow-style:none}.mantine-AppShell-main::-webkit-scrollbar,.mantine-Drawer-body::-webkit-scrollbar,.mantine-Drawer-content::-webkit-scrollbar,.mobile-header-menu-scroll::-webkit-scrollbar{display:none;width:0;height:0}.mantine-Notifications-root[data-position=top-right]{top:calc(68px + env(safe-area-inset-top, 0px) + 8px)!important;right:12px!important;left:12px!important;width:auto!important}}.mantine-AppShell-header{border-radius:0 0 18px 18px;background:radial-gradient(circle at 15% -80%,rgba(139,92,246,.14),transparent 58%),linear-gradient(rgba(20,19,30,.42),rgba(9,10,15,.58))!important;backdrop-filter:blur(28px) saturate(185%) brightness(.86)!important;-webkit-backdrop-filter:blur(28px) saturate(185%) brightness(.86)!important;border:1px solid rgba(255,255,255,.1);border-top:0;box-shadow:inset 0 -1px 0 rgba(139,92,246,.1),0 8px 28px rgba(0,0,0,.3)}.mobile-header-menu-panel{background:transparent}.mobile-menu-backdrop{position:fixed;z-index:299;top:calc(68px + env(safe-area-inset-top, 0px) + var(--mobile-menu-height, 0px));right:0;bottom:0;left:0;background:rgba(0,0,0,.38);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transition:top .56s cubic-bezier(.16,1,.3,1),opacity .24s ease}@media (max-width:768px){.mantine-AppShell-header{overflow:visible;border:0;border-radius:0;background:transparent!important;box-shadow:none;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}.app-header-surface:before{content:"";position:absolute;z-index:0;top:calc(-1 * env(safe-area-inset-top, 0px));right:0;left:0;height:calc(100% + env(safe-area-inset-top, 0px) + var(--mobile-menu-height, 0px));background:radial-gradient(circle at 15% -80%,rgba(139,92,246,.14),transparent 58%),linear-gradient(rgba(20,19,30,.88),rgba(9,10,15,.95));border:1px solid rgba(255,255,255,.1);border-top:0;border-radius:0 0 18px 18px;box-shadow:inset 0 -1px 0 rgba(139,92,246,.1),0 8px 28px rgba(0,0,0,.3);backdrop-filter:blur(18px) saturate(165%) brightness(.88);-webkit-backdrop-filter:blur(18px) saturate(165%) brightness(.88);pointer-events:none;transition:height .56s cubic-bezier(.16,1,.3,1),border-radius .42s ease,box-shadow .42s ease}.app-header-surface[data-menu-opened]:before{border-radius:0 0 22px 22px;box-shadow:inset 0 -1px 0 rgba(139,92,246,.12),0 18px 42px rgba(0,0,0,.46)}.app-header-main-row,.mobile-header-menu-panel{position:relative;z-index:1}}*{-webkit-overflow-scrolling:touch}[role=button],a,button{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.tap-target{transition:transform .12s ease,opacity .12s ease}.tap-target:active{transform:scale(.97);opacity:.85}.amount{font-variant-numeric:tabular-nums;font-feature-settings:"tnum";font-family:JetBrains Mono,Fira Code,monospace}@media (hover:hover){.interactive-card{transition:transform .18s ease,box-shadow .18s ease}.interactive-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px rgba(0,0,0,.1)}}.mantine-Modal-content:after{content:"";position:sticky;bottom:0;left:0;right:0;display:block;height:48px;background:linear-gradient(180deg,transparent,rgba(14,15,22,.85) 40%,rgba(14,15,22,.98));pointer-events:none;flex-shrink:0}@media (max-width:768px){.mantine-Modal-body .mantine-Button-root{min-height:44px;font-size:.938rem}.mantine-ActionIcon-root:focus,.mantine-ActionIcon-root:focus-visible,.mantine-CloseButton-root:focus,.mantine-CloseButton-root:focus-visible,.mantine-Modal-close:focus,.mantine-Modal-close:focus-visible{outline:none!important;box-shadow:none!important}}.mantine-Drawer-content{transition:transform .3s cubic-bezier(.32,.72,0,1)!important}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes ptr-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes page-fade-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.page-enter{animation:page-fade-in .18s ease forwards}@media (max-width:768px){.mobile-bottom-space{padding-bottom:calc(92px + env(safe-area-inset-bottom, 0px))}}@media (min-width:769px){.bottom-nav-bar,.bottom-nav-wrap{display:none!important}}.bottom-nav-wrap{position:fixed;z-index:1000;right:10px;top:calc(var(--app-visual-viewport-top) + var(--app-visual-viewport-height) - 74px - 4px - env(safe-area-inset-bottom, 0px));bottom:auto;left:10px;transition:transform .64s cubic-bezier(.16,1,.3,1),opacity .36s ease}.bottom-nav-wrap[data-collapsed=true]{pointer-events:none;opacity:.72;transform:translateY(calc(100% - 9px)) scale(.985);transition-duration:.82s,.48s;transition-timing-function:cubic-bezier(.22,.82,.16,1),ease}.bottom-nav-wrap[data-standalone=true]{right:0;top:calc(var(--app-visual-viewport-top) + var(--app-visual-viewport-height) - 90px);bottom:auto;left:0}.bottom-nav-bar{--active-index:1;--active-color:139,92,246;position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));height:74px;overflow:hidden;border:1px solid rgba(255,255,255,.1);border-radius:24px;background:radial-gradient(circle at 18% -80%,rgba(139,92,246,.13),transparent 58%),linear-gradient(rgba(20,19,30,.82),rgba(9,10,15,.9));box-shadow:inset 0 1px 0 rgba(255,255,255,.08),inset 0 -1px 0 rgba(139,92,246,.09),0 8px 22px rgba(0,0,0,.3);backdrop-filter:blur(12px) saturate(145%) brightness(.88);-webkit-backdrop-filter:blur(12px) saturate(145%) brightness(.88);isolation:isolate;will-change:transform}.bottom-nav-wrap[data-standalone=true] .bottom-nav-bar{height:90px;padding-bottom:16px;border-right:0;border-bottom:0;border-left:0;border-radius:24px 24px 0 0;will-change:auto}.bottom-nav-wrap[data-standalone=true] .glass-nav-light{top:0;bottom:16px;background:radial-gradient(circle 42px at 50% 50%,rgba(var(--active-color),.4) 0,rgba(var(--active-color),.31) 20%,rgba(var(--active-color),.2) 42%,rgba(var(--active-color),.09) 66%,rgba(var(--active-color),.025) 84%,rgba(var(--active-color),0) 100%);filter:none;transition:left .26s cubic-bezier(.22,1,.36,1),opacity .15s ease}.bottom-nav-wrap[data-overlay-open=true] .bottom-nav-bar{border-color:transparent;background:transparent;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.bottom-nav-modal-surface{border:1px solid rgba(255,255,255,.08)!important;border-bottom:0!important;border-radius:26px 26px 0 0!important;background:radial-gradient(circle at 50% 112%,rgba(139,92,246,.1),transparent 48%),linear-gradient(rgba(20,19,30,.94),rgba(9,10,15,.97))!important;box-shadow:0 -18px 44px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.06)!important;backdrop-filter:blur(16px) saturate(150%) brightness(.9)!important;-webkit-backdrop-filter:blur(16px) saturate(150%) brightness(.9)!important}.bottom-nav-modal-header{min-height:44px!important;padding:8px 16px 4px!important;background:transparent!important}.bottom-nav-modal-body{padding-top:4px!important}.bottom-nav-wrap[data-standalone=true] .bottom-nav-bar:after{bottom:16px;box-shadow:none;transition:left .26s cubic-bezier(.22,1,.36,1),opacity .15s ease}.bottom-nav-wrap[data-standalone=true] .glass-nav-icon,.bottom-nav-wrap[data-standalone=true] .glass-nav-item[data-active] .glass-nav-icon{filter:none;transition:color .16s ease}.bottom-nav-bar[data-active=coach]{--active-index:0;--active-color:59,130,246}.bottom-nav-bar[data-active=entry]{--active-index:1;--active-color:236,72,153}.bottom-nav-bar[data-active=shopping]{--active-index:2;--active-color:52,211,153}.glass-nav-light{position:absolute;z-index:-1;top:7px;bottom:7px;left:calc((100% / 3) * var(--active-index));width:calc(100% / 3);opacity:0;border-radius:999px;background:radial-gradient(circle,rgba(var(--active-color),.46) 0,rgba(var(--active-color),.14) 38%,transparent 72%);filter:blur(15px);transition:left .42s cubic-bezier(.22,1,.36,1),opacity .18s ease,background .26s ease}.bottom-nav-bar[data-active] .glass-nav-light{opacity:1}.bottom-nav-bar:after{content:"";position:absolute;z-index:2;bottom:0;left:calc(var(--active-index) * (100% / 3) + (100% / 6) - 17px);width:34px;height:2px;opacity:0;background:linear-gradient(90deg,transparent,rgba(var(--active-color),.95),transparent);box-shadow:0 -2px 10px rgba(var(--active-color),.8);transition:left .42s cubic-bezier(.22,1,.36,1),opacity .18s ease}.bottom-nav-bar[data-active]:after{opacity:1}.glass-nav-item{position:relative;z-index:1;display:flex;min-width:0;height:74px;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:rgba(235,232,245,.42);transition:color .22s ease,transform .36s cubic-bezier(.22,1,.36,1)}.glass-nav-item[data-active]{transform:translateY(-1px)}.glass-nav-item:active{transform:scale(.94)}.glass-nav-icon{display:grid;width:32px;height:32px;place-items:center;border-radius:50%;color:rgb(139,137,153);transition:color .22s ease,filter .22s ease}.glass-nav-icon svg{shape-rendering:geometricPrecision}.glass-nav-item[data-active] .glass-nav-icon{color:rgb(var(--active-color));filter:drop-shadow(0 0 10px rgba(var(--active-color),.9))}.glass-nav-item[data-active] .glass-nav-icon svg{width:25px;height:25px}.glass-nav-item[data-action=entry][data-active] .glass-nav-icon svg{width:32px;height:32px}.glass-nav-label{color:inherit;font-size:11px;font-weight:600;line-height:1;text-rendering:geometricPrecision}.glass-nav-item[data-active] .glass-nav-label{color:rgba(255,255,255,.96);font-size:12px;font-weight:700}@media (prefers-reduced-motion:reduce){.bottom-nav-bar:after,.glass-nav-item,.glass-nav-light{transition:none}}.mantine-ActionIcon-root{transition:transform .13s ease,opacity .13s ease!important;will-change:transform}@media (hover:hover){.mantine-ActionIcon-root:hover{transform:scale(1.09)!important}}.mantine-ActionIcon-root:active{transform:scale(.91)!important;opacity:.75}.mantine-Button-root{transition:transform .12s ease,box-shadow .18s ease!important}.mantine-Button-root:not(:disabled):active{transform:scale(.97)!important}.mantine-UnstyledButton-root{transition:opacity .12s ease}.mantine-UnstyledButton-root:active{opacity:.7}@media (hover:hover){.mantine-Paper-root{transition:box-shadow .22s ease,border-color .22s ease,transform .2s ease}.interactive-card:hover{transform:translateY(-2px)!important;box-shadow:0 8px 32px rgba(0,0,0,.25),inset 0 1px 0 rgba(255,255,255,.07)!important;border-color:rgba(255,255,255,.12)!important}}.brand-gradient-text{background:linear-gradient(135deg,#5B6BFF,#A855F7);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.02em}@keyframes glow-pulse{0%,to{opacity:1}50%{opacity:.55}}.badge-live{animation:glow-pulse 2.4s ease-in-out infinite}.mantine-SegmentedControl-control{transition:background .16s ease!important}.mantine-Input-input:focus,.mantine-Input-input:focus-within{transition:box-shadow .15s ease,border-color .15s ease!important}.page-enter{animation:page-fade-in .2s ease forwards}