@import url("https://fonts.googleapis.com/css2?family=Archivo:wght@400;500;600;700&family=Newsreader:opsz,wght@6..72,400;6..72,500;6..72,600&display=swap");*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246/0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgb(59 130 246/0.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }

/*
! tailwindcss v3.4.19 | MIT License | https://tailwindcss.com
*/*,:after,:before{box-sizing:border-box;border:0 solid #e5e7eb}:after,:before{--tw-content:""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--background:210 20% 98%;--foreground:222 20% 12%;--card:0 0% 100%;--card-foreground:222 20% 12%;--primary:173 74% 26%;--primary-foreground:0 0% 100%;--secondary:210 18% 92%;--secondary-foreground:222 20% 18%;--muted:210 18% 94%;--muted-foreground:220 9% 43%;--accent:34 88% 92%;--accent-foreground:24 60% 20%;--destructive:346 77% 42%;--destructive-foreground:0 0% 100%;--border:214 16% 86%;--input:214 16% 86%;--ring:173 74% 26%;--radius:0.5rem}*{border-color:hsl(var(--border))}body{background-color:hsl(var(--background));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"rlig" 1,"calt" 1}.metric-value,body{color:hsl(var(--foreground))}.metric-value{font-size:1.5rem;line-height:2rem;font-weight:600;letter-spacing:0}.budget-auth-page{display:grid;grid-template-columns:1.05fr 1fr;min-height:100vh;transition:background-color .25s ease,color .25s ease}.budget-auth-brand{background:var(--budget-panel);border-right:1px solid var(--budget-hairline);display:flex;flex-direction:column;justify-content:space-between;min-height:100vh;overflow:hidden;padding:56px 60px;position:relative}.budget-auth-brand-top{align-items:baseline;display:flex;gap:10px}.budget-auth-wordmark{color:var(--budget-ink);font-family:Newsreader,Georgia,serif;font-size:27px;font-weight:600;letter-spacing:0;line-height:1}.budget-auth-lede{max-width:38ch}.budget-auth-eyebrow{color:var(--budget-muted);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.budget-auth-lede h1{color:var(--budget-ink);font-family:Newsreader,Georgia,serif;font-size:clamp(40px,4.4vw,62px);font-weight:500;letter-spacing:0;line-height:1.02;margin-top:22px}.budget-auth-lede h1 em{color:var(--budget-accent);font-style:italic}.budget-auth-lede p:last-child{color:var(--budget-muted);font-family:Newsreader,Georgia,serif;font-size:21px;line-height:1.45;margin-top:22px}.budget-auth-brand-foot{color:var(--budget-faint);font-size:13px;font-weight:500;letter-spacing:0}.budget-auth-form-side{align-items:center;background:var(--budget-bg);display:flex;justify-content:center;min-height:100vh;padding:48px;position:relative}.budget-auth-topbar{position:absolute;right:30px;top:26px}.budget-auth-theme{align-items:center;background:var(--budget-surface);border:1px solid var(--budget-hairline);border-radius:10px;color:var(--budget-ink);cursor:pointer;display:flex;height:40px;justify-content:center;transition:background .12s ease,border-color .12s ease;width:40px}.budget-auth-theme:hover{background:color-mix(in oklab,var(--budget-ink) 6%,transparent)}.budget-auth-theme svg{height:20px;width:20px}.budget-auth-card{width:min(100%,384px)}.budget-auth-card h2{color:var(--budget-ink);font-family:Newsreader,Georgia,serif;font-size:38px;font-weight:500;letter-spacing:0;line-height:1.04;margin-top:12px}.budget-auth-copy{color:var(--budget-muted);font-size:15.5px;line-height:1.55;margin-top:10px}.budget-auth-action-stack{display:grid;gap:12px;margin-top:34px}.budget-auth-sso{align-items:center;background:var(--budget-surface);border:1px solid var(--budget-hairline);border-radius:11px;color:var(--budget-ink);cursor:pointer;display:flex;font-size:14.5px;font-weight:600;gap:11px;justify-content:center;min-height:50px;padding:13px 15px;position:relative;transition:background .12s ease,border-color .12s ease,transform 40ms ease;width:100%}.budget-auth-sso:hover{background:color-mix(in oklab,var(--budget-ink) 5%,transparent);border-color:var(--budget-hairline-strong)}.budget-auth-sso:active{transform:translateY(1px)}.budget-auth-sso:disabled{cursor:not-allowed;opacity:.58}.budget-auth-sso-arrow{height:16px;position:absolute;right:16px;width:16px}.budget-auth-footnote{color:var(--budget-faint);font-size:13px;line-height:1.45}.budget-auth-warning{border:1px solid color-mix(in oklab,var(--budget-accent) 34%,var(--budget-hairline));border-radius:11px;color:var(--budget-muted);font-size:13px;line-height:1.45;margin-top:18px;padding:12px}.budget-auth-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}.budget-auth-link,.budget-auth-secondary-button{align-items:center;background:var(--budget-surface);border:1px solid var(--budget-hairline);border-radius:11px;color:var(--budget-ink);display:inline-flex;font-size:14px;font-weight:600;gap:9px;min-height:42px;padding:0 14px;transition:background .12s ease,border-color .12s ease}.budget-auth-link:hover,.budget-auth-secondary-button:hover{background:color-mix(in oklab,var(--budget-ink) 5%,transparent);border-color:var(--budget-hairline-strong)}.budget-auth-secondary-button svg{height:17px;width:17px}.budget-app-root{--budget-bg:oklch(0.987 0.004 80);--budget-surface:oklch(1 0 0);--budget-panel:oklch(0.975 0.006 80);--budget-ink:oklch(0.24 0.012 60);--budget-muted:oklch(0.52 0.012 65);--budget-faint:oklch(0.68 0.01 70);--budget-hairline:oklch(0.905 0.006 75);--budget-hairline-strong:oklch(0.84 0.008 70);--budget-grid:oklch(0.93 0.005 75);--budget-cell-empty:oklch(0.945 0.004 80);--budget-accent:oklch(0.585 0.132 38);min-height:100vh;background:var(--budget-bg);color:var(--budget-ink);font-family:Archivo,system-ui,sans-serif;--background:48 33% 99%;--foreground:36 18% 14%;--card:0 0% 100%;--card-foreground:36 18% 14%;--primary:16 58% 46%;--primary-foreground:0 0% 100%;--secondary:42 18% 94%;--secondary-foreground:36 18% 18%;--muted:42 18% 94%;--muted-foreground:36 9% 43%;--accent:24 70% 92%;--accent-foreground:20 54% 22%;--border:36 16% 86%;--input:36 16% 86%;--ring:16 58% 46%}.budget-theme-dark,html[data-budget-theme=dark] .budget-app-root{--budget-bg:oklch(0.195 0.008 70);--budget-surface:oklch(0.235 0.008 70);--budget-panel:oklch(0.255 0.009 70);--budget-ink:oklch(0.955 0.004 85);--budget-muted:oklch(0.72 0.008 78);--budget-faint:oklch(0.5 0.008 75);--budget-hairline:oklch(0.34 0.008 72);--budget-hairline-strong:oklch(0.44 0.01 72);--budget-grid:oklch(0.3 0.008 72);--budget-cell-empty:oklch(0.285 0.008 72);--background:36 14% 11%;--foreground:48 20% 96%;--card:36 14% 15%;--card-foreground:48 20% 96%;--primary:16 58% 54%;--primary-foreground:36 16% 10%;--secondary:36 12% 20%;--secondary-foreground:48 18% 92%;--muted:36 12% 20%;--muted-foreground:42 8% 66%;--accent:20 44% 22%;--accent-foreground:38 38% 88%;--border:36 12% 26%;--input:36 12% 26%;--ring:16 58% 54%}.budget-app-main{display:flex;min-height:calc(100vh - 64px);justify-content:center;padding:44px 48px 80px;transition:filter .18s ease,opacity .18s ease}.budget-app-main-data{padding-right:clamp(18px,2vw,32px);padding-left:clamp(18px,2vw,32px)}.budget-app-main-loading{filter:blur(2px);opacity:.76;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.budget-product-content{display:flex;width:100%;max-width:1280px;min-width:0;flex-direction:column;gap:20px}.budget-product-content-data{max-width:1880px}.budget-product-header{min-width:0;border-bottom:1px solid hsl(var(--border)/.8);padding-bottom:16px}.budget-topbar{position:sticky;top:0;z-index:40;height:64px;flex-shrink:0;justify-content:space-between;padding:0 22px;background:color-mix(in oklab,var(--budget-bg) 88%,transparent);backdrop-filter:blur(10px)}.budget-period-picker,.budget-period-year-row,.budget-topbar,.budget-topbar-actions{display:flex;align-items:center}.budget-topbar-actions{gap:10px}.budget-period-picker{position:relative;gap:2px}.budget-shell-icon-button{display:inline-flex;width:40px;height:40px;align-items:center;justify-content:center;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--budget-ink);cursor:pointer;transition:background .12s ease,border-color .12s ease,color .12s ease}.budget-shell-icon-button:hover{background:color-mix(in oklab,var(--budget-ink) 7%,transparent)}.budget-shell-icon-button svg{width:20px;height:20px;stroke-width:1.6}.budget-ask-topbar-button{position:relative;color:var(--budget-accent)}.budget-ask-topbar-button-open{border-color:var(--budget-accent);background:color-mix(in oklab,var(--budget-accent) 12%,transparent)}.budget-ask-unread-dot{position:absolute;top:8px;right:8px;width:6px;height:6px;border-radius:999px;background:var(--budget-accent)}.budget-period-trigger{display:inline-flex;align-items:center;gap:9px;border:1px solid var(--budget-hairline);border-radius:10px;background:var(--budget-surface);color:var(--budget-ink);cursor:pointer;font-family:Archivo,system-ui,sans-serif;font-size:14px;font-weight:600;padding:8px 14px;text-transform:capitalize;transition:border-color .12s ease,background .12s ease}.budget-period-trigger svg{width:17px;height:17px;color:var(--budget-muted);stroke-width:1.6}.budget-period-trigger-loading{border-color:color-mix(in oklab,var(--budget-accent) 38%,var(--budget-hairline));background:color-mix(in oklab,var(--budget-accent) 8%,var(--budget-surface))}.budget-period-trigger .budget-period-spinner{color:var(--budget-accent);animation:budget-spin .85s linear infinite}.budget-period-trigger .budget-period-chevron-open{transform:rotate(180deg)}.budget-amount-range{width:min(100%,360px);min-width:min(100%,260px)}.budget-amount-range-limits,.budget-amount-range-values{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;color:hsl(var(--muted-foreground))}.budget-amount-range-values{font-weight:600;color:hsl(var(--foreground))}.budget-amount-range-track{position:relative;height:30px;margin:2px 8px 0;cursor:pointer;touch-action:none}.budget-amount-range-track:before{right:0;left:0;background:hsl(var(--muted));content:""}.budget-amount-range-fill,.budget-amount-range-track:before{position:absolute;top:50%;height:6px;border-radius:999px;transform:translateY(-50%)}.budget-amount-range-fill,.budget-amount-range-thumb{background:hsl(var(--primary))}.budget-amount-range-thumb{position:absolute;top:50%;z-index:1;width:18px;height:18px;border:2px solid hsl(var(--background));border-radius:999px;box-shadow:0 1px 4px hsl(var(--foreground)/.28);cursor:grab;transform:translate(-50%,-50%)}.budget-amount-range-thumb:active{cursor:grabbing}.budget-amount-range-thumb:focus-visible{outline:2px solid hsl(var(--ring));outline-offset:3px}.budget-amount-range-disabled{opacity:.45;pointer-events:none}.budget-period-popover{position:absolute;top:100%;right:0;z-index:80;width:268px;margin-top:10px;border:1px solid var(--budget-hairline);border-radius:14px;background:var(--budget-surface);box-shadow:0 16px 44px rgba(0,0,0,.18);padding:16px}.budget-period-year-row{justify-content:space-between;margin-bottom:14px}.budget-period-year-row span{font-family:Newsreader,Georgia,serif;font-size:19px;font-weight:600}.budget-month-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.budget-month-button{border:0;border-radius:9px;background:transparent;color:var(--budget-ink);cursor:pointer;font-family:Archivo,system-ui,sans-serif;font-size:13.5px;font-weight:500;padding:11px 0;text-transform:capitalize;transition:background .12s ease,color .12s ease}.budget-month-button:hover{background:color-mix(in oklab,var(--budget-ink) 7%,transparent)}.budget-month-button-selected{background:var(--budget-accent);color:var(--budget-surface);font-weight:700}.budget-this-period-button{width:100%;margin-top:14px;border:1px solid var(--budget-hairline);border-radius:9px;background:transparent;color:var(--budget-muted);cursor:pointer;font-family:Archivo,system-ui,sans-serif;font-size:13px;font-weight:600;padding:9px 0}.budget-sidebar-scrim{position:fixed;inset:0;z-index:60;background:rgba(20,16,12,.34);backdrop-filter:blur(2px);opacity:0;pointer-events:none;transition:opacity .26s ease}.budget-sidebar-scrim-open{opacity:1;pointer-events:auto}.budget-sidebar{position:fixed;top:0;bottom:0;left:0;z-index:70;display:flex;width:284px;max-width:calc(100vw - 20px);flex-direction:column;border-right:1px solid var(--budget-hairline);background:var(--budget-surface);color:var(--budget-ink);padding:22px 16px;transform:translateX(-100%);transition:transform .28s cubic-bezier(.3,.7,.3,1)}.budget-sidebar-open{transform:translateX(0)}.budget-sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:0 6px 18px}.budget-sidebar-wordmark{display:flex;align-items:baseline;gap:8px}.budget-sidebar-wordmark span{font-family:Newsreader,Georgia,serif;font-size:25px;font-weight:600;line-height:1}.budget-sidebar-wordmark em{color:var(--budget-faint);font-family:Archivo,system-ui,sans-serif;font-size:11px;font-style:normal;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.budget-sidebar-footer,.budget-sidebar-nav{display:flex;flex-direction:column;gap:3px}.budget-sidebar-scroll{min-height:0;flex:1;overflow-y:auto;padding:18px 2px 12px}.budget-sidebar-section{display:grid;gap:10px;margin-bottom:18px}.budget-sidebar-section-title{color:var(--budget-faint);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.budget-sidebar-nav-item{display:flex;width:100%;align-items:center;gap:13px;border:0;border-radius:9px;background:transparent;color:var(--budget-ink);cursor:pointer;font-family:Archivo,system-ui,sans-serif;font-size:14.5px;font-weight:500;padding:11px 14px;text-align:left;transition:background .12s ease,color .12s ease}.budget-sidebar-nav-item:hover{background:color-mix(in oklab,var(--budget-ink) 6%,transparent)}.budget-sidebar-nav-item svg{width:20px;height:20px;opacity:.75;stroke-width:1.7}.budget-sidebar-nav-item-active{background:color-mix(in oklab,var(--budget-accent) 12%,transparent);color:var(--budget-accent);font-weight:600}.budget-sidebar-nav-item-active svg{opacity:1}.budget-sidebar-status{display:flex;align-items:flex-start;gap:8px;border:1px solid var(--budget-hairline);border-radius:9px;color:var(--budget-muted);font-size:12px;padding:10px}.budget-sidebar-status svg{width:16px;height:16px;flex:0 0 auto;color:var(--budget-accent)}.budget-sidebar-footer{border-top:1px solid var(--budget-hairline);padding-top:12px}.budget-sidebar-user{display:flex;align-items:center;gap:11px;padding:14px 8px 2px}.budget-sidebar-avatar{display:flex;width:34px;height:34px;flex:0 0 auto;align-items:center;justify-content:center;border-radius:17px;background:color-mix(in oklab,var(--budget-accent) 22%,var(--budget-surface));color:var(--budget-accent);font-family:Newsreader,Georgia,serif;font-size:16px;font-weight:600}img.budget-sidebar-avatar{display:block;-o-object-fit:cover;object-fit:cover}.budget-sidebar-user-name{color:var(--budget-ink);font-size:13.5px;font-weight:600;line-height:1.3}.budget-sidebar-user-sub{color:var(--budget-faint);font-size:12px;line-height:1.3}.budget-board{box-sizing:border-box;width:min(100%,1440px);margin:0 auto}.budget-masthead{display:flex;align-items:flex-end;justify-content:space-between;gap:32px}.budget-masthead h1{margin-top:10px;font-family:Newsreader,Georgia,serif;font-size:clamp(40px,4vw,54px);font-weight:500;line-height:1;letter-spacing:0}.budget-masthead-spacer{height:30px}.budget-period-meta{text-align:right}.budget-period-meta p{margin-top:10px;color:var(--budget-faint);font-size:15px}.budget-ai-loading{display:inline-flex;grid-column:2;align-items:center;gap:10px;color:var(--budget-muted);font-size:14px;line-height:1.4}.budget-ai-spinner{width:16px;height:16px;flex:0 0 auto;border:2px solid color-mix(in oklab,var(--budget-muted) 25%,transparent);border-top-color:hsl(var(--primary));border-radius:999px;animation:budget-spin .8s linear infinite}@keyframes budget-spin{to{transform:rotate(1turn)}}.budget-ai-rich{display:grid;gap:6px}.budget-ai-rich p{margin:0}.budget-ai-token-money{color:var(--budget-ink);font-weight:800}.budget-ai-token-em,.budget-ai-token-keyword{color:hsl(var(--primary));font-style:italic;font-weight:400}.budget-ask-scrim{position:fixed;inset:0;z-index:90;background:rgba(20,16,12,.34);backdrop-filter:blur(2px);opacity:0;pointer-events:none;transition:opacity .26s ease}.budget-ask-scrim-open{opacity:1;pointer-events:auto}.budget-ask-drawer{position:fixed;top:0;right:0;bottom:0;z-index:100;width:min(468px,100vw);overflow-y:auto;border-left:1px solid var(--budget-hairline);background:var(--budget-bg);box-shadow:none;padding:30px 32px;transform:translateX(100%);transition:transform .3s cubic-bezier(.3,.7,.3,1),box-shadow .3s ease}.budget-ask-drawer-open{box-shadow:-18px 0 44px rgba(0,0,0,.12);transform:translateX(0)}.budget-ask-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.budget-ask-lead{margin-top:8px;color:var(--budget-muted);font-family:Newsreader,Georgia,serif;font-size:20px;line-height:1.25}.budget-ask-close{display:inline-flex;width:34px;height:34px;flex:0 0 auto;align-items:center;justify-content:center;border:0;border-radius:9px;background:transparent;color:var(--budget-muted);cursor:pointer;transition:background .12s ease}.budget-ask-close:hover{background:color-mix(in oklab,var(--budget-ink) 7%,transparent)}.budget-ask-close svg{width:17px;height:17px}.budget-ask-form{display:flex;align-items:center;gap:10px;border:1px solid var(--budget-hairline);border-radius:14px;background:var(--budget-surface);box-shadow:0 1px 2px color-mix(in oklab,var(--budget-ink) 6%,transparent);padding:6px 6px 6px 18px}.budget-ask-form-icon{width:18px;height:18px;flex:0 0 auto;color:var(--budget-accent)}.budget-ask-form input{min-width:0;flex:1;outline:0;background:transparent;color:var(--budget-ink);font-size:15.5px;padding:10px 0}.budget-ask-form button,.budget-ask-form input{border:0;font-family:Archivo,system-ui,sans-serif}.budget-ask-form button{display:inline-flex;flex:0 0 auto;align-items:center;gap:8px;border-radius:10px;background:var(--budget-accent);color:var(--budget-surface);cursor:pointer;font-size:14px;font-weight:700;padding:11px 18px;transition:background .15s ease,color .15s ease,opacity .15s ease}.budget-ask-form button:disabled{background:color-mix(in oklab,var(--budget-ink) 10%,transparent);color:var(--budget-faint);cursor:default}.budget-ask-form button svg{width:16px;height:16px}.budget-ask-suggestions{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.budget-ask-suggestions button{border:1px solid var(--budget-hairline);border-radius:999px;background:transparent;color:var(--budget-muted);cursor:pointer;font-family:Archivo,system-ui,sans-serif;font-size:13px;padding:7px 14px;transition:border-color .12s ease,color .12s ease}.budget-ask-suggestions button:hover:not(:disabled){border-color:var(--budget-accent);color:var(--budget-accent)}.budget-ask-suggestions button:disabled{cursor:default;opacity:.6}.budget-ask-answer{margin-top:18px;border-left:3px solid var(--budget-accent);padding:2px 0 2px 20px}.budget-ask-asked{margin-bottom:8px;color:var(--budget-faint);font-family:Archivo,system-ui,sans-serif;font-size:13px}.budget-ask-thinking{display:flex;height:26px;align-items:center;gap:6px}.budget-ask-thinking span{width:7px;height:7px;border-radius:999px;background:var(--budget-accent);animation:budget-ask-dot 1s ease-in-out infinite;opacity:.5}.budget-ask-thinking span:nth-child(2){animation-delay:.16s}.budget-ask-thinking span:nth-child(3){animation-delay:.32s}@keyframes budget-ask-dot{0%,80%,to{opacity:.4;transform:translateY(0)}40%{opacity:1;transform:translateY(-5px)}}.budget-ask-error{color:#be123c;font-family:Archivo,system-ui,sans-serif;font-size:15px}.budget-ask-answer-text{color:var(--budget-ink);font-family:Newsreader,Georgia,serif;font-size:19px;line-height:1.5;text-wrap:pretty;white-space:pre-wrap}.budget-ask-answer-text .budget-ai-rich{gap:8px}.budget-eyebrow{color:var(--budget-muted);font-family:Archivo,system-ui,sans-serif;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.budget-rule{height:1px;margin:30px 0;background:var(--budget-hairline)}.budget-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.budget-metric{min-width:0}.budget-metric+.budget-metric{border-left:1px solid var(--budget-hairline);padding-left:44px}.budget-metric-value{margin-top:16px}.budget-sub-label{margin-top:12px;color:var(--budget-faint);font-size:13px}.budget-upcoming-panel{display:grid;grid-template-columns:minmax(220px,.55fr) minmax(0,1fr);gap:26px;margin-top:34px;border-top:1px solid var(--budget-hairline);padding:24px 0}.budget-upcoming-copy{min-width:0}.budget-upcoming-copy h2{margin-top:10px;font-family:Newsreader,Georgia,serif;font-size:clamp(28px,3vw,38px);font-weight:500;line-height:1.05;letter-spacing:0}.budget-upcoming-copy p{max-width:30rem;margin-top:12px;color:var(--budget-muted);font-size:14px;line-height:1.55}.budget-upcoming-grid{display:grid;min-width:0;grid-template-columns:repeat(5,minmax(0,1fr))}.budget-upcoming-grid>div{display:grid;min-width:0;gap:9px;padding:2px 18px}.budget-upcoming-grid>div+div{border-left:1px solid var(--budget-hairline)}.budget-upcoming-grid span{color:var(--budget-muted);font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.budget-upcoming-grid strong{color:var(--budget-ink);font-family:Newsreader,Georgia,serif;font-size:clamp(22px,2vw,30px);font-weight:500;line-height:1;letter-spacing:0;white-space:nowrap}.budget-upcoming-grid em{min-width:0;color:var(--budget-faint);font-size:12px;font-style:normal;line-height:1.35}.budget-upcoming-klarna strong{color:var(--budget-accent)}.budget-money{color:var(--budget-ink);font-family:Newsreader,Georgia,serif;font-size:44px;font-variant-numeric:tabular-nums;font-weight:500;letter-spacing:0;line-height:1;white-space:nowrap}.budget-money span{margin-left:.13em;color:var(--budget-faint);font-family:Archivo,system-ui,sans-serif;font-size:.4em;font-weight:500}.budget-money-accent{color:var(--budget-accent)}.budget-money-category{font-size:22px}.budget-section-lead{margin-top:8px;margin-bottom:18px;color:var(--budget-muted);font-family:Newsreader,Georgia,serif;font-size:20px}.budget-line-wrap{position:relative;width:100%}.budget-line-chart{display:block;width:100%;height:272px;min-height:272px;overflow:visible}.budget-grid-line{stroke:var(--budget-grid);stroke-width:1}.budget-axis-label{fill:var(--budget-faint);font-family:Archivo,system-ui,sans-serif;font-size:12px}.budget-actual-line{fill:none;stroke:var(--budget-accent);stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5}.budget-projection-line{stroke:var(--budget-accent);opacity:.55}.budget-profile-line,.budget-projection-line{fill:none;stroke-dasharray:3 5;stroke-width:1.5}.budget-profile-line{stroke-linecap:round;stroke-linejoin:round;opacity:.82}.budget-profile-lines{opacity:0;pointer-events:none;transition:opacity .16s ease}.budget-line-wrap:hover .budget-profile-lines,.budget-profile-lines-active{opacity:1}.budget-profile-projection-line{fill:none;stroke-dasharray:3 5;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5;opacity:.48}.budget-today-line{stroke:var(--budget-ink);stroke-dasharray:2 3;stroke-width:1;opacity:.4}.budget-hover-line{stroke:var(--budget-accent);stroke-dasharray:2 4;stroke-width:1.2;opacity:.75}.budget-hover-dot{fill:var(--budget-accent);stroke:var(--budget-surface);stroke-width:2}.budget-line-hitarea{fill:transparent;cursor:crosshair;pointer-events:all}.budget-current-dot{fill:var(--budget-accent);stroke:var(--budget-surface);stroke-width:2}.budget-line-legend{position:absolute;right:clamp(16px,5vw,70px);bottom:42px;z-index:12;display:flex;flex-wrap:wrap;gap:10px 18px;max-width:min(520px,calc(100% - 32px));border:1px solid color-mix(in oklab,var(--budget-hairline) 82%,transparent);border-radius:999px;background:color-mix(in oklab,var(--budget-surface) 92%,transparent);box-shadow:0 10px 28px rgba(0,0,0,.08);color:var(--budget-muted);font-family:Archivo,system-ui,sans-serif;font-size:12px;opacity:0;padding:8px 11px;pointer-events:none;transform:translateY(4px);transition:opacity .14s ease,transform .14s ease,visibility .14s ease;visibility:hidden}.budget-line-wrap-active .budget-line-legend,.budget-line-wrap:hover .budget-line-legend{opacity:1;transform:translateY(0);visibility:visible}.budget-line-legend span{display:inline-flex;align-items:center;gap:7px}.budget-line-legend i{display:block;width:18px;height:3px;border-radius:999px}.budget-chart-tip{position:absolute;z-index:20;transform:translate(-50%,-115%);border-radius:5px;background:var(--budget-ink);box-shadow:0 4px 14px rgba(0,0,0,.18);color:var(--budget-surface);font-family:Archivo,system-ui,sans-serif;font-size:12px;font-weight:600;line-height:1.25;padding:6px 9px;pointer-events:none;white-space:nowrap}.budget-chart-tip span{display:block;font-size:11px;font-weight:400;opacity:.7}.budget-base-row{display:flex;gap:72px}.budget-section-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.budget-heat-toggle{display:flex;align-items:center;gap:8px;color:var(--budget-faint);cursor:pointer;font-family:Archivo,system-ui,sans-serif;font-size:12px;font-weight:600;line-height:1.2;padding-top:1px;white-space:nowrap}.budget-heatmap-column{width:334px;flex:0 0 auto}.budget-category-column{min-width:0;flex:1 1 auto}.budget-heatmap-wrap{position:relative;width:-moz-max-content;width:max-content}.budget-heatmap-grid,.budget-weekdays{display:grid;grid-template-columns:repeat(7,40px);gap:9px}.budget-weekdays{margin-bottom:6px}.budget-weekdays div{color:var(--budget-faint);font-family:Archivo,system-ui,sans-serif;font-size:11px;text-align:center}.budget-heat-cell,.budget-heatmap-empty{width:40px;height:40px}.budget-heat-cell{position:relative;display:flex;align-items:flex-start;justify-content:flex-end;border:1px solid color-mix(in oklab,var(--budget-ink) 5%,transparent);border-radius:5px;cursor:default;transition:transform .12s ease}.budget-heat-cell:hover{transform:scale(1.08)}.budget-heat-cell span{padding:4px 4px 0 0;color:var(--budget-faint);font-family:Archivo,system-ui,sans-serif;font-size:10px;line-height:1}.budget-heat-strong span{color:var(--budget-surface)}.budget-heat-future{border:1px dashed var(--budget-hairline-strong)}.budget-heat-future span{opacity:.5}.budget-heat-today{box-shadow:0 0 0 2px var(--budget-ink)}.budget-heat-legend{display:flex;align-items:center;gap:6px;margin-top:16px;color:var(--budget-faint);font-family:Archivo,system-ui,sans-serif;font-size:11px}.budget-heat-legend span:not(:first-child):not(:last-child){width:16px;height:16px;border:1px solid color-mix(in oklab,var(--budget-ink) 5%,transparent);border-radius:4px}.budget-category-bars{position:relative;display:grid;gap:22px}.budget-category-row{display:grid;gap:8px}.budget-category-main{display:flex;align-items:center;gap:18px;min-width:0}.budget-category-label{width:150px;flex:0 0 auto;color:var(--budget-muted);font-family:Archivo,system-ui,sans-serif;font-size:13px;letter-spacing:.06em;text-transform:uppercase}.budget-category-track{position:relative;min-width:0;height:26px;flex:1 1 auto;border-radius:4px;background:color-mix(in oklab,var(--budget-ink) 5%,transparent)}.budget-category-fill{display:flex;gap:2px;height:26px}.budget-category-budget-marker{position:absolute;top:-5px;bottom:-5px;z-index:4;width:14px;cursor:default;transform:translateX(-7px);background-image:linear-gradient(to bottom,var(--budget-ink) 0 5px,transparent 5px 8px);background-position:top;background-repeat:repeat-y;background-size:2px 8px;opacity:.78}.budget-category-segment{display:flex;align-items:center;min-width:2px;overflow:hidden;color:inherit;cursor:pointer;text-decoration:none;transition:filter .12s ease}.budget-category-segment:first-child{border-radius:4px 0 0 4px}.budget-category-segment:last-child{border-radius:0 4px 4px 0}.budget-category-segment:focus-visible,.budget-category-segment:hover{filter:brightness(1.08)}.budget-category-segment:focus-visible{outline:2px solid var(--budget-ink);outline-offset:2px}.budget-category-segment span{padding:0 9px;color:var(--budget-surface);font-family:Archivo,system-ui,sans-serif;font-size:11px;letter-spacing:0;white-space:nowrap}.budget-category-total{width:118px;flex:0 0 auto;text-align:right}.budget-category-tags{display:flex;flex-wrap:wrap;gap:6px;margin-left:168px;padding-right:118px}.budget-category-tag{display:inline-flex;align-items:center;gap:6px;max-width:100%;border:1px solid color-mix(in oklab,var(--budget-ink) 10%,transparent);border-radius:999px;padding:3px 8px;color:var(--budget-muted);text-decoration:none;font-family:Archivo,system-ui,sans-serif;font-size:11px;letter-spacing:0;background:color-mix(in oklab,var(--budget-panel) 78%,transparent)}.budget-category-tag:focus-visible,.budget-category-tag:hover{border-color:color-mix(in oklab,var(--budget-accent) 50%,var(--budget-ink));color:var(--budget-ink)}.budget-category-tag:focus-visible{outline:2px solid var(--budget-ink);outline-offset:2px}.budget-category-tag strong{color:var(--budget-ink);font-weight:700}.budget-empty-note{color:var(--budget-faint);font-size:13px}.pointer-events-none{pointer-events:none}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{inset:0}.left-2{left:.5rem}.left-3{left:.75rem}.top-0{top:0}.top-2\.5{top:.625rem}.z-10{z-index:10}.z-50{z-index:50}.z-\[100\]{z-index:100}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-5{margin-top:1.25rem}.block{display:block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.size-2\.5{width:.625rem;height:.625rem}.size-3{width:.75rem;height:.75rem}.size-3\.5{width:.875rem;height:.875rem}.size-4{width:1rem;height:1rem}.size-8{width:2rem;height:2rem}.size-9{width:2.25rem;height:2.25rem}.h-2{height:.5rem}.h-3{height:.75rem}.h-4{height:1rem}.h-6{height:1.5rem}.h-64{height:16rem}.h-7{height:1.75rem}.h-72{height:18rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-full{height:100%}.max-h-80{max-height:20rem}.max-h-\[85vh\]{max-height:85vh}.max-h-\[88vh\]{max-height:88vh}.min-h-32{min-height:8rem}.min-h-9{min-height:2.25rem}.w-10{width:2.5rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-16{width:4rem}.w-20{width:5rem}.w-28{width:7rem}.w-3\/5{width:60%}.w-32{width:8rem}.w-36{width:9rem}.w-4\/5{width:80%}.w-40{width:10rem}.w-44{width:11rem}.w-48{width:12rem}.w-60{width:15rem}.w-9{width:2.25rem}.w-full{width:100%}.min-w-0{min-width:0}.min-w-24{min-width:6rem}.min-w-32{min-width:8rem}.min-w-\[1360px\]{min-width:1360px}.min-w-\[1460px\]{min-width:1460px}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-full{max-width:100%}.max-w-lg{max-width:32rem}.flex-1{flex:1 1 0%}.shrink-0{flex-shrink:0}.table-fixed{table-layout:fixed}.border-separate{border-collapse:separate}.border-spacing-0{--tw-border-spacing-x:0px;--tw-border-spacing-y:0px;border-spacing:var(--tw-border-spacing-x) var(--tw-border-spacing-y)}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(1turn)}}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-x-4{-moz-column-gap:1rem;column-gap:1rem}.gap-y-1{row-gap:.25rem}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis}.truncate,.whitespace-nowrap{white-space:nowrap}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-amber-200{--tw-border-opacity:1;border-color:rgb(253 230 138/var(--tw-border-opacity,1))}.border-amber-500\/40{border-color:rgb(245 158 11/.4)}.border-destructive\/30{border-color:hsl(var(--destructive)/.3)}.border-emerald-200{--tw-border-opacity:1;border-color:rgb(167 243 208/var(--tw-border-opacity,1))}.border-emerald-500\/30{border-color:rgb(16 185 129/.3)}.border-input{border-color:hsl(var(--input))}.border-primary{border-color:hsl(var(--primary))}.border-primary\/25{border-color:hsl(var(--primary)/.25)}.border-primary\/30{border-color:hsl(var(--primary)/.3)}.border-rose-200{--tw-border-opacity:1;border-color:rgb(254 205 211/var(--tw-border-opacity,1))}.border-transparent{border-color:transparent}.bg-amber-50{--tw-bg-opacity:1;background-color:rgb(255 251 235/var(--tw-bg-opacity,1))}.bg-amber-50\/40{background-color:rgb(255 251 235/.4)}.bg-amber-500\/10{background-color:rgb(245 158 11/.1)}.bg-background{background-color:hsl(var(--background))}.bg-black\/45{background-color:rgb(0 0 0/.45)}.bg-card{background-color:hsl(var(--card))}.bg-destructive{background-color:hsl(var(--destructive))}.bg-destructive\/10{background-color:hsl(var(--destructive)/.1)}.bg-emerald-50{--tw-bg-opacity:1;background-color:rgb(236 253 245/var(--tw-bg-opacity,1))}.bg-emerald-50\/60{background-color:rgb(236 253 245/.6)}.bg-emerald-500\/10{background-color:rgb(16 185 129/.1)}.bg-foreground{background-color:hsl(var(--foreground))}.bg-muted{background-color:hsl(var(--muted))}.bg-muted\/35{background-color:hsl(var(--muted)/.35)}.bg-muted\/40{background-color:hsl(var(--muted)/.4)}.bg-muted\/60{background-color:hsl(var(--muted)/.6)}.bg-primary{background-color:hsl(var(--primary))}.bg-primary\/5{background-color:hsl(var(--primary)/.05)}.bg-rose-50{--tw-bg-opacity:1;background-color:rgb(255 241 242/var(--tw-bg-opacity,1))}.bg-secondary{background-color:hsl(var(--secondary))}.bg-sky-50\/50{background-color:rgb(240 249 255/.5)}.bg-transparent{background-color:transparent}.p-0{padding:0}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem}.pb-3,.py-3{padding-bottom:.75rem}.pl-2{padding-left:.5rem}.pl-3{padding-left:.75rem}.pl-8{padding-left:2rem}.pl-9{padding-left:2.25rem}.pr-1{padding-right:.25rem}.pr-2{padding-right:.5rem}.pr-3{padding-right:.75rem}.pt-0{padding-top:0}.pt-3{padding-top:.75rem}.text-left{text-align:left}.text-right{text-align:right}.align-middle{vertical-align:middle}.text-2xl{font-size:1.5rem;line-height:2rem}.text-\[11px\]{font-size:11px}.text-base{font-size:1rem;line-height:1.5rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.leading-none{line-height:1}.tracking-normal{letter-spacing:0}.text-amber-700{--tw-text-opacity:1;color:rgb(180 83 9/var(--tw-text-opacity,1))}.text-amber-800{--tw-text-opacity:1;color:rgb(146 64 14/var(--tw-text-opacity,1))}.text-amber-900{--tw-text-opacity:1;color:rgb(120 53 15/var(--tw-text-opacity,1))}.text-background{color:hsl(var(--background))}.text-card-foreground{color:hsl(var(--card-foreground))}.text-current{color:currentColor}.text-destructive{color:hsl(var(--destructive))}.text-destructive-foreground{color:hsl(var(--destructive-foreground))}.text-emerald-700{--tw-text-opacity:1;color:rgb(4 120 87/var(--tw-text-opacity,1))}.text-emerald-800{--tw-text-opacity:1;color:rgb(6 95 70/var(--tw-text-opacity,1))}.text-emerald-900{--tw-text-opacity:1;color:rgb(6 78 59/var(--tw-text-opacity,1))}.text-emerald-950{--tw-text-opacity:1;color:rgb(2 44 34/var(--tw-text-opacity,1))}.text-foreground{color:hsl(var(--foreground))}.text-muted-foreground{color:hsl(var(--muted-foreground))}.text-primary{color:hsl(var(--primary))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-rose-700{--tw-text-opacity:1;color:rgb(190 18 60/var(--tw-text-opacity,1))}.text-rose-900{--tw-text-opacity:1;color:rgb(136 19 55/var(--tw-text-opacity,1))}.text-rose-950{--tw-text-opacity:1;color:rgb(76 5 25/var(--tw-text-opacity,1))}.text-secondary-foreground{color:hsl(var(--secondary-foreground))}.opacity-50{opacity:.5}.shadow{--tw-shadow:0 1px 3px 0 rgb(0 0 0/0.1),0 1px 2px -1px rgb(0 0 0/0.1);--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color),0 1px 2px -1px var(--tw-shadow-color)}.shadow,.shadow-2xl{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px rgb(0 0 0/0.25);--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color)}.shadow-md{--tw-shadow:0 4px 6px -1px rgb(0 0 0/0.1),0 2px 4px -2px rgb(0 0 0/0.1);--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color),0 2px 4px -2px var(--tw-shadow-color)}.shadow-md,.shadow-sm{box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px 0 rgb(0 0 0/0.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.ring-offset-background{--tw-ring-offset-color:hsl(var(--background))}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0) scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1)) rotate(var(--tw-enter-rotate,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0) scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1)) rotate(var(--tw-exit-rotate,0))}}.running{animation-play-state:running}.paused{animation-play-state:paused}@media (max-width:920px){.budget-masthead{align-items:flex-start;flex-direction:column}.budget-period-meta{text-align:left}.budget-ai-panel{grid-template-columns:1fr}.budget-ai-answer,.budget-ai-loading{grid-column:1}.budget-base-row{flex-direction:column;gap:36px}.budget-upcoming-panel{grid-template-columns:1fr}.budget-upcoming-grid{border-top:1px solid var(--budget-hairline);border-left:0;padding-top:18px}.budget-heatmap-column{width:100%}.budget-heatmap-wrap{width:min(100%,520px);max-width:100%;padding-bottom:4px}.budget-heatmap-grid,.budget-weekdays{grid-template-columns:repeat(7,minmax(0,1fr));gap:clamp(6px,1.4vw,9px)}.budget-heat-cell,.budget-heatmap-empty{width:100%;height:auto;aspect-ratio:1}}@media (max-width:880px){.budget-auth-page{grid-template-columns:1fr}.budget-auth-brand{display:none}.budget-auth-form-side{padding:32px 24px}}@media (max-width:720px){.budget-app-main{padding:34px 20px 56px}.budget-topbar{padding:0 14px}.budget-topbar-actions{gap:4px}.budget-period-picker>.budget-shell-icon-button{width:34px}.budget-period-trigger{gap:7px;padding:8px 10px}.budget-period-trigger span{max-width:86px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.budget-section-toolbar{align-items:flex-start;flex-direction:column;gap:4px}.budget-ai-form{grid-template-columns:1fr}.budget-ask-drawer{padding:26px 22px}.budget-ask-form{align-items:stretch;flex-wrap:wrap;padding-left:14px}.budget-ask-form input{flex-basis:calc(100% - 32px)}.budget-ask-form button{width:100%;justify-content:center}.budget-upcoming-grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:18px}.budget-upcoming-grid>div{border-left:0;border-right:0;padding:0}.budget-upcoming-grid>div+div{border-left:0}.budget-line-chart{min-height:342px}.budget-line-legend{right:10px;bottom:46px;gap:8px 12px;border-radius:12px;font-size:11px;padding:7px 9px}.budget-heatmap-wrap{width:100%}.budget-heatmap-grid,.budget-weekdays{gap:clamp(5px,1.8vw,7px)}.budget-category-main{align-items:stretch;flex-direction:column;gap:8px}.budget-category-label,.budget-category-total{width:auto;text-align:left}.budget-category-tags{margin-left:0;padding-right:0}}@media (max-width:560px){.budget-metrics{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:30px}.budget-metric,.budget-metric+.budget-metric{border-left:0;padding-left:0}.budget-metric:nth-child(2n){border-left:1px solid var(--budget-hairline);padding-left:22px}.budget-money{font-size:clamp(32px,9.6vw,44px)}.budget-money-category{font-size:22px}.budget-upcoming-grid{grid-template-columns:1fr}}.placeholder\:text-muted-foreground::-moz-placeholder{color:hsl(var(--muted-foreground))}.placeholder\:text-muted-foreground::placeholder{color:hsl(var(--muted-foreground))}.focus-within\:ring-2:focus-within{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-within\:ring-ring:focus-within{--tw-ring-color:hsl(var(--ring))}.hover\:bg-accent:hover{background-color:hsl(var(--accent))}.hover\:bg-background:hover{background-color:hsl(var(--background))}.hover\:bg-destructive\/90:hover{background-color:hsl(var(--destructive)/.9)}.hover\:bg-primary\/90:hover{background-color:hsl(var(--primary)/.9)}.hover\:bg-secondary\/80:hover{background-color:hsl(var(--secondary)/.8)}.hover\:text-accent-foreground:hover{color:hsl(var(--accent-foreground))}.hover\:text-foreground:hover{color:hsl(var(--foreground))}.focus\:bg-accent:focus{background-color:hsl(var(--accent))}.focus\:text-accent-foreground:focus{color:hsl(var(--accent-foreground))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus\:ring-ring:focus{--tw-ring-color:hsl(var(--ring))}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow,0 0 #0000)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color:hsl(var(--ring))}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y:0.25rem}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom],.data-\[side\=left\]\:-translate-x-1[data-side=left]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x:-0.25rem}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x:0.25rem}.data-\[side\=right\]\:translate-x-1[data-side=right],.data-\[side\=top\]\:-translate-y-1[data-side=top]{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y:-0.25rem}.data-\[state\=active\]\:bg-background[data-state=active]{background-color:hsl(var(--background))}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:hsl(var(--primary))}.data-\[state\=active\]\:text-foreground[data-state=active]{color:hsl(var(--foreground))}.data-\[state\=checked\]\:text-primary-foreground[data-state=checked]{color:hsl(var(--primary-foreground))}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[state\=active\]\:shadow-sm[data-state=active]{--tw-shadow:0 1px 2px 0 rgb(0 0 0/0.05);--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000),var(--tw-ring-shadow,0 0 #0000),var(--tw-shadow)}.data-\[state\=open\]\:animate-in[data-state=open]{animation-name:enter;animation-duration:.15s;--tw-enter-opacity:initial;--tw-enter-scale:initial;--tw-enter-rotate:initial;--tw-enter-translate-x:initial;--tw-enter-translate-y:initial}.data-\[state\=closed\]\:animate-out[data-state=closed]{animation-name:exit;animation-duration:.15s;--tw-exit-opacity:initial;--tw-exit-scale:initial;--tw-exit-rotate:initial;--tw-exit-translate-x:initial;--tw-exit-translate-y:initial}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity:0}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity:0}@media (min-width:640px){.sm\:h-80{height:20rem}.sm\:w-56{width:14rem}.sm\:min-w-64{min-width:16rem}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:grid-cols-\[1fr_1fr_1fr\]{grid-template-columns:1fr 1fr 1fr}.sm\:grid-cols-\[minmax\(0\2c 1fr\)_auto\]{grid-template-columns:minmax(0,1fr) auto}.sm\:grid-cols-\[minmax\(0\2c 1fr\)_auto_auto\]{grid-template-columns:minmax(0,1fr) auto auto}.sm\:flex-row{flex-direction:row}.sm\:items-start{align-items:flex-start}.sm\:items-center{align-items:center}.sm\:justify-between{justify-content:space-between}.sm\:text-3xl{font-size:1.875rem;line-height:2.25rem}}@media (min-width:768px){.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:grid-cols-\[160px_160px_140px_120px\]{grid-template-columns:160px 160px 140px 120px}.md\:grid-cols-\[180px_minmax\(0\2c 1fr\)\]{grid-template-columns:180px minmax(0,1fr)}.md\:grid-cols-\[minmax\(0\2c 1fr\)_160px_180px\]{grid-template-columns:minmax(0,1fr) 160px 180px}}@media (min-width:1024px){.lg\:col-span-2{grid-column:span 2/span 2}.lg\:ml-auto{margin-left:auto}.lg\:w-52{width:13rem}.lg\:min-w-\[620px\]{min-width:620px}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-\[0\.9fr_1\.1fr\]{grid-template-columns:.9fr 1.1fr}.lg\:grid-cols-\[140px_minmax\(0\2c 1fr\)_140px_140px_140px_170px\]{grid-template-columns:140px minmax(0,1fr) 140px 140px 140px 170px}.lg\:grid-cols-\[minmax\(0\2c 0\.95fr\)_minmax\(0\2c 1\.05fr\)\]{grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr)}.lg\:grid-cols-\[minmax\(0\2c 1\.15fr\)_minmax\(0\2c 0\.85fr\)\]{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}.lg\:grid-cols-\[minmax\(0\2c 1\.2fr\)_minmax\(0\2c 0\.8fr\)\]{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}.lg\:grid-cols-\[minmax\(0\2c 1\.35fr\)_minmax\(0\2c 0\.95fr\)\]{grid-template-columns:minmax(0,1.35fr) minmax(0,.95fr)}.lg\:grid-cols-\[minmax\(0\2c 1\.4fr\)_180px_150px_auto\]{grid-template-columns:minmax(0,1.4fr) 180px 150px auto}.lg\:grid-cols-\[minmax\(0\2c 1fr\)_auto\]{grid-template-columns:minmax(0,1fr) auto}.lg\:flex-row{flex-direction:row}.lg\:items-start{align-items:flex-start}.lg\:items-center{align-items:center}.lg\:justify-between{justify-content:space-between}}@media (min-width:1280px){.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.xl\:grid-cols-\[minmax\(220px\2c 1fr\)_repeat\(6\2c minmax\(140px\2c 160px\)\)\]{grid-template-columns:minmax(220px,1fr) repeat(6,minmax(140px,160px))}}@media (min-width:1536px){.\32xl\:w-48{width:12rem}.\32xl\:w-52{width:13rem}.\32xl\:w-56{width:14rem}}.\[\&\>span\]\:line-clamp-1>span{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.\[\&_svg\]\:size-4 svg{width:1rem;height:1rem}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}