.skip-link{top:var(--space-2);left:var(--space-2);z-index:var(--z-toast);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);background:var(--surface-solid-3);color:var(--text-primary);position:absolute;transform:translateY(-200%)}.skip-link:focus-visible{box-shadow:var(--focus-ring);transform:none}.shell-column{z-index:var(--z-content);min-height:100dvh;position:relative}.shell-banners{gap:var(--space-2);padding:0 var(--gutter);display:grid}.shell-banners:empty{display:none}.shell-main{padding:var(--space-4) var(--gutter) calc(64px + env(safe-area-inset-bottom) + var(--space-12));outline:none}.shell-main[aria-busy=true]{cursor:progress}.shell .shell-tabbar{position:fixed}.shell .shell-tabbar .tab-center{margin:0 var(--space-1)}.shell-sidebar{display:none}@media (min-width:1024px){.shell .shell-tabbar,.shell .shell-tabbar.tabbar{display:none}.shell .shell-sidebar{inset:var(--space-4) auto var(--space-4) var(--space-4);z-index:var(--z-tabbar);gap:var(--space-4);width:248px;padding:var(--space-6) var(--space-4);flex-direction:column;display:flex;position:fixed}.shell-sidebar ul{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.shell-side-logo{margin-left:var(--space-2)}.shell-side-link{align-items:center;gap:var(--space-3);min-height:var(--touch-min);padding:0 var(--space-3);border-radius:var(--radius-pill);color:var(--text-secondary);text-decoration:none;display:flex}.shell-side-link:focus-visible{box-shadow:var(--focus-ring);outline:none}.shell-side-link[aria-current=page]{background:var(--accent);color:var(--on-accent);font-weight:var(--font-weight-semibold)}.shell-column{margin-left:calc(248px + 2 * var(--space-4))}.shell-main{max-width:none;padding:var(--space-6) var(--space-8) var(--space-12)}}@media (hover:hover) and (min-width:1024px){.shell-side-link:hover{color:var(--text-primary)}}.screen{gap:var(--space-4);display:grid}.screen-title{font-family:var(--font-display);font-size:var(--font-size-title);font-weight:var(--font-weight-bold);margin:0}.onboarding:has(.screen-welcome){align-content:stretch}body:has(.screen-welcome){background:var(--accent)}body:has(.screen-welcome) .backdrop{display:none}.screen-welcome{align-content:end;gap:var(--space-6);color:var(--on-accent);--text-primary:var(--on-accent);--text-link:var(--on-accent);--brand-mono:var(--on-accent)}.screen-welcome .screen-title{font-size:var(--font-size-display);align-self:start}.welcome-lead{font-family:var(--font-display);font-size:clamp(1.875rem,8vw,2.5rem);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);margin:0}.welcome-feature-icon{border-radius:var(--radius-pill);background:var(--surface-dark);width:36px;height:36px;color:var(--on-dark);flex:none;place-items:center;display:grid}.welcome-actions .btn[data-variant=ghost]{padding:0 var(--space-2)}.welcome-actions{justify-content:space-between;align-items:center;gap:var(--space-3);padding-top:var(--space-6);display:flex}.screen-error{justify-items:center;gap:var(--space-2);padding-top:var(--space-10);display:grid}.screen-error-code{color:var(--text-secondary);font-size:var(--font-size-caption);margin:0}.onboarding{z-index:var(--z-content);max-width:600px;min-height:100dvh;padding:var(--space-6) var(--gutter);align-content:center;margin:0 auto;display:grid;position:relative}.splash{place-content:center;justify-items:center;gap:var(--space-4);min-height:100dvh;display:grid}.splash>:not(.backdrop){z-index:var(--z-content);position:relative}.splash-progress{width:160px}.welcome-features{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.welcome-features li{align-items:center;gap:var(--space-3);font-weight:var(--font-weight-medium);display:flex}.account-list{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.account-row{justify-content:space-between;gap:var(--space-3);display:flex}.account-name{font-weight:var(--font-weight-semibold);margin:0}.account-meta,.account-error{color:var(--text-secondary);font-size:var(--font-size-caption);margin:0}.account-error{color:var(--status-danger-fg)}.account-actions{align-items:center;gap:var(--space-1);flex-wrap:wrap;display:flex}.account-form,.quick-entry{gap:var(--space-4);display:grid}.quick-chips{gap:var(--space-2);flex-wrap:wrap;display:flex}.fab-menu{gap:var(--space-2);display:grid}.quick-other{align-items:center;gap:var(--space-2);border:0;flex-wrap:wrap;margin:0;padding:0;display:flex}.quick-details{gap:var(--space-3);display:grid}.list-month{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.list-month-title{font-size:var(--font-size-title);margin:0}.list-summary{gap:var(--space-2);grid-template-columns:repeat(3,1fr);margin:0;display:grid}.list-summary dt{color:var(--text-secondary);font-size:var(--font-size-caption)}.list-summary dd{font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums;margin:0}.list-total{font-weight:var(--font-weight-semibold);margin:0}.cards-carousel{gap:var(--space-3);scroll-snap-type:x mandatory;padding-bottom:var(--space-1);display:flex;overflow-x:auto}.cards-slide{scroll-snap-align:start;flex:0 0 min(320px,85%)}.cards-slide[data-selected=true] .invoice-card{outline:3px solid var(--accent);outline-offset:2px}.cards-nav{justify-content:center;gap:var(--space-2);display:flex}.cards-current{gap:var(--space-2);display:grid}.cards-line{margin:0}.cards-invoices{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.cards-invoice{align-items:center;gap:var(--space-2);width:100%;min-height:48px;padding:var(--space-2);border-radius:var(--radius-md,12px);color:inherit;font:inherit;text-align:start;cursor:pointer;background:0 0;border:0;flex-wrap:wrap;display:flex}.cards-invoice-month{flex:auto}.cards-invoice-total{font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums}.invoice-head{gap:var(--space-1);justify-items:start;display:grid}.invoice-head-total{font-size:var(--font-size-title);font-weight:var(--font-weight-semibold);font-variant-numeric:tabular-nums;margin:0}.category-icons-field{border:0;margin:0;padding:0}.category-icons{gap:var(--space-1);grid-template-columns:repeat(auto-fill,minmax(48px,1fr));display:grid}.category-icon{border-radius:var(--radius-sm);min-width:48px;min-height:48px;color:inherit;cursor:pointer;background:0 0;border:0;place-items:center;display:grid}.category-icon[aria-pressed=true]{background:var(--accent);color:var(--on-accent)}.future-bars{gap:var(--space-1);margin:0;padding:0;list-style:none;display:grid}.future-bars>li{align-items:center;gap:var(--space-2);grid-template-columns:72px 1fr;display:grid}.future-bar{border-radius:var(--radius-xs);background:var(--surface-inset);height:16px;display:flex;overflow:hidden}.future-seg[data-kind=installment]{background:var(--text-primary)}.future-seg[data-kind=fixed]{background:repeating-linear-gradient(45deg, var(--accent), var(--accent) 4px, var(--accent-pressed) 4px, var(--accent-pressed) 8px)}.future-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.future-table th,.future-table td{padding:var(--space-1);text-align:end}.future-table th:first-child{text-align:start}.detail-hero{gap:var(--space-1);display:grid}.detail-sub,.detail-note{color:var(--text-secondary);margin:0}.detail-list{gap:var(--space-2);margin:0;display:grid}.detail-list>div{justify-content:space-between;gap:var(--space-3);display:flex}.detail-list dt{color:var(--text-secondary)}.detail-list dd{text-align:end;font-weight:var(--font-weight-semibold);overflow-wrap:anywhere;margin:0}.detail-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.detail-history-list{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.detail-history-list>li{gap:var(--space-2);align-items:flex-start;display:flex}.detail-history-title,.detail-history-line{margin:0}.detail-history-title{font-weight:var(--font-weight-semibold)}.list-day{margin:var(--space-3) 0 var(--space-1);font-size:var(--font-size-caption);color:var(--text-secondary);justify-content:space-between;display:flex}.list-chip{background:var(--surface-solid-3);box-shadow:var(--shadow-1);border:2px solid #0000;flex:none}.list-chip[data-selected=true]{border-color:var(--ink-950)}.list-chips{min-width:0;margin:0 calc(-1 * var(--gutter));border:0;padding:0}.list-chips .quick-chips{padding:2px var(--gutter) var(--space-2);scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.home{gap:var(--space-5);display:grid}.home-card{gap:var(--space-2);padding:var(--space-5);display:grid}.home-card-head{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.home-card-month{font-size:var(--font-size-label);font-weight:var(--font-weight-bold);text-transform:capitalize;margin:0}.home-card-new{align-items:center;gap:var(--space-2);min-height:var(--touch-min);padding:0 var(--space-4) 0 6px;border-radius:var(--radius-pill);background:var(--accent);color:var(--on-accent);font:inherit;font-size:var(--font-size-label);font-weight:var(--font-weight-bold);cursor:pointer;border:0;display:inline-flex}.home-card-new-icon{border-radius:var(--radius-pill);background:var(--surface-dark);width:32px;height:32px;color:var(--on-dark);place-items:center;display:grid}.home-card-label{margin:var(--space-2) 0 0;color:var(--on-dark-muted);font-size:var(--font-size-label)}.home-card-value{font-family:var(--font-display);font-size:var(--font-size-display);font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);margin:0}.home-card-stats{gap:var(--space-6);margin:var(--space-2) 0 0;display:flex}.home-card-stats dt{color:var(--on-dark-muted);font-size:var(--font-size-caption)}.home-card-stats dd{font-weight:var(--font-weight-bold);margin:0}.home-actions{gap:var(--space-2);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.home-action{align-content:center;justify-items:center;gap:var(--space-1);min-height:72px;padding:var(--space-2) var(--space-1);background:var(--surface-solid-3);color:var(--text-primary);font-size:var(--font-size-caption);font-weight:var(--font-weight-semibold);text-align:center;box-shadow:var(--shadow-1);border-radius:30px;text-decoration:none;display:grid}.home-action[data-accent=true]{background:var(--accent);color:var(--on-accent)}.home-action:focus-visible{box-shadow:var(--focus-ring)}.home-section-head{margin-bottom:var(--space-3);justify-content:space-between;align-items:center;display:flex}.home-section-head h2{font-size:var(--font-size-heading);font-weight:var(--font-weight-bold);margin:0}.home-see-all{min-height:var(--touch-min);color:var(--text-primary);font-size:var(--font-size-label);font-weight:var(--font-weight-semibold);align-items:center;gap:2px;text-decoration:none;display:inline-flex}.home-recent-list{padding:var(--space-2) var(--space-4)}.list-rows{padding:var(--space-1) var(--space-4) var(--space-2);border-radius:var(--radius-lg);background:var(--surface-solid-2);box-shadow:var(--shadow-2)}.list-rows .list-day:first-of-type{margin-top:var(--space-2)}.home-recent-empty{padding:var(--space-6) 0;color:var(--text-secondary);text-align:center;margin:0}@media (min-width:1024px){.home{gap:var(--space-8)}.home-card{gap:var(--space-3);padding:var(--space-10) var(--space-12);border-radius:28px}.home-card-month{font-size:var(--font-size-heading)}.home-card-label{font-size:var(--font-size-body)}.home-card-value{font-size:clamp(3rem,4.5vw,4.5rem)}.home-card-stats{gap:var(--space-12)}.home-card-stats dt{font-size:var(--font-size-label)}.home-card-stats dd{font-size:var(--font-size-title)}.home-actions{gap:var(--space-4)}.home-action{gap:var(--space-2);min-height:120px;font-size:var(--font-size-body)}.home-action svg{width:32px;height:32px}.home-section-head h2{font-size:var(--font-size-title)}.home-recent-list{padding:var(--space-3) var(--space-6)}}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:block))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial}::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--radius-xs:.125rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}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;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.fixed{position:fixed}.relative{position:relative}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.table{display:table}.transform{transform:var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, )}.ring{--tw-ring-shadow:var(--tw-ring-inset, ) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.blur{--tw-blur:blur(8px);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, )}.backdrop-filter{-webkit-backdrop-filter:var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, );backdrop-filter:var(--tw-backdrop-blur, ) var(--tw-backdrop-brightness, ) var(--tw-backdrop-contrast, ) var(--tw-backdrop-grayscale, ) var(--tw-backdrop-hue-rotate, ) var(--tw-backdrop-invert, ) var(--tw-backdrop-opacity, ) var(--tw-backdrop-saturate, ) var(--tw-backdrop-sepia, )}}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-latin-ext-wght-normal-CXYtwYOx.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-latin-wght-normal-BzFMHfZw.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--mint-50:#f6feee;--mint-100:#eefde0;--mint-200:#e1f6cb;--mint-300:#cdeaa9;--lime-200:#e3f5a8;--lime-300:#d4f07e;--lime-400:#c0e45c;--lime-500:#aed246;--lime-600:#7fa51f;--lime-700:#4d7c0f;--lime-800:#3a5c0b;--lime-900:#233707;--ink-950:#0b0d0a;--ink-900:#151813;--ink-850:#1c1f1a;--ink-800:#2a2d27;--ink-700:#3a3f36;--ink-600:#4f5649;--ink-500:#6b7265;--ink-400:#8d9486;--ink-300:#b9bfb2;--ink-200:#dadfd3;--ink-100:#eef0ea;--mist-50:#f2f7ec;--mist-300:#c4ccbb;--mist-400:#a9b2a0;--mist-500:#858e7c;--mist-700:#3c4237;--teal-100:#d5f3ee;--teal-300:#5fd4c3;--teal-600:#0f766e;--teal-700:#0b5e58;--violet-100:#eee8ff;--violet-300:#b9a2ff;--violet-400:#9d82f5;--violet-500:#7a55d3;--violet-700:#5e3fb0;--amber-100:#fff1d6;--amber-300:#ffc75a;--amber-400:#f2a93b;--amber-600:#a86400;--amber-700:#804400;--amber-900:#3a2a0e;--coral-100:#ffe3de;--coral-300:#ff9583;--coral-400:#f47360;--coral-600:#c2402c;--coral-700:#a3301f;--coral-900:#3d1a16;--white:#fff;--bg-base:var(--mint-100);--bg-backdrop:linear-gradient(180deg, #eefde0 0%, #eefde0 100%);--accent:var(--lime-400);--accent-pressed:var(--lime-500);--accent-soft:var(--lime-200);--on-accent:var(--ink-950);--surface-dark:var(--ink-950);--surface-dark-raised:var(--ink-800);--on-dark:var(--white);--on-dark-muted:var(--ink-300);--text-primary:var(--ink-950);--text-secondary:var(--ink-700);--text-tertiary:var(--ink-600);--text-on-primary:var(--white);--text-on-success:var(--ink-950);--text-on-danger:var(--white);--text-link:var(--lime-800);--text-disabled:var(--ink-500);--money-income:var(--lime-800);--money-expense:var(--text-primary);--money-saving:var(--teal-700);--money-transfer:var(--ink-700);--status-info-fg:var(--ink-950);--status-info-bg:var(--lime-400);--status-success-fg:var(--lime-800);--status-success-bg:#e6f7cf;--status-warning-fg:var(--amber-700);--status-warning-bg:var(--amber-100);--status-warning-fill:var(--amber-600);--status-danger-fg:var(--coral-700);--status-danger-bg:var(--coral-100);--status-danger-fill:var(--coral-600);--band-needs:var(--teal-600);--band-wants:var(--violet-500);--band-savings:var(--lime-700);--band-track:#0b0d0a14;--border-subtle:#0b0d0a14;--border-strong:var(--ink-500);--focus-ring-color:var(--ink-950);--focus-ring:0 0 0 2px var(--white), 0 0 0 4px var(--focus-ring-color);--surface-solid-1:var(--white);--surface-solid-2:var(--white);--surface-solid-3:var(--white);--surface-inset:#0b0d0a0d;--surface-pressed:#0b0d0a14;--scrim:#0b0d0a73;--grad-primary:linear-gradient(180deg, #151813 0%, #0b0d0a 100%);--grad-primary-pressed:linear-gradient(180deg, #2a2d27 0%, #151813 100%);--grad-success:linear-gradient(180deg, #c0e45c 0%, #aed246 100%);--grad-danger:linear-gradient(180deg, #b0362a 0%, #a3301f 100%);--grad-gloss:none;--grad-gloss-button:none;--grad-card-aqua:linear-gradient(135deg, #0f766e, #0b3b37);--grad-card-grass:linear-gradient(135deg, #4d7c0f, #1d2f05);--grad-card-violet:linear-gradient(135deg, #7a55d3, #3e2580);--grad-card-night:linear-gradient(135deg, #2a2d27, #0b0d0a);--grad-card-coral:linear-gradient(135deg, #c2402c, #5e1b12);--grad-card-graphite:linear-gradient(135deg, #4f5649, #151813);--brand-oak:var(--ink-950);--brand-finance:var(--lime-700);--brand-oak-sheen:linear-gradient(180deg, #151813 0%, #0b0d0a 100%);--brand-finance-sheen:linear-gradient(180deg, #4d7c0f 0%, #3a5c0b 100%);--brand-icon-bg:linear-gradient(180deg, #151813 0%, #0b0d0a 100%);--brand-mono:var(--ink-950);--glass-1-bg:var(--white);--glass-1-blur:0px;--glass-2-bg:var(--white);--glass-2-blur:0px;--glass-3-bg:var(--white);--glass-3-blur:0px;--glass-saturate:100%;--glass-border:1px solid transparent;--glass-highlight:0 0 0 0 transparent;--glass-1-solid:var(--surface-solid-1);--glass-2-solid:var(--surface-solid-2);--glass-3-solid:var(--surface-solid-3);--font-display:"Nunito Variable", "Nunito", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-text:"Nunito Variable", "Nunito", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-numeric-features:"tnum" 1, "lnum" 1;--font-size-hero:clamp(2.25rem, 9vw, 2.875rem);--font-size-display:2rem;--font-size-title:1.375rem;--font-size-heading:1.0625rem;--font-size-body:1rem;--font-size-label:.875rem;--font-size-caption:.8125rem;--line-height-tight:1.15;--line-height-snug:1.3;--line-height-body:1.5;--font-weight-regular:500;--font-weight-medium:600;--font-weight-semibold:700;--font-weight-bold:800;--letter-spacing-hero:-.01em;--letter-spacing-title:0;--letter-spacing-caps:.04em;--space-0:0;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--gutter:var(--space-5);--touch-min:48px;--radius-xs:6px;--radius-sm:16px;--radius-md:999px;--radius-lg:20px;--radius-xl:28px;--radius-pill:999px;--shadow-1:0 1px 2px #0b0d0a0a;--shadow-2:0 2px 12px #0b0d0a0d;--shadow-3:0 12px 32px #0b0d0a24;--shadow-fab:0 6px 18px #0b0d0a33;--motion-duration-press:.1s;--motion-duration-fast:.15s;--motion-duration-base:.2s;--motion-duration-slow:.25s;--motion-duration-fade:.1s;--motion-ease-standard:cubic-bezier(.2, 0, 0, 1);--motion-ease-out:cubic-bezier(0, 0, .2, 1);--motion-ease-in:cubic-bezier(.4, 0, 1, 1);--z-backdrop:0;--z-content:1;--z-topbar:10;--z-tabbar:10;--z-fab:11;--z-banner:12;--z-scrim:40;--z-sheet:41;--z-dialog:50;--z-toast:60;--icon-sm:20px;--icon-md:24px;--icon-lg:32px}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-base:var(--ink-950);--bg-backdrop:linear-gradient(180deg, #0b0d0a 0%, #0b0d0a 100%);--accent:var(--lime-400);--accent-pressed:var(--lime-300);--accent-soft:#2c3a10;--on-accent:var(--ink-950);--surface-dark:#000;--surface-dark-raised:var(--ink-800);--on-dark:var(--white);--on-dark-muted:var(--mist-300);--text-primary:var(--mist-50);--text-secondary:var(--mist-300);--text-tertiary:var(--mist-400);--text-on-primary:var(--ink-950);--text-on-success:var(--ink-950);--text-on-danger:var(--ink-950);--text-link:var(--lime-300);--text-disabled:var(--mist-500);--money-income:var(--lime-300);--money-expense:var(--text-primary);--money-saving:var(--teal-300);--money-transfer:var(--mist-300);--status-info-fg:var(--ink-950);--status-info-bg:var(--lime-400);--status-success-fg:var(--lime-300);--status-success-bg:#24320c;--status-warning-fg:var(--amber-300);--status-warning-bg:var(--amber-900);--status-warning-fill:var(--amber-400);--status-danger-fg:var(--coral-300);--status-danger-bg:var(--coral-900);--status-danger-fill:var(--coral-400);--band-needs:var(--teal-300);--band-wants:var(--violet-400);--band-savings:var(--lime-400);--band-track:#f2f7ec1a;--border-subtle:#f2f7ec1a;--border-strong:var(--mist-500);--focus-ring-color:var(--lime-300);--focus-ring:0 0 0 2px var(--ink-950), 0 0 0 4px var(--focus-ring-color);--surface-solid-1:var(--ink-850);--surface-solid-2:var(--ink-850);--surface-solid-3:var(--ink-800);--surface-inset:#f2f7ec0f;--surface-pressed:#f2f7ec1a;--scrim:#0009;--grad-primary:linear-gradient(180deg, #c0e45c 0%, #aed246 100%);--grad-primary-pressed:linear-gradient(180deg, #aed246 0%, #7fa51f 100%);--grad-success:linear-gradient(180deg, #d4f07e 0%, #c0e45c 100%);--grad-danger:linear-gradient(180deg, #ffa796 0%, #ff9583 100%);--brand-oak:var(--mist-50);--brand-finance:var(--lime-400);--brand-oak-sheen:linear-gradient(180deg, #fff 0%, #f2f7ec 100%);--brand-finance-sheen:linear-gradient(180deg, #d4f07e 0%, #c0e45c 100%);--brand-mono:var(--mist-50);--glass-1-bg:var(--ink-850);--glass-2-bg:var(--ink-850);--glass-3-bg:var(--ink-800);--shadow-1:0 1px 2px #0000004d;--shadow-2:0 2px 12px #00000059;--shadow-3:0 12px 32px #0000008c;--shadow-fab:0 6px 18px #00000080}:root[data-glass=solid]{--glass-1-bg:var(--glass-1-solid);--glass-2-bg:var(--glass-2-solid);--glass-3-bg:var(--glass-3-solid);--glass-1-blur:0px;--glass-2-blur:0px;--glass-3-blur:0px;--grad-gloss:none;--border-subtle:var(--ink-300);--glass-border:1px solid var(--border-subtle)}:root[data-theme=dark][data-glass=solid]{--border-subtle:var(--mist-700)}:root[data-perf=low]{--shadow-3:0 4px 12px #0b0d0a24}@media (prefers-reduced-motion:reduce){:root:not([data-motion=full]){--motion-duration-press:0s;--motion-duration-fast:var(--motion-duration-fade);--motion-duration-base:var(--motion-duration-fade);--motion-duration-slow:var(--motion-duration-fade)}}:root[data-motion=reduced]{--motion-duration-press:0s;--motion-duration-fast:var(--motion-duration-fade);--motion-duration-base:var(--motion-duration-fade);--motion-duration-slow:var(--motion-duration-fade)}html{background:var(--bg-base);color:var(--text-primary)}body{background:var(--bg-base);color:var(--text-primary);font-family:var(--font-text);font-size:var(--font-size-body);line-height:var(--line-height-body);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;margin:0}:focus-visible{box-shadow:var(--focus-ring);outline:none}.money,[data-money]{font-feature-settings:var(--font-numeric-features);font-variant-numeric:tabular-nums lining-nums}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--touch-min);padding:0 var(--space-5);border-radius:var(--radius-md);font:inherit;font-weight:var(--font-weight-bold);cursor:pointer;isolation:isolate;transition:transform var(--motion-duration-press) var(--motion-ease-standard), filter var(--motion-duration-fast) var(--motion-ease-standard);border:0;display:inline-flex;position:relative}.btn[data-size=sm]{min-height:var(--touch-min)}@media (hover:hover) and (pointer:fine){.btn[data-size=sm]{min-height:40px}}.btn[data-size=lg]{min-height:56px}.btn[data-full-width=true]{width:100%}.btn:active:not([aria-disabled=true]){transform:scale(.98)}.btn[data-variant=primary]{background:var(--grad-primary);color:var(--text-on-primary);box-shadow:var(--shadow-1)}.btn[data-variant=primary]:active:not([aria-disabled=true]){background:var(--grad-primary-pressed)}.btn[data-variant=primary]:before,.btn[data-variant=success]:before,.btn[data-variant=danger]:before{content:"";border-radius:inherit;background:var(--grad-gloss-button);pointer-events:none;z-index:-1;position:absolute;inset:0}.btn[data-variant=success]{background:var(--grad-success);color:var(--text-on-success);box-shadow:var(--shadow-1)}.btn[data-variant=danger]{background:var(--grad-danger);color:var(--text-on-danger);box-shadow:var(--shadow-1)}.btn[data-variant=secondary]{background:var(--surface-solid-3);color:var(--text-primary);border:1px solid var(--border-subtle);box-shadow:var(--shadow-1)}.btn[data-variant=ghost]{color:var(--text-primary);background:0 0}@media (hover:hover){.btn[data-variant=ghost]:hover:not([aria-disabled=true]){background:var(--surface-pressed)}.btn:hover:not([aria-disabled=true]){filter:brightness(1.04)}}.btn[aria-disabled=true]{opacity:.45;cursor:not-allowed}.btn[aria-disabled=true]:before{display:none}.btn [data-part=label][data-hidden=true]{visibility:hidden}.btn [data-part=overlay]{place-items:center;display:grid;position:absolute;inset:0}.btn-reason{margin:var(--space-1) 0 0;font-size:var(--font-size-caption);color:var(--text-secondary)}.spinner{width:var(--icon-sm);height:var(--icon-sm);border:2px solid;border-right-color:#0000;border-radius:50%;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.icon-btn{min-width:var(--touch-min);min-height:var(--touch-min);border-radius:var(--radius-pill);color:var(--text-primary);cursor:pointer;background:0 0;border:0;place-items:center;display:inline-grid}.icon-btn[data-size="56"]{min-width:56px;min-height:56px}.icon-btn[data-variant=glass]{background:var(--surface-solid-3);box-shadow:var(--shadow-1)}.icon-btn[aria-pressed=true]{background:var(--accent);color:var(--on-accent)}.fab{border-radius:var(--radius-pill);background:var(--accent);width:56px;height:56px;color:var(--on-accent);box-shadow:var(--shadow-fab);z-index:var(--z-fab);cursor:pointer;transition:transform var(--motion-duration-press) var(--motion-ease-standard);border:0;place-items:center;display:grid;position:relative}.fab:active{transform:scale(.97)}.card[data-padding=none]{padding:0}.card[data-padding=md]{padding:var(--space-5)}.card[data-padding=lg]{padding:var(--space-6)}.card[data-tone]:not([data-tone=default]){border-left:3px solid var(--_tone)}.card[data-tone=info]{--_tone:var(--status-info-fg)}.card[data-tone=warning]{--_tone:var(--status-warning-fill)}.card[data-tone=success]{--_tone:var(--status-success-fg)}.card-head{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.card-title{align-items:center;gap:var(--space-2);font-family:var(--font-display);font-size:var(--font-size-heading);font-weight:var(--font-weight-semibold);margin:0;display:flex}.card-action{min-height:var(--touch-min);color:var(--text-link);font:inherit;font-size:var(--font-size-label);cursor:pointer;background:0 0;border:0;align-items:center;text-decoration:none;display:inline-flex}.card[data-interactive=true]{width:100%;text-align:inherit;color:inherit;font:inherit;cursor:pointer;text-decoration:none;display:block}.card[data-interactive=true]:active{background:var(--surface-pressed)}.backdrop{z-index:var(--z-backdrop);background:var(--bg-backdrop);pointer-events:none;position:fixed;inset:0}@media (min-width:1024px){.backdrop{background:var(--bg-backdrop) top / 100% 60% no-repeat, var(--bg-base)}}.money-text{align-items:center;gap:var(--space-1);font-feature-settings:var(--font-numeric-features);font-variant-numeric:tabular-nums lining-nums;transition:opacity var(--motion-duration-base) var(--motion-ease-standard);display:inline-flex}.money-text[data-kind=income]{color:var(--money-income)}.money-text[data-kind=expense],.money-text[data-kind=neutral]{color:var(--money-expense)}.money-text[data-kind=saving]{color:var(--money-saving)}.money-text[data-kind=transfer]{color:var(--money-transfer)}.money-text[data-size=hero]{font-family:var(--font-display);font-size:var(--font-size-hero);font-weight:var(--font-weight-bold);letter-spacing:var(--letter-spacing-hero);line-height:var(--line-height-tight)}.money-text[data-size=display]{font-family:var(--font-display);font-size:var(--font-size-display);font-weight:var(--font-weight-bold)}.money-text[data-size=label]{font-size:var(--font-size-label)}.field{gap:var(--space-1);display:grid}.field-label{font-size:var(--font-size-label);font-weight:var(--font-weight-medium);color:var(--text-secondary)}.field-box{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface-solid-3);min-height:52px;color:var(--text-primary);align-items:center;display:flex;position:relative}.field-box:focus-within{box-shadow:var(--focus-ring)}.field[data-invalid=true] .field-box{border-color:var(--status-danger-fill)}.field-box input,.field-box select{min-width:0;min-height:48px;padding:0 var(--space-3);color:inherit;font:inherit;font-size:var(--font-size-body);appearance:none;background:0 0;border:0;outline:none;flex:1}.field-prefix{padding-left:var(--space-3);color:var(--text-tertiary);place-items:center;display:grid}.field-hint{font-size:var(--font-size-caption);color:var(--text-secondary);margin:0}.field-error{align-items:center;gap:var(--space-1);font-size:var(--font-size-caption);color:var(--status-danger-fg);margin:0;display:flex}.switch-row{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:var(--touch-min);display:flex}.switch{border:1.5px solid var(--border-strong);border-radius:var(--radius-pill);background:var(--surface-inset);cursor:pointer;width:52px;height:32px;transition:background var(--motion-duration-fast) var(--motion-ease-standard);flex:none;padding:0;position:relative}.switch:after{content:"";position:absolute;inset:-8px 0}.switch[aria-checked=true]{background:var(--grad-primary);border-color:#0000}.switch-thumb{background:var(--white);width:25px;height:25px;color:var(--aqua-700);box-shadow:var(--shadow-1);transition:transform var(--motion-duration-fast) var(--motion-ease-standard);border-radius:50%;place-items:center;display:grid;position:absolute;top:2px;left:2px}.switch[aria-checked=true] .switch-thumb{transform:translate(20px)}.segmented{gap:var(--space-1);padding:var(--space-1);border-radius:var(--radius-pill);background:var(--surface-solid-3);border:0;margin:0;display:inline-flex}.segmented label{align-items:center;gap:var(--space-1);min-height:var(--touch-min);padding:0 var(--space-4);border-radius:var(--radius-pill);color:var(--text-secondary);font:inherit;font-weight:var(--font-weight-medium);cursor:pointer;transition:background var(--motion-duration-base) var(--motion-ease-standard);background:0 0;border:0;display:inline-flex}.segmented label:has(input:focus-visible){box-shadow:var(--focus-ring)}.segmented label[data-checked=true]{background:var(--accent);color:var(--on-accent);box-shadow:var(--shadow-1)}.badge{align-items:center;gap:var(--space-1);height:24px;padding:0 var(--space-2);border-radius:var(--radius-pill);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);background:var(--surface-inset);color:var(--text-secondary);display:inline-flex}.badge[data-tone=info]{background:var(--status-info-bg);color:var(--status-info-fg)}.badge[data-tone=success]{background:var(--status-success-bg);color:var(--status-success-fg)}.badge[data-tone=warning]{background:var(--status-warning-bg);color:var(--status-warning-fg)}.badge[data-tone=danger]{background:var(--status-danger-bg);color:var(--status-danger-fg)}.skeleton{background:var(--surface-inset);border-radius:var(--radius-xs);animation:1.2s ease-in-out infinite alternate pulse;display:block}:root[data-motion=reduced] .skeleton{animation:none}.skeleton[data-shape=line]{height:14px;margin:var(--space-2) 0}.skeleton[data-shape=circle]{border-radius:50%;width:48px;height:48px}.skeleton[data-shape=card]{border-radius:var(--radius-lg);height:120px}.skeleton[data-shape=hero]{width:70%;height:56px}@keyframes pulse{50%{opacity:.5}}.empty{justify-items:center;gap:var(--space-3);text-align:center;max-width:320px;margin:0 auto;display:grid}.empty-icon{background:var(--glass-1-bg);border:var(--glass-border);width:64px;height:64px;color:var(--text-secondary);border-radius:50%;place-items:center;display:grid}.empty h2{font-size:var(--font-size-heading);margin:0}.empty p{color:var(--text-secondary);margin:0}.banner,.toast{align-items:center;gap:var(--space-3);border-left:3px solid var(--_tone,var(--status-info-fg));display:flex}.banner{width:100%;padding:var(--space-3) var(--space-4)}.banner[data-tone=warning],.toast[data-tone=warning]{--_tone:var(--status-warning-fill)}.toast[data-tone=success]{--_tone:var(--status-success-fg)}.banner p,.toast p{flex:1;margin:0}.toast-region{left:50%;bottom:calc(var(--space-16) + env(safe-area-inset-bottom));z-index:var(--z-toast);width:min(100% - 2 * var(--gutter), 480px);position:fixed;transform:translate(-50%)}.toast{padding:var(--space-3) var(--space-4)}.amount{gap:var(--space-2);display:grid}.amount-input{width:100%;min-height:var(--touch-min);color:var(--text-primary);font-family:var(--font-display);font-size:var(--font-size-display);font-weight:var(--font-weight-bold);font-feature-settings:var(--font-numeric-features);text-align:right;caret-color:var(--text-link);background:0 0;border:0}.amount[data-size=compact] .amount-input{font-size:var(--font-size-heading)}.amount-input[data-empty=true]{color:var(--text-tertiary)}.amount-input:focus-visible{border-radius:var(--radius-sm)}.keypad{gap:var(--space-2);border:0;grid-template-columns:repeat(3,minmax(64px,1fr));margin:0;padding:0;display:grid}.key{border-radius:var(--radius-sm);min-width:64px;min-height:56px;color:var(--text-primary);font:inherit;font-size:var(--font-size-title);font-weight:var(--font-weight-semibold);cursor:pointer;place-items:center;display:grid}.key:active{background:var(--surface-pressed)}.chip{align-items:center;gap:var(--space-2);min-height:var(--touch-min);padding:0 var(--space-4);border-radius:var(--radius-pill);color:var(--text-primary);font:inherit;font-size:var(--font-size-label);font-weight:var(--font-weight-medium);cursor:pointer;display:inline-flex}.chip[data-selected=true]{background:var(--accent);color:var(--on-accent);border:2px solid var(--_band,var(--ink-950))}.chip[data-band=needs]{--_band:var(--band-needs)}.chip[data-band=wants]{--_band:var(--band-wants)}.chip[data-band=savings]{--_band:var(--band-savings)}.chip[data-disabled=true]{opacity:.45;cursor:not-allowed}.chip:has(input:focus-visible){box-shadow:var(--focus-ring)}.chip-row,.chip-group{gap:var(--space-2);border:0;flex-wrap:wrap;margin:0;padding:0;display:flex}.chip-group{margin-top:var(--space-4);display:grid}.chip-group-title{font-size:var(--font-size-label);font-weight:var(--font-weight-semibold);color:var(--text-secondary)}.chip-grid{gap:var(--space-2);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.date-native{min-height:40px;color:inherit;font:inherit;background:0 0;border:0}.installments{gap:var(--space-3);display:grid}.method-list{gap:var(--space-1);border:0;margin:0;padding:0;display:grid}.method-row{align-items:center;gap:var(--space-3);min-height:56px;padding:0 var(--space-3);border-radius:var(--radius-sm);cursor:pointer;display:flex}.method-row[data-selected=true]{background:var(--status-info-bg)}.method-row:has(input:focus-visible){box-shadow:var(--focus-ring)}.method-icon{place-items:center;display:grid;position:relative}.method-seal{font-size:10px;font-weight:var(--font-weight-bold);position:absolute;bottom:-4px;right:-6px}.method-text{display:grid}.sheet{width:100%;max-width:640px;padding:var(--space-3) var(--space-4) calc(var(--space-4) + env(safe-area-inset-bottom));border-radius:var(--radius-xl) var(--radius-xl) 0 0;color:var(--text-primary);z-index:var(--z-sheet);margin:0 auto;position:fixed;inset:auto 0 0;overflow-y:auto}.sheet.glass[data-level]{--_bg:var(--bg-base)}.sheet[data-variant=dialog]{width:min(100% - 2 * var(--gutter), 480px);border-radius:var(--radius-xl);z-index:var(--z-dialog);inset:50% auto auto 50%;transform:translate(-50%,-50%)}.sheet::backdrop{background:var(--scrim)}.sheet-handle{width:36px;height:4px;margin:0 auto var(--space-2);border-radius:var(--radius-pill);background:var(--border-strong)}.sheet[data-variant=dialog] .sheet-handle{display:none}.sheet-head{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.sheet-title{font-family:var(--font-display);font-size:var(--font-size-title);margin:0}.dialog-description{color:var(--text-secondary)}.dialog-actions{gap:var(--space-2);display:grid}.pace{align-items:center;gap:var(--space-2);font-size:var(--font-size-label);font-weight:var(--font-weight-medium);transition:opacity var(--motion-duration-base) var(--motion-ease-standard);display:inline-flex}.pace-button{align-items:center;gap:var(--space-2);min-height:var(--touch-min);color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;display:inline-flex}.pace[data-tone=success]{color:var(--status-success-fg)}.pace[data-tone=warning]{color:var(--status-warning-fg)}.pace[data-tone=danger]{color:var(--status-danger-fg)}.pace[data-tone=info]{color:var(--status-info-fg)}.progress{border-radius:var(--radius-pill);background:var(--band-track);height:6px;display:flex;position:relative;overflow:hidden}.progress[data-size=xs]{height:4px}.progress[data-size=md]{height:8px}.progress[data-no-goal=true]{background:repeating-linear-gradient(90deg, var(--band-track) 0 6px, transparent 6px 12px)}.progress-fill{border-radius:inherit;background:var(--_fill,var(--status-info-fg));height:100%;transition:width var(--motion-duration-slow) var(--motion-ease-standard)}.progress[data-tone=band-needs]{--_fill:var(--band-needs)}.progress[data-tone=band-wants]{--_fill:var(--band-wants)}.progress[data-tone=band-savings]{--_fill:var(--band-savings)}.progress-excess{background:repeating-linear-gradient(45deg, var(--status-danger-fill) 0 3px, transparent 3px 6px);position:absolute;inset:0 auto 0 0}.progress[data-indeterminate=true] .progress-fill{width:30%;animation:1.4s linear infinite slide}:root[data-motion=reduced] .progress[data-indeterminate=true] .progress-fill{animation:none}@keyframes slide{0%{transform:translate(-100%)}to{transform:translate(340%)}}.progress-tick{background:var(--border-strong);width:2px;position:absolute;top:0;bottom:0}.ring{justify-items:center;gap:var(--space-3);margin:0;display:grid;position:relative}.ring-arc{transition:stroke-dasharray var(--motion-duration-slow) var(--motion-ease-standard)}.ring-center,.goal-center{height:var(--_size,240px);width:var(--_size,240px);place-items:center;display:grid;position:absolute;top:0}.ring[data-size=sm] .ring-center{--_size:96px}.ring-legend{border-collapse:collapse;font-size:var(--font-size-label)}.ring-legend th,.ring-legend td{padding:var(--space-1) var(--space-2);text-align:left}.goal-ring{display:inline-grid;position:relative}.goal-ring .goal-center{--_size:100%;font-family:var(--font-display);font-size:var(--font-size-display);font-weight:var(--font-weight-bold);inset:0}.goal-bar{align-items:center;gap:var(--space-2);grid-template-columns:1fr auto;display:grid}.goal-label{align-items:center;gap:var(--space-1);display:inline-flex}.invoice-card{gap:var(--space-2);width:100%;padding:var(--space-5) var(--space-5) 0;border-radius:var(--radius-lg);color:var(--white);text-align:left;font:inherit;background:var(--_card,var(--grad-card-aqua));box-shadow:var(--shadow-2);border:0;display:grid;position:relative;overflow:hidden}.invoice-card:before{content:"";pointer-events:none;background:linear-gradient(135deg,#ffffff1f,#0000 40%);position:absolute;inset:0}.invoice-card[data-brand=grass]{--_card:var(--grad-card-grass)}.invoice-card[data-brand=violet]{--_card:var(--grad-card-violet)}.invoice-card[data-brand=night]{--_card:var(--grad-card-night)}.invoice-card[data-brand=coral]{--_card:var(--grad-card-coral)}.invoice-card[data-brand=graphite]{--_card:var(--grad-card-graphite)}.invoice-top{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.invoice-name,.invoice-total{font-size:var(--font-size-heading);font-weight:var(--font-weight-bold)}.invoice-dates{margin:0 calc(-1 * var(--space-5));padding:var(--space-2) var(--space-5);font-size:var(--font-size-label);font-weight:var(--font-weight-semibold);background:#00000040}.tx-row{border-bottom:1px solid var(--border-subtle);align-items:center;display:flex}.tx-row:last-child{border-bottom:0}.tx-main{align-items:center;gap:var(--space-3);min-height:64px;padding:0 var(--space-2);color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;flex:1;display:flex}.tx-row[data-density=compact] .tx-main{min-height:56px}.tx-icon{background:var(--surface-dark);width:40px;height:40px;color:var(--on-dark);box-shadow:0 0 0 2px var(--surface-solid-2), 0 0 0 4px var(--_band,transparent);border-radius:50%;place-items:center;display:grid}.tx-icon[data-band=needs]{--_band:var(--band-needs)}.tx-icon[data-band=wants]{--_band:var(--band-wants)}.tx-icon[data-band=savings]{--_band:var(--band-savings)}.tx-text{flex:1;min-width:0;display:grid}.tx-title{font-weight:var(--font-weight-semibold)}.tx-meta{font-size:var(--font-size-caption);color:var(--text-secondary)}.tx-seals{gap:var(--space-1);flex-wrap:wrap;display:flex}.tx-seal{font-size:var(--font-size-caption);color:var(--text-secondary);align-items:center;gap:2px;display:inline-flex}.tx-seal[data-seal=forecast]{outline:1px dashed var(--border-strong);border-radius:var(--radius-xs);padding:0 var(--space-1)}.tx-seal[data-seal=late],.tx-seal[data-seal=sync]{color:var(--status-warning-fg)}.tx-amount[data-cancelled=true]{text-decoration:line-through}.sync-badge{align-items:center;gap:var(--space-1);min-height:var(--touch-min);padding:0 var(--space-3);border-radius:var(--radius-pill);color:var(--text-primary);font:inherit;font-size:var(--font-size-label);cursor:pointer;display:inline-flex}.sync-badge[data-state=error]{color:var(--status-warning-fg)}.sync-badge [data-spin=true]{animation:1s linear infinite spin}:root[data-motion=reduced] .sync-badge [data-spin=true]{animation:none}.topbar{z-index:var(--z-topbar);align-items:center;gap:var(--space-2);min-height:56px;padding:0 var(--gutter);background:var(--bg-base);display:flex;position:sticky;top:0}.topbar[data-transparent=true]{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0}.topbar-title{font-family:var(--font-display);font-size:var(--font-size-heading);font-weight:var(--font-weight-bold);text-align:center;flex:1;margin:0}.tabbar,.tabbar.glass{left:50%;bottom:calc(var(--space-3) + env(safe-area-inset-bottom));z-index:var(--z-tabbar);align-items:center;gap:var(--space-1);border-radius:var(--radius-pill);--_bg:var(--surface-dark);background:var(--_bg);box-shadow:var(--shadow-fab);border:0;padding:6px;display:flex;position:fixed;transform:translate(-50%)}.tabbar .fab{width:52px;height:52px;box-shadow:none}.tab{border-radius:var(--radius-pill);min-width:56px;min-height:52px;color:var(--on-dark-muted);flex:none;align-content:center;justify-items:center;gap:2px;padding:2px 10px;text-decoration:none;display:grid}.tab-label{font-size:11px;font-weight:var(--font-weight-semibold);line-height:1}.tab[aria-current=page]{color:var(--on-accent);background:var(--accent)}.tab[aria-current=page] .tab-label{font-weight:var(--font-weight-bold)}.tab-pill{padding:2px var(--space-2);border-radius:var(--radius-pill);place-items:center;display:grid;position:relative}.tab[aria-current=page] .tab-pill{background:0 0}.tab-badge{border-radius:var(--radius-pill);background:var(--status-danger-fill);min-width:18px;color:var(--white);padding:0 4px;font-size:11px;position:absolute;top:-4px;right:4px}.install{gap:var(--space-3);display:grid}.install-steps{gap:var(--space-2);padding-left:var(--space-5);margin:0;display:grid}.install-pointer{color:var(--text-link);justify-self:center}.glass{--_bg:var(--glass-2-bg);background:var(--_bg);border:var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-2);position:relative}.glass[data-level="1"]{--_bg:var(--glass-1-bg);box-shadow:var(--shadow-1)}.glass[data-level="3"]{--_bg:var(--glass-3-bg);box-shadow:var(--shadow-3)}.glass[data-tone=dark]{--_bg:var(--surface-dark);color:var(--on-dark)}.glass[data-tone=accent]{--_bg:var(--accent);color:var(--on-accent)}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}
