@import url("https://fonts.googleapis.com/css2?family=JetBrains+Mono:ital,wght@0,100..800;1,100..800&display=swap");@font-face{font-family:Roboto Mono;src:url(/fonts/RobotoMono-Thin.ttf) format("truetype");font-weight:100;font-style:normal;font-display:swap}@font-face{font-family:Roboto Mono;src:url(/fonts/RobotoMono-ThinItalic.ttf) format("truetype");font-weight:100;font-style:italic;font-display:swap}@font-face{font-family:Roboto Mono;src:url(/fonts/RobotoMono-ExtraLight.ttf) format("truetype");font-weight:200;font-style:normal;font-display:swap}@font-face{font-family:Roboto Mono;src:url(/fonts/RobotoMono-ExtraLightItalic.ttf) format("truetype");font-weight:200;font-style:italic;font-display:swap}@font-face{font-family:Roboto Mono;src:url(/fonts/RobotoMono-Light.ttf) format("truetype");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Roboto Mono;src:url(/fonts/RobotoMono-LightItalic.ttf) format("truetype");font-weight:300;font-style:italic;font-display:swap}@font-face{font-family:Roboto Mono;src:url(/fonts/RobotoMono-Regular.ttf) format("truetype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Roboto Mono;src:url(/fonts/RobotoMono-Italic.ttf) format("truetype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Roboto Mono;src:url(/fonts/RobotoMono-Medium.ttf) format("truetype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Roboto Mono;src:url(/fonts/RobotoMono-MediumItalic.ttf) format("truetype");font-weight:500;font-style:italic;font-display:swap}@font-face{font-family:Roboto Mono;src:url(/fonts/RobotoMono-SemiBold.ttf) format("truetype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Roboto Mono;src:url(/fonts/RobotoMono-SemiBoldItalic.ttf) format("truetype");font-weight:600;font-style:italic;font-display:swap}@font-face{font-family:Roboto Mono;src:url(/fonts/RobotoMono-Bold.ttf) format("truetype");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Roboto Mono;src:url(/fonts/RobotoMono-BoldItalic.ttf) format("truetype");font-weight:700;font-style:italic;font-display:swap}@layer reset, base, tokens, layout, components, utilities, states, themes;@layer tokens{:root{color-scheme:light;--color-bg:#f7f4f0;--color-surface:#f0ede8;--color-surface-2:#e9e6e0;--color-surface-3:#e1ddd7;--color-border:#cbc7be;--color-border-h:#9c988f;--color-text:#242625;--color-text-strong:#1d1f1e;--color-muted:#6b7280;--color-subtle:#9ca3af;--color-positive:#2f6b48;--color-positive-soft:rgba(47,107,72,0.12);--color-negative:#7a1f1f;--color-negative-soft:rgba(122,31,31,0.12);--color-warning:#7e6530;--color-warning-soft:rgba(126,101,48,0.12);--color-info:#1b3b57;--color-info-soft:rgba(27,59,87,0.1);--color-config:#1b3b57;--color-accent:#b58b42;--color-accent-soft:rgba(181,139,66,0.12);--color-overlay:rgba(22,24,24,0.56);--color-overlay-soft:rgba(22,24,24,0.28);--color-info-surface:rgba(27,59,87,0.08);--color-success-surface:rgba(47,107,72,0.12);--color-warning-surface:rgba(126,101,48,0.12);--color-danger-surface:rgba(122,31,31,0.12);--color-primary:var(--color-text-strong);--color-primary-h:var(--color-text-strong);--color-danger:var(--color-negative);--color-success:var(--color-positive);--font-mono:"JetBrains Mono","Roboto Mono",monospace;--font-sans:var(--font-mono);--font-size-xs:0.6875rem;--font-size-sm:0.75rem;--font-size-base:0.8125rem;--font-size-lg:1rem;--font-size-xl:1.25rem;--font-size-2xl:2rem;--font-size-3xl:2.5rem;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-7:1.75rem;--space-8:2rem;--space-9:2.25rem;--space-10:2.5rem;--space-11:2.75rem;--space-12:3rem;--radius:3px;--radius-sm:3px;--radius-md:3px;--radius-lg:3px;--radius-xl:3px;--radius-full:999px;--shadow:0 1px 2px rgba(40,34,20,0.05),0 2px 8px rgba(40,34,20,0.04);--shadow-md:0 4px 12px rgba(40,34,20,0.08),0 1px 4px rgba(40,34,20,0.04);--duration-fast:150ms;--duration-base:220ms;--easing-base:ease-out;--focus-ring:0 0 0 2px var(--color-bg),0 0 0 3px var(--color-accent);--shell-sidebar-width:15rem;--shell-content-width:56rem;--shell-topbar-height:3.5rem;--shell-bottom-nav-height:3.75rem;--surface-card-padding:1rem;--surface-card-padding-tight:0.75rem;--background:var(--color-bg);--foreground:var(--color-text);--card:var(--color-surface);--card-foreground:var(--color-text);--popover:var(--color-surface);--popover-foreground:var(--color-text);--primary:var(--color-text-strong);--primary-foreground:var(--color-bg);--secondary:var(--color-surface);--secondary-foreground:var(--color-text);--muted:var(--color-surface-2);--muted-foreground:var(--color-muted);--accent:var(--color-surface-2);--accent-foreground:var(--color-text-strong);--destructive:var(--color-negative);--destructive-foreground:#e7e8e3;--border:var(--color-border);--input:var(--color-border);--ring:var(--color-accent)}}@layer themes{.dark,html.dark{--color-bg:#101312;--color-surface:#171b19;--color-surface-2:#20251f;--color-surface-3:#2a3029;--color-border:#32392f;--color-border-h:#465040;--color-text:#d8d2c3;--color-text-strong:#eee7d8;--color-muted:#8d9386;--color-subtle:#666d62;--color-faint:var(--color-subtle);--color-accent:#d0a85c;--color-accent-soft:rgba(208,168,92,0.12);--color-positive:#8fb996;--color-positive-soft:rgba(143,185,150,0.12);--color-negative:#c98275;--color-negative-soft:rgba(201,130,117,0.13);--color-warning:#c6a15b;--color-warning-soft:rgba(198,161,91,0.13);--color-info:#91a8b8;--color-info-soft:rgba(145,168,184,0.11);--color-config:#91a8b8;--color-overlay:rgba(0,0,0,0.62);--color-overlay-soft:rgba(0,0,0,0.38);--color-info-surface:rgba(145,168,184,0.1);--color-success-surface:rgba(143,185,150,0.12);--color-warning-surface:rgba(198,161,91,0.12);--color-danger-surface:rgba(199,131,116,0.13);--focus-ring:0 0 0 2px #101312,0 0 0 3px #d0a85c;color-scheme:dark}.light,html.light{color-scheme:light}}@layer components{.error-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-4);padding:var(--space-8);text-align:center;color:var(--color-negative);background:var(--color-danger-surface);border:1px solid var(--color-negative);border-radius:var(--radius)}.error-state__icon{opacity:.8}.error-state__title{font-size:var(--font-size-lg);font-weight:600;margin:0}.error-state__message{font-size:var(--font-size-sm);color:var(--color-text);max-width:320px;margin:0;opacity:.8}.bottom-nav-item,.btn,.card.clickable,.list-item.clickable,.sidebar-nav-item{outline:none;transition:all var(--duration-fast) var(--easing-base)}:focus-visible{box-shadow:var(--focus-ring)!important}.btn:active,.list-item.clickable:active{transform:scale(.98)}[disabled]{cursor:not-allowed!important;opacity:.5!important;pointer-events:none}}@layer utilities{.flex{display:flex}.flex-col{flex-direction:column}.flex-row{flex-direction:row}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.flex-1{flex:1 1}.w-full{width:100%}.h-full{height:100%}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.mt-1{margin-top:var(--space-1)}.mt-2{margin-top:var(--space-2)}.mt-3{margin-top:var(--space-3)}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.mt-8{margin-top:var(--space-8)}.mt-auto{margin-top:auto}.mb-1{margin-bottom:var(--space-1)}.mb-2{margin-bottom:var(--space-2)}.mb-3{margin-bottom:var(--space-3)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.p-1{padding:var(--space-1)}.p-2{padding:var(--space-2)}.p-3{padding:var(--space-3)}.p-4{padding:var(--space-4)}.p-6{padding:var(--space-6)}.pl-1{padding-left:var(--space-1)}.pl-2{padding-left:var(--space-2)}.pl-3{padding-left:var(--space-3)}.pl-4{padding-left:var(--space-4)}.pl-6{padding-left:var(--space-6)}.pl-8{padding-left:var(--space-8)}.pl-10{padding-left:var(--space-10)}.text-center{text-align:center}.text-right{text-align:right}.text-left{text-align:left}.text-xs{font-size:var(--font-size-xs)}.text-sm{font-size:var(--font-size-sm)}.text-base{font-size:var(--font-size-base)}.text-lg{font-size:var(--font-size-lg)}.text-xl{font-size:var(--font-size-xl)}.text-2xl{font-size:var(--font-size-2xl)}.font-mono{font-family:var(--font-mono)}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-light{font-weight:300}.text-muted{color:var(--color-muted)}.text-subtle{color:var(--color-subtle)}.text-strong{color:var(--color-text-strong)}.text-negative{color:var(--color-negative)}.text-positive{color:var(--color-positive)}.text-warning{color:var(--color-warning)}.text-text{color:var(--color-text)}.bg-positive{background-color:var(--color-positive)}.bg-negative{background-color:var(--color-negative)}.bg-warning{background-color:var(--color-warning)}.bg-primary{background-color:var(--color-accent)}.uppercase{text-transform:uppercase}.tracking-tighter{letter-spacing:-.05em}.tracking-tight{letter-spacing:-.025em}.tracking-normal{letter-spacing:0}.tracking-wide{letter-spacing:.025em}.tracking-wider{letter-spacing:.05em}.tracking-widest{letter-spacing:.1em}.hidden{display:none}.block{display:block}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.max-w-xs{max-width:20rem}.max-w-sm{max-width:24rem}.max-w-md{max-width:28rem}.max-w-lg{max-width:32rem}.max-w-xl{max-width:36rem}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-4xl{max-width:56rem}.max-w-5xl{max-width:64rem}.max-w-6xl{max-width:72rem}.max-w-full{max-width:100%}}@keyframes abg-fade-up{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes abg-fade-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:no-preference){.anim-fade-in{animation:abg-fade-in .25s ease both}.anim-stagger>:first-child,.page-header{animation:abg-fade-up .3s ease both}.anim-stagger>:first-child{animation-delay:0s}.anim-stagger>:nth-child(2){animation:abg-fade-up .3s ease both;animation-delay:55ms}.anim-stagger>:nth-child(3){animation:abg-fade-up .3s ease both;animation-delay:.11s}.anim-stagger>:nth-child(4){animation:abg-fade-up .3s ease both;animation-delay:165ms}.anim-stagger>:nth-child(5){animation:abg-fade-up .3s ease both;animation-delay:.22s}.anim-stagger>:nth-child(6){animation:abg-fade-up .3s ease both;animation-delay:275ms}}.imports-row--ignored td{opacity:.35;text-decoration:line-through}@layer reset{*,:after,:before{box-sizing:border-box}#__next,body,html{min-height:100%;font-family:var(--font-mono)}blockquote,body,dd,dl,figure,h1,h2,h3,h4,h5,h6,ol,p,ul{margin:0;font-family:inherit}ol,ul{padding:0;list-style:none}}@layer base{h1{color:var(--color-text-strong);font-weight:600;letter-spacing:-.015em}a{color:inherit;text-decoration:none;transition:color var(--duration-fast),background-color var(--duration-fast),border-color var(--duration-fast)}button,input,select,textarea{font:inherit}button{background:none;border:0;color:inherit;cursor:pointer}canvas,img,picture,svg{display:block;max-width:100%}input,select,textarea{min-width:0}summary{cursor:pointer}:focus-visible{outline:0;box-shadow:var(--focus-ring)}}.t-module{font-family:var(--font-mono);font-weight:700;letter-spacing:.15em;color:var(--color-accent)}.t-sub{font-weight:500;color:var(--color-text)}.t-detail,.t-sub{font-family:var(--font-mono);font-size:var(--font-size-base)}.t-detail{font-weight:400;color:var(--color-muted)}.t-value-lg{font-family:var(--font-mono);font-weight:300;font-size:var(--font-size-2xl);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:-.08em}.t-value-md{font-size:var(--font-size-lg);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.t-support,.t-value-md{font-family:var(--font-mono);font-weight:400}.t-support{font-size:var(--font-size-sm);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--color-muted)}.t-label{font-family:var(--font-mono);font-weight:400;font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--color-subtle)}.positive,.t-positive,.text-success{color:var(--color-positive)}.negative,.t-negative,.text-danger,.text-red-600{color:var(--color-negative)}.t-config{color:var(--color-config)}.t-page-title{font-family:var(--font-mono);font-size:clamp(1.75rem,3vw,2.25rem);font-weight:600;color:var(--color-text-strong);letter-spacing:-.015em;line-height:1}.muted-text,.neutral,.t-muted,.text-muted{color:var(--color-muted)}.text-primary{color:var(--color-text-strong)}.text-warning{color:var(--color-warning)}.text-xs{font-size:var(--font-size-xs)}.text-sm{font-size:var(--font-size-sm)}.font-semibold{font-weight:600}.font-bold{font-weight:700}.flex{display:flex}.grid{display:grid}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-5{gap:var(--space-5)}.flex-1{flex:1 1}.min-w-0{min-width:0}.w-full{width:100%}.h-full{height:100%}.h-2{height:8px}.p-0{padding:0}.p-3{padding:var(--space-3)}.p-4{padding:var(--space-4)}.px-1{padding-left:var(--space-1);padding-right:var(--space-1)}.pb-2{padding-bottom:var(--space-2)}.pl-4{padding-left:var(--space-4)}.m-0{margin:0}.mt-1{margin-top:var(--space-1)}.mt-2{margin-top:var(--space-2)}.mt-3{margin-top:var(--space-3)}.mt-4{margin-top:var(--space-4)}.mt-5{margin-top:var(--space-5)}.mt-6{margin-top:var(--space-6)}.mb-0{margin-bottom:0}.mb-1{margin-bottom:var(--space-1)}.mb-2{margin-bottom:var(--space-2)}.mb-3{margin-bottom:var(--space-3)}.mb-4{margin-bottom:var(--space-4)}.mb-5{margin-bottom:var(--space-5)}.mb-6{margin-bottom:var(--space-6)}.mb-8{margin-bottom:var(--space-8)}.min-h-180{min-height:180px}.list-disc{list-style:disc}.bg-muted-light,.card-dark-layer{background:var(--color-surface-2)}.bg-success{background:var(--color-positive)}.bg-danger{background:var(--color-negative)}.bg-warning{background:var(--color-warning)}.rounded,.rounded-full{border-radius:var(--radius)}.border-b{border-bottom:1px solid var(--color-border)}.border-none{border:none}.border-white\/10{border-color:var(--color-border)}.shadow-none{box-shadow:none}.progress-track{height:8px;border-radius:var(--radius);background:var(--color-surface-2);overflow:hidden}.progress-fill{height:100%;border-radius:var(--radius);background:var(--color-accent)}.py-2{padding-top:var(--space-2);padding-bottom:var(--space-2)}.pb-4{padding-bottom:var(--space-4)}.border-white\/5{border-color:var(--color-border)}.app-shell{display:flex;min-height:100dvh;background-color:var(--color-bg);overflow-x:clip}.shell-main{flex:1 1;min-width:0}.shell-main,.simple-layout{display:flex;flex-direction:column}.simple-layout{min-height:100dvh;background:var(--color-bg);color:var(--color-text)}.simple-layout-logo{height:24px;width:auto}.simple-layout-main{display:flex;align-items:center;justify-content:center;min-height:80vh}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:70;height:var(--shell-topbar-height);background-color:color-mix(in srgb,var(--color-surface) 78%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--color-border);display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:0 var(--space-4);grid-gap:var(--space-3);gap:var(--space-3)}.topbar-left{display:flex;align-items:center;gap:10px;min-width:0}.topbar-breadcrumb{display:none;align-items:center;gap:8px;min-width:0}.topbar-breadcrumb>*{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-breadcrumb-separator{color:var(--color-muted);flex-shrink:0}.topbar-module{display:none}.topbar-right{margin-left:auto}.notifications-trigger,.topbar-right{position:relative;display:flex;align-items:center;overflow:visible}.topbar-icon-btn{width:36px;height:36px;padding:0!important;position:relative}.notifications-badge{position:absolute;top:4px;right:4px;min-width:16px;height:16px;border-radius:999px;background:var(--color-accent);color:#0d100f;font-size:10px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;padding:0 5px}.notifications-dropdown{position:absolute;right:0;top:calc(100% + 10px);width:min(24rem,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:calc(100vh - var(--shell-topbar-height) - 24px);z-index:10001;overflow:hidden;box-shadow:0 16px 40px rgba(0,0,0,.26),0 0 0 1px color-mix(in srgb,var(--color-border) 80%,transparent);border-color:color-mix(in srgb,var(--color-border) 75%,transparent)}.notifications-dropdown-header{display:flex;justify-content:space-between;gap:12px}.notifications-dropdown-list{max-height:min(340px,calc(100vh - var(--shell-topbar-height) - 96px));overflow:auto}.notifications-dropdown-empty{padding:12px}.notifications-dropdown-item{width:100%;text-align:left;padding:12px;border-radius:0;border-top:1px solid var(--color-border)}.notifications-dropdown-item.is-read{opacity:.65}.notifications-dropdown-item-content{display:flex;flex-direction:column;gap:2px}.notifications-dropdown-item-title{font-size:13px}.notifications-dropdown-item-body{font-size:12px}.sidebar-close-toggle,.topbar-menu-button{width:2.25rem;height:2.25rem;display:inline-flex;align-items:center;justify-content:center;color:var(--color-muted);border:1px solid transparent;transition:color var(--duration-fast),border-color var(--duration-fast),background-color var(--duration-fast)}.main-content,.page-wrapper{flex:1 1;overflow-y:auto;padding:var(--space-4);padding-bottom:calc(var(--shell-bottom-nav-height) + var(--space-8));width:100%;min-width:0}.sidebar{position:fixed;inset:0 auto 0 0;width:min(18rem,calc(100vw - 2rem));background-color:var(--color-surface);border-right:1px solid var(--color-border);padding:0;display:flex;flex-direction:column;gap:0;transform:translateX(-100%);transition:transform var(--duration-base);z-index:120}.sidebar.is-open{transform:translateX(0)}.sidebar-top{display:flex;align-items:center;gap:12px;padding:18px 18px 14px}.sidebar-top-row{display:contents}.logo-wrapper{background:transparent;border:none;box-shadow:none}.sidebar-logo{width:34px;height:auto;opacity:.18;display:block;filter:grayscale(1) contrast(.9);mix-blend-mode:lighten}html.dark .sidebar-logo{filter:invert(1) grayscale(1) contrast(.9)}.sidebar-user{display:none}.sidebar-user-copy{min-width:0;display:flex;flex-direction:column}.user-name{font-size:14px;font-weight:600;letter-spacing:-.01em;line-height:1.1;color:var(--color-text-strong);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-top-name{flex:1 1;min-width:0}.sidebar-top-close{margin-left:auto}html.dark .user-name{color:rgba(255,255,255,.92)}.sidebar-brand-name{font-family:var(--font-mono);font-weight:700;font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.15em;color:var(--color-text-strong)}.sidebar-nav{flex:1 1;gap:var(--space-5);padding:0 8px}.sidebar-group,.sidebar-nav{display:flex;flex-direction:column}.sidebar-group{gap:var(--space-2)}.sidebar-group-items{display:flex;flex-direction:column}.sidebar-nav-item{display:flex;align-items:center;gap:var(--space-3);min-height:2.25rem;padding:var(--space-1) var(--space-3);color:var(--color-muted);border-radius:var(--radius-md);transition:color var(--duration-fast),background-color var(--duration-fast)}.sidebar-nav-item.active{box-shadow:inset 3px 0 0 var(--color-accent)}.bottom-nav-drawer-item:hover,.bottom-nav-item:hover,.sidebar-close-toggle:hover,.sidebar-nav-item.active,.sidebar-nav-item:hover,.theme-toggle:hover,.topbar-menu-button:hover{color:var(--color-text-strong);background:var(--color-surface-2)}.nav-icon{width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.sidebar-footer{margin-top:auto;padding:var(--space-3) 8px var(--space-4);border-top:1px solid var(--color-border)}.sidebar-footer-actions{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.theme-toggle{width:2.25rem;height:2.25rem;color:var(--color-muted);background:transparent;border:1px solid var(--color-border);transition:color var(--duration-fast),border-color var(--duration-fast),background-color var(--duration-fast)}.list-compact{display:flex;flex-direction:column;gap:var(--space-2)}@media (max-width:767px){.list-compact>*{width:100%;max-width:100%}}.grid-cards{display:grid;grid-gap:var(--space-3);gap:var(--space-3);grid-template-columns:1fr}.layout-logout-button{padding:6px 8px;color:var(--color-negative)}.bottom-nav{position:fixed;bottom:0;left:0;right:0;background-color:var(--color-surface);border-top:1px solid var(--color-border);display:grid;grid-template-columns:repeat(5,minmax(0,1fr));z-index:80}.bottom-nav,.bottom-nav-item{min-height:var(--shell-bottom-nav-height);align-items:center}.bottom-nav-item{display:flex;flex-direction:column;justify-content:center;gap:3px;cursor:pointer;color:var(--color-muted);transition:color var(--duration-fast),background-color var(--duration-fast)}.bottom-nav-item.active{color:var(--color-text-strong);font-weight:500;background:var(--color-info-surface)}.bottom-nav-drawer-item span,.bottom-nav-drawer-title,.bottom-nav-item span{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em}.bottom-nav-fab{width:2.75rem;height:2.75rem;display:inline-flex;align-items:center;justify-content:center;justify-self:center;border:1px solid var(--color-accent);background:var(--color-accent);color:var(--color-bg);transition:color var(--duration-fast),transform var(--duration-fast),background-color var(--duration-fast)}.bottom-nav-overlay,.drawer-overlay{position:fixed;inset:0;background-color:var(--color-overlay);z-index:100;display:none}.bottom-nav-drawer{position:fixed;left:0;right:0;bottom:var(--shell-bottom-nav-height);background-color:var(--color-surface);z-index:101;padding:var(--space-5) var(--space-4);overflow-y:auto;border-top:1px solid var(--color-border)}.bottom-nav-overlay.open,.drawer-overlay.open{display:block}.bottom-nav-drawer-title{color:var(--color-muted);margin-bottom:10px}.bottom-nav-drawer-list{display:flex;flex-direction:column;gap:4px}.bottom-nav-drawer-item{display:inline-flex;align-items:center;gap:var(--space-3);min-height:2.75rem;padding:var(--space-2) 0;color:var(--color-muted);border-bottom:1px solid var(--color-border);transition:color var(--duration-fast),background-color var(--duration-fast)}.bottom-nav-drawer-item.active{color:var(--color-text-strong);font-weight:500}.border-border{border-color:var(--color-border)}.section-divider{gap:var(--space-1);margin-bottom:0}@media (min-width:768px){.topbar{padding:0 var(--space-6)}.sidebar-close-toggle,.topbar-menu-button{display:none}.topbar-breadcrumb{display:flex}.sidebar{position:-webkit-sticky;position:sticky;inset:auto;top:0;transform:none;width:var(--shell-sidebar-width);min-height:100dvh;z-index:40}.main-content,.page-wrapper{padding:var(--space-6) var(--space-8) var(--space-8);max-width:var(--shell-content-width);margin:0 auto}.bottom-nav,.bottom-nav-drawer,.bottom-nav-overlay,.drawer-overlay{display:none}.grid-cards{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr))}}.auth-container{display:flex;flex-direction:column;min-height:100dvh;background-color:var(--color-bg);align-items:center;padding:var(--space-4)}.auth-intro{text-align:center;margin-bottom:var(--space-8)}.auth-intro-title{font-size:var(--font-size-2xl);font-weight:700;margin-top:var(--space-3);line-height:1.2}.auth-intro-sub{font-size:var(--font-size-md);color:var(--color-muted);margin-top:var(--space-2);max-width:400px;margin-left:auto;margin-right:auto}.auth-form-section{width:100%;max-width:400px}@media (min-width:768px){.auth-container{flex-direction:row;justify-content:center;align-items:center;gap:var(--space-10);padding:var(--space-8)}.auth-intro{flex:1 1;text-align:left;margin-bottom:0;max-width:450px}.auth-intro .auth-brand{margin-bottom:var(--space-4)}.auth-intro-sub{margin-left:0;margin-right:0}.auth-form-section{flex-shrink:0;width:400px}}.auth-card{border:1px solid var(--color-border);background-color:var(--color-surface);padding:var(--space-5);border-radius:var(--radius-md)}.auth-brand.compact{text-align:center;margin-bottom:var(--space-6)}.auth-brand.compact img{margin-bottom:var(--space-3)}.auth-brand.compact .auth-eyebrow{margin-bottom:var(--space-1)}.btn.compact{padding:var(--space-2) var(--space-4);font-size:var(--font-size-sm)}.btn-primary.compact{background-color:var(--color-accent);color:var(--color-bg);border-color:var(--color-accent)}.sidebar-brand{display:inline-flex;align-items:center;color:var(--color-text-strong);text-decoration:none;margin:0}.sidebar-brand-icon{height:24px;width:auto;mix-blend-mode:multiply;opacity:.65}html.dark .sidebar-brand-icon{filter:invert(1);mix-blend-mode:screen;opacity:.6}.global-footer{margin-top:auto;padding:var(--space-8) 0 var(--space-4);border-top:1px solid var(--color-border);opacity:.6}.global-footer-content{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);text-align:center}.global-footer-copyright{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--color-muted)}.global-footer-nav{display:flex;align-items:center;gap:var(--space-3)}.global-footer-nav a{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--color-muted);text-decoration:none;transition:color var(--duration-fast)}.global-footer-nav a:hover{color:var(--color-accent)}.global-footer-sep{color:var(--color-border);font-size:10px}@media (min-width:768px){.global-footer-content{flex-direction:row;justify-content:space-between}}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--color-bg);padding:var(--space-6)}.skeleton{border-radius:var(--radius);background:linear-gradient(90deg,var(--color-surface-2) 25%,var(--color-border) 50%,var(--color-surface-2) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.4s ease infinite;display:inline-block}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.auth-card,.card{width:100%;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--surface-card-padding);box-shadow:var(--shadow)}.auth-card{max-width:25rem}.auth-card.wide{max-width:26.25rem}.auth-shell--signup{min-height:100vh;display:grid;place-items:center;background:var(--color-bg);padding:16px;position:relative;overflow:hidden}.bg-dog{position:absolute;width:clamp(300px,45vw,680px);left:-5%;top:50%;transform:translateY(-50%);filter:invert(1);mix-blend-mode:screen;opacity:.05;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;z-index:0}.auth-card--signup{width:min(420px,calc(100vw - 32px));max-width:none;padding:40px;box-sizing:border-box;position:relative;z-index:1;background:rgba(14,17,15,.95);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.08)}.auth-header--signup{display:flex;flex-direction:column;align-items:flex-start;gap:20px;margin-bottom:32px}.auth-logo--signup{height:32px;width:auto;object-fit:contain;display:block;opacity:.85;filter:invert(1)}.auth-brand-name--signup{font-family:var(--font-mono);font-weight:800;text-transform:uppercase;letter-spacing:.2em;text-align:left;color:rgba(255,255,255,.7);font-size:11px;line-height:1;margin-top:-8px}.auth-copy--signup{width:100%;display:flex;flex-direction:column;gap:6px;text-align:left}.auth-kicker--signup{font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.12em;color:var(--color-muted)}.auth-title--signup{margin:0;font-family:var(--font-mono);font-size:28px;font-weight:700;color:var(--color-text-strong);letter-spacing:-.04em;line-height:1.1}.auth-subtitle--signup{margin:0;font-size:13px;color:var(--color-muted);line-height:1.35}.auth-form--signup{display:flex;flex-direction:column;gap:14px}.auth-error--signup{border:1px solid color-mix(in oklab,var(--color-danger) 45%,var(--color-border));background:color-mix(in oklab,var(--color-danger) 10%,var(--color-surface));color:var(--color-text-strong);padding:10px 12px;border-radius:var(--radius-md);font-size:12px;line-height:1.35}.auth-field--signup{display:flex;flex-direction:column;gap:8px}.auth-label--signup{font-family:var(--font-mono);font-weight:400;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--color-muted)}.auth-input--signup{width:100%;box-sizing:border-box;height:42px;padding:10px 12px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:color-mix(in srgb,var(--color-surface) 85%,white 5%);color:var(--color-text-strong);font-family:var(--font-mono);font-size:13px}.auth-input--signup::placeholder{color:color-mix(in oklab,var(--color-muted) 75%,transparent)}.auth-input--signup:focus{outline:none;border-color:var(--color-accent)}.auth-submit--signup{height:44px;margin-top:10px}.auth-alt--signup{margin-top:2px}.auth-alt-link--signup{display:inline-block;font-size:12px;color:var(--color-muted);text-decoration:none}.auth-alt-link--signup:hover{text-decoration:underline}.auth-alt-link-cta--signup{color:var(--color-text-strong)}@media (max-width:480px){.auth-card--signup{padding:28px}.auth-logo--signup{width:72px;height:72px}}.card+.card{margin-top:var(--space-4)}.auth-brand{margin-bottom:var(--space-6)}.auth-brand-icon{width:42px;height:42px;margin:0 0 var(--space-4);border:1px solid var(--color-border);display:flex;align-items:center;justify-content:center;font-size:.95rem;font-weight:700}.auth-eyebrow{margin-bottom:var(--space-2)}.auth-brand-title,.card-title,.coming-soon-title,.goal-name,.home-action-title,.landing-feature-title{font-family:var(--font-mono);font-size:var(--font-size-base);font-weight:500;color:var(--color-text-strong)}.list-item-meta{font-size:var(--font-size-sm);color:var(--color-muted);display:flex;gap:var(--space-1);align-items:center}.entity-card{position:relative;overflow:hidden;width:100%;height:100%;background:linear-gradient(180deg,color-mix(in srgb,var(--color-surface) 96%,black 4%),var(--color-surface));box-shadow:inset 0 1px 0 rgba(255,255,255,.02),0 0 0 1px color-mix(in srgb,var(--entity-accent,var(--color-border)) 5%,transparent);transition:transform var(--duration-fast) var(--easing-base),border-color var(--duration-fast) var(--easing-base),box-shadow var(--duration-fast) var(--easing-base),background var(--duration-fast) var(--easing-base)}.entity-card,.entity-card.card{border:1px solid color-mix(in srgb,var(--entity-accent,var(--color-border)) 18%,var(--color-border))}.entity-card--accent{border-left:0}.entity-card:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--entity-accent,var(--color-border)) 34%,var(--color-border));box-shadow:inset 0 1px 0 rgba(255,255,255,.03),0 10px 24px rgba(0,0,0,.18),0 0 0 1px color-mix(in srgb,var(--entity-accent,var(--color-border)) 10%,transparent),0 0 18px color-mix(in srgb,var(--entity-accent,var(--color-border)) 10%,transparent)}.entity-card:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(180deg,color-mix(in srgb,var(--entity-accent,var(--color-border)) 72%,transparent),color-mix(in srgb,var(--entity-accent,var(--color-border)) 45%,transparent));opacity:.9}.entity-card:after{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(-45deg,transparent,transparent 16px,color-mix(in srgb,var(--entity-accent,var(--color-border)) 4%,transparent) 16px,color-mix(in srgb,var(--entity-accent,var(--color-border)) 4%,transparent) 17px);opacity:.045;pointer-events:none}.entity-card>*{position:relative;z-index:1}.entity-card-icon{transition:filter var(--duration-fast) var(--easing-base);border-color:color-mix(in srgb,var(--entity-accent,var(--color-border)) 18%,var(--color-border))}.entity-card:hover .entity-card-icon{filter:grayscale(0)}.entity-card-icon-svg{opacity:.78;color:var(--entity-accent,inherit)}.entity-card-footer{min-height:16px;display:flex;align-items:center}.entity-card-pending{line-height:1}.entity-card-pending-dot{width:4px;height:4px;border-radius:9999px;background:color-mix(in srgb,var(--color-warning) 72%,transparent);box-shadow:0 0 0 1px color-mix(in srgb,var(--color-warning) 18%,transparent);opacity:.8}.entity-card-badge{border-color:color-mix(in srgb,var(--entity-accent,var(--color-border)) 24%,var(--color-border));background:color-mix(in srgb,var(--entity-accent,var(--color-surface)) 8%,var(--color-surface));color:color-mix(in srgb,var(--entity-accent,var(--color-text-muted)) 72%,var(--color-text))}.card-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-2);margin-bottom:var(--space-3)}.form-group,.input-field{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4)}.accounts-details-summary,.bottom-nav-drawer-title,.form-label,.home-balance-label,.home-section-title,.home-summary-label,.home-transaction-meta,.section-label,.stat-label,.transaction-nature-label{font-family:var(--font-mono);font-weight:400;font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--color-subtle)}.input--underline{border:none;border-bottom:1px solid var(--color-border);border-radius:0;padding-inline:0;background:transparent;box-shadow:none}.input,.input-field input,.input-field select,.input-field textarea,.select,input[type=date],input[type=month]{width:100%;padding:8px 0;background:transparent;border:none;border-bottom:1px solid var(--color-border);border-radius:0;color:var(--color-text);font-size:var(--font-size-base);line-height:1.5;caret-color:var(--color-text)}.input::placeholder{color:var(--color-subtle)}.input-field input:focus,.input-field select:focus,.input-field textarea:focus,.input:focus,.select:focus,input[type=date]:focus,input[type=month]:focus{border-bottom-color:var(--color-text-strong)}.badge:focus-visible,.bottom-nav-drawer-item:focus-visible,.bottom-nav-fab:focus-visible,.bottom-nav-item:focus-visible,.btn:focus-visible,.chip:focus-visible,.input-field input:focus-visible,.input-field select:focus-visible,.input-field textarea:focus-visible,.input:focus-visible,.list-item.clickable:focus-visible,.select:focus-visible,.sidebar-nav-item:focus-visible,input[type=date]:focus-visible,input[type=month]:focus-visible,summary:focus-visible{box-shadow:var(--focus-ring)}.select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--color-muted) 50%),linear-gradient(135deg,var(--color-muted) 50%,transparent 50%);background-position:calc(100% - 10px) calc(50% - 3px),calc(100% - 5px) calc(50% - 3px);background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:18px}.select option{background-color:var(--color-surface);color:var(--color-text)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:2.75rem;padding:.5rem 1rem;border:1px solid var(--color-border);border-radius:var(--radius);font-family:var(--font-mono);font-size:var(--font-size-sm);font-weight:500;text-transform:uppercase;letter-spacing:.08em;cursor:pointer;transition:color var(--duration-fast),transform var(--duration-fast),background-color var(--duration-fast),border-color var(--duration-fast);white-space:nowrap}.btn:disabled{cursor:not-allowed;color:var(--color-muted);border-color:var(--color-border)}.btn-full{width:100%}.icon-picker-dropdown{position:absolute;right:0;bottom:100%;margin-bottom:8px;z-index:100;width:240px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-2);box-shadow:0 8px 24px rgba(0,0,0,.12)}.icon-picker-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-2);padding:0 var(--space-1)}.icon-picker-grid{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:6px;gap:6px}.icon-picker-item{aspect-ratio:1;display:flex;align-items:center;justify-content:center;padding:var(--space-2);border-radius:var(--radius);border:1px solid transparent;background:color-mix(in srgb,var(--color-surface-2) 50%,transparent);transition:border-color var(--duration-fast),background var(--duration-fast);cursor:pointer}.icon-picker-item:hover{border-color:color-mix(in srgb,var(--color-primary) 30%,transparent)}.icon-picker-item.selected{background:color-mix(in srgb,var(--color-primary) 10%,transparent);border-color:var(--color-primary)}.btn-sm{min-height:32px;padding:0 var(--space-3);font-size:var(--font-size-xs)}.btn-xs{min-height:28px;padding:0 var(--space-2);font-size:11px}.t-page-title{font-size:var(--font-size-2xl);font-weight:700;line-height:1.1;letter-spacing:-.02em}.t-value-lg{font-size:var(--font-size-xl);font-weight:700;line-height:1}.t-module{font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.08em}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-5)}.page-header__content{display:grid;grid-gap:var(--space-1);gap:var(--space-1)}.page-header__actions{display:flex;align-items:center;gap:var(--space-2)}.grid-12{grid-template-columns:repeat(12,minmax(0,1fr));grid-gap:var(--space-4)}.grid-12,.grid-2{display:grid;gap:var(--space-4);align-items:stretch}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--space-4)}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:var(--space-4);gap:var(--space-4);align-items:stretch}.grid-12>*,.grid-2>*,.grid-3>*,.grid-metrics>*{margin-top:0!important}.accounts-grid{align-items:stretch}.accounts-grid>*{height:100%;margin-top:0!important}.grid-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));grid-gap:var(--space-3);gap:var(--space-3);align-items:stretch}.modal-overlay{position:fixed;inset:0;z-index:50;background:color-mix(in srgb,var(--color-bg) 70%,transparent);align-items:center;justify-content:center;padding:var(--space-4);height:100dvh}.modal-overlay,.modal-shell{display:flex;overflow:hidden}.modal-shell{width:100%;max-height:calc(100dvh - var(--space-8));background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);flex-direction:column}.modal-shell--sm{max-width:28rem}.modal-shell--md{max-width:30rem}.modal-shell--lg{max-width:56rem}.modal-footer,.modal-header{padding:var(--space-4);border-bottom:1px solid var(--color-border);flex-shrink:0}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.modal-body{flex:1 1;min-height:0;overflow-y:auto}.modal-close-x{width:32px;height:32px;padding:0!important;border:1px solid transparent!important;background:transparent!important;border-radius:var(--radius-sm);color:var(--color-subtle);opacity:.65}.modal-close-x:focus-visible,.modal-close-x:hover{opacity:1;background:var(--color-surface-2)!important;color:var(--color-text)}.modal-footer{border-top:1px solid var(--color-border);border-bottom:0}.modal-body{padding:var(--space-4);overflow:auto}.filter-bar{align-items:center}.filter-bar__group{display:flex;align-items:center;gap:var(--space-2)}.stat-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));grid-gap:var(--space-3);gap:var(--space-3)}.stat-item{display:flex;flex-direction:column;gap:var(--space-1)}@media (max-width:768px){.page-header{flex-direction:column}.grid-12,.grid-2,.grid-3{grid-template-columns:1fr}}.btn-primary{background:var(--color-accent);border-color:var(--color-accent);color:#0d100f;font-weight:700}.btn-outline,.btn-secondary{background-color:transparent;border-color:var(--color-border);color:var(--color-muted)}.btn-ghost:hover,.btn-outline:hover,.btn-secondary:hover{color:var(--color-text-strong);background:var(--color-surface-2)}.btn-primary:hover{color:#0d100f;filter:brightness(.92);box-shadow:0 0 0 3px rgba(181,139,66,.25)}.btn-outline.active,.btn-secondary.active{color:var(--color-text-strong);border-color:var(--color-text-strong)}.btn-danger,.btn-destructive{background-color:var(--color-negative);border-color:var(--color-negative);color:#e7e8e3}.btn-success{background-color:var(--color-success-surface);border-color:var(--color-positive);color:var(--color-positive)}.btn-ghost{background-color:transparent;border-color:transparent;color:var(--color-muted);padding:6px 8px}.section-divider{display:flex;flex-direction:column;gap:4px;margin-bottom:16px}.section-divider hr{border:none;border-top:1px solid var(--color-border);margin:0}.metrics-grid,.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));grid-gap:var(--space-3);gap:var(--space-3);margin-bottom:var(--space-6)}@media (min-width:1024px){.metrics-grid,.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.metric-item,.stat-card{display:flex;flex-direction:column;gap:var(--space-1);min-height:8rem;justify-content:space-between;background:var(--color-surface);border:1px solid var(--color-border);padding:var(--space-4)}.accounts-archived-card,.accounts-card,.accounts-modal-card,.budget-category-card,.budget-goal-form-card,.budget-summary-card,.goal-item,.home-action-card,.home-card,.home-hero,.home-secondary-link,.home-summary-card,.landing-feature-card,.stat-card{border:1px solid var(--color-border);background:var(--color-surface);border-radius:var(--radius);padding:var(--space-4)}.home-balance-value,.home-summary-value,.score-number,.stat-value{font-family:var(--font-mono);font-weight:300;font-size:var(--font-size-2xl);line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--color-text);letter-spacing:-.04em;min-width:0;overflow:hidden;text-overflow:ellipsis}.badge--sm{font-size:10px;min-height:1.5rem;padding:.1rem .45rem}.badge--neutral{color:var(--color-muted);background:color-mix(in srgb,var(--color-muted) 10%,transparent);border-color:color-mix(in srgb,var(--color-muted) 22%,transparent)}.t-negative{color:var(--color-negative)}.t-positive{color:var(--color-positive)}.t-warning{color:var(--color-warning)}.list-interactive{display:flex;flex-direction:column}.list-interactive .list-item{padding:14px 0;border-bottom:1px solid var(--color-border);cursor:pointer;transition:color .15s}.list-interactive .list-item:hover{color:var(--color-text)}.list-item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:var(--space-3) 0;border-bottom:1px solid var(--color-border);background:transparent}.list-item.clickable{cursor:pointer}.list-item-content{flex:1 1;min-width:0}.home-transaction-desc,.list-item-title{font-size:13px;font-weight:500;color:var(--color-text)}.list-item-actions{display:flex;gap:var(--space-2)}.accounts-card-title,.amount-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.badge,.chip,.home-pill,.score-badge{display:inline-flex;align-items:center;gap:4px;min-height:1.75rem;padding:.125rem .5rem;border:1px solid var(--color-border);border-radius:var(--radius);background-color:transparent;color:var(--color-text);font-family:var(--font-mono);font-size:var(--font-size-xs)}.chip.active{background-color:var(--color-accent);color:#ffffff;border-color:var(--color-accent)}.chip.chip--warning.active{background:color-mix(in srgb,var(--color-warning) 18%,transparent);color:var(--color-warning);border-color:color-mix(in srgb,var(--color-warning) 40%,transparent)}.chip.chip--danger.active{background:color-mix(in srgb,var(--color-negative) 18%,transparent);color:var(--color-negative);border-color:color-mix(in srgb,var(--color-negative) 40%,transparent)}.chip--sm{font-size:10px;padding:2px 7px;min-height:auto}.chip--danger{background:color-mix(in srgb,var(--color-negative) 15%,transparent);color:var(--color-negative);border-color:color-mix(in srgb,var(--color-negative) 30%,transparent)}.chip--warning{background:color-mix(in srgb,var(--color-warning) 15%,transparent);color:var(--color-warning);border-color:color-mix(in srgb,var(--color-warning) 30%,transparent)}.chip--ok{background:color-mix(in srgb,var(--color-positive) 12%,transparent);color:var(--color-positive);border-color:color-mix(in srgb,var(--color-positive) 25%,transparent)}.chip--neutral{background:color-mix(in srgb,var(--color-muted) 12%,transparent);color:var(--color-muted);border-color:color-mix(in srgb,var(--color-muted) 25%,transparent)}.badge-new,.badge-pending{color:var(--color-warning);background:var(--color-warning-surface);border-color:var(--color-warning)}.badge-confirmed{color:var(--color-positive);background:var(--color-success-surface);border-color:var(--color-positive)}.badge-rejected{color:var(--color-negative);background:var(--color-danger-surface);border-color:var(--color-negative)}.badge-warning{background-color:color-mix(in srgb,var(--color-warning) 15%,transparent);color:var(--color-warning);border:1px solid color-mix(in srgb,var(--color-warning) 30%,transparent)}.badge-danger{background-color:color-mix(in srgb,var(--color-negative) 18%,transparent);color:var(--color-negative);border:1px solid color-mix(in srgb,var(--color-negative) 35%,transparent);font-weight:700}.badge--ai,.badge.ai{color:var(--color-accent);border-color:rgba(202,164,93,.35);background:var(--color-accent-soft)}.badge--ok,.badge.ok{color:var(--color-positive);border-color:rgba(143,185,150,.32);background:var(--color-positive-soft)}.badge--warn,.badge.warn{color:var(--color-warning);border-color:rgba(198,161,91,.3);background:var(--color-warning-soft)}.badge--danger,.badge.danger{color:var(--color-negative);border-color:rgba(199,131,116,.3);background:var(--color-negative-soft)}.alert{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius);font-size:var(--font-size-sm);margin-bottom:var(--space-4);color:var(--color-text);background:var(--color-surface)}.alert-warning{border-color:var(--color-warning);color:var(--color-warning);background:var(--color-warning-surface)}.alert-error{border-color:var(--color-negative);color:var(--color-negative);background:var(--color-danger-surface)}.alert-success{border-color:var(--color-positive);color:var(--color-positive);background:var(--color-success-surface)}.alert-info{border-color:var(--color-config);color:var(--color-config);background:var(--color-info-surface)}.spinner{width:18px;height:18px;border:2px solid var(--color-border);border-top-color:var(--color-text);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.coming-soon,.empty-state,.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-8);text-align:center;color:var(--color-muted)}.coming-soon-icon,.empty-state-icon{font-size:2rem}.form-row{display:flex;gap:var(--space-3);align-items:flex-end;flex-wrap:wrap}.form-row .form-group{flex:1 1;min-width:140px;margin-bottom:0}.filter-bar{display:flex;gap:var(--space-2);margin-bottom:var(--space-6);flex-wrap:wrap}.panel-shortcuts{padding:var(--space-3);margin-top:var(--space-2);margin-bottom:var(--space-4);background:var(--color-surface-2);border:1px solid var(--color-border)}.panel-actions,.panel-shortcuts{display:flex;gap:var(--space-2);flex-wrap:wrap}.panel-actions{justify-content:flex-end;margin-top:var(--space-4)}.filter-panel-grid,.home-actions-grid,.home-grid,.home-kpi-grid,.home-metrics-grid,.home-secondary-links,.home-summary-grid,.landing-features{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));grid-gap:var(--space-4);gap:var(--space-4);align-items:stretch}.filter-panel.card{padding:var(--space-4)}.filter-panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;margin-bottom:var(--space-4)}.filter-panel-title{font-family:var(--font-mono);font-size:var(--font-size-base);font-weight:500;color:var(--color-text-strong);line-height:28px}.quick-filter-bar{display:flex;flex-wrap:wrap;gap:var(--space-2)}.filter-panel-grid{display:grid;grid-gap:var(--space-4);gap:var(--space-4);grid-template-columns:repeat(4,1fr);margin-bottom:var(--space-2)}.filter-panel-grid .form-group{margin-bottom:0}.filter-panel-actions{display:flex;justify-content:flex-end;gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--color-border);margin-top:var(--space-2)}.filter-chip{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-1);height:28px;padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius);background:transparent;color:var(--color-muted);font-family:var(--font-mono);font-size:var(--font-size-xs);font-weight:400;letter-spacing:.04em;cursor:pointer;white-space:nowrap;transition:all var(--duration-fast) var(--easing-base)}.filter-chip:hover{color:var(--color-text);border-color:var(--color-border-h);background:color-mix(in srgb,var(--color-surface-2) 60%,transparent)}.filter-chip--active{color:var(--color-accent);border-color:var(--color-accent);background:var(--color-accent-soft);font-weight:600}@media (max-width:1024px){.filter-panel-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.filter-panel-header{flex-direction:column;align-items:stretch;gap:var(--space-3)}.filter-panel-title{line-height:1.2}.filter-panel-grid{grid-template-columns:1fr}.filter-panel-actions{flex-direction:column;gap:var(--space-2)}.filter-panel-actions .btn{width:100%}}.filter-panel-grid>.card{display:flex;flex-direction:column;flex-grow:1;min-height:12rem}.suggestion-item{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius)}.budget-chart-box,.chart-container,.report-chart-box{width:100%;height:320px}.ai-insights-card{border-color:var(--color-config)}.section-label{margin-bottom:var(--space-3);margin-top:var(--space-6)}.section-label:first-child{margin-top:0}.accounts-groups,.budget-categories-list,.budget-goals-list,.confidence-bar,.goal-item,.home-progress,.home-transaction-list,.profile-risk-zone-content,.score-sub-list{display:flex;flex-direction:column;gap:var(--space-2)}.accounts-progress,.confidence-bar-track,.goal-bar-track,.home-progress-track,.progress-track,.score-sub-bar-track{width:100%;height:8px;background:var(--color-surface-2);border-radius:var(--radius);overflow:hidden}.accounts-progress-fill,.confidence-bar-fill,.goal-bar-fill,.home-progress-fill,.progress-fill,.score-sub-bar-fill{height:100%;border-radius:var(--radius);background:var(--color-accent)}.accounts-progress-fill,.progress-fill{width:var(--progress-width,auto)}.accounts-progress-fill{background:var(--progress-color,var(--color-accent))}.confidence-bar-fill.high,.goal-bar-fill.ok,.score-sub-bar-fill.healthy{background-color:var(--color-positive)}.account-monthly-in,.home-summary-value.positive,.home-transaction-amount.positive,.score-badge.healthy,.score-number.healthy,.transaction-amount-cell[data-type=income],.transaction-verify-btn[data-confirmed=true],.week-balance-positive{color:var(--color-positive)}.confidence-bar-fill.medium,.goal-bar-fill.warning{background-color:var(--color-warning)}.badge-pending,.home-transaction-amount.neutral,.score-badge.attention,.score-number.attention,.transaction-amount-cell[data-type=credit]{color:var(--color-warning)}.confidence-bar-fill.low,.goal-bar-fill.over{background-color:var(--color-negative)}.account-monthly-out,.home-summary-value.negative,.home-transaction-amount.negative,.score-badge.vulnerable,.score-number.vulnerable,.transaction-amount-cell[data-type=expense],.week-balance-negative{color:var(--color-negative)}.accounts-muted,.accounts-networth-item,.confidence-label,.home-action-desc,.home-card-desc,.home-empty,.home-section-link,.home-summary-label,.home-transaction-meta{font-size:12px;color:var(--color-muted)}.home-hero-grid,.landing-main-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.9fr);grid-gap:var(--space-6);gap:var(--space-6);align-items:start}.accounts-card-body,.budget-goal-status-wrap,.budget-household-stats,.home-balance,.home-balance-meta,.home-launch,.home-transaction-title,.score-gauge,.score-sub-item,.score-widget{display:flex;flex-direction:column;gap:var(--space-2)}.home-action-card,.home-card,.home-secondary-link{text-decoration:none;color:var(--color-text);transition:color .15s,transform .15s}.status-dot{display:inline-block;width:8px;height:8px;border-radius:var(--radius);flex-shrink:0}.status-dot.online{background:var(--color-positive)}.status-dot.offline{background:var(--color-negative)}.status-dot.unknown{background:var(--color-muted)}.score-widget{flex-wrap:wrap;align-items:center}.theme-toggle,.toggle-track,.transaction-verify-btn{border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-muted);background:transparent}.theme-toggle{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;transition:color .15s}.toggle-track{width:44px;height:24px;position:relative}.toggle-thumb{position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:var(--radius);background:var(--color-accent)}.landing-page{min-height:100vh;background:var(--color-bg)}.landing-hero,.landing-page{display:flex;flex-direction:column}.landing-hero{justify-content:center;padding:var(--space-8) var(--space-6) var(--space-6);border-bottom:1px solid var(--color-border)}.landing-hero-title{font-family:var(--font-mono);font-size:clamp(1.75rem,4vw,2.5rem);font-weight:300;color:var(--color-text);max-width:720px;line-height:1.05;margin-bottom:var(--space-3)}.landing-hero-sub{font-size:13px;color:var(--color-muted);max-width:520px}.landing-main-grid{width:min(70rem,calc(100% - 3rem));margin:0 auto var(--space-10);padding-top:var(--space-6)}.landing-brand-row{display:flex;align-items:center;gap:12px;margin-bottom:18px}.landing-content{display:grid;grid-gap:var(--space-5);gap:var(--space-5)}.landing-section-header{display:flex;align-items:center;gap:var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border)}.landing-section-header:after{content:"";flex:1 1;border-top:1px solid var(--color-border)}.landing-feature-heading,.landing-feature-kicker{margin-bottom:8px}.auth-brand.compact{margin-bottom:var(--space-5)}.auth-meta-link{text-align:center}.home-accounts-carousel,.table-responsive,.transactions-category-chips{overflow-x:auto}.table{width:100%;border-collapse:collapse;font-size:12px}.table td,.table th{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);text-align:left}.table th{color:var(--color-muted);font-size:11px;text-transform:uppercase;letter-spacing:.05em}.table td{color:var(--color-text)}.anim-fade-in{opacity:1}.emoji-picker-popup,.metric-tooltip,.tooltip-popover,[role=tooltip]{z-index:200}.accounts-emoji-picker,.emoji-picker-popup,.metric-tooltip{position:absolute;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:8px}.accounts-emoji-picker,.emoji-picker-popup{display:grid;grid-template-columns:repeat(5,36px);grid-gap:6px;gap:6px}.accounts-emoji-button,.emoji-picker-btn{width:36px;height:36px;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);cursor:pointer;font-size:1.1rem;line-height:1}.accounts-type-field,.budget-role-field{max-width:180px}.accounts-emoji-field{max-width:160px;position:relative}.accounts-emoji-picker{top:calc(100% + 6px);right:0}.budget-household-field{min-width:260px}.budget-month-field{min-width:180px}.accounts-create-button,.accounts-section-reset{margin-top:6px}.input-with-copy{display:flex;gap:var(--space-2);align-items:center;border-bottom:1px solid var(--color-border)}.input-with-copy .input{border-bottom:none;flex-grow:1;padding:.5rem 0}.input-with-copy .btn{flex-shrink:0;padding:var(--space-1) var(--space-2);min-height:auto;font-size:var(--font-size-sm)}.accounts-section-reset{margin:0}.accounts-filter-bar{justify-content:space-between;align-items:center}.accounts-filter-controls{flex-wrap:wrap}.accounts-sort-select{min-width:220px}.accounts-groups{gap:16px}.accounts-group-grid{display:grid;grid-template-columns:1fr;grid-gap:8px;gap:8px}.accounts-group-toggle{width:100%;margin-bottom:12px}.accounts-empty-state{padding:18px}.accounts-card{cursor:pointer}.accounts-archived-icon,.accounts-card-icon{font-size:1.4rem}.accounts-archive-button{padding:4px 8px}.accounts-archived-body,.accounts-card-body{margin-top:8px}.accounts-balance{margin-top:8px;font-size:16px;font-weight:400;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.accounts-balance.negative{color:var(--color-negative)}.accounts-balance.positive{color:var(--color-positive)}.accounts-card-badges{flex-direction:row;flex-wrap:wrap;margin-top:8px}.accounts-type-badge{background:var(--color-surface-2)}.accounts-archived-meta,.accounts-meta-spaced{margin-top:8px}.accounts-archived-meta-tight{margin-top:6px}.accounts-archived-card{color:var(--color-muted)}.accounts-details-summary{margin-bottom:8px;font-weight:700;color:var(--color-text)}.accounts-networth{flex-wrap:wrap;padding-top:8px}.accounts-networth-item{font-size:13px;color:var(--color-text)}.accounts-networth-value-positive{color:var(--color-positive)}.accounts-networth-value-negative{color:var(--color-negative)}.accounts-modal-overlay{position:fixed;inset:0;background:var(--color-overlay);display:flex;align-items:center;justify-content:center;padding:var(--space-4);z-index:50}.accounts-modal-card{width:100%;max-width:26.25rem}.accounts-modal-text{margin-bottom:16px}.accounts-modal-highlight{color:var(--color-text)}.budget-goal-form-card{max-width:520px}.budget-inline-warning{color:var(--color-warning);font-size:12px;margin-bottom:12px}.budget-goal-footer{font-size:12px}.budget-goal-status.positive{color:var(--color-positive)}.budget-goal-status.warning{color:var(--color-warning)}.budget-goal-status.negative{color:var(--color-negative)}.budget-remove-button{font-size:11px;padding:2px 8px}.budget-action-field,.budget-action-field-right,.budget-invite-action,.profile-password-action{flex-grow:0}.budget-action-field,.budget-action-field-right,.budget-create-household-action{align-self:flex-end}.budget-category-card.subcategory{margin-left:1.5rem;border-left:2px solid var(--color-border)}.budget-planned-input{width:140px;text-align:right}.budget-summary-stats{grid-template-columns:1fr;margin-bottom:0}.budget-household-value,.budget-stat-value-sm{font-size:18px}.budget-chart-box{height:280px}.budget-hidden-label,.profile-hidden-label{visibility:hidden}.filter-row,.home-account-card,.transaction-fixed-badge,.transaction-icon-box,.transaction-savebar,.transactions-filter-drawer,.week-group-header{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface)}.home-account-card{padding:var(--space-3)}.home-account-head,.profile-name-group{display:flex;gap:var(--space-2)}.home-account-head{justify-content:space-between;align-items:center}.home-account-meta{font-size:12px;color:var(--color-muted);display:grid;grid-gap:2px;gap:2px}.profile-risk-zone-card{background:var(--color-danger-surface)}.profile-risk-header{cursor:pointer}.profile-risk-title{color:var(--color-negative)}.profile-delete-confirm-group{max-width:160px}.home-dashboard-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-gap:var(--space-4);gap:var(--space-4);margin-bottom:var(--space-6)}.home-balance-card,.home-health-card{min-height:128px}.home-balance-card,.home-consumption-card,.home-health-card{grid-column:span 4;align-self:stretch;margin-top:0!important;margin-bottom:0!important}.home-metrics-card{padding:0;overflow:hidden}.home-ai-card,.home-metrics-card,.home-unclassified-card{grid-column:span 12;margin-bottom:0!important}.home-unclassified-card{min-width:0;overflow:hidden}.home-unclassified-card strong{word-break:break-word;overflow-wrap:anywhere;display:block}@media (max-width:900px){.home-ai-card,.home-balance-card,.home-consumption-card,.home-health-card{grid-column:span 12}}.home-hero-card{background:var(--color-surface);padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-4)}.home-hero-card,.home-metrics-3{border:1px solid var(--color-border);border-radius:var(--radius)}.home-metrics-3{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:1px;gap:1px;background:var(--color-border);overflow:hidden}.home-metrics-3 .metric-item{background:var(--color-surface);border:none;min-height:6rem;padding:var(--space-4);border-radius:0}@media (max-width:480px){.home-metrics-3{grid-template-columns:1fr}}.home-consumo-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:var(--space-4)}.home-consumo-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2)}.home-collapse-icon-btn{width:2rem;height:2rem;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-muted);background:transparent;cursor:pointer;flex-shrink:0;transition:color var(--duration-fast),background-color var(--duration-fast)}.home-collapse-icon-btn:hover{color:var(--color-text);background:var(--color-surface-2)}@media (max-width:1024px){.home-actions-grid,.home-hero-grid,.home-secondary-links,.home-summary-grid,.landing-main-grid{grid-template-columns:1fr}}@media (max-width:768px){.accounts-archived-card,.accounts-card,.budget-category-card,.budget-goal-form-card,.card,.home-action-card,.home-card,.home-secondary-link,.home-summary-card,.landing-feature-card{padding:var(--space-3)}.accounts-filter-controls,.accounts-modal-actions,.accounts-networth,.form-row{flex-direction:column;align-items:stretch}.accounts-emoji-field,.accounts-sort-select,.accounts-type-field,.budget-household-field,.budget-month-field,.budget-role-field{max-width:none;min-width:0;width:100%}.budget-category-card.subcategory{margin-left:.75rem}.panel-actions{justify-content:stretch}.panel-actions>*{width:100%}}.form-group.has-error .form-label{color:var(--color-danger-700)}.form-group.has-error .input,.form-group.has-error .select,.form-group.has-error .textarea{border-color:var(--color-danger-500)}.text-error{color:var(--color-danger-600)}.stat-card.has-error{border:1px solid var(--color-danger-500)}.cat-toolbar{display:flex;flex-direction:column;gap:var(--space-5);margin-bottom:var(--space-8)}.cat-toolbar__search{position:relative;width:100%}.cat-toolbar__search-icon{position:absolute;left:0;top:50%;transform:translateY(-50%);color:var(--color-muted);pointer-events:none}.cat-toolbar__search-input{width:100%;background:transparent;border:none;border-bottom:1px solid var(--color-border);padding:var(--space-3) 0 var(--space-3) 1.5rem;font-family:var(--font-mono);font-size:var(--font-size-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text);transition:border-color var(--duration-fast);outline:none}.cat-toolbar__search-input::placeholder{color:var(--color-subtle);opacity:.5}.cat-toolbar__search-input:focus{border-bottom-color:var(--color-accent)}.cat-toolbar__row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap}.cat-toolbar__filters{display:flex;gap:var(--space-4);overflow-x:auto;scrollbar-width:none}.cat-toolbar__filters::-webkit-scrollbar{display:none}.cat-filter-btn{font-family:var(--font-mono);font-size:var(--font-size-xs);font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--color-muted);background:none;border:none;border-bottom:2px solid transparent;padding:0 0 var(--space-1);cursor:pointer;white-space:nowrap;transition:color var(--duration-fast),border-color var(--duration-fast)}.cat-filter-btn:hover{color:var(--color-text)}.cat-filter-btn.active{color:var(--color-accent);border-bottom-color:var(--color-accent)}.cat-tree{display:flex;flex-direction:column;gap:var(--space-10);padding-bottom:var(--space-12)}.cat-section-header{display:flex;align-items:center;gap:var(--space-4);margin-bottom:var(--space-3);padding:0 var(--space-1)}.cat-section-title{font-family:var(--font-mono);font-size:var(--font-size-xs);font-weight:700;text-transform:uppercase;letter-spacing:.2em;color:var(--color-accent);white-space:nowrap}.cat-section-line{flex:1 1;height:1px;background:var(--color-border);opacity:.3}.cat-section-count{font-family:var(--font-mono);font-size:var(--font-size-xs);color:var(--color-subtle);text-transform:uppercase;white-space:nowrap}.cat-group-list{display:flex;flex-direction:column;background:color-mix(in srgb,var(--color-surface) 50%,transparent);border-top:1px solid color-mix(in srgb,var(--color-border) 30%,transparent);border-bottom:1px solid color-mix(in srgb,var(--color-border) 30%,transparent)}.cat-group-list>*+*{border-top:1px solid color-mix(in srgb,var(--color-border) 20%,transparent)}.cat-children-list{background:color-mix(in srgb,var(--color-bg) 40%,transparent)}.cat-children-list,.cat-item{display:flex;flex-direction:column}.cat-item{position:relative;transition:background var(--duration-fast)}.cat-item--selected{background:var(--color-surface-2)}.cat-item:not(.cat-item--selected):hover{background:color-mix(in srgb,var(--color-surface-2) 50%,transparent)}.cat-item__accent-bar{position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--color-accent);box-shadow:0 0 8px color-mix(in srgb,var(--color-accent) 40%,transparent);z-index:1}.cat-item__row{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);cursor:pointer}.cat-item__row--child{padding-left:calc(var(--space-4) + 2.5rem)}.cat-item__expand-slot{width:1.25rem;flex-shrink:0}.cat-item__expand-btn,.cat-item__expand-slot{display:flex;align-items:center;justify-content:center}.cat-item__expand-btn{padding:var(--space-1);background:none;border:none;cursor:pointer;color:var(--color-muted);border-radius:2px;transition:background var(--duration-fast),color var(--duration-fast)}.cat-item__expand-btn:hover{background:var(--color-surface-3);color:var(--color-text)}.cat-item__dot{width:6px;height:6px;border-radius:50%;background:var(--color-border)}.cat-item__tree-char{color:var(--color-border);font-family:var(--font-mono);font-size:var(--font-size-base);line-height:1;flex-shrink:0;margin-right:calc(-1 * var(--space-2))}.cat-item__icon{width:2rem;height:2rem;border-radius:2px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--color-surface-2);color:var(--color-muted);transition:all var(--duration-fast)}.cat-item--selected .cat-item__icon{background:color-mix(in srgb,var(--color-accent) 15%,transparent);color:var(--color-accent)}.cat-item__info{display:flex;flex-direction:column;min-width:0;flex:1 1}.cat-item__name{font-size:var(--font-size-sm);font-weight:500;letter-spacing:-.01em;color:var(--color-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cat-item--selected .cat-item__name{color:var(--color-text-strong)}.cat-item__nature{font-family:var(--font-mono);font-size:9px;text-transform:uppercase;letter-spacing:.1em;color:var(--color-subtle)}.cat-item__meta{display:flex;align-items:center;gap:var(--space-4);flex-shrink:0}.cat-item__alias-badge{display:flex;align-items:center;gap:var(--space-1);padding:.125rem var(--space-2);border:1px solid color-mix(in srgb,var(--color-border) 50%,transparent)}.cat-item__alias-badge,.cat-item__sub-badge{font-family:var(--font-mono);font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:var(--color-subtle)}.cat-item__sub-badge{opacity:.6;background:color-mix(in srgb,var(--color-surface-3) 50%,transparent);padding:.125rem var(--space-1)}.cat-item__actions{display:flex;align-items:center;gap:var(--space-1);opacity:0;transition:opacity var(--duration-fast)}.cat-item:hover .cat-item__actions{opacity:1}.cat-item__action-btn{padding:var(--space-1);background:none;border:none;cursor:pointer;color:var(--color-muted);border-radius:2px;display:flex;align-items:center;justify-content:center;transition:background var(--duration-fast),color var(--duration-fast)}.cat-item__action-btn:hover{background:color-mix(in srgb,var(--color-accent) 12%,transparent);color:var(--color-accent)}.cat-empty{display:flex;align-items:center;justify-content:center;padding:var(--space-12) var(--space-8);font-size:var(--font-size-sm);color:var(--color-muted);opacity:.5}.cat-modal-wrapper{width:min(420px,calc(100vw - 24px));padding:0}.cat-modal{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-5);background:var(--color-surface);color:var(--color-text);border-radius:var(--radius)}.cat-modal__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-1)}.cat-modal__eyebrow{font-size:.7rem;text-transform:uppercase;letter-spacing:.15em;color:var(--color-muted);font-weight:700}.cat-modal__close{padding:var(--space-1);background:none;border:none;cursor:pointer;color:var(--color-subtle);display:flex;align-items:center;justify-content:center;opacity:.5;transition:opacity .2s;border-radius:var(--radius-sm)}.cat-modal__close:hover{opacity:1;background:var(--color-surface-2)}.cat-modal__icon-trigger{background:none;border:none;cursor:pointer;color:var(--color-accent);padding:0;display:flex;align-items:center;justify-content:center;opacity:.8;flex-shrink:0;transition:opacity .15s;margin-right:var(--space-2)}.cat-modal__icon-trigger:hover{opacity:1}.cat-modal__body{display:flex;flex-direction:column;gap:var(--space-3)}.cat-modal__row{display:flex;align-items:flex-end;gap:var(--space-3)}.cat-modal__select-field{flex:1 1;display:flex;flex-direction:column;gap:4px}.cat-modal__field-label{font-size:.6rem;text-transform:uppercase;letter-spacing:.1em;color:var(--color-muted);font-weight:700}.cat-modal__select-wrap{position:relative}.cat-modal__select{width:100%;background:color-mix(in srgb,var(--color-surface-2) 72%,transparent);border:none;border-radius:var(--radius);padding:10px 32px 10px 12px;font-size:.8rem;color:var(--color-text);-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;outline:none;transition:background .15s}.cat-modal__select:focus{background:var(--color-surface-2);box-shadow:var(--focus-ring)}.cat-modal__select:disabled{opacity:.35;cursor:not-allowed}.cat-modal__select option{background:var(--color-surface);color:var(--color-text)}.cat-modal__select-arrow{position:absolute;right:10px;top:50%;transform:translateY(-50%);color:var(--color-subtle);pointer-events:none}.cat-modal__toggle{display:flex;flex-direction:column;align-items:center;gap:4px;cursor:pointer;flex-shrink:0;padding-bottom:2px}.cat-modal__toggle input[type=checkbox]{width:1rem;height:1rem;accent-color:var(--color-accent);cursor:pointer}.cat-modal__toggle-label{font-size:.6rem;text-transform:uppercase;letter-spacing:.1em;color:var(--color-muted);font-weight:700}.cat-modal__aliases-section{display:flex;flex-direction:column;gap:var(--space-2)}.cat-modal__warn{display:flex;align-items:center;gap:var(--space-1);font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;color:var(--color-warning);margin-top:var(--space-1)}.cat-modal__delete-btn{background:transparent;border:1px dashed color-mix(in srgb,var(--color-danger) 40%,transparent);color:color-mix(in srgb,var(--color-danger) 70%,transparent);padding:8px;border-radius:var(--radius);font-size:.75rem;font-weight:600;cursor:pointer;width:100%;text-align:center;transition:all .15s}.cat-modal__delete-btn:hover{border-color:var(--color-danger);color:var(--color-danger);background:color-mix(in srgb,var(--color-danger) 8%,transparent)}.cat-modal__footer{display:flex;gap:var(--space-2);padding-top:var(--space-1);border-top:1px solid color-mix(in srgb,var(--color-border) 40%,transparent);margin-top:var(--space-1)}.cat-modal__footer-cancel{flex:1 1;padding:12px;border:none;border-radius:var(--radius);background:color-mix(in srgb,var(--color-surface-2) 72%,transparent);color:var(--color-muted);font-size:.8rem;font-weight:600;cursor:pointer;transition:background .15s}.cat-modal__footer-cancel:hover{background:var(--color-surface-2);color:var(--color-text)}.cat-modal__footer-save{flex:2 1;padding:12px;border:none;border-radius:var(--radius);background:var(--color-accent);color:var(--color-bg);font-size:.8rem;font-weight:700;cursor:pointer;transition:opacity .15s}.cat-modal__footer-save:disabled{opacity:.4;cursor:not-allowed}.cat-modal__footer-save:not(:disabled):hover{opacity:.9}@media (max-width:768px){.cat-icon-grid{grid-template-columns:repeat(6,1fr)}.cat-modal-wrapper{width:100%}.transactions-filter-drawer.centered-modal.cat-modal-wrapper{position:fixed;inset:0;width:100%;max-height:100dvh;border-radius:0;transform:none;top:0;left:0}}.type-arrow{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:var(--radius);font-size:13px;font-weight:700;flex-shrink:0}.type-arrow.income{background:var(--color-success-surface);color:var(--color-success)}.type-arrow.expense{background:var(--color-danger-surface);color:var(--color-danger)}.type-arrow.transfer{background:var(--color-surface-2);color:var(--color-muted)}.type-arrow.credit{background:var(--color-warning-surface);color:var(--color-warning)}.type-btn-group{gap:6px;flex-wrap:nowrap;padding:4px;border:1px solid var(--color-border);background:var(--color-bg)}.type-btn,.type-btn-group{display:flex;border-radius:var(--radius)}.type-btn{align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);font-size:var(--font-size-sm);font-weight:500;border:1px solid transparent;background:transparent;color:var(--color-muted);cursor:pointer;transition:color .15s,background-color .15s,border-color .15s;flex:1 1;min-width:0}.type-btn:hover{border-color:var(--color-muted);color:var(--color-text)}.type-btn.active.expense{background:var(--color-danger-surface);border-color:var(--color-danger);color:var(--color-danger)}.type-btn.active.income{background:var(--color-success-surface);border-color:var(--color-success);color:var(--color-success)}.type-btn.active.transfer{background:var(--color-surface-2);border-color:var(--color-muted);color:var(--color-text)}.type-btn.active.credit{background:var(--color-warning-surface);border-color:var(--color-warning);color:var(--color-warning)}.date-shortcuts{display:flex;gap:var(--space-2);margin-top:var(--space-1);flex-wrap:wrap}.date-shortcut-btn{padding:2px var(--space-3);font-size:var(--font-size-xs);border-radius:var(--radius);border:1px solid var(--color-border);background:transparent;color:var(--color-muted);cursor:pointer;transition:color .15s,background-color .15s,border-color .15s}.date-shortcut-btn:hover{background:var(--color-surface-2);color:var(--color-text);border-color:var(--color-muted)}.transaction-wizard-shell{display:flex;justify-content:center}.transaction-wizard-card{width:min(100%,420px)}.transaction-savebar{position:-webkit-sticky;position:sticky;bottom:calc(16px + env(safe-area-inset-bottom, 0px));z-index:30;align-items:center;justify-content:space-between;gap:var(--space-4);margin-top:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius)}.filter-row,.transaction-savebar{display:flex;padding:var(--space-4);background:var(--color-surface)}.filter-row{gap:var(--space-3);flex-wrap:wrap;align-items:flex-end;border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-bottom:var(--space-4)}.filter-row .form-group{margin-bottom:0;min-width:120px}.account-monthly{display:flex;gap:var(--space-3);margin-top:var(--space-2);font-size:var(--font-size-xs)}.account-monthly-in{color:var(--color-success)}.account-monthly-out{color:var(--color-danger)}.week-group-header{display:flex;justify-content:space-between;align-items:center;padding:var(--space-2) var(--space-4);background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:var(--radius-sm);margin:var(--space-3) 0 var(--space-2);font-size:var(--font-size-xs);font-weight:600;color:var(--color-muted);text-transform:uppercase;letter-spacing:.05em}.week-balance-positive{color:var(--color-success)}.week-balance-negative{color:var(--color-danger)}.filter-bar-panel{position:-webkit-sticky;position:sticky;top:calc(var(--shell-topbar-height) - 1px);z-index:50;gap:var(--space-3);margin-bottom:var(--space-4);padding:var(--space-2) var(--space-3);background:color-mix(in srgb,var(--color-surface) 94%,transparent);border:1px solid color-mix(in srgb,var(--color-border) 80%,transparent);border-radius:var(--radius);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.filter-bar-panel,.filter-group{display:flex;flex-direction:column}.filter-group{gap:var(--space-2)}.filter-group-label{font-family:var(--font-mono);font-size:var(--font-size-xs);font-weight:400;text-transform:uppercase;letter-spacing:.1em;color:var(--color-subtle);line-height:1}.filter-chip-row{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.filter-chip{height:26px!important;padding:0 10px!important;font-size:11px!important;min-height:unset!important}.filter-chip--action{border-style:dashed;color:var(--color-subtle)}.filter-chip--action:hover{color:var(--color-text);border-color:var(--color-border-h);border-style:solid;background:color-mix(in srgb,var(--color-surface-2) 60%,transparent)}.filter-custom-date-row{display:flex;gap:var(--space-3);align-items:flex-end;flex-wrap:wrap;padding-top:var(--space-1)}.filter-custom-date-field{display:flex;flex-direction:column;gap:var(--space-1);flex:1 1;min-width:120px}.transactions-filter-block{display:flex;flex-direction:column;gap:6px}.transactions-chip-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.transactions-category-chips{display:flex;gap:8px;flex-wrap:wrap;padding-top:2px}.transactions-period-highlight{display:inline-flex;align-items:center;gap:var(--space-2);width:-moz-fit-content;width:fit-content;max-width:100%;padding:6px 10px;border:1px solid var(--color-border);border-radius:var(--radius);background:color-mix(in srgb,var(--color-surface-2) 58%,transparent)}.transactions-period-label{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--color-muted);white-space:nowrap}.transactions-period-value{font-family:var(--font-mono);font-size:var(--font-size-sm);color:var(--color-text);line-height:1.2}.transactions-filter-drawer-layer{position:fixed;inset:0;z-index:1200;height:100dvh;overflow:hidden}.transactions-filter-drawer-overlay{position:fixed;inset:0;z-index:49;height:100dvh;overflow:hidden;border:none;background:var(--color-overlay)}.transactions-filter-drawer{position:absolute;right:0;top:0;z-index:50;width:min(28rem,100%);height:100%;border-radius:0;overflow-y:visible;background:var(--color-surface);color:var(--color-text);padding:var(--space-4);box-shadow:-12px 0 32px rgba(0,0,0,.22)}.transactions-day-group{border-top:1px solid var(--color-surface-2);padding-top:7px}.transactions-day-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;font-size:var(--font-size-xs);color:var(--color-muted);text-transform:uppercase;letter-spacing:.04em}.transaction-group-total{font-weight:700}.transactions-day-list{display:flex;flex-direction:column;gap:2px}.transaction-row-grid{display:grid;grid-gap:var(--space-3);gap:var(--space-3);align-items:center;text-align:left;min-height:44px;padding:2px 0}.transaction-row-grid.no-verify,.transaction-row-grid.with-verify{grid-template-columns:2rem minmax(0,1fr) auto}.transaction-icon-box{width:32px;height:32px;border-radius:var(--radius-sm);border:1px solid var(--color-border);display:inline-flex;align-items:center;justify-content:center;background:var(--color-bg)}.transaction-nature-label{font-size:var(--font-size-xs);color:var(--color-muted);text-transform:uppercase}.transaction-amount-cell{font-weight:700;min-width:80px;text-align:right}.transaction-row-actions{display:inline-flex;align-items:center;justify-content:flex-end;gap:6px;min-width:0}.transaction-list-item{padding:5px 12px;border-radius:var(--radius)}.transaction-list-item--compact{padding:4px 10px;border-bottom:0}.transaction-list-item--unconfirmed{opacity:.8}.transaction-list-item--fixed{border-left:3px solid var(--color-accent)}.transaction-list-item--full.transaction-list-item--fixed{padding-left:13px}.transaction-list-item--compact.transaction-list-item--fixed{padding-left:9px}.transaction-list-item:hover{background:var(--color-surface-2)}.transaction-list-item-content{display:flex;align-items:center;gap:8px;min-width:0;flex:1 1}.transaction-list-item-icon{background:var(--color-surface-3)}.transaction-list-item-icon-svg{opacity:.7}.transaction-list-item-text{display:flex;flex-direction:column;gap:1px;min-width:0}.transaction-list-item-title{display:flex;align-items:center;min-width:0;font-weight:600;font-size:14px;color:var(--color-text);line-height:1.2}.transaction-list-item--compact .transaction-list-item-title{font-size:13px}.transaction-list-item-ai-marker{margin-right:4px}.transaction-list-item-title-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.transaction-list-item-meta-row{display:flex;align-items:center;gap:6px;min-width:0}.transaction-badge{font-size:8px;padding:2px 6px;min-height:auto;line-height:1;flex-shrink:0}.transaction-badge--nature{opacity:.4;font-weight:800;letter-spacing:.05em}.transaction-list-item-right{display:flex;align-items:center;gap:12px;flex-shrink:0}.transaction-list-item--compact .transaction-amount-cell{font-size:13px}.transaction-list-item--full .transaction-amount-cell{font-size:15px}.transaction-amount-cell{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;opacity:.8}.transaction-amount-cell[data-type=income],.transaction-amount-cell[data-type=transfer]{opacity:1}.transaction-flag-btn{width:24px;height:24px;min-height:24px;padding:0!important;border:none!important;background:transparent!important;border-radius:999px;color:var(--color-muted);opacity:.55}.transaction-flag-btn[data-important=true]{color:var(--color-accent);opacity:1}.transaction-flag-btn:focus-visible,.transaction-flag-btn:hover{color:var(--color-text);opacity:1;background:color-mix(in srgb,var(--color-surface-2) 72%,transparent)!important}.transaction-ai-btn{width:22px;height:22px;min-height:22px;padding:0!important;border:none!important;background:transparent!important;border-radius:999px;color:var(--color-muted);opacity:.68}.transaction-ai-btn:focus-visible,.transaction-ai-btn:hover{color:var(--color-text);opacity:1;background:color-mix(in srgb,var(--color-surface-2) 72%,transparent)!important}.transaction-amount-cell[data-type=income]{color:var(--color-success)}.transaction-amount-cell[data-type=expense]{color:var(--color-danger)}.transaction-amount-cell[data-type=transfer]{color:var(--color-muted)}.transaction-amount-cell[data-type=credit]{color:var(--color-warning)}.transaction-verify-btn{width:24px;height:24px;padding:0!important;border:none!important;background:transparent!important;border-radius:999px;opacity:.72}.transaction-verify-btn[data-confirmed=true]{color:var(--color-success)}.transaction-verify-btn[data-confirmed=false]{color:var(--color-muted)}.transaction-verify-btn:focus-visible,.transaction-verify-btn:hover{opacity:1;background:color-mix(in srgb,var(--color-surface-2) 72%,transparent)!important}.transactions-summary-card{padding:0;overflow:hidden}.transactions-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:1px;gap:1px;background:var(--color-border);border:1px solid var(--color-border);border-radius:var(--radius);overflow:hidden}.transactions-summary-item{background:var(--color-surface);min-height:5.75rem;padding:var(--space-4);display:flex;flex-direction:column;justify-content:space-between;gap:var(--space-2)}.transactions-page,.transactions-page .btn,.transactions-page .input,.transactions-page .list-item-meta,.transactions-page .list-item-title,.transactions-page .select,.transactions-page-wrapper,.transactions-page-wrapper .btn,.transactions-page-wrapper .input,.transactions-page-wrapper .list-item-meta,.transactions-page-wrapper .list-item-title,.transactions-page-wrapper .select{font-family:var(--font-mono)}.transactions-filter-drawer.centered-modal{left:50%;right:auto;top:50%;height:auto;max-height:calc(100dvh - 32px);transform:translate(-50%,-50%);display:flex;flex-direction:column;overflow-y:auto;-webkit-overflow-scrolling:touch;padding-bottom:env(keyboard-inset-height,16px);scrollbar-width:thin}.transactions-filter-drawer::-webkit-scrollbar{width:4px}.transactions-filter-drawer::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:2px}.transactions-filter-drawer .card-header{align-items:flex-start;margin-bottom:var(--space-4)}.transactions-filter-drawer-heading{display:flex;flex-direction:column;gap:4px}.transactions-filter-drawer-body{display:flex;flex-direction:column;gap:var(--space-3)}.transactions-filter-panel{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-3);border:1px solid var(--color-border);background:color-mix(in srgb,var(--color-surface-2) 48%,transparent);border-radius:var(--radius)}.transactions-filter-drawer .input,.transactions-filter-drawer .select,.transactions-filter-drawer input,.transactions-filter-drawer select{color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:10px 12px}.transactions-filter-drawer .select{background-image:linear-gradient(45deg,transparent 50%,var(--color-muted) 50%),linear-gradient(135deg,var(--color-muted) 50%,transparent 50%);background-position:calc(100% - 14px) calc(50% - 3px),calc(100% - 9px) calc(50% - 3px);background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:28px}.transactions-filter-drawer .select option,.transactions-filter-drawer select option{color:var(--color-text);background:var(--color-surface)}.transactions-filter-drawer .input:focus,.transactions-filter-drawer .select:focus,.transactions-filter-drawer input:focus,.transactions-filter-drawer select:focus{border-color:var(--color-border-h)}.transactions-filter-drawer .form-row{gap:var(--space-3)}.transactions-filter-drawer-footer{display:flex;justify-content:flex-end;margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--color-border)}.transaction-amount-container{display:flex;align-items:center;gap:var(--space-2);min-width:0}.transaction-amount-input{text-align:center;font-size:2rem;padding:18px 20px;font-weight:700;width:100%;box-sizing:border-box}.transaction-clear-btn{color:var(--color-muted);padding-inline:var(--space-2)}.transaction-fixed-badge{background:var(--color-surface-2);color:var(--color-muted);white-space:nowrap}.card-ghost{border:none;box-shadow:none;padding:0}.card-dark-layer{background:var(--color-surface-2)}.transaction-parcel-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.transaction-installment-controls{display:flex;align-items:center;gap:var(--space-2)}.transaction-installment-display{min-width:32px;text-align:center;font-weight:700}@media (max-width:768px){.filter-bar-panel{padding:var(--space-2) var(--space-3);gap:var(--space-2)}.filter-chip-row,.filter-group{gap:var(--space-1)}.filter-chip{height:26px;padding:0 var(--space-2);font-size:11px}.filter-custom-date-row{flex-direction:column;gap:var(--space-2)}.filter-custom-date-field{width:100%;min-width:unset}.transactions-sticky-filters{top:calc(var(--shell-topbar-height) - 1px);padding:var(--space-2)}.transactions-period-highlight{width:100%;justify-content:space-between}.transactions-filter-drawer.centered-modal{position:fixed;inset:0;width:100%;height:100dvh;max-height:100dvh;border-radius:0;transform:none;top:0;left:0;z-index:1300}.transaction-row-grid.no-verify,.transaction-row-grid.with-verify{grid-template-columns:2rem minmax(0,1fr)}.transaction-row-actions{grid-column:2;justify-self:start}.transaction-amount-cell{text-align:left}.transactions-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.transactions-filter-drawer{padding:var(--space-3)}.transaction-savebar{flex-direction:column;align-items:stretch}}.transaction-modal-new{display:flex;flex-direction:column;gap:10px;min-width:0}.transaction-modal-shell{width:min(400px,calc(100vw - 16px));max-width:400px;max-height:calc(100dvh - 48px);background:var(--color-surface);border:1px solid var(--color-border);padding:0;border-radius:var(--radius)}.transaction-modal-body{flex:1 1;min-height:0;padding:12px;overflow-y:auto;scrollbar-width:thin}.transaction-modal-shell-picker-active{width:min(400px,calc(100vw - 16px));background:transparent;border:none;padding:0;min-height:0}.modal-type-toggles{display:flex;background:color-mix(in srgb,var(--color-surface-2) 42%,transparent);border-radius:var(--radius);padding:3px;gap:3px}.modal-type-toggle{flex:1 1;padding:5px 8px;min-height:28px;border:none;background:transparent;color:var(--color-subtle);font-size:.6rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;border-radius:var(--radius-sm);cursor:pointer;transition:all .2s}.modal-type-toggle.active{background:var(--color-accent);color:var(--color-bg)}.transaction-modal-expense .modal-type-toggle.active{background:var(--color-negative)}.transaction-modal-income .modal-type-toggle.active{background:var(--color-positive)}.transaction-modal-transfer .modal-type-toggle.active{background:var(--color-info)}.modal-amount-section{text-align:center;margin:4px 0}.modal-amount-label{font-size:.58rem;text-transform:uppercase;letter-spacing:.12em;color:var(--color-muted);margin-bottom:2px}.modal-amount-display{display:flex;align-items:center;justify-content:center;gap:6px;min-height:1.8rem;color:var(--color-negative)}.modal-amount-currency{font-size:.85rem;font-weight:700;opacity:.6}.modal-amount-value{font-size:clamp(1.4rem,3.5vw,1.9rem);font-weight:700;font-family:var(--font-mono)}.transaction-modal-new[data-has-amount=false] .modal-amount-currency,.transaction-modal-new[data-has-amount=false] .modal-amount-value{opacity:.55}.transaction-modal-new[data-has-amount=false] .modal-amount-display{color:var(--color-muted)}.transaction-modal-income[data-has-amount=true] .modal-amount-display{color:var(--color-positive)}.transaction-modal-transfer[data-has-amount=true] .modal-amount-display{color:var(--color-info)}.modal-description-field{background:color-mix(in srgb,var(--color-surface-2) 28%,transparent);border:1px solid color-mix(in srgb,var(--color-border) 50%,transparent);border-radius:var(--radius);padding:6px 10px;display:flex;align-items:center;gap:8px}.modal-description-input{flex:1 1;background:transparent;border:none;color:var(--color-text);font-size:.9rem;outline:none}.modal-description-input::placeholder{color:var(--color-subtle)}.modal-selection-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:6px;gap:6px;align-items:stretch;overflow:visible}.modal-selection-item{flex:1 1;background:color-mix(in srgb,var(--color-surface-2) 38%,transparent);border-radius:var(--radius);padding:4px 8px;display:flex;align-items:center;justify-content:space-between;font-size:.68rem;color:var(--color-text);cursor:pointer;border:none;min-height:34px}.modal-selection-label{font-size:.58rem;text-transform:uppercase;letter-spacing:.05em;color:var(--color-subtle);margin-bottom:2px;opacity:.7}.modal-selection-icon{margin-right:6px;opacity:.8;flex-shrink:0}.btn-show-advanced{background:transparent;border:1px dashed var(--color-border);color:var(--color-muted);padding:8px;border-radius:var(--radius);font-size:.72rem;cursor:pointer;transition:all .2s;width:100%;text-align:center}.btn-show-advanced:hover{border-color:var(--color-muted);color:var(--color-text);background:color-mix(in srgb,var(--color-surface-2) 32%,transparent)}.modal-picker-card{width:100%;max-height:80vh;overflow-y:auto;padding:var(--space-2);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);box-shadow:var(--shadow)}.modal-picker-title{color:var(--color-text-strong)}.modal-picker-option{justify-content:flex-start;text-align:left;color:var(--color-text)}.modal-picker-option-child{padding-left:var(--space-8);color:var(--color-muted)}.modal-date-button{background:color-mix(in srgb,var(--color-surface-2) 38%,transparent);border-radius:var(--radius);flex:1 1;display:flex;padding:0;overflow:visible;position:relative;z-index:10;margin-bottom:0!important;gap:0!important}.modal-date-button,.modal-date-button .input{min-width:0;color:var(--color-text);min-height:42px}.modal-date-button .input{width:100%;height:100%;padding:6px 8px;background:transparent;text-align:left;font-size:.68rem}.modal-date-button .input,.modal-date-button .input:focus{border:none;box-shadow:none}.datepicker-wrapper{position:relative}.datepicker-trigger{text-align:left;cursor:pointer}.datepicker-popover{position:absolute;top:calc(100% + 6px);left:0;z-index:100;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-2);box-shadow:var(--shadow)}.modal-date-button.form-group>div:last-child{right:0;left:auto;bottom:calc(100% + 6px);top:auto!important;z-index:2000}.transaction-keypad{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:3px;gap:3px;margin-top:2px}@media (min-width:1024px){.transaction-keypad{display:none}}.keypad-btn{height:42px;min-height:42px;background:transparent;border:none;color:var(--color-text-strong);font-size:1.1rem;font-weight:500;display:flex;align-items:center;justify-content:center;border-radius:var(--radius);cursor:pointer}.keypad-btn:active{background:color-mix(in srgb,var(--color-surface-2) 72%,transparent)}.keypad-btn.action{background:color-mix(in srgb,var(--color-accent-soft) 55%,transparent);color:var(--color-accent)}.modal-footer-actions{display:flex;gap:8px;margin-top:8px}.modal-footer-btn{flex:1 1;padding:7px 10px;min-height:34px;border-radius:var(--radius);font-weight:700;text-transform:uppercase;letter-spacing:.05em;font-size:.65rem;cursor:pointer;border:none}.modal-footer-btn.cancel,.modal-footer-btn.clear{background:transparent;color:var(--color-muted);border:1px solid color-mix(in srgb,var(--color-border) 60%,transparent)}.modal-footer-btn.save{background:var(--color-accent);color:var(--color-bg);flex:2 1}.transaction-modal-expense .modal-footer-btn.save{background:var(--color-negative)}.transaction-modal-income .modal-footer-btn.save{background:var(--color-positive)}.transaction-modal-transfer .modal-footer-btn.save{background:var(--color-info)}.transaction-modal-new .chip{min-height:26px;padding:3px 10px;font-size:.6rem}.transaction-modal-shell .modal-footer{padding:8px 12px}.modal-date-button,.modal-date-button .input{min-height:34px}.picker-search-input{width:100%;padding:8px 10px;background:var(--color-surface-3);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text);font:inherit;font-size:.75rem;outline:none;margin-bottom:8px}.picker-search-input::placeholder{color:var(--color-subtle)}.picker-search-input:focus{border-color:var(--color-border-h);box-shadow:var(--focus-ring)}.modal-installment-row,.modal-permanent-row{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 0;border-top:1px solid var(--color-border);flex-wrap:wrap}.modal-installment-toggle{display:flex;align-items:center;gap:6px;cursor:pointer;color:var(--color-muted);font-size:.72rem;-webkit-user-select:none;-moz-user-select:none;user-select:none}.modal-installment-toggle input[type=checkbox]{accent-color:var(--color-accent);width:15px;height:15px;cursor:pointer}.modal-installment-count{justify-content:flex-end;flex-wrap:wrap}.modal-installment-count,.modal-permanent-toggle{display:flex;align-items:center;gap:6px;color:var(--color-muted);font-size:.72rem}.modal-permanent-toggle{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.modal-permanent-toggle input[type=checkbox]{accent-color:var(--color-accent);width:15px;height:15px;cursor:pointer}.modal-permanent-frequency{min-width:108px}.modal-plan-grid{display:flex;gap:6px;align-items:flex-start;flex-wrap:wrap;padding:0 2px;background:transparent;border:none}.modal-plan-card{display:flex;flex-direction:column;gap:4px;flex:1 1;min-width:130px;background:transparent;border:none;padding:0}.modal-plan-card+.modal-plan-card{padding-left:8px;border-left:1px solid color-mix(in srgb,var(--color-border) 40%,transparent)}.modal-plan-card-header{display:none}.modal-plan-card-body{display:flex;flex-direction:column;gap:4px}.modal-plan-card-body--recurrence{align-items:flex-start}.modal-plan-card-title{font-size:.58rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--color-muted);opacity:.6}.modal-plan-caption{margin-top:0;line-height:1.2;font-size:.58rem;color:var(--color-subtle)}@media (min-width:769px){.transactions-filter-drawer.centered-modal{max-height:min(720px,calc(100vh - 24px))}.transaction-modal-new{gap:8px;padding:10px;height:auto}.modal-type-toggle{padding:7px 8px;font-size:.6rem}.modal-date-button,.modal-selection-item{min-height:52px}.modal-plan-grid--double{align-items:start}.modal-footer-btn{padding:9px 10px}}@media (max-width:900px){.modal-footer-actions{flex-wrap:wrap}.modal-selection-row{grid-template-columns:repeat(2,minmax(0,1fr))}.modal-selection-item{min-width:0}.modal-installment-row,.modal-permanent-row{align-items:flex-start}.modal-installment-count,.modal-permanent-frequency{width:100%;justify-content:flex-start}}@media (max-width:640px){.transaction-modal-new{gap:8px;padding:10px}.modal-type-toggles{flex-wrap:wrap}.modal-type-toggle{flex-grow:1;flex-shrink:1;flex-basis:calc(50% - 4px);min-width:0;font-size:.58rem}.modal-date-button,.modal-selection-item{width:100%;min-width:0}.modal-plan-grid,.modal-plan-grid--double,.modal-plan-grid--single{grid-template-columns:1fr}.modal-permanent-row{flex-direction:column;align-items:stretch}.modal-permanent-toggle{width:100%}.modal-permanent-frequency{width:100%;min-width:0}}.modal-installment-input{width:3.5rem;padding:var(--space-1) var(--space-2);background:var(--color-surface-3);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-text);font:inherit;font-size:var(--font-size-sm);text-align:center}.modal-installment-input:focus{outline:none;border-color:var(--color-accent)}.modal-installment-label{white-space:nowrap}.home-metrics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:0;gap:0}.home-metric-cell{padding:var(--space-5) var(--space-4);display:flex;flex-direction:column;gap:var(--space-1)}.home-metric-cell+.home-metric-cell{border-left:1px solid var(--color-border)}.home-metric-cell:nth-child(odd){border-left:none}.home-metric-cell:nth-child(n+3){border-top:1px solid var(--color-border)}.home-metric-label{font-size:var(--font-size-xs);font-weight:600;color:var(--color-muted);text-transform:uppercase;letter-spacing:.06em}.home-metric-value{font-size:var(--font-size-xl);font-weight:700;color:var(--color-text);line-height:1.2}.home-metric-sub{font-size:var(--font-size-xs);color:var(--color-muted)}@media (max-width:768px){.home-metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.home-kpi-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--space-3);gap:var(--space-3)}.submenu-grid{display:grid;grid-template-columns:repeat(1,minmax(0,1fr));grid-gap:var(--space-2);gap:var(--space-2);max-width:420px}@media (min-width:640px){.submenu-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.form-compact{width:min(100%,420px);margin-left:auto;margin-right:auto}.chart-container{width:100%;min-width:0;min-height:320px}.profile-financial-grid,.profile-mode-grid,.profile-provider-grid,.profile-risk-zone-content{display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.settings-page{max-width:1320px;margin:0 auto;padding:16px;display:flex;flex-direction:column;gap:10px}.settings-card{border-radius:var(--radius);overflow:hidden}.settings-card-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px}.settings-card-body{padding:10px 16px 14px;display:flex;flex-direction:column;gap:10px}.settings-card-actions{display:flex;justify-content:flex-end}.settings-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px}.settings-grid-span-full{grid-column:1/-1}.settings-grid-spacing{margin-bottom:var(--space-3)}.observability-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:var(--space-3);gap:var(--space-3)}.observability-stat{padding:var(--space-3)}.observability-stat-label{opacity:.5}@media (max-width:768px){.observability-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.profile-tabs{display:flex;gap:4px;margin-bottom:10px;border-bottom:1px solid var(--color-border);padding-bottom:8px;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.profile-tabs::-webkit-scrollbar{display:none}.profile-tab{width:32px;height:28px;padding:0;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.settings-card-body .form-group{margin-bottom:0;gap:var(--space-1)}.profile-personal-grid .form-label{margin-bottom:4px}.preference-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:6px;gap:6px}.preference-card{height:56px;padding:10px 12px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;text-align:left;gap:3px}.preference-card.btn-primary .t-support{color:inherit;opacity:.55}.financial-grid{display:grid;grid-template-columns:1fr;grid-gap:8px;gap:8px}.security-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px}.settings-card-title-group{display:flex;flex-direction:column;gap:3px}.settings-help{margin:0}input.input,select.input{height:32px}.profile-mode-grid{grid-template-columns:repeat(auto-fit,minmax(11rem,1fr))}.profile-mode-btn{height:auto;min-height:4.5rem;padding:var(--space-3);flex-direction:column;align-items:flex-start;justify-content:flex-start;text-align:left}.profile-hero{display:flex;align-items:center;gap:var(--space-3)}.profile-avatar{width:32px;height:32px;border-radius:var(--radius-full);border:1px solid var(--color-border);background:var(--color-surface-2);color:var(--color-text);display:inline-flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-size:var(--font-size-xs);font-weight:700;flex-shrink:0}.profile-hero-copy{display:grid;grid-gap:4px;gap:4px}.profile-form-grid,.profile-risk-grid{display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.profile-financial-grid{margin-bottom:var(--space-4)}.profile-provider-actions{display:grid;grid-gap:var(--space-3);gap:var(--space-3);margin-top:var(--space-3)}.profile-api-key-item{align-items:flex-start}.profile-risk-zone-card{border-color:var(--color-negative)}.profile-risk-title{color:var(--color-danger)}.profile-action-slot{align-self:end}.profile-hidden-label{visibility:hidden}.profile-library-card{overflow:hidden}.input-underline{border-width:0 0 1px;border-radius:0;padding-inline:0;background:transparent}.financial-textarea{resize:none;line-height:1.6;padding-top:4px;padding-bottom:4px;height:auto}@media (min-width:768px){.profile-form-grid,.profile-risk-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end}.profile-provider-actions{grid-template-columns:minmax(0,1fr) auto auto;align-items:end}}@media (max-width:860px){.settings-page{padding:10px}.settings-card-header{padding:8px 12px}.settings-card-body{padding:8px 12px 12px}.financial-grid,.preference-grid,.security-grid,.settings-grid-2{grid-template-columns:1fr}}.reports-page .stat-value{font-size:var(--font-size-base);line-height:1.2;text-overflow:clip}.reports-page .stat-card{position:relative;min-height:7rem}.reports-page .card-header .badge{align-self:flex-start}.reports-page .reports-card-help{margin-left:auto}.reports-page .stat-card .stat-value,.reports-page .stat-card strong.font-mono{font-size:var(--font-size-base);font-weight:700;line-height:1.2;letter-spacing:-.02em}.progress-track.mt-1-5{margin-top:var(--space-1)}.progress-fill{width:var(--progress-width,0)}