/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction: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-outline-style:solid;--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-duration: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;--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0}}}@layer theme{:root,:host{--font-sans:"Figtree Variable", "PingFang SC", "Microsoft YaHei", sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-black:#000;--spacing:.25rem;--container-xs:20rem;--container-sm:24rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--font-weight-medium:500;--font-weight-semibold:600;--leading-snug:1.375;--animate-spin:spin 1s linear infinite;--blur-xs:4px;--aspect-video:16 / 9;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:"Figtree Variable", "PingFang SC", "Microsoft YaHei", sans-serif;--default-mono-font-family:var(--font-mono);--color-border:var(--border)}}@layer base{*,:after,:before,::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}*{border-color:var(--border);outline-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){*{outline-color:color-mix(in oklab, var(--ring) 50%, transparent)}}body{background-color:var(--background);color:var(--foreground);text-rendering:optimizelegibility}html{font-family:Figtree Variable,PingFang SC,Microsoft YaHei,sans-serif}}@layer components;@layer utilities{.\@container\/card-header{container:card-header/inline-size}.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}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.inset-0{inset:0}.top-1\/2{top:50%}.top-2{top:calc(var(--spacing) * 2)}.right-2{right:calc(var(--spacing) * 2)}.left-1\/2{left:50%}.isolate{isolation:isolate}.z-50{z-index:50}.col-start-2{grid-column-start:2}.row-span-2{grid-row:span 2/span 2}.row-start-1{grid-row-start:1}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.-mx-4{margin-inline:calc(var(--spacing) * -4)}.my-0\.5{margin-block:calc(var(--spacing) * .5)}.mt-4{margin-top:calc(var(--spacing) * 4)}.-mb-4{margin-bottom:calc(var(--spacing) * -4)}.ml-auto{margin-left:auto}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-flex{display:inline-flex}.table{display:table}.table-caption{display:table-caption}.table-cell{display:table-cell}.table-row{display:table-row}.aspect-auto{aspect-ratio:auto}.aspect-video{aspect-ratio:var(--aspect-video)}.size-2\.5{width:calc(var(--spacing) * 2.5);height:calc(var(--spacing) * 2.5)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.h-1{height:var(--spacing)}.h-2{height:calc(var(--spacing) * 2)}.h-2\.5{height:calc(var(--spacing) * 2.5)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-\[180px\]{height:180px}.h-\[230px\]{height:230px}.h-\[240px\]{height:240px}.h-full{height:100%}.w-0{width:0}.w-1{width:var(--spacing)}.w-2{width:calc(var(--spacing) * 2)}.w-2\.5{width:calc(var(--spacing) * 2.5)}.w-fit{width:fit-content}.w-full{width:100%}.max-w-\[calc\(100\%-2rem\)\]{max-width:calc(100% - 2rem)}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:0}.min-w-32{min-width:calc(var(--spacing) * 32)}.flex-1{flex:1}.shrink-0{flex-shrink:0}.caption-bottom{caption-side:bottom}.origin-\(--transform-origin\){transform-origin:var(--transform-origin)}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-\[calc\(-50\%-2px\)\]{--tw-translate-y:calc(-50% - 2px);translate:var(--tw-translate-x) var(--tw-translate-y)}.rotate-45{rotate:45deg}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-spin{animation:var(--animate-spin)}.auto-rows-min{grid-auto-rows:min-content}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-\(--card-spacing\){gap:var(--card-spacing)}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.self-start{align-self:flex-start}.justify-self-end{justify-self:flex-end}.justify-self-start{justify-self:flex-start}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.rounded{border-radius:.25rem}.rounded-4xl{border-radius:calc(var(--radius) * 2.6)}.rounded-\[2px\]{border-radius:2px}.rounded-full{border-radius:2147483647px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) * .8)}.rounded-xl{border-radius:calc(var(--radius) * 1.4)}.rounded-t-xl{border-top-left-radius:calc(var(--radius) * 1.4);border-top-right-radius:calc(var(--radius) * 1.4)}.rounded-b-xl{border-bottom-right-radius:calc(var(--radius) * 1.4);border-bottom-left-radius:calc(var(--radius) * 1.4)}.border{border-style:var(--tw-border-style);border-width:1px}.border-\[1\.5px\]{border-style:var(--tw-border-style);border-width:1.5px}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-\(--color-border\){border-color:var(--color-border)}.border-border,.border-border\/50{border-color:var(--border)}@supports (color:color-mix(in lab, red, red)){.border-border\/50{border-color:color-mix(in oklab, var(--border) 50%, transparent)}}.border-input{border-color:var(--input)}.border-transparent{border-color:#0000}.bg-\(--color-bg\){background-color:var(--color-bg)}.bg-background{background-color:var(--background)}.bg-black\/10{background-color:#0000001a}@supports (color:color-mix(in lab, red, red)){.bg-black\/10{background-color:color-mix(in oklab, var(--color-black) 10%, transparent)}}.bg-card{background-color:var(--card)}.bg-destructive\/10{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.bg-destructive\/10{background-color:color-mix(in oklab, var(--destructive) 10%, transparent)}}.bg-foreground{background-color:var(--foreground)}.bg-muted,.bg-muted\/50{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/50{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}.bg-popover{background-color:var(--popover)}.bg-primary{background-color:var(--primary)}.bg-secondary{background-color:var(--secondary)}.bg-transparent{background-color:#0000}.bg-clip-padding{background-clip:padding-box}.fill-foreground{fill:var(--foreground)}.p-\(--card-spacing\){padding:var(--card-spacing)}.p-2{padding:calc(var(--spacing) * 2)}.p-4{padding:calc(var(--spacing) * 4)}.px-\(--card-spacing\){padding-inline:var(--card-spacing)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.py-\(--card-spacing\){padding-block:var(--card-spacing)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.text-left{text-align:left}.text-right{text-align:right}.align-middle{vertical-align:middle}.font-heading{font-family:var(--font-sans)}.font-mono{font-family:var(--font-mono)}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.8rem\]{font-size:.8rem}.leading-none{--tw-leading:1;line-height:1}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.whitespace-nowrap{white-space:nowrap}.text-background{color:var(--background)}.text-card-foreground{color:var(--card-foreground)}.text-destructive{color:var(--destructive)}.text-foreground{color:var(--foreground)}.text-muted-foreground{color:var(--muted-foreground)}.text-popover-foreground{color:var(--popover-foreground)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-secondary-foreground{color:var(--secondary-foreground)}.lowercase{text-transform:lowercase}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline-offset-4{text-underline-offset:4px}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-xl{--tw-shadow:0 20px 25px -5px var(--tw-shadow-color,#0000001a), 0 8px 10px -6px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-1{--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)}.ring-foreground\/10{--tw-ring-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.ring-foreground\/10{--tw-ring-color:color-mix(in oklab, var(--foreground) 10%, transparent)}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.grayscale{--tw-grayscale:grayscale(100%);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,)}.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:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-100{--tw-duration:.1s;transition-duration:.1s}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.\[--card-spacing\:--spacing\(4\)\]{--card-spacing:calc(var(--spacing) * 4)}.running{animation-play-state:running}.group-data-\[size\=sm\]\/card\:text-sm:is(:where(.group\/card)[data-size=sm] *){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.file\:inline-flex::file-selector-button{display:inline-flex}.file\:h-6::file-selector-button{height:calc(var(--spacing) * 6)}.file\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\:bg-transparent::file-selector-button{background-color:#0000}.file\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.file\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.file\:text-foreground::file-selector-button{color:var(--foreground)}.placeholder\:text-muted-foreground::placeholder{color:var(--muted-foreground)}@media (hover:hover){.hover\:bg-\[color-mix\(in_oklch\,var\(--secondary\)\,var\(--foreground\)_5\%\)\]:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-\[color-mix\(in_oklch\,var\(--secondary\)\,var\(--foreground\)_5\%\)\]:hover{background-color:color-mix(in oklch,var(--secondary),var(--foreground) 5%)}}.hover\:bg-\[var\(--primary-ink\)\]:hover{background-color:var(--primary-ink)}.hover\:bg-destructive\/20:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-destructive\/20:hover{background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.hover\:bg-muted:hover,.hover\:bg-muted\/50:hover{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-muted\/50:hover{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}.hover\:text-foreground:hover{color:var(--foreground)}.hover\:text-muted-foreground:hover{color:var(--muted-foreground)}.hover\:underline:hover{text-decoration-line:underline}}.focus-visible\:border-destructive\/40:focus-visible{border-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:border-destructive\/40:focus-visible{border-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.focus-visible\:border-ring:focus-visible{border-color:var(--ring)}.focus-visible\:ring-3:focus-visible,.focus-visible\:ring-\[3px\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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)}.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:color-mix(in oklab, var(--ring) 50%, transparent)}}.active\:not-aria-\[haspopup\]\:translate-y-px:active:not([aria-haspopup]){--tw-translate-y:1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:bg-input\/50:disabled{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.disabled\:bg-input\/50:disabled{background-color:color-mix(in oklab, var(--input) 50%, transparent)}}.disabled\:opacity-50:disabled{opacity:.5}.has-aria-expanded\:bg-muted\/50:has([aria-expanded=true]){background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.has-aria-expanded\:bg-muted\/50:has([aria-expanded=true]){background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}.has-data-\[icon\=inline-end\]\:pr-1\.5:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 1.5)}.has-data-\[icon\=inline-end\]\:pr-3:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 3)}.has-data-\[icon\=inline-end\]\:pr-4:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 4)}.has-data-\[icon\=inline-start\]\:pl-1\.5:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 1.5)}.has-data-\[icon\=inline-start\]\:pl-3:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 3)}.has-data-\[icon\=inline-start\]\:pl-4:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 4)}.has-data-\[slot\=card-action\]\:grid-cols-\[1fr_auto\]:has([data-slot=card-action]){grid-template-columns:1fr auto}.has-data-\[slot\=card-description\]\:grid-rows-\[auto_auto\]:has([data-slot=card-description]){grid-template-rows:auto auto}.has-data-\[slot\=card-footer\]\:pb-0:has([data-slot=card-footer]){padding-bottom:0}.has-data-\[slot\=kbd\]\:pr-1\.5:has([data-slot=kbd]){padding-right:calc(var(--spacing) * 1.5)}.has-\[\>img\:first-child\]\:pt-0:has(>img:first-child){padding-top:0}.aria-expanded\:bg-muted[aria-expanded=true]{background-color:var(--muted)}.aria-expanded\:bg-secondary[aria-expanded=true]{background-color:var(--secondary)}.aria-expanded\:text-foreground[aria-expanded=true]{color:var(--foreground)}.aria-expanded\:text-secondary-foreground[aria-expanded=true]{color:var(--secondary-foreground)}.aria-invalid\:border-destructive[aria-invalid=true]{border-color:var(--destructive)}.aria-invalid\:ring-3[aria-invalid=true]{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + 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)}.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.data-\[side\=bottom\]\:top-1[data-side=bottom]{top:var(--spacing)}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}.data-\[side\=inline-end\]\:top-1\/2\![data-side=inline-end]{top:50%!important}.data-\[side\=inline-end\]\:-left-1[data-side=inline-end]{left:calc(var(--spacing) * -1)}.data-\[side\=inline-end\]\:-translate-y-1\/2[data-side=inline-end]{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=inline-end\]\:slide-in-from-left-2[data-side=inline-end]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\[side\=inline-start\]\:top-1\/2\![data-side=inline-start]{top:50%!important}.data-\[side\=inline-start\]\:-right-1[data-side=inline-start]{right:calc(var(--spacing) * -1)}.data-\[side\=inline-start\]\:-translate-y-1\/2[data-side=inline-start]{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=inline-start\]\:slide-in-from-right-2[data-side=inline-start]{--tw-enter-translate-x:calc(2*var(--spacing))}.data-\[side\=left\]\:top-1\/2\![data-side=left]{top:50%!important}.data-\[side\=left\]\:-right-1[data-side=left]{right:calc(var(--spacing) * -1)}.data-\[side\=left\]\:-translate-y-1\/2[data-side=left]{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}.data-\[side\=right\]\:top-1\/2\![data-side=right]{top:50%!important}.data-\[side\=right\]\:-left-1[data-side=right]{left:calc(var(--spacing) * -1)}.data-\[side\=right\]\:-translate-y-1\/2[data-side=right]{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\[side\=top\]\:-bottom-2\.5[data-side=top]{bottom:calc(var(--spacing) * -2.5)}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}.data-\[size\=sm\]\:\[--card-spacing\:--spacing\(3\)\][data-size=sm]{--card-spacing:calc(var(--spacing) * 3)}.data-\[size\=sm\]\:has-data-\[slot\=card-footer\]\:pb-0[data-size=sm]:has([data-slot=card-footer]){padding-bottom:0}:is(.\*\*\:data-\[slot\=kbd\]\:relative *)[data-slot=kbd]{position:relative}:is(.\*\*\:data-\[slot\=kbd\]\:isolate *)[data-slot=kbd]{isolation:isolate}:is(.\*\*\:data-\[slot\=kbd\]\:z-50 *)[data-slot=kbd]{z-index:50}:is(.\*\*\:data-\[slot\=kbd\]\:rounded-sm *)[data-slot=kbd]{border-radius:calc(var(--radius) * .6)}.data-\[state\=delayed-open\]\:animate-in[data-state=delayed-open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=delayed-open\]\:fade-in-0[data-state=delayed-open]{--tw-enter-opacity:0}.data-\[state\=delayed-open\]\:zoom-in-95[data-state=delayed-open]{--tw-enter-scale:.95}.data-\[state\=selected\]\:bg-muted[data-state=selected]{background-color:var(--muted)}@supports ((-webkit-backdrop-filter:var(--tw)) or (backdrop-filter:var(--tw))){.supports-backdrop-filter\:backdrop-blur-xs{--tw-backdrop-blur:blur(var(--blur-xs));-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,)}}@media not all and (width>=40rem){.max-sm\:min-h-11{min-height:calc(var(--spacing) * 11)}.max-sm\:min-w-11{min-width:calc(var(--spacing) * 11)}}@media (width>=40rem){.sm\:max-w-sm{max-width:var(--container-sm)}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}}@media (width>=48rem){.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}}.dark\:border-input:is(.dark *){border-color:var(--input)}.dark\:bg-destructive\/20:is(.dark *){background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-destructive\/20:is(.dark *){background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.dark\:bg-input\/30:is(.dark *){background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-input\/30:is(.dark *){background-color:color-mix(in oklab, var(--input) 30%, transparent)}}@media (hover:hover){.dark\:hover\:bg-destructive\/30:is(.dark *):hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-destructive\/30:is(.dark *):hover{background-color:color-mix(in oklab, var(--destructive) 30%, transparent)}}.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:color-mix(in oklab, var(--input) 50%, transparent)}}.dark\:hover\:bg-muted\/50:is(.dark *):hover{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-muted\/50:is(.dark *):hover{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}}.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.dark\:disabled\:bg-input\/80:is(.dark *):disabled{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:disabled\:bg-input\/80:is(.dark *):disabled{background-color:color-mix(in oklab, var(--input) 80%, transparent)}}.dark\:aria-invalid\:border-destructive\/50:is(.dark *)[aria-invalid=true]{border-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:aria-invalid\:border-destructive\/50:is(.dark *)[aria-invalid=true]{border-color:color-mix(in oklab, var(--destructive) 50%, transparent)}}.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.data-open\:animate-in:where([data-state=open]),.data-open\:animate-in:where([data-open]:not([data-open=false])){animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-open\:fade-in-0:where([data-state=open]),.data-open\:fade-in-0:where([data-open]:not([data-open=false])){--tw-enter-opacity:0}.data-open\:zoom-in-95:where([data-state=open]),.data-open\:zoom-in-95:where([data-open]:not([data-open=false])){--tw-enter-scale:.95}.data-closed\:animate-out:where([data-state=closed]),.data-closed\:animate-out:where([data-closed]:not([data-closed=false])){animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-closed\:fade-out-0:where([data-state=closed]),.data-closed\:fade-out-0:where([data-closed]:not([data-closed=false])){--tw-exit-opacity:0}.data-closed\:zoom-out-95:where([data-state=closed]),.data-closed\:zoom-out-95:where([data-closed]:not([data-closed=false])){--tw-exit-scale:.95}.\[\&_\.recharts-cartesian-axis-tick_text\]\:fill-muted-foreground .recharts-cartesian-axis-tick text{fill:var(--muted-foreground)}.\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50 .recharts-cartesian-grid line[stroke=\#ccc]{stroke:var(--border)}@supports (color:color-mix(in lab, red, red)){.\[\&_\.recharts-cartesian-grid_line\[stroke\=\'\#ccc\'\]\]\:stroke-border\/50 .recharts-cartesian-grid line[stroke=\#ccc]{stroke:color-mix(in oklab, var(--border) 50%, transparent)}}.\[\&_\.recharts-curve\.recharts-tooltip-cursor\]\:stroke-border .recharts-curve.recharts-tooltip-cursor{stroke:var(--border)}.\[\&_\.recharts-dot\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-dot[stroke=\#fff]{stroke:#0000}.\[\&_\.recharts-layer\]\:outline-hidden .recharts-layer{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.\[\&_\.recharts-layer\]\:outline-hidden .recharts-layer{outline-offset:2px;outline:2px solid #0000}}.\[\&_\.recharts-polar-grid_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-polar-grid [stroke=\#ccc]{stroke:var(--border)}.\[\&_\.recharts-radial-bar-background-sector\]\:fill-muted .recharts-radial-bar-background-sector,.\[\&_\.recharts-rectangle\.recharts-tooltip-cursor\]\:fill-muted .recharts-rectangle.recharts-tooltip-cursor{fill:var(--muted)}.\[\&_\.recharts-reference-line_\[stroke\=\'\#ccc\'\]\]\:stroke-border .recharts-reference-line [stroke=\#ccc]{stroke:var(--border)}.\[\&_\.recharts-sector\]\:outline-hidden .recharts-sector{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.\[\&_\.recharts-sector\]\:outline-hidden .recharts-sector{outline-offset:2px;outline:2px solid #0000}}.\[\&_\.recharts-sector\[stroke\=\'\#fff\'\]\]\:stroke-transparent .recharts-sector[stroke=\#fff]{stroke:#0000}.\[\&_\.recharts-surface\]\:outline-hidden .recharts-surface{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.\[\&_\.recharts-surface\]\:outline-hidden .recharts-surface{outline-offset:2px;outline:2px solid #0000}}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3\.5 svg:not([class*=size-]){width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&_tr\]\:border-b tr{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-style:var(--tw-border-style);border-width:0}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:0}.\[\.border-b\]\:pb-\(--card-spacing\).border-b{padding-bottom:var(--card-spacing)}:is(.\*\:\[a\]\:underline>*):is(a){text-decoration-line:underline}:is(.\*\:\[a\]\:underline-offset-3>*):is(a){text-underline-offset:3px}@media (hover:hover){.\[a\]\:hover\:bg-destructive\/20:is(a):hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.\[a\]\:hover\:bg-destructive\/20:is(a):hover{background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.\[a\]\:hover\:bg-muted:is(a):hover{background-color:var(--muted)}.\[a\]\:hover\:bg-primary\/80:is(a):hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.\[a\]\:hover\:bg-primary\/80:is(a):hover{background-color:color-mix(in oklab, var(--primary) 80%, transparent)}}.\[a\]\:hover\:bg-secondary\/80:is(a):hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.\[a\]\:hover\:bg-secondary\/80:is(a):hover{background-color:color-mix(in oklab, var(--secondary) 80%, transparent)}}.\[a\]\:hover\:text-muted-foreground:is(a):hover{color:var(--muted-foreground)}:is(.\*\:\[a\]\:hover\:text-foreground>*):is(a):hover{color:var(--foreground)}}:is(.\*\:\[img\:first-child\]\:rounded-t-xl>*):is(img:first-child){border-top-left-radius:calc(var(--radius) * 1.4);border-top-right-radius:calc(var(--radius) * 1.4)}:is(.\*\:\[img\:last-child\]\:rounded-b-xl>*):is(img:last-child){border-bottom-right-radius:calc(var(--radius) * 1.4);border-bottom-left-radius:calc(var(--radius) * 1.4)}.\[\&\>svg\]\:pointer-events-none>svg{pointer-events:none}.\[\&\>svg\]\:size-3\!>svg{width:calc(var(--spacing) * 3)!important;height:calc(var(--spacing) * 3)!important}.\[\&\>svg\]\:h-2\.5>svg{height:calc(var(--spacing) * 2.5)}.\[\&\>svg\]\:h-3>svg{height:calc(var(--spacing) * 3)}.\[\&\>svg\]\:w-2\.5>svg{width:calc(var(--spacing) * 2.5)}.\[\&\>svg\]\:w-3>svg{width:calc(var(--spacing) * 3)}.\[\&\>svg\]\:text-muted-foreground>svg{color:var(--muted-foreground)}.\[\&\>tr\]\:last\:border-b-0>tr:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}@font-face{font-family:Figtree Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/figtree-latin-ext-wght-normal-DCwSJGxG.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:Figtree Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/assets/figtree-latin-wght-normal-D_ZTVpCC.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;--background:#f5f8fc;--foreground:#1b2435;--card:#fff;--card-foreground:#1b2435;--popover:#fff;--popover-foreground:#1b2435;--primary:#376ed9;--primary-foreground:#fff;--primary-ink:#2151af;--secondary:#ecf1f7;--secondary-foreground:#1b2435;--muted:#ecf1f7;--muted-foreground:#5a6475;--accent:#e7f1ff;--accent-foreground:#2151af;--border:#e2e7ed;--input:#d5dce6;--ring:#376ed9;--destructive:#b6322d;--quiet:#b2b8c1;--sky:#618cdc;--sky-soft:#e6f1ff;--sky-deep:#3c61a7;--teal:#16a396;--teal-soft:#dcf7f2;--teal-deep:#00786c;--violet:#9a7ad1;--violet-soft:#f3ecff;--violet-deep:#6e519d;--amber:#bf7e1f;--amber-soft:#fdeddc;--amber-deep:#8e5400;--coral:#d16c5d;--coral-soft:#ffeae5;--coral-deep:#9c4438;--income:var(--primary);--expense:var(--coral);--chart-1:var(--sky);--chart-2:var(--teal);--chart-3:var(--violet);--chart-4:var(--amber);--chart-5:var(--coral);--radius:.75rem;--radius-card:20px;--font-sans:"Figtree Variable", "PingFang SC", "Microsoft YaHei", sans-serif}::selection{background:var(--primary)}@supports (color:color-mix(in lab, red, red)){::selection{background:color-mix(in oklch, var(--primary) 22%, transparent)}}body{font-family:var(--font-sans);margin:0;font-size:15px;line-height:1.65}a,button{-webkit-tap-highlight-color:transparent}:where(a:not([data-slot=button]):not(.btn)){color:var(--primary);text-decoration:none}a:not([data-slot=button]):hover{text-decoration:underline}button,summary{cursor:pointer}:focus-visible:not([data-slot]){outline:2px solid var(--ring);outline-offset:2px}:is(input,textarea):focus-visible:not([data-slot]){border-color:var(--ring);box-shadow:0 0 0 3px var(--ring);outline:none}@supports (color:color-mix(in lab, red, red)){:is(input,textarea):focus-visible:not([data-slot]){box-shadow:0 0 0 3px color-mix(in oklab, var(--ring) 50%, transparent)}}.workspace{flex-direction:column;gap:24px;max-width:1280px;margin:auto;padding:40px 24px 80px;display:flex}h1,h2,h3,p{margin:0}h1{letter-spacing:-.04em;font-size:clamp(26px,4vw,36px);font-weight:650;line-height:1.35}h2{font-size:18px;font-weight:650}h3{font-size:15px;font-weight:600}.muted{color:var(--muted-foreground);font-size:13px}.btn{background:var(--primary);color:#fff;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;min-height:44px;padding:9px 20px;font-size:14px;font-weight:600;display:inline-flex}.btn:hover{background:var(--primary-ink);text-decoration:none}.income{color:var(--income)}.expense{color:var(--expense)}.notice{background:var(--accent);color:var(--accent-foreground);border-radius:var(--radius);margin:12px 0;padding:12px 16px;font-size:.875rem}.notice a{margin-left:8px;text-decoration:underline}progress{width:100%;height:10px;accent-color:var(--primary);border-radius:10px;margin:10px 0;overflow:hidden}details{margin-top:14px}summary{color:var(--primary);padding:8px 0;font-size:13px}table{border-collapse:collapse;text-align:left;width:100%;margin-top:14px;font-size:13px}th{color:var(--muted-foreground);white-space:nowrap;font-weight:500}td,th{border-bottom:1px solid var(--border);padding:12px 14px 12px 0}td{font-variant-numeric:tabular-nums;min-width:80px}.form-stack{flex-direction:column;gap:18px;margin-top:20px;display:flex}label{color:var(--foreground);flex-direction:column;gap:8px;font-size:.875rem;font-weight:500;display:flex}input:not([type=checkbox]):not([type=radio]):not([type=hidden]),textarea,.choice-trigger[data-variant=field]{box-sizing:border-box;border:1px solid var(--input);border-radius:var(--radius);background:var(--card);width:100%;min-height:44px;color:var(--foreground);padding:9px 14px;font-size:1rem;font-weight:400;line-height:1.5}:is(input,textarea)::placeholder{color:var(--quiet)}:is(input:not([type=checkbox]):not([type=radio]),textarea,.choice-trigger[data-variant=field]):hover:not(:disabled,:focus-visible){border-color:var(--quiet)}textarea{resize:vertical;min-height:90px}input:user-invalid{border-color:var(--destructive)}input[readonly]{opacity:.7}input[type=file]{color:var(--muted-foreground);padding:5px 6px;font-size:.875rem}input[type=file]::file-selector-button{background:var(--secondary);min-height:32px;color:var(--foreground);font:inherit;cursor:pointer;border:0;border-radius:999px;margin-right:12px;padding:0 14px;font-weight:600}input:is([type=checkbox],[type=radio]){width:18px;height:18px;accent-color:var(--primary);flex:none;margin:0}.check{flex-direction:row;align-items:center;gap:10px;min-height:44px;display:flex}fieldset{border:0;min-width:0;margin:0;padding:0}legend{margin-bottom:8px;padding:0;font-size:.875rem;font-weight:500}.field-note,.settings-help{color:var(--muted-foreground);font-size:.8125rem;line-height:1.6}.error{background:var(--coral-soft);color:var(--destructive);border-radius:var(--radius);padding:12px 16px;font-size:.875rem}.danger-zone{border-top:1px solid var(--border);margin-top:32px;padding-top:12px}.danger-zone summary{color:var(--destructive)}.skip-link{z-index:100;background:#fff;padding:12px;position:absolute;top:-100px;left:12px}.skip-link:focus{top:12px}@media (width<=760px){.workspace{gap:18px;padding:24px 16px 60px}.btn{min-height:48px}}:is(.settings-disclosure,.agent-history,.finance-more-options,.danger-zone,.token-revoke)>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;width:100%;min-height:44px;list-style:none;display:flex}:is(.settings-disclosure,.agent-history,.finance-more-options,.danger-zone,.token-revoke)>summary::-webkit-details-marker{display:none}:is(.settings-disclosure,.agent-history,.finance-more-options,.danger-zone,.token-revoke)>summary:after{content:"";border-bottom:1.5px solid;border-right:1.5px solid;flex:0 0 6px;width:6px;height:6px;margin-inline:4px;transform:rotate(45deg)}:is(.settings-disclosure,.agent-history,.finance-more-options,.danger-zone,.token-revoke)[open]>summary:after{transform:rotate(225deg)}:is(.settings-disclosure,.agent-history,.finance-more-options,.danger-zone,.token-revoke)>summary:focus-visible{outline:2px solid var(--ring);outline-offset:2px;border-radius:4px}.choice{gap:8px;min-width:0;display:grid;position:relative}.choice[data-variant=pill]{display:inline-grid}.choice-trigger{text-align:start;cursor:pointer;white-space:nowrap;outline:none;justify-content:space-between;align-items:center;gap:8px;height:auto;display:flex}.choice-trigger:disabled,.choice-trigger[data-disabled]{cursor:not-allowed;opacity:.6}.choice-trigger:focus-visible,.choice-trigger[data-popup-open]{border-color:var(--ring);box-shadow:0 0 0 3px var(--ring)}@supports (color:color-mix(in lab, red, red)){.choice-trigger:focus-visible,.choice-trigger[data-popup-open]{box-shadow:0 0 0 3px color-mix(in oklab, var(--ring) 50%, transparent)}}.choice-value{align-items:center;gap:8px;min-width:0;display:flex}.choice-value>span{text-overflow:ellipsis;overflow:hidden}.choice-value>small,.choice-item small{color:var(--muted-foreground);text-overflow:ellipsis;font-size:.8125rem;font-weight:400;overflow:hidden}.choice-value>svg{width:16px;height:16px;color:var(--muted-foreground);flex:none;align-self:center}.choice-placeholder{color:var(--quiet)}.choice-chevron{width:16px;height:16px;color:var(--muted-foreground);flex:none;display:inline-flex}.choice-chevron svg{width:16px;height:16px}.choice-trigger[data-variant=pill]{box-sizing:border-box;border:1px solid var(--border);background:var(--card);max-width:16rem;min-height:40px;color:var(--foreground);border-radius:999px;padding:0 12px 0 14px;font-size:.875rem;font-weight:600}.choice-trigger[data-variant=pill]:hover{border-color:var(--quiet)}.choice-trigger[data-variant=pill][data-active]{background:var(--accent);color:var(--accent-foreground);border-color:#0000}.choice-trigger[data-variant=pill][data-active] svg{color:inherit}.choice-positioner{z-index:50;outline:none}.choice-menu{box-sizing:border-box;width:max-content;min-width:max(var(--anchor-width), 12rem);max-width:min(26rem, var(--available-width));max-height:min(24rem, var(--available-height));border:1px solid var(--border);background:var(--popover);color:var(--popover-foreground);border-radius:14px;outline:none;flex-direction:column;display:flex;overflow:hidden;box-shadow:0 12px 32px #1b24351f}.choice-menu-search{min-width:min(max(var(--anchor-width), 18rem), var(--available-width))}.choice-search{border-bottom:1px solid var(--border);flex:none;align-items:center;gap:8px;padding:0 14px;display:flex}.choice-search svg{width:16px;height:16px;color:var(--muted-foreground);flex:none}.choice-search input:not([type=checkbox]):not([type=radio]):not([type=hidden]){min-height:46px;box-shadow:none;background:0 0;border:0;border-radius:0;outline:none;padding:0}.choice-list{overscroll-behavior:contain;min-height:0;padding:4px;scroll-padding-block:4px;overflow-y:auto}.choice-list:empty{display:none}.choice-group-label{color:var(--muted-foreground);letter-spacing:.04em;text-transform:uppercase;padding:10px 10px 4px;font-size:.75rem;font-weight:600}.choice-item{box-sizing:border-box;white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:10px;outline:none;align-items:center;gap:10px;min-height:40px;padding:9px 36px 9px 10px;font-size:.9375rem;line-height:1.4;display:flex;position:relative}.choice-item>div{align-items:center;gap:10px;min-width:0;display:flex}.choice-item[data-highlighted]{background:var(--secondary)}.choice-item[data-selected]{font-weight:600}.choice-check{width:16px;height:16px;color:var(--primary);display:inline-flex;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.choice-check svg{width:16px;height:16px}.choice-empty:not(:empty){color:var(--muted-foreground);padding:16px 14px;font-size:.875rem}.avatar{background:var(--secondary);width:28px;height:28px;color:var(--muted-foreground);border-radius:999px;flex:none;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;line-height:1;display:inline-flex;overflow:hidden}.avatar img{object-fit:cover;width:100%;height:100%}.avatar[data-size=sm]{width:24px;height:24px;font-size:.6875rem}.avatar[data-size=lg]{width:40px;height:40px;font-size:.9375rem}.avatar[data-size=xl]{width:64px;height:64px;font-size:1.375rem}:is(.avatar,.finance-avatar)[data-tone="0"]{background:var(--sky-soft);color:var(--sky-deep)}:is(.avatar,.finance-avatar)[data-tone="1"]{background:var(--teal-soft);color:var(--teal-deep)}:is(.avatar,.finance-avatar)[data-tone="2"]{background:var(--violet-soft);color:var(--violet-deep)}:is(.avatar,.finance-avatar)[data-tone="3"]{background:var(--amber-soft);color:var(--amber-deep)}:is(.avatar,.finance-avatar)[data-tone="4"]{background:var(--coral-soft);color:var(--coral-deep)}.people-tag-options{flex-wrap:wrap;gap:8px;display:flex}.people-tag{cursor:pointer;display:block;position:relative}.people-tag input{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.people-tag>span{box-sizing:border-box;border:1px solid var(--border);background:var(--card);min-height:40px;color:var(--muted-foreground);border-radius:999px;align-items:center;gap:8px;padding:0 16px 0 7px;font-size:.875rem;font-weight:600;display:inline-flex}.people-tag:hover>span{border-color:var(--quiet)}.people-tag input:checked+span{background:var(--accent);color:var(--accent-foreground);border-color:#0000}.people-tag input:not(:checked)+span .avatar{filter:grayscale();opacity:.7}.people-tag input:focus-visible+span{outline:2px solid var(--ring);outline-offset:2px}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@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-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{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-outline-style{syntax:"*";inherits:false;initial-value:solid}@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-duration{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}@keyframes spin{to{transform:rotate(360deg)}}@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));filter:blur(var(--tw-enter-blur,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));filter:blur(var(--tw-exit-blur,0))}}.editor-sheet{border-radius:var(--radius-card);background:var(--card);max-width:640px;margin:0 auto;padding:32px}.editor-back{align-items:center;gap:6px;margin-bottom:16px;font-size:.875rem;font-weight:600;display:inline-flex}.editor-back svg{width:16px;height:16px}.editor-heading{margin-bottom:28px}.editor-heading>p{color:var(--muted-foreground);margin-bottom:8px;font-size:.8125rem}.editor-heading h1{letter-spacing:-.02em;font-size:1.875rem;font-weight:700;line-height:1.25}.editor-heading>span{color:var(--muted-foreground);margin-top:10px;font-size:.875rem;display:block}.entry-form{flex-direction:column;gap:24px;display:flex}.editor-sheet .type-picker{border:0;margin:0;padding:0}.type-options{background:var(--secondary);border-radius:999px;gap:2px;padding:3px;display:flex}.type-options label{cursor:pointer;flex:1;margin:0;display:block;position:relative}.type-options input{opacity:0;width:1px;height:1px;position:absolute}.type-options span{min-height:38px;color:var(--muted-foreground);text-align:center;border-radius:999px;place-items:center;padding:0 8px;font-size:.875rem;font-weight:600;display:grid}.type-options label:hover span{color:var(--foreground)}.type-options input:checked+span{background:var(--card);color:var(--foreground);box-shadow:0 1px 2px #1b243514}.type-options input:focus-visible+span{outline:2px solid var(--ring);outline-offset:1px}.type-options input:disabled+span{opacity:.65}.money-field>label{flex-direction:row;justify-content:space-between;align-items:center;display:flex}.money-field>label>span{color:var(--muted-foreground);font-size:.75rem;font-weight:400}.money-control{border-bottom:1px solid var(--border);align-items:center;gap:12px;margin-top:8px;padding:4px 0 8px;display:flex}.money-control>span{color:var(--muted-foreground);font-size:2rem;line-height:1}.money-control:focus-within{border-color:var(--primary)}.money-control input::placeholder{color:var(--muted-foreground)}.editor-field-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.rule-schedule{gap:16px;display:grid}.disclosure-fields{gap:16px;padding:0 0 8px;display:grid}.form-callout{background:var(--accent);color:var(--accent-foreground);border-radius:12px;align-items:flex-start;gap:10px;padding:14px 16px;font-size:.8125rem;display:flex}.form-callout svg{flex-shrink:0;width:18px;height:18px;margin-top:1px}.form-callout a{text-decoration:underline}.editor-actions{z-index:2;padding:20px 0 max(8px, env(safe-area-inset-bottom));border-top:1px solid var(--border);background:var(--card);justify-content:flex-end;align-items:center;gap:24px;margin-top:8px;display:flex;position:sticky;bottom:0}.editor-actions>a{color:var(--muted-foreground);font-size:.875rem;font-weight:600}.editor-sheet .editor-actions [data-slot=button]{min-height:44px;padding-inline:24px}.editor-sheet .danger-zone{border-color:var(--border);margin-top:24px}.editor-sheet .danger-zone p{color:var(--muted-foreground);margin:12px 0;font-size:.8125rem}.budget-period{background:var(--secondary);color:var(--muted-foreground);border-radius:999px;align-self:flex-start;padding:6px 14px;font-size:.8125rem;display:inline-flex}@media (width<=767px){.editor-sheet{border-radius:20px;margin:-8px -4px 0;padding:24px 20px}.editor-heading h1{font-size:1.75rem}.editor-heading{margin-bottom:24px}.editor-field-grid{grid-template-columns:1fr;gap:20px}.entry-form{gap:20px}.editor-actions{padding-bottom:max(12px, env(safe-area-inset-bottom))}}.schedule-picker .type-options{grid-template-columns:repeat(2,minmax(0,1fr))}.category-field{align-content:start;gap:8px;display:grid}.category-option-icon{width:16px;color:var(--muted-foreground);flex:none;justify-content:center;font-size:.75rem;display:inline-flex}.category-own{grid-template-columns:44px minmax(0,1fr);align-items:center;gap:8px;display:grid}.category-icon-trigger,.category-icon-grid button{color:var(--muted-foreground);border-radius:10px;justify-content:center;align-items:center;display:inline-flex}.category-icon-trigger{border:1px solid var(--input);background:var(--background);width:44px;height:44px;font-size:.9375rem}.category-icon-trigger svg{width:20px;height:20px}.category-icon-trigger[aria-expanded=true]{border-color:var(--ring)}.category-icon-grid{border:1px solid var(--input);border-radius:10px;grid-column:1/-1;grid-template-columns:repeat(auto-fill,minmax(40px,1fr));gap:2px;max-height:176px;padding:4px;display:grid;overflow-y:auto}.category-icon-grid button{height:40px}.category-icon-grid svg{width:18px;height:18px}.category-icon-grid button:hover{background:var(--muted)}.category-icon-grid button[aria-pressed=true]{background:var(--accent);color:var(--foreground)}.category-icon-trigger:focus-visible,.category-icon-grid button:focus-visible{outline:3px solid var(--ring);outline-offset:1px}.transaction-money-row{grid-template-columns:112px minmax(0,1fr);gap:10px;margin-top:6px;display:grid}.transaction-money-row>input:not([type=hidden]){font-variant-numeric:tabular-nums;font-size:1.375rem;font-weight:600}.transaction-money-row .choice-trigger{height:100%;font-weight:600}.transaction-exchange{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:16px;margin-top:12px;display:grid}.transaction-exchange output{color:var(--muted-foreground);gap:5px;padding-bottom:10px;font-size:12px;display:grid}.transaction-exchange output strong{color:var(--foreground);font-size:16px}.people-tag-picker .field-note{margin-top:8px}.entry-form textarea[name=description]{min-height:66px}.editor-create-event{justify-self:start;font-size:13px}@media (width<=600px){.type-picker:not(.schedule-picker) .type-options{border-radius:22px;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.type-picker:not(.schedule-picker) .type-options:has(label:nth-child(5)){grid-template-columns:repeat(6,minmax(0,1fr))}.type-options:has(label:nth-child(5)) label{grid-column:span 2}.type-options:has(label:nth-child(5)) label:nth-child(n+4){grid-column:span 3}}.finance-sources>.entry-form,.finance-sources .settings-disclosure>.entry-form{padding-block:8px 16px}.source-block{border-top:1px solid var(--border);margin-top:24px;padding-top:20px}.source-block>p,.source-block article p{color:var(--muted-foreground);font-size:.875rem}.source-block article{border-top:1px solid var(--border);justify-items:start;gap:8px;margin-top:14px;padding-block:14px;display:grid}.source-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;padding-block:10px;font-size:.875rem;display:flex}.source-list{color:var(--muted-foreground);gap:8px;margin:0;padding:4px 0 12px;font-size:.875rem;list-style:none;display:grid}.logo-mark{flex-shrink:0;width:36px;height:36px;display:block}.brand-lockup{align-items:center;gap:8px;display:inline-flex}.brand-wordmark{color:var(--foreground);letter-spacing:-.03em;font-size:1.625rem;font-weight:700;line-height:1}.brand-wordmark small{color:var(--muted-foreground);letter-spacing:.03em;margin-top:8px;font-size:.625rem;font-weight:400;display:block}.public-header{border-bottom:1px solid var(--border);align-items:center;gap:24px;min-height:64px;padding:0 max(32px,50vw - 600px);display:flex}.public-header .brand-home{color:var(--foreground);text-decoration:none;display:inline-flex}.public-header .logo-mark{width:30px;height:30px}.public-header .brand-wordmark{font-size:1.375rem}.public-header nav{align-items:center;gap:4px;display:flex}.public-header .public-actions,.public-header .back-home{margin-left:auto}.public-header .public-sections a,.public-header .public-login,.public-header .back-home{min-height:38px;color:var(--muted-foreground);border-radius:999px;align-items:center;gap:8px;padding:0 16px;font-size:.9375rem;font-weight:600;text-decoration:none;display:inline-flex}.public-header .public-sections a:hover,.public-header .public-login:hover,.public-header .back-home:hover{background:var(--secondary);color:var(--foreground)}.public-header .btn{gap:6px;min-height:40px;padding:8px 18px}.public-header svg:not(.logo-mark),.btn svg{width:16px;height:16px}.language-selector{align-items:center;gap:6px;display:flex}.landing-container{box-sizing:border-box;width:min(100%,1440px);margin-inline:auto;padding-inline:80px}.landing-page [data-tone=primary]{background:var(--accent);color:var(--primary-ink)}.landing-page [data-tone=teal]{background:var(--teal-soft);color:var(--teal-deep)}.landing-page [data-tone=violet]{background:var(--violet-soft);color:var(--violet-deep)}.landing-page [data-tone=amber]{background:var(--amber-soft);color:var(--amber-deep)}.landing-page [data-tone=coral]{background:var(--coral-soft);color:var(--coral-deep)}.landing-header{z-index:1;box-sizing:border-box;width:min(100% - 48px,1600px);min-height:76px;color:var(--primary-foreground);border-bottom:0;margin:24px auto 0;padding:0 56px;position:relative}.landing-header .logo-mark{box-sizing:border-box;background:var(--primary-foreground);border-radius:999px;width:40px;height:40px;padding:5px}.landing-header .brand-home,.landing-header .brand-wordmark,.landing-header .public-sections a,.landing-header .public-login{color:inherit}.landing-header .public-sections a:hover,.landing-header .public-login:hover{color:inherit;background:#ffffff29}.landing-header .language-selector .choice-trigger{color:inherit;background:0 0;border-color:#ffffff80}.landing-header .language-selector :is(.choice-value>svg,.choice-chevron){color:inherit}.landing-header .language-selector .choice-trigger:is(:focus-visible,[data-popup-open]){border-color:var(--primary-foreground);box-shadow:0 0 0 3px #fff6}:is(.landing-header,.landing-hero,.landing-close) .btn{background:var(--primary-foreground);color:var(--primary-ink);font-weight:700}:is(.landing-header,.landing-hero,.landing-close) .btn:hover{background:var(--accent)}:is(.landing-header,.landing-hero,.landing-close) :focus-visible{outline-color:var(--primary-foreground)}.landing-hero,.landing-close{box-sizing:border-box;background:var(--primary);width:min(100% - 48px,1600px);color:var(--primary-foreground);text-align:center;border-radius:40px;position:relative;overflow:hidden}.landing-hero{flex-direction:column;align-items:center;margin:-76px auto 0;padding-top:76px;display:flex}.landing-hero-blossom,.landing-close-blossom{pointer-events:none;position:absolute;left:50%;translate:-50%}.landing-hero-blossom{width:1400px;height:1400px;top:-360px}.landing-close-blossom{width:900px;height:900px;top:210px}.landing-hero-blossom circle{fill:var(--primary-foreground);fill-opacity:.07}.landing-close-blossom circle{fill:var(--primary-foreground);fill-opacity:.12}.landing-hero-copy{justify-items:center;gap:22px;padding:48px 24px 0;display:grid;position:relative}.landing-hero h1{letter-spacing:-.04em;text-wrap:balance;max-width:1040px;margin:0;font-size:clamp(2.75rem,6vw,5.25rem);font-weight:700;line-height:1.04}.landing-hero-copy>p{max-width:640px;margin:0;font-size:1.25rem;line-height:1.5}.landing-hero-copy>.landing-note{font-size:.875rem}.landing-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;padding-top:8px;display:flex}:is(.landing-actions,.landing-close) .btn{gap:10px;min-height:56px;padding-inline:28px;font-size:1.0625rem}.landing-secondary{box-sizing:border-box;min-height:56px;color:inherit;border:1.5px solid #fff9;border-radius:999px;justify-content:center;align-items:center;padding:0 26px;font-size:1.0625rem;font-weight:600;display:inline-flex}.landing-secondary:hover{background:#ffffff1f;text-decoration:none}.landing-window{box-sizing:border-box;background:var(--background);width:min(1120px,100% - 48px);color:var(--foreground);text-align:left;border-radius:28px 28px 0 0;gap:16px;margin:40px 0 -64px;padding:24px;display:grid;position:relative;box-shadow:0 30px 80px #10286059}.landing-window figcaption{justify-content:space-between;align-items:baseline;gap:16px;display:flex}.landing-window figcaption strong{letter-spacing:-.02em;font-size:1.625rem;line-height:1.2}.landing-window figcaption span,.landing-blossom figcaption,.landing-example{color:var(--muted-foreground);font-size:.8125rem;font-weight:600}.landing-window-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.landing-kpi,.landing-window-more>div{box-sizing:border-box;border-radius:var(--radius-card);background:var(--card)}.landing-kpi{color:var(--muted-foreground);align-content:start;justify-items:start;gap:8px;padding:20px 22px;font-size:.875rem;font-weight:600;line-height:1.3;display:grid}.landing-kpi strong{color:var(--foreground);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:1.875rem;line-height:1.1}.landing-kpi small{font-variant-numeric:tabular-nums;font-size:.8125rem;font-weight:400}.landing-kpi .landing-income{color:var(--primary-ink)}.landing-kpi[data-main]{background:var(--primary);color:var(--primary-foreground);align-content:space-between}.landing-kpi[data-main] strong{color:inherit;letter-spacing:-.03em;font-size:2.625rem}.landing-kpi[data-main] small{font-weight:500}.landing-progress{background:#ffffff38;border-radius:999px;width:100%;height:8px;display:flex;overflow:hidden}.landing-progress>span:first-child{background:var(--primary-foreground);width:70.9%}.landing-progress>span:last-child{background:#ffffff73;width:24.1%}.landing-kpi i,.landing-facts i{border-radius:999px;justify-content:center;align-items:center;width:36px;height:36px;display:inline-flex}.landing-kpi i svg{width:18px;height:18px}.landing-window-more{grid-template-columns:minmax(0,1fr) 340px;gap:16px;display:grid}.landing-window-more>div{flex-wrap:wrap;align-content:flex-start;align-items:center;gap:8px 12px;height:140px;padding:20px 22px;display:flex}.landing-window-more>div:last-child{justify-content:space-between}.landing-window-more strong{font-size:1.125rem}.landing-window-more span{color:var(--muted-foreground);font-variant-numeric:tabular-nums;font-size:.875rem}.landing-window-more span[data-tone]{border-radius:999px;padding:3px 12px;font-size:.8125rem;font-weight:600}.landing-ours{grid-template-columns:minmax(0,500px) minmax(0,720px);justify-content:space-between;align-items:center;gap:60px;padding-top:56px;display:grid}.landing-ours-copy{gap:24px;display:grid}.landing-ours h2{letter-spacing:-.04em;margin:0;font-size:clamp(2.75rem,5vw,4.5rem);font-weight:700;line-height:1}.landing-ours h2 span{display:block}.landing-ours h2 span:last-child{color:var(--primary)}.landing-ours-copy>p{color:var(--muted-foreground);margin:0;font-size:1.1875rem;line-height:1.55}.landing-legend{gap:12px;margin:0;font-size:1rem;display:grid}.landing-legend>div{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;display:grid}.landing-legend dt{align-items:center;gap:12px;font-weight:700;display:flex}.landing-legend dd{color:var(--muted-foreground);margin:0}.landing-legend svg{flex:none;width:52px;height:32px}.landing-legend [data-petal]{fill:var(--primary);fill-opacity:.82}.landing-legend [data-petal="2"]{fill:var(--teal)}.landing-legend [data-coin]{fill:none;stroke:currentColor;stroke-width:2px}.landing-blossom{aspect-ratio:1;justify-self:end;width:100%;max-width:720px;margin:0;position:relative;container:blossom/inline-size}.landing-blossom>svg{width:100%;height:100%;position:absolute;inset:0}.landing-blossom figcaption{position:absolute;bottom:0;right:0}.landing-blossom-total{place-content:center;justify-items:center;width:14.62%;height:14.62%;margin:0;line-height:1.25;display:grid;position:absolute;top:42.69%;left:42.69%}.landing-blossom-total span{color:var(--muted-foreground);font-size:.75rem;font-weight:600}.landing-blossom-total strong{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:clamp(.75rem,2.9cqw,1.3125rem);font-weight:800}.landing-blossom ul{margin:0;padding:0;list-style:none}.landing-blossom li{box-sizing:border-box;background:var(--card);white-space:nowrap;border-radius:999px;align-items:center;gap:.65em;height:3.2em;padding:0 1.2em 0 .45em;font-size:clamp(11px,2.1cqw,15px);line-height:1;display:flex;position:absolute;translate:-50% -50%;box-shadow:0 8px 24px #1b24351f}.landing-blossom li>span{color:var(--muted-foreground);font-weight:600}.landing-blossom-shared li>span{color:var(--foreground)}.landing-blossom li strong{font-variant-numeric:tabular-nums;font-size:1.07em}.landing-blossom i{border-radius:999px;justify-content:center;align-items:center;width:2.45em;height:2.45em;font-size:.93em;font-style:normal;font-weight:700;display:inline-flex}.landing-pair{display:inline-flex}.landing-pair i{box-shadow:0 0 0 2px var(--card)}.landing-pair i+i{margin-left:-.8em}.landing-blossom-people li:first-child{top:12.5%;left:50%}.landing-blossom-people li:nth-child(2){top:38.3%;left:84.7%}.landing-blossom-people li:nth-child(3){top:80.3%;left:72.1%}.landing-blossom-people li:nth-child(4){top:80.3%;left:27.9%}.landing-blossom-people li:nth-child(5){top:38.3%;left:15.3%}.landing-blossom-shared li:first-child{top:29.7%;left:66.4%}.landing-blossom-shared li:nth-child(2){top:29.7%;left:33.6%}.landing-blossom-shared li:nth-child(3){top:69.2%;left:50%}@container blossom (width<=520px){.landing-blossom-people li:first-child{top:19.6%}.landing-blossom-people li:nth-child(2){top:41.1%;left:78.5%}.landing-blossom-people li:nth-child(3){top:73.7%;left:68.4%}.landing-blossom-people li:nth-child(4){top:73.7%;left:32.1%}.landing-blossom-people li:nth-child(5){top:41.1%;left:21.5%}.landing-blossom-shared li{background:var(--foreground);height:2.7em;color:var(--card);gap:.5em;padding:0 1em}.landing-blossom-shared li>span{color:inherit}.landing-blossom-shared li:first-child{top:29.3%;left:66.5%}.landing-blossom-shared li:nth-child(2){top:29.3%;left:34.6%}.landing-blossom-shared li:nth-child(3){top:62.6%}.landing-pair i,.landing-blossom-total span{display:none}}.landing-tiles{grid-template-columns:repeat(12,minmax(0,1fr));gap:20px;padding-top:24px;display:grid}.landing-tile{background:var(--card);border-radius:32px;grid-column:span 5;align-content:space-between;gap:24px;padding:40px;display:grid}.landing-tile:nth-of-type(2){grid-column:span 7;grid-template-columns:minmax(0,230px) minmax(0,1fr);align-content:center;align-items:center;gap:32px}.landing-tile:nth-of-type(3){grid-column:span 12;grid-template-columns:minmax(0,320px) minmax(0,1fr);align-items:center;gap:56px}.landing-tile[data-tint=violet]{background:var(--violet-soft)}.landing-tile h3{letter-spacing:-.03em;text-wrap:balance;margin:0 0 12px;font-size:2rem;font-weight:700;line-height:1.1}.landing-tile p{color:var(--muted-foreground);margin:0;font-size:1rem;line-height:1.55}.landing-example{text-align:right;grid-column:1/-1;margin:-8px 0 0}.landing-upcoming,.landing-trip ul{margin:0;padding:0;list-style:none}.landing-upcoming li{font-variant-numeric:tabular-nums;grid-template-columns:minmax(0,1fr) auto 80px;align-items:center;gap:12px;min-height:60px;display:grid}.landing-upcoming li+li{border-top:1px solid var(--border)}.landing-upcoming li>span:first-child,.landing-trip>p span{line-height:1.35;display:grid}.landing-upcoming strong{font-size:1rem}.landing-upcoming small,.landing-trip small{color:var(--muted-foreground);font-size:.8125rem}.landing-upcoming small,.landing-status{white-space:nowrap}.landing-upcoming li>span:last-child{text-align:right;font-size:1rem;font-weight:600}.landing-upcoming [data-expected] :is(strong,span:last-child){color:var(--muted-foreground)}.landing-status{background:var(--secondary);border-radius:999px;padding:3px 12px;font-size:.8125rem;font-weight:600}.landing-trip{background:var(--card);border-radius:22px;gap:18px;padding:24px;display:grid}.landing-trip>p{color:var(--foreground);justify-content:space-between;align-items:center;gap:16px;display:flex}.landing-trip>p span strong{font-size:1.1875rem}.landing-trip>p>strong{letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:2.125rem;line-height:1}.landing-trip ul{gap:12px;display:grid}.landing-trip li{font-variant-numeric:tabular-nums;grid-template-columns:64px minmax(0,1fr) 60px;align-items:center;gap:12px;font-size:.9375rem;display:grid}.landing-trip li>span:first-child{font-weight:600}.landing-trip li>span:last-child{text-align:right}.landing-track{background:var(--secondary);border-radius:999px;height:8px}.landing-track>span{border-radius:inherit;background:var(--violet);height:100%;display:block}.landing-tile .landing-key{gap:16px;margin-top:16px;font-size:.8125rem;display:flex}.landing-key span{align-items:center;gap:8px;display:inline-flex}.landing-key span:before{background:var(--primary);content:"";border-radius:3px;width:10px;height:10px}.landing-key [data-series=spending]:before,.landing-year [data-series=spending]{background:var(--coral)}.landing-year{grid-template-columns:repeat(12,minmax(0,1fr));gap:4px;display:grid}.landing-year>div{justify-items:center;gap:8px;display:grid}.landing-year>div>span{box-sizing:border-box;border-bottom:1px solid var(--border);justify-content:center;align-items:flex-end;gap:4px;width:100%;height:190px;display:flex}.landing-year i{background:var(--primary);border-radius:5px 5px 0 0;width:min(20px,34%)}.landing-year small{color:var(--muted-foreground);font-size:.75rem;line-height:1}.landing-facts{grid-template-columns:repeat(4,minmax(0,1fr));gap:40px;margin-block:72px 0;list-style:none;display:grid}.landing-facts li{align-content:start;justify-items:start;gap:10px;display:grid}.landing-facts i{width:44px;height:44px}.landing-facts i svg{width:20px;height:20px}.landing-facts h3{margin:4px 0 0;font-size:1.1875rem;font-weight:700}.landing-facts p{color:var(--muted-foreground);margin:0;font-size:.9375rem;line-height:1.55}.landing-questions{grid-template-columns:minmax(0,360px) minmax(0,1fr);align-items:start;gap:56px;padding-top:72px;display:grid}.landing-questions h2{letter-spacing:-.03em;margin:0;font-size:2.75rem;font-weight:700;line-height:1.1}.questions-list{gap:12px;display:grid}.questions-list details{background:var(--card);border-radius:24px;padding:0 28px}.questions-list summary{min-height:72px;color:var(--foreground);justify-content:space-between;align-items:center;gap:16px;font-size:1.1875rem;font-weight:700;list-style:none;display:flex}.questions-list summary::-webkit-details-marker{display:none}.questions-list summary svg{width:20px;height:20px;color:var(--muted-foreground);flex:none;transition:transform .15s}.questions-list details[open] summary svg{transform:rotate(45deg)}.questions-list p{max-width:640px;color:var(--muted-foreground);margin:0;padding-bottom:26px;font-size:1.0625rem;line-height:1.6}.landing-close{align-content:start;justify-items:center;gap:28px;min-height:440px;margin:72px auto 0;padding:72px 24px 0;display:grid}.landing-close h2{letter-spacing:-.04em;text-wrap:balance;margin:0;font-size:clamp(2.25rem,5vw,4rem);font-weight:700;line-height:1.05;position:relative}.landing-close .btn{position:relative}.landing-page :is(h1,h2):lang(zh-CN){letter-spacing:-.02em;line-height:1.2}.landing-close h2:lang(zh-CN){word-break:keep-all}.landing-footer{justify-content:space-between;align-items:center;gap:24px;padding-block:32px 40px;display:flex}.landing-footer .logo-mark{width:24px;height:24px}.landing-footer .brand-wordmark{font-size:1.25rem}.landing-footer>span:last-child{color:var(--muted-foreground);font-size:.8125rem}.auth-workspace{padding:40px 20px 64px}.auth-layout{max-width:400px;margin:auto}.auth-card{border:1px solid var(--border);border-radius:var(--radius-card);background:var(--card);padding:28px}.auth-card h1{letter-spacing:-.025em;font-size:1.5rem;font-weight:600}.auth-intro{color:var(--muted-foreground);margin-top:8px;font-size:.875rem}.auth-form{gap:18px;margin-top:24px}.auth-form label{font-size:.875rem;font-weight:500}.auth-form input:not([type=hidden]){background:var(--card);min-height:44px;font-size:1rem}.auth-password-field>label{margin-bottom:8px;display:block}.auth-password-control{position:relative}.auth-password-control input{padding-right:48px}.auth-password-control button{width:44px;height:44px;color:var(--muted-foreground);background:0 0;border:0;border-radius:6px;place-items:center;display:grid;position:absolute;top:0;right:0}.auth-password-control svg{width:18px;height:18px}.auth-password-field>p{color:var(--muted-foreground);margin-top:6px;font-size:.8125rem}.auth-form [data-slot=button]{width:100%;min-height:44px;margin-top:4px}.auth-switch{color:var(--muted-foreground);flex-wrap:wrap;gap:8px;margin-top:24px;font-size:.875rem;display:flex}@media (width<=1100px){.landing-container{padding-inline:40px}.landing-header{padding-inline:32px}.landing-window-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.landing-ours,.landing-questions{grid-template-columns:minmax(0,1fr);gap:32px}.landing-blossom{justify-self:center;max-width:640px}.landing-tile:nth-of-type(n){grid-column:1/-1;grid-template-columns:minmax(0,1fr);gap:24px}.landing-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.public-header{flex-wrap:wrap;gap:8px 12px;padding:10px 16px}.public-header .public-sections,.public-header .language-selector .choice-value>svg{display:none}.public-header .language-selector .choice-trigger{min-height:44px}.public-header .public-actions .btn{display:none}.public-header .public-login{min-height:44px}.public-header .back-home{display:none}.public-header .back-home+.language-selector{margin-left:auto}.landing-header{flex-wrap:nowrap;width:calc(100% - 16px);min-height:64px;margin-top:8px;padding:0 12px}.landing-header .logo-mark{width:36px;height:36px}.landing-header .public-login{padding-inline:10px}.landing-container{padding-inline:16px}.landing-hero,.landing-close{border-radius:28px;width:calc(100% - 16px)}.landing-hero{margin-top:-64px;padding-top:64px}.landing-hero-blossom{width:720px;height:720px;top:-150px}.landing-hero-copy{gap:16px;padding:28px 20px 0}.landing-hero-copy>p:not(.landing-note){font-size:1.0625rem}.landing-actions{flex-direction:column;justify-self:stretch;align-items:stretch;gap:10px}:is(.landing-actions,.landing-close) .btn,.landing-secondary{min-height:52px}.landing-window{border-radius:22px 22px 0 0;gap:10px;width:calc(100% - 32px);margin:28px 0 -40px;padding:14px}.landing-window figcaption{padding-inline:4px}.landing-window figcaption strong{font-size:1.25rem}.landing-window-cards{gap:10px}.landing-kpi{min-height:110px;padding:14px 16px}.landing-kpi strong{font-size:1.375rem}.landing-kpi[data-main]{grid-column:1/-1;padding:18px}.landing-kpi[data-main] strong{font-size:2.375rem}.landing-kpi i,.landing-kpi:not([data-main]) small,.landing-kpi:nth-child(4),.landing-window-more{display:none}.landing-ours{gap:24px;padding-top:40px}.landing-ours-copy{gap:16px}.landing-ours-copy>p{font-size:1rem}.landing-tiles{gap:16px}.landing-tile{border-radius:24px;padding:22px}.landing-tile h3{font-size:1.5rem}.landing-upcoming li{grid-template-columns:minmax(0,1fr) auto auto;gap:8px}.landing-status{padding-inline:10px;font-size:.75rem}.landing-trip{padding:18px}.landing-trip>p>strong{font-size:1.75rem}.landing-year>div>span{gap:2px;height:140px}.landing-facts{grid-template-columns:minmax(0,1fr);gap:20px;margin-top:48px}.landing-facts li{grid-template-columns:44px minmax(0,1fr);gap:4px 14px}.landing-facts i{grid-row:span 2}.landing-facts h3{margin:0}.landing-questions{gap:20px;padding-top:48px}.landing-questions h2{font-size:2rem}.questions-list details{padding-inline:18px}.questions-list summary{font-size:1.0625rem}.landing-close{min-height:380px;margin-top:48px;padding-top:56px}.landing-close-blossom{width:640px;height:640px;top:200px}.auth-workspace{padding-top:24px}.auth-card{padding:24px}}.life-page{max-width:1550px;margin-inline:auto;padding:34px clamp(22px,3vw,48px) 50px}.life-page h1,.life-page h2,.life-page h3,.life-page p{margin:0}.life-page h3{font-size:1rem;font-weight:700}.life-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:30px;display:flex}.life-heading>div>p{color:var(--muted-foreground);margin-top:4px;font-size:.875rem}.people-directory{border-top:1px solid var(--border);margin:0;padding:0;list-style:none}.people-directory-row{align-items:center;gap:16px;min-height:64px;padding:12px 0;display:flex}.people-directory-row+.people-directory-row{border-top:1px solid var(--border)}.people-directory-row strong{overflow-wrap:anywhere;min-width:0;color:var(--foreground);flex:1;font-weight:500}.people-edit-link{min-height:36px;color:var(--muted-foreground);white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;padding-inline:14px;font-size:.875rem;font-weight:600;text-decoration:none;display:inline-flex}.people-edit-link:hover{background:var(--secondary);color:var(--foreground);text-decoration:none}.people-edit-link:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.people-member-editor{width:100%;min-width:0}.people-inline-form{grid-template-columns:minmax(0,1fr);justify-content:start;align-items:end;gap:16px;width:100%;display:grid}.people-inline-form label{min-width:0}.people-directory-row.editing{padding-block:24px}.people-inline-actions{align-items:center;gap:8px;min-height:44px;display:flex}.people-error{color:var(--destructive);grid-column:1/-1;font-size:.8125rem}.people-empty{color:var(--muted-foreground);margin-top:24px!important}@media (width<=640px){.people-inline-form{grid-template-columns:1fr}}.life-status{background:var(--secondary);min-height:24px;color:var(--muted-foreground);border-radius:999px;align-items:center;margin-bottom:8px;padding:0 10px;font-size:.75rem;font-weight:600;display:inline-flex}.life-status[data-status=Ongoing]{background:var(--teal-soft);color:var(--teal-deep)}.life-status[data-status=Upcoming]{background:var(--sky-soft);color:var(--sky-deep)}.life-text-link{min-height:32px;color:var(--primary);align-items:center;gap:6px;font-size:.875rem;font-weight:600;display:inline-flex}.life-caption{color:var(--muted-foreground);font-size:.8125rem;line-height:1.5;margin-top:2px!important}.life-section{border-top:1px solid var(--border);padding-top:20px}.life-section>p{color:var(--muted-foreground);font-variant-numeric:tabular-nums;font-size:.875rem}.life-section-title{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.life-empty{text-align:center;border-radius:var(--radius-card);background:var(--card);color:var(--muted-foreground);justify-items:center;gap:10px;padding:56px 20px;display:grid}.life-empty h3{color:var(--foreground);font-size:1rem;font-weight:600}.life-empty p{max-width:380px;color:var(--muted-foreground);font-size:.875rem;line-height:1.6}.life-empty a{margin-top:8px}.life-split{grid-template-columns:280px minmax(0,1fr);align-items:start;gap:16px;display:grid}.life-selection-list{border-radius:var(--radius-card);background:var(--card);gap:2px;padding:8px;display:grid}.life-selection-list>a{min-height:56px;color:var(--muted-foreground);border-radius:14px;align-items:center;gap:12px;padding:8px 12px;text-decoration:none;display:flex}.life-selection-list>a:hover{background:var(--secondary)}.life-selection-list>a>span{flex:1;gap:2px;min-width:0;display:grid}.life-selection-list>a strong{color:var(--foreground);overflow-wrap:anywhere;font-size:.875rem;font-weight:600}.life-selection-list>a small{color:var(--muted-foreground);font-size:.8125rem}.life-selection-list>a.selected{background:var(--accent);color:var(--accent-foreground)}.life-selection-list>a.selected strong{color:var(--accent-foreground)}.life-selection-list>a>svg{flex:none}.life-detail{border-radius:var(--radius-card);background:var(--card);gap:20px;min-width:0;padding:24px 28px 28px;display:grid}.life-detail-heading{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.life-detail-heading h2{letter-spacing:-.02em;margin-bottom:4px;font-size:1.5rem;font-weight:700}.life-detail-heading p{color:var(--muted-foreground);font-size:.875rem}.life-event-note{color:var(--muted-foreground);white-space:pre-wrap;overflow-wrap:anywhere;font-size:.875rem;line-height:1.7}.life-event-people{color:var(--muted-foreground);flex-wrap:wrap;align-items:center;gap:8px 16px;font-size:.875rem;display:flex}.life-event-people a:not([data-slot=button]){min-height:32px;color:var(--foreground);align-items:center;gap:8px;font-weight:500;display:inline-flex}.life-event-total{letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin-bottom:4px;font-size:1.875rem;font-weight:700;line-height:1.2;display:block}.life-saved{color:var(--teal-deep);background:var(--teal-soft);border-radius:var(--radius);align-items:center;gap:8px;padding:12px 16px;font-size:.875rem;display:flex;margin-bottom:20px!important}@container (width<=950px){.life-split{grid-template-columns:220px minmax(0,1fr)}}@container (width<=700px){.life-heading{flex-wrap:wrap;gap:14px;margin-bottom:24px}.life-split{grid-template-columns:minmax(0,1fr)}.life-selection-list{scrollbar-width:none;gap:8px;max-width:100%;display:flex;overflow-x:auto}.life-selection-list>a{flex-shrink:0;min-width:170px;max-width:260px}.life-detail{padding:20px}.life-detail-heading{flex-wrap:wrap;gap:12px}}.app-shell{background:var(--background);height:100dvh;color:var(--foreground);grid-template-rows:64px minmax(0,1fr);display:grid}.app-topbar{border-bottom:1px solid var(--border);background:var(--background);align-items:center;gap:28px;min-width:0;padding:0 32px;display:flex}.app-shell a.app-brand{color:var(--foreground);border-radius:12px;flex-shrink:0;text-decoration:none;display:inline-flex}.app-brand .logo-mark{width:30px;height:30px}.app-brand .brand-wordmark{letter-spacing:-.03em;font-size:1.375rem}.app-nav{gap:4px;min-width:0;display:flex}.app-shell .app-nav a,.app-shell a.app-settings{height:38px;color:var(--muted-foreground);white-space:nowrap;border-radius:999px;align-items:center;gap:8px;padding:0 16px;font-size:15px;font-weight:600;text-decoration:none;display:inline-flex}.app-nav a>svg{display:none}.app-shell a.app-settings{margin-left:auto;padding-inline:12px}.app-shell .app-nav a:hover,.app-shell a.app-settings:hover{background:var(--secondary);color:var(--foreground)}.app-shell .app-nav a[aria-current=page],.app-shell a.app-settings[aria-current=page]{background:var(--accent);color:var(--accent-foreground)}.app-shell a.app-brand:focus-visible,.app-shell .app-nav a:focus-visible,.app-shell a.app-settings:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.app-main{overscroll-behavior:contain;min-width:0;min-height:0;overflow:hidden auto;container-type:inline-size}.app-content{box-sizing:border-box;max-width:1360px;margin:0 auto;padding:28px 40px 48px}.app-main[aria-busy=true] .app-content{opacity:.55;transition:opacity .2s .15s}.app-content .life-page,.app-content .life-family{max-width:none;margin:0;padding:0}.app-content .life-page>.life-heading,.app-content .life-family>.life-heading{gap:16px;margin-bottom:24px}.app-content h1{letter-spacing:-.02em;font-size:1.875rem;font-weight:700;line-height:1.25}@container (width<=660px){.app-content h1{font-size:1.5rem}}@media (width<=760px){.app-shell{grid-template:"brand settings"56px"main main"minmax(0,1fr)"nav nav"/minmax(0,1fr) auto}.app-topbar{display:contents}.app-shell a.app-brand{grid-area:brand;place-self:center start;margin-left:16px}.app-shell a.app-settings{grid-area:settings;justify-content:center;align-self:center;width:44px;height:44px;margin-right:8px;padding:0}.app-settings>span{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.app-main{border-top:1px solid var(--border);grid-area:main}.app-nav{padding:6px 8px max(6px, env(safe-area-inset-bottom));border-top:1px solid var(--border);background:var(--card);grid-area:nav;grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.app-shell .app-nav a{border-radius:14px;flex-direction:column;justify-content:center;gap:2px;height:auto;min-height:52px;padding:4px 0;font-size:12px}.app-nav a>svg{display:block}.app-content{padding:20px 16px 32px}}@media (prefers-reduced-motion:reduce){.app-shell *{scroll-behavior:auto!important;transition:none!important}}.settings-page{width:100%;max-width:800px;color:var(--foreground);gap:20px;padding-bottom:32px;display:grid}.settings-card[data-slot=card]{--card-spacing:24px;border-radius:var(--radius-card);box-shadow:none;gap:16px}.settings-card .form-stack{margin-top:0}.settings-card h2,.settings-personal h2,.family-section-heading h2,.family-sharing h2{font-size:1.125rem;font-weight:700;line-height:1.5}.settings-card [data-slot=card-content]>.form-stack,.settings-card [data-slot=card-content].form-stack{max-width:480px}.settings-card h3,.agent-history summary{font-size:.875rem;font-weight:600;line-height:1.5}.settings-card [data-slot=card-description]{max-width:65ch;font-size:.875rem}.settings-account-form{gap:16px;max-width:480px;margin:0}.settings-page .form-stack>[data-slot=button]{align-self:flex-start;width:auto}.settings-heading p{color:var(--muted-foreground);margin-top:8px;font-size:.875rem}.agent-permission-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.agent-permission-option{border:1px solid var(--input);border-radius:var(--radius);background:var(--card);cursor:pointer;flex-direction:row;align-items:center;gap:8px;min-height:48px;padding:8px 12px;display:flex}.agent-permission-option span{color:var(--foreground);font-size:.875rem}.agent-permission-option:has(input:checked){background:var(--accent);border-color:#0000}.agent-permission-option:has(input:focus-visible){outline:2px solid var(--ring);outline-offset:2px}@media (width<=540px){.agent-permission-options{grid-template-columns:1fr}}.agent-connections{flex-direction:column;gap:24px;display:flex}.agent-setup-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;display:grid}.agent-setup-step{min-width:0}.agent-setup-step+.agent-setup-step{border-inline-start:1px solid var(--border);padding-inline-start:32px}.agent-step-heading{align-items:flex-start;gap:12px;margin-bottom:24px;display:flex}.agent-step-heading>span{background:var(--accent);width:28px;height:28px;color:var(--primary-ink);border-radius:50%;flex:none;place-items:center;font-size:.8125rem;font-weight:600;display:grid}.agent-step-heading p,.agent-help-text,.agent-token-row p,.agent-history p,.agent-created-token p{color:var(--muted-foreground);margin-top:4px;font-size:.875rem;line-height:1.5}.agent-token-form{gap:16px;margin-top:0}.agent-token-form .agent-help-text{margin-top:-6px}.agent-endpoint{margin-bottom:16px}.agent-field-label{margin-bottom:8px;font-size:.875rem;font-weight:500;display:block}.agent-value-row{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.agent-value-row code{border-radius:var(--radius);background:var(--secondary);overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;flex:220px;min-width:0;padding:12px;font-size:.8125rem;line-height:1.5}.agent-copy-action{flex:none}.agent-copy-action [data-slot=button]{min-height:36px}.agent-copy-error{max-width:120px;color:var(--destructive);margin-top:5px;font-size:.75rem;display:block}.agent-config-list{margin:0 0 16px}.agent-config-list>div{border-bottom:1px solid var(--border);justify-content:space-between;gap:12px;padding:12px 0;font-size:.8125rem;display:flex}.agent-config-list dt{color:var(--muted-foreground)}.agent-config-list dd{text-align:right;overflow-wrap:anywhere;min-width:0;margin:0}.agent-created-token{border-radius:var(--radius);background:var(--accent);flex-direction:column;gap:12px;padding:16px;display:flex}.agent-active{border-top:1px solid var(--border);padding-top:24px}.agent-token-list{margin-top:8px}.agent-token-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:16px;padding:16px 0;display:flex}.agent-token-row:last-child{border-bottom:0}.agent-token-row>div{overflow-wrap:anywhere;min-width:0}.agent-token-row strong{font-size:.875rem;font-weight:500}.agent-token-row .form-stack{flex:none;margin:0}.agent-token-row .form-stack [data-slot=button]{background:var(--card);color:var(--foreground);border-color:var(--border)}.agent-history{border-top:1px solid var(--border);color:var(--muted-foreground);padding-top:16px}.agent-history summary{width:100%;color:var(--foreground);cursor:pointer}.agent-history p{max-width:65ch}@media (width<=1100px){.agent-setup-grid{grid-template-columns:1fr}.agent-setup-step+.agent-setup-step{padding-inline-start:0;border-inline-start:0;border-top:1px solid var(--border);padding-top:24px}.agent-token-form{max-width:480px}}@media (width<=540px){.settings-card[data-slot=card]{--card-spacing:16px}.agent-value-row,.agent-token-row{flex-wrap:wrap}.agent-config-list>div{gap:4px;display:grid}.agent-config-list dd{text-align:start}}.family-access-actions{flex-wrap:wrap;align-items:center;gap:16px;margin-block:8px;display:flex}.family-access-actions label{align-items:center;gap:6px;display:flex}.family-join{width:min(100% - 32px,520px);margin:48px auto}.settings-heading,.settings-family-summary{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.settings-heading>a{color:var(--primary);align-items:center;min-height:44px;font-size:.875rem;display:inline-flex}.settings-personal{border-radius:var(--radius-card);background:var(--card);padding:24px}.settings-preferences{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:16px;margin-top:16px;display:flex}.settings-preferences .language-selector{flex:0 240px}.settings-preferences .language-selector>.choice{flex:1}.settings-field{gap:8px;display:grid}.settings-disclosure{border-top:1px solid var(--border);min-width:0;margin-top:16px;padding-top:4px}.settings-disclosure>summary,.token-revoke>summary{cursor:pointer;width:100%;min-height:44px;color:var(--foreground);padding-block:12px;font-size:.875rem;font-weight:500}.settings-disclosure>summary:focus-visible,.token-revoke>summary:focus-visible{outline:2px solid var(--ring);outline-offset:3px;border-radius:4px}.settings-disclosure>.form-stack{max-width:520px;padding-block:12px 4px}.settings-page .form-stack{gap:16px}.settings-page .form-stack>.settings-help{margin-top:-8px}.settings-page .agent-active{border-top:0;padding-top:0}.settings-page .agent-setup-grid{margin-block:12px 20px}.token-revoke[open]{flex-basis:100%}.token-revoke .form-stack{margin-top:12px}.settings-page .danger-zone p{margin-block:8px 16px}.life-page.life-family{max-width:800px}.family-members-panel,.family-sharing{background:var(--card);border-radius:var(--radius-card);padding:24px}.family-sharing{margin-block:20px 0}.family-section-heading{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px 12px;margin-bottom:16px;display:grid}.family-section-heading>div{display:contents}.family-section-heading h2{grid-area:1/1}.family-section-heading p{grid-area:2/1/auto/-1}.family-section-heading>:is(a,button){grid-area:1/2}.family-section-heading p,.family-sharing>p{max-width:60ch;color:var(--muted-foreground);margin-block:6px 0;font-size:.8125rem;line-height:1.6}.family-members-panel .people-directory{max-width:none}.family-person-info{flex:1;min-width:0}.family-person-info>strong{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.family-person-info>p{color:var(--muted-foreground);margin-top:4px;font-size:.8125rem;display:block}.family-you,.family-group-default{background:var(--accent);color:var(--accent-foreground);white-space:nowrap;border-radius:999px;padding:1px 8px;font-size:.6875rem;font-weight:600}@media (width<=540px){.settings-personal,.family-members-panel,.family-sharing{padding:16px}.family-members-panel .people-directory-row{gap:12px}.settings-page [data-slot=button]{min-height:44px}}.family-member-access{max-width:100%;font-size:.8125rem}.family-member-access summary{cursor:pointer;min-height:44px;padding-block:12px}.people-directory-row:has(.family-member-access details[open]){flex-wrap:wrap}.family-member-access:has(details[open]){flex-basis:100%;order:3}.family-member-access summary:focus-visible{outline:2px solid var(--ring);outline-offset:2px}@media (width<=540px){.life-family .life-heading{flex-wrap:wrap;gap:16px}.life-family .life-heading>div{min-width:160px}.people-directory-row:has(.family-member-access){flex-wrap:wrap}.family-member-access{flex-basis:100%;order:3;padding-inline-start:52px}.family-member-access>details{margin-top:-12px}}.family-preferences{gap:24px;margin-top:24px;display:grid}.family-form-fields{border:0;gap:16px;min-width:0;margin:0;padding:0;display:grid}.family-aliases{flex-wrap:wrap;gap:4px 8px;margin-top:6px;display:flex}.family-aliases span{color:var(--muted-foreground);background:var(--muted);overflow-wrap:anywhere;border-radius:999px;padding:2px 8px;font-size:.75rem}.family-avatar-editor{align-items:center;gap:16px;display:flex}.family-avatar-editor label{flex:1;min-width:0}.family-avatar-editor input{max-width:100%}.family-remove-avatar{align-items:center;gap:8px;flex-direction:row!important;display:flex!important}.family-role-options{flex-wrap:wrap;gap:8px 24px;display:flex}.family-role-options label{flex-direction:row;align-items:center;gap:8px;min-height:44px;display:flex}.people-member-editor .family-member-access{border-top:1px solid var(--border);margin-top:24px;padding-block:24px}.family-pending-invite{margin-block:16px}.life-family .people-inline-form{max-width:100%}.life-family .people-inline-form>label{width:100%}@media (width<=540px){.family-avatar-editor{align-items:flex-start}}.family-group-list{margin:0;padding:0;list-style:none}.family-group-list>li{border-top:1px solid var(--border);align-items:center;gap:16px;padding-block:14px;display:flex}.family-group-list>li:last-child{padding-bottom:0}.family-group-info{overflow-wrap:anywhere;flex:1;min-width:0}.family-group-name{flex-wrap:wrap;align-items:center;gap:6px 8px;display:flex}.family-group-name strong{font-size:.875rem;font-weight:500}.family-group-info p{color:var(--muted-foreground);margin-top:4px;font-size:.8125rem;line-height:1.6}.group-actions,.group-split-choices{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.group-editor{padding-block:8px 20px}.group-split-choices{margin-bottom:12px}.group-split-choices button[aria-pressed=true]{color:var(--accent-foreground);background:var(--accent);border-color:#0000}.group-menu-positioner{z-index:50}.group-menu{border:1px solid var(--border);background:var(--popover);min-width:160px;max-width:calc(100vw - 32px);color:var(--popover-foreground);border-radius:14px;outline:none;padding:4px;box-shadow:0 12px 32px #1b24351f}.group-menu-item{min-height:40px;color:inherit;cursor:pointer;border-radius:10px;outline:none;align-items:center;padding:9px 10px;font-size:.9375rem;text-decoration:none;display:flex}.group-menu-item[data-highlighted]{background:var(--secondary);text-decoration:none}.group-menu-item[data-disabled]{opacity:.5;cursor:default}.group-menu-separator{background:var(--border);height:1px;margin:4px 8px}.group-menu-danger{color:var(--destructive)}.group-confirm-actions{justify-content:flex-end;align-items:center;gap:8px;margin-top:8px;display:flex}.family-members-panel .people-directory-row{min-height:72px}@media (width<=640px){.group-menu-item{min-height:44px}}.admin-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.invitation-list{margin:0;padding:0;list-style:none}.invitation-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding-block:16px;display:flex}.invitation-row+.invitation-row{border-top:1px solid var(--border)}.invitation-info{overflow-wrap:anywhere;gap:4px;min-width:0;display:grid}.invitation-info small{color:var(--muted-foreground)}.admin-invitations input{font-size:1rem}.admin-invitations .admin-secondary [data-slot=button],.admin-invitations [data-slot=button].admin-copy{background:var(--card);color:var(--foreground);border-color:var(--border)}.admin-invitations .admin-secondary [data-slot=button]:hover,.admin-invitations [data-slot=button].admin-copy:hover{background:var(--muted)}.app-editor-dialog[data-slot=dialog-content]{border-radius:var(--radius-card);width:min(720px,100vw - 32px);max-width:none;max-height:calc(100dvh - 32px);padding:0;display:block;overflow:hidden}.app-editor-dialog[data-editor-kind=finance]{width:min(560px,100vw - 32px)}.app-editor-panel{overscroll-behavior:contain;max-height:calc(100dvh - 32px);padding:24px;overflow-y:auto}.app-editor-dialog>[data-slot=dialog-close]{z-index:1;background:var(--card);top:12px;right:12px}.app-editor-panel .editor-sheet{width:100%;max-width:none;box-shadow:none;background:0 0;border:0;border-radius:0;margin:0;padding:0}.app-editor-panel .editor-back{display:none}.app-editor-panel .editor-heading{margin:0 32px 24px 0}.app-editor-panel .editor-heading>p{display:none}.app-editor-panel h1{letter-spacing:-.02em;margin-bottom:16px;padding-right:24px;font-size:1.25rem;font-weight:700;line-height:1.4}.app-editor-panel .editor-heading h1{margin:0}.app-editor-panel .entry-form{gap:16px}.app-editor-panel .money-control input{font-size:1.5rem}.app-editor-panel .editor-actions{z-index:1;border-top:1px solid var(--border);background:var(--card);margin-top:8px;padding:16px 0;position:sticky;bottom:-24px}.app-editor-message{color:var(--muted-foreground);gap:16px;padding:24px;display:grid}.app-editor-message [data-slot=button]{justify-self:start}@media (width<=640px){.app-editor-panel{padding:16px}.app-editor-panel .editor-actions{bottom:-16px}.app-editor-dialog [data-slot=button],.app-editor-panel .editor-actions>a{align-items:center;min-height:44px;display:inline-flex}}.finance-more-options>summary{width:100%;min-height:44px;color:var(--muted-foreground);align-content:center;font-size:.875rem;font-weight:600;display:flex}.finance-more-options>.disclosure-fields{gap:16px;margin-top:8px;display:grid}
